public Hero() { _animations = new HeroAnimations(); _standingPointRight = new PointF(27f, 127f); _standingPointLeft = new PointF(800f - 27f, 127f); _castingHeight = 64f; _castingPointRight = new PointF(27f + 54f, // plus 54f to make it cast in front of hero 127f - _castingHeight); _castingPointLeft = new PointF(800f - 27f - 54f, 127f - _castingHeight); _imgSize = new Size(150, 175); _rightPt = new Point(43, 146 - 127); _leftPt = new Point(48, 146 - 127); _rect = new Rectangle(0, 16, 54, 111); _currentSpell = null; _canCastSpell = true; _currentAnimationSeq = null; }
private void CreateHero(Player player, int cellsRow, int cellsCol) { heroId += 1; Hero hero = new Heroes.Core.Map.Heros.Knight(); hero._id = heroId; hero._playerId = player._id; hero._player = player; hero._image = player._heroImage; player._heroes.Add(hero); // spells Heroes.Core.Spell spell = new Heroes.Core.Spell(); hero._spells.Add(spell._id, spell); picContainer = new PictureBox(); picContainer.Size = new Size(_mapTerrain.cellWidth, _mapTerrain.cellHeight); picContainer.Location = new Point(_mapTerrain.cellXYss[cellsRow][cellsCol][0], _mapTerrain.cellXYss[cellsRow][cellsCol][1]); picContainer.Image = player._heroHighlight; picContainer.BorderStyle = BorderStyle.None; this.picContainer.MouseClick += new MouseEventHandler(picContainer_MouseClick); this.panelBigMap.Controls.Add(picContainer); }
private void CreatePlayer(int id) { Heroes.Core.Player player = new Heroes.Core.Player(); player._id = id; player._wood = 20; player._mercury = 10; player._ore = 20; player._sulfur = 10; player._crystal = 10; player._gem = 10; player._gold = 20000; _players.Add(player); Random rnd = new Random(); // hero Heroes.Core.Hero hero = (Heroes.Core.Hero)Heroes.Core.Setting._heros[id]; hero._playerId = player._id; hero._player = player; hero._level = 1; hero._experience = rnd.Next(45, 99); hero.CalculateMaxSpellPoint(); hero._spellPointLeft = hero._maxSpellPoint; hero._movementPoint = 1; hero._movementPointLeft = hero._movementPoint; player._heroes.Add(hero); // army { Heroes.Core.Army army = new Heroes.Core.Army(); army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.Pikeman]); army.AddAttribute(hero); army._heroId = hero._id; army._playerId = player._id; //army._qty = rnd.Next(20, 49); army._qty = rnd.Next(500, 999); army._slotNo = 1; hero._armyKSlots.Add(army._slotNo, army); army = new Heroes.Core.Army(); army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.Archer]); army.AddAttribute(hero); army._heroId = hero._id; army._playerId = player._id; //army._qty = rnd.Next(10, 19); army._qty = rnd.Next(500, 999); army._slotNo = 0; hero._armyKSlots.Add(army._slotNo, army); //army = new Heroes.Core.Army(); //army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.Griffin]); //army.AddAttribute(hero); //army._heroId = hero._id; //army._playerId = player._id; //army._qty = rnd.Next(10, 19); ////army._qty = rnd.Next(500, 999); //army._slotNo = 4; //hero._armyKSlots.Add(army._slotNo, army); //army = new Heroes.Core.Army(); //army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.Swordman]); //army.AddAttribute(hero); //army._heroId = hero._id; //army._playerId = player._id; //army._qty = rnd.Next(10, 19); ////army._qty = rnd.Next(500, 999); //army._slotNo = 5; //hero._armyKSlots.Add(army._slotNo, army); //army = new Heroes.Core.Army(); //army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.Cavalier]); //army.AddAttribute(hero); //army._heroId = hero._id; //army._playerId = player._id; //army._qty = rnd.Next(5, 9); ////army._qty = rnd.Next(500, 999); //army._slotNo = 2; //hero._armyKSlots.Add(army._slotNo, army); //army = new Heroes.Core.Army(); //army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.Monk]); //army.AddAttribute(hero); //army._heroId = hero._id; //army._playerId = player._id; //army._qty = rnd.Next(10, 19); ////army._qty = rnd.Next(500, 999); //army._slotNo = 6; //hero._armyKSlots.Add(army._slotNo, army); //army = new Heroes.Core.Army(); //army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.Angel]); //army.AddAttribute(hero); //army._heroId = hero._id; //army._playerId = player._id; //army._qty = rnd.Next(1, 4); ////army._qty = rnd.Next(500, 999); //army._slotNo = 3; //hero._armyKSlots.Add(army._slotNo, army); } // spells { Heroes.Core.Spell spell = new Heroes.Core.Spell(); spell.CopyFrom((Heroes.Core.Spell)Heroes.Core.Setting._spells[(int)Heroes.Core.SpellIdEnum.MagicArrow]); spell.CalculateDamage(hero); hero._spells.Add(spell._id, spell); spell = new Heroes.Core.Spell(); spell.CopyFrom((Heroes.Core.Spell)Heroes.Core.Setting._spells[(int)Heroes.Core.SpellIdEnum.Haste]); hero._spells.Add(spell._id, spell); } // castle { Heroes.Core.Town town = new Heroes.Core.Town(); town._id = player._id; town._playerId = player._id; town._player = player; town._heroVisit = hero; player._castles.Add(town); // buildings { Heroes.Core.Building building = new Heroes.Core.Building(); building.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.VillageHall]); town._buildingKIds.Add(building._id, building); building = new Heroes.Core.Building(); building.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.Tavern]); town._buildingKIds.Add(building._id, building); building = new Heroes.Core.Building(); building.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.Fort]); town._buildingKIds.Add(building._id, building); } } }
private void CreateHero(int heroId, Player player, int cellsRow, int cellsCol) { Hero hero = new Heroes.Core.Map.Heros.Knight(); hero._id = heroId; hero._playerId = player._id; hero._player = player; hero._image = player._heroImage; player._heroes.Add(hero); // spells Heroes.Core.Spell spell = new Heroes.Core.Spell(); hero._spells.Add(spell._id, spell); hero._cell = _cells[cellsRow, cellsCol]; hero._cell._hero = hero; { Armies.Pikeman c = new Heroes.Core.Map.Armies.Pikeman(); c._heroId = hero._id; c._playerId = hero._playerId; c.AddAttribute(hero); c._qty = 20; c._slotNo = 0; hero._armyKSlots.Add(c._slotNo, c); } //{ // Armies.Pikeman c = new Heroes.Core.Map.Armies.Pikeman(); // c._heroId = hero._id; // c._playerId = hero._playerId; // c.AddAttribute(hero); // c._qty = 10; // c._slotNo = 1; // hero._armyKSlots.Add(c._slotNo, c); //} //{ // Armies.Archer c = new Heroes.Core.Map.Armies.Archer(); // c._heroId = hero._id; // c._playerId = hero._playerId; // c.AddAttribute(hero); // c._qty = 10; // c._slotNo = 2; // hero._armyKSlots.Add(c._slotNo, c); //} //{ // Armies.Griffin c = new Heroes.Core.Map.Armies.Griffin(); // c._heroId = hero._id; // c._playerId = hero._playerId; // c.AddAttribute(hero); // c._qty = 10; // c._slotNo = 3; // hero._armyKSlots.Add(c._slotNo, c); //} }
private void InitPlayer(Heroes.Core.Player player, int startingHeroId) { player._wood = 20; player._mercury = 10; player._ore = 20; player._sulfur = 10; player._crystal = 10; player._gem = 10; player._gold = 20000; //player._wood = 10; //player._mercury = 0; //player._ore = 10; //player._sulfur = 0; //player._crystal = 0; //player._gem = 0; //player._gold = 10000; Random rnd = new Random(); // hero Heroes.Core.Hero hero = (Heroes.Core.Hero)Heroes.Core.Setting._heros[startingHeroId]; hero._playerId = player._id; hero._player = player; hero._level = 1; hero._experience = rnd.Next(45, 99); //hero._movementPoint = 1; hero._movementPoint = 2; hero._movementPointLeft = hero._movementPoint; player._heroes.Add(hero); // army { Heroes.Core.Army army = new Heroes.Core.Army(); army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.Pikeman]); army._heroId = hero._id; army._playerId = player._id; army._qty = rnd.Next(20, 49); //army._qty = rnd.Next(500, 999); army._slotNo = 1; hero._armyKSlots.Add(army._slotNo, army); army = new Heroes.Core.Army(); army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.Archer]); army._heroId = hero._id; army._playerId = player._id; army._qty = rnd.Next(10, 19); //army._qty = rnd.Next(500, 999); army._slotNo = 0; hero._armyKSlots.Add(army._slotNo, army); //army = new Heroes.Core.Army(); //army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.RoyalGiffin]); //army.AddAttribute(hero); //army._heroId = hero._id; //army._playerId = player._id; //army._qty = rnd.Next(10, 19); //army._slotNo = 4; //hero._armyKSlots.Add(army._slotNo, army); //army = new Heroes.Core.Army(); //army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.Crusader]); //army.AddAttribute(hero); //army._heroId = hero._id; //army._playerId = player._id; //army._qty = rnd.Next(10, 19); //army._slotNo = 5; //hero._armyKSlots.Add(army._slotNo, army); //army = new Heroes.Core.Army(); //army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.Champion]); //army.AddAttribute(hero); //army._heroId = hero._id; //army._playerId = player._id; //army._qty = rnd.Next(5, 9); //army._slotNo = 2; //hero._armyKSlots.Add(army._slotNo, army); //army = new Heroes.Core.Army(); //army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.Zealot]); //army.AddAttribute(hero); //army._heroId = hero._id; //army._playerId = player._id; //army._qty = rnd.Next(10, 19); //army._slotNo = 6; //hero._armyKSlots.Add(army._slotNo, army); //army = new Heroes.Core.Army(); //army.CopyFrom((Heroes.Core.Army)Heroes.Core.Setting._armies[(int)Heroes.Core.ArmyIdEnum.Archangel]); //army.AddAttribute(hero); //army._heroId = hero._id; //army._playerId = player._id; //army._qty = rnd.Next(1, 4); //army._slotNo = 3; //hero._armyKSlots.Add(army._slotNo, army); } // spells { Heroes.Core.Spell spell = new Heroes.Core.Spell(); spell.CopyFrom((Heroes.Core.Spell)Heroes.Core.Setting._spells[(int)Heroes.Core.SpellIdEnum.MagicArrow]); hero._spells.Add(spell._id, spell); spell = new Heroes.Core.Spell(); spell.CopyFrom((Heroes.Core.Spell)Heroes.Core.Setting._spells[(int)Heroes.Core.SpellIdEnum.IceBolt]); hero._spells.Add(spell._id, spell); spell = new Heroes.Core.Spell(); spell.CopyFrom((Heroes.Core.Spell)Heroes.Core.Setting._spells[(int)Heroes.Core.SpellIdEnum.MeteorShower]); hero._spells.Add(spell._id, spell); spell = new Heroes.Core.Spell(); spell.CopyFrom((Heroes.Core.Spell)Heroes.Core.Setting._spells[(int)Heroes.Core.SpellIdEnum.LightningBolt]); hero._spells.Add(spell._id, spell); spell = new Heroes.Core.Spell(); spell.CopyFrom((Heroes.Core.Spell)Heroes.Core.Setting._spells[(int)Heroes.Core.SpellIdEnum.Implosion]); hero._spells.Add(spell._id, spell); spell = new Heroes.Core.Spell(); spell.CopyFrom((Heroes.Core.Spell)Heroes.Core.Setting._spells[(int)Heroes.Core.SpellIdEnum.FireBall]); hero._spells.Add(spell._id, spell); spell = new Heroes.Core.Spell(); spell.CopyFrom((Heroes.Core.Spell)Heroes.Core.Setting._spells[(int)Heroes.Core.SpellIdEnum.Inferno]); hero._spells.Add(spell._id, spell); } // artifacts //for (int i = 0; i < 20; i++) { GettingArtifactEventArg e2 = new GettingArtifactEventArg(Heroes.Core.Heros.ArtifactLevelEnum.Treasure); OnGettingArtifact(e2); if (e2._artifact != null) { hero.AddArtifacts(e2._artifact); } } hero.CalculateAll(); hero._spellPointLeft = hero._maxSpellPoint; // castle { Heroes.Core.Town town = new Heroes.Core.Town(); town._id = player._id; town._playerId = player._id; town._player = player; town._heroVisit = hero; player._castles.Add(town); // buildings { Heroes.Core.Building building = new Heroes.Core.Building(); building.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.VillageHall]); town._buildingKIds.Add(building._id, building); building = new Heroes.Core.Building(); building.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.Tavern]); town._buildingKIds.Add(building._id, building); building = new Heroes.Core.Building(); building.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.Fort]); town._buildingKIds.Add(building._id, building); } } }