public frmDuel() { InitializeComponent(); _players = new ArrayList(); Random rnd = new Random(); int heroId = rnd.Next(1, 16); CreatePlayer(heroId); //CreatePlayer(2); _playerMe = (Heroes.Core.Player)_players[0]; _currentPlayer = (Heroes.Core.Player)_players[0]; _currentHero = (Heroes.Core.Hero)_currentPlayer._heroes[0]; }
public DialogResult ShowDialog(Heroes.Core.Hero hero) { _hero = hero; lblTitle.Text = string.Format("{0} has gain a level.", hero._name); lblLevel.Text = string.Format("{0} is now a level {1} {2}.", hero._name, hero._level + 1, hero.GetHeroTypeName()); if (System.IO.File.Exists(hero._infoImgFileName)) this.picHero.Image = Image.FromFile(hero._infoImgFileName); else this.picHero.Image = null; GetSkillAv(); PplSkills(); return this.ShowDialog(); }
public frmHeroInfo() { InitializeComponent(); _hero = null; _picSkills = new PictureBox[] { this.picSkill1, this.picSkill2, this.picSkill3, this.picSkill4, this.picSkill2, this.picSkill3, this.picSkill4, this.picSkill5 }; _picEquipedArtifacts = new Dictionary<Heroes.Core.Heros.EquipPartEnum, PictureBox[]>(); _picEquipedArtifacts.Add(Heroes.Core.Heros.EquipPartEnum.RightHand, new PictureBox[] { picRightHand }); _picEquipedArtifacts.Add(Heroes.Core.Heros.EquipPartEnum.LeftHand, new PictureBox[] { picLeftHand }); _picEquipedArtifacts.Add(Heroes.Core.Heros.EquipPartEnum.Head, new PictureBox[] { picHead }); _picEquipedArtifacts.Add(Heroes.Core.Heros.EquipPartEnum.Torso, new PictureBox[] { picTorso }); _picEquipedArtifacts.Add(Heroes.Core.Heros.EquipPartEnum.Feet, new PictureBox[] { picFeet }); _picEquipedArtifacts.Add(Heroes.Core.Heros.EquipPartEnum.Neck, new PictureBox[] { picNeck }); _picEquipedArtifacts.Add(Heroes.Core.Heros.EquipPartEnum.Shoulder, new PictureBox[] { picShoulder }); _picEquipedArtifacts.Add(Heroes.Core.Heros.EquipPartEnum.Ring, new PictureBox[] { picRingRight, picRingLeft }); _picEquipedArtifacts.Add(Heroes.Core.Heros.EquipPartEnum.Misc, new PictureBox[] { picMisc1, picMisc2, picMisc3, picMisc4, picMisc5 }); _picUnequipedArtifacts = new PictureBox[] { picBackPack1, picBackPack2, picBackPack3, picBackPack4, picBackPack5 }; _pageSize = _picUnequipedArtifacts.Length; foreach (Heroes.Core.Heros.EquipPartEnum key in this._picEquipedArtifacts.Keys) { PictureBox[] picBoxs = this._picEquipedArtifacts[key]; foreach (PictureBox picBox in picBoxs) { picBox.Tag = key; picBox.MouseClick += new MouseEventHandler(picBox_MouseClick); } } foreach (PictureBox picBox in _picUnequipedArtifacts) { picBox.Tag = Heroes.Core.Heros.EquipPartEnum.BackPack; picBox.MouseClick += new MouseEventHandler(picBox_MouseClick); } _picSelArtifact = null; _pageNo = 0; }
public frmDuelNetwork() { InitializeComponent(); _playerKIds = new Hashtable(); _currentPlayer = null; _currentHero = null; this.ReadOnly = true; _isFirstRun = true; _hasVisitKnowStone = false; _day = 1; _week = 1; _month = 1; this._artifactVisitCounts = new int [4]; }
public DialogResult ShowDialog(Heroes.Core.Hero hero) { _hero = hero; if (System.IO.File.Exists(_hero._infoImgFileName)) picHero.Image = Image.FromFile(_hero._infoImgFileName); else picHero.Image = null; this.lblHeroName.Text = _hero._name; this.lblHeroLevel.Text = string.Format("Level {0} {1}", _hero._level, _hero.GetHeroTypeName()); this.lblExp.Text = _hero._experience.ToString(); PplAtts(); PplSkills(); PplArtifacts(); return this.ShowDialog(); }
public frmGame2() { InitializeComponent(); _playerIdMe = 0; _playerMe = null; _playerKIds = new Hashtable(); _startingHeroId = 0; _isDoingTurn = false; _isBattleStarted = false; _attackHero = null; _defendHero = null; _isExit = false; _frmDuel = null; _frmBattle = null; // thread ThreadStart entryPoint = new ThreadStart(StartProcess); _processThread = new Thread(entryPoint); _processThread.Name = "Processing Thread"; // timer to start game _timerGame = new System.Windows.Forms.Timer(); _timerGame.Interval = 500; _timerGame.Tick += new EventHandler(_timerGame_Tick); _timerGame.Stop(); // timer to start battle _timerBattle = new System.Windows.Forms.Timer(); _timerBattle.Interval = 500; _timerBattle.Tick += new EventHandler(_timerBattle_Tick); _timerBattle.Stop(); this.FormClosing += new FormClosingEventHandler(frmGame_FormClosing); this.FormClosed += new FormClosedEventHandler(frmGame_FormClosed); }
public StartingBattleEventArg(Heroes.Core.Hero attackHero, Heroes.Core.Hero defendHero, Heroes.Core.Monster monster, Heroes.Core.Town defendCastle) { _attackHero = attackHero; _defendHero = defendHero; _monster = monster; _defendCastle = defendCastle; _victory = 0; }
private bool Battle(Heroes.Core.Hero hero, Heroes.Core.Monster monster) { this.Hide(); try { using (frmBattle f = new frmBattle()) { f.ShowDialog(hero, null, monster, null); using (Heroes.Core.Battle.frmBattleResult f2 = new Heroes.Core.Battle.frmBattleResult()) { if (f._victory == Heroes.Core.Battle.BattleSideEnum.Attacker) { if (f._engine._attacker._playerId == this._playerMe._id) { // victory f2.ShowDialog(1, f._engine._attacker, this._playerMe._id, f._engine._attacker, f._engine._defender, f._engine._monster); this._currentHero._experience += f2._experience; LevelUp(this._currentHero); return true; } else { // defeat f2.ShowDialog(2, f._engine._attacker, this._playerMe._id, f._engine._attacker, f._engine._defender, f._engine._monster); _currentPlayer._heroes.Remove(this._currentHero); _currentHero = null; return false; } } else { if (f._engine._defender != null) { if (f._engine._defender._playerId == this._playerMe._id) { // victory f2.ShowDialog(1, f._engine._defender, this._playerMe._id, f._engine._attacker, f._engine._defender, f._engine._monster); this._currentHero._experience += f2._experience; LevelUp(this._currentHero); return true; } else { // defeat f2.ShowDialog(2, f._engine._defender, this._playerMe._id, f._engine._attacker, f._engine._defender, f._engine._monster); _currentPlayer._heroes.Remove(this._currentHero); _currentHero = null; return false; } } else if (f._engine._monster != null) { // defeat f2.ShowDialog(2, f._engine._monster, this._playerMe._id, f._engine._attacker, f._engine._defender, f._engine._monster); _currentPlayer._heroes.Remove(this._currentHero); _currentHero = null; return false; } } } } } finally { this.Show(); } return false; }
private void cmdNextTurn_Click(object sender, EventArgs e) { // next player int index = _players.IndexOf(this._currentPlayer); index += 1; if (index >= this._players.Count) index = 0; this._currentPlayer = (Heroes.Core.Player)this._players[index]; if (this._currentPlayer._heroes.Count > 0) { this._currentHero = (Heroes.Core.Hero)this._currentPlayer._heroes[0]; // reset to full spell points this._currentHero._spellPointLeft = this._currentHero._maxSpellPoint; } _currentPlayer.AddResources(); _currentPlayer.AddGrowth(); _currentPlayer.ResetBuilt(); _currentPlayer.ResetMovementPoints(); }
public static void ConvertBattleToNetwork(Heroes.Core.Player attackPlayerMap, Heroes.Core.Hero attackHeroMap, Hashtable attackArmiesMap, Heroes.Core.Player defendPlayerMap, Heroes.Core.Hero defendHeroMap, Heroes.Core.Town defendCastleMap, Hashtable defendArmiesMap, out Heroes.Core.Player attackPlayer, out Heroes.Core.Hero attackHero, out Hashtable attackArmies, out Heroes.Core.Player defendPlayer, out Heroes.Core.Hero defendHero, out Heroes.Core.Town defendCastle, out Hashtable defendArmies) { attackPlayer = null; attackHero = null; attackArmies = new Hashtable(); defendPlayer = null; defendHero = null; defendCastle = null; defendArmies = new Hashtable(); if (attackArmiesMap != null) { foreach (Heroes.Core.Army armyMap in attackArmiesMap.Values) { Heroes.Core.Army army = new Heroes.Core.Army(); army._id = armyMap._id; army._qty = armyMap._qty; army._slotNo = armyMap._slotNo; attackArmies.Add(army._slotNo, army); } } if (attackPlayerMap != null) { attackPlayer = new Heroes.Core.Player(); attackPlayer._id = attackPlayerMap._id; } if (attackHeroMap != null) { attackHero = new Heroes.Core.Hero(); attackHero._id = attackHeroMap._id; attackHero._player = attackPlayer; attackHero._armyKSlots = attackArmies; } if (defendArmiesMap != null) { foreach (Heroes.Core.Army armyMap in defendArmiesMap.Values) { Heroes.Core.Army army = new Heroes.Core.Army(); army._id = armyMap._id; army._qty = armyMap._qty; army._slotNo = armyMap._slotNo; defendArmies.Add(army._slotNo, army); } } if (defendPlayerMap != null) { defendPlayer = new Heroes.Core.Player(); defendPlayer._id = defendPlayerMap._id; } if (defendHeroMap != null) { defendHero = new Heroes.Core.Hero(); defendHero._id = defendHeroMap._id; defendHero._player = defendPlayer; defendHero._armyKSlots = defendArmies; } // castle }
public static void ResetAll() { if (_frmBattle != null) { _frmBattle.Close(); _frmBattle = null; } if (_frmMap != null) { _frmMap.Close(); _frmMap = null; } if (_frmGame != null) { _frmGame.Close(); _frmGame = null; } _isServer = false; _me = null; _server = null; _players.Clear(); _currentPlayer = null; _isNeedToStartGame = false; _isGameStarted = false; _isInitialized = false; _isAllPlayerInitialized = false; _needToRunNextPlayer = false; _isNeedToStartBattle = false; _amIBattle = false; _isBattleStarted = false; _attackPlayer = null; _attackHero = null; _attackArmies = null; _defendPlayer = null; _defendHero = null; _defendCastle = null; _defendArmies = null; _victory = 0; _isBattleEnded = false; _attackCommands.Clear(); _defendCommands.Clear(); }
public static void ConvertMapToNetwork(ArrayList mapPlayers, ArrayList mapMines, Heroes.Core.Map.Cell[,] mapCells, out ArrayList players, out Hashtable heroCells) { players = new ArrayList(); heroCells = new Hashtable(); // copy players and heroes foreach (Heroes.Core.Map.Player player in mapPlayers) { Heroes.Core.Player player2 = new Heroes.Core.Player(); player2._id = player._id; player2._gold = player._gold; players.Add(player2); foreach (Heroes.Core.Map.Hero hero in player._heroes) { Heroes.Core.Hero hero2 = new Heroes.Core.Hero(); hero2._id = hero._id; hero2._player = player2; player2._heroes.Add(hero2); // cell in map if (hero._cell != null) { GameCell cell = new GameCell(hero._cell._row, hero._cell._col); heroCells.Add(hero2._id, cell); } foreach (Heroes.Core.Army army in hero._armyKSlots.Values) { Heroes.Core.Army army2 = new Heroes.Core.Army(); army2._id = army._id; army2._slotNo = army._slotNo; army2._qty = army._qty; hero2._armyKSlots.Add(army2._slotNo, army2); } } } // copy Towns int index = 0; foreach (Heroes.Core.Map.Player player in mapPlayers) { Heroes.Core.Player player2 = (Heroes.Core.Player)players[index]; foreach (Heroes.Core.Map.Town town in player._castles) { Heroes.Core.Town town2 = new Heroes.Core.Town(); town2._id = town._id; town2._player = player2; player2._castles.Add(town2); foreach (Heroes.Core.Army army in town._armyAvKIds.Values) { Heroes.Core.Army army2 = new Heroes.Core.Army(); army2._id = army._id; army2._qty = army._qty; town2._armyAvKIds.Add(army2._id, army2); } foreach (Heroes.Core.Army army in town._armyInCastleKSlots.Values) { Heroes.Core.Army army2 = new Heroes.Core.Army(); army2._id = army._id; army2._slotNo = army._slotNo; army2._qty = army._qty; town2._armyInCastleKSlots.Add(army2._id, army2); } if (town._heroVisit != null) { int indexPlayer = mapPlayers.IndexOf(town._heroVisit._player); Heroes.Core.Map.Player playerVisit = (Heroes.Core.Map.Player)mapPlayers[indexPlayer]; int indexHero = playerVisit._heroes.IndexOf(town._heroVisit); Heroes.Core.Player playerVisit2 = (Heroes.Core.Player)players[indexPlayer]; Heroes.Core.Hero heroVisit2 = (Heroes.Core.Hero)playerVisit2._heroes[indexHero]; town2._heroVisit = heroVisit2; } } index += 1; } // copy mines foreach (Heroes.Core.Map.Mine mine in mapMines) { Heroes.Core.Mine mine2 = new Heroes.Core.Mine(mine._id); if (mine._player != null) { // get player Heroes.Core.Player player2 = GameSetting.FindPlayer(mine._player._id, players); mine2._player = player2; player2._mineKTypes[(int)Heroes.Core.MineTypeEnum.Gold].Add(mine2); } else { mine2._player = null; } } }
public BattleCommander(Heroes.Core.Player attackPlayer, Heroes.Core.Hero attackHero, Heroes.Core.Player defendPlayer, Heroes.Core.Hero defendHero, Heroes.Core.Monster monster, bool quickCombat) { _battleTerrain = new BattleTerrain(); _attackPlayer = attackPlayer; _defendPlayer = defendPlayer; { _attackHeroOriginal = attackHero; _attackHero = new Heroes.Core.Battle.Heros.Hero(); _attackHero.CopyFrom(attackHero); _attackHero._armySide = Heroes.Core.Battle.Characters.ArmySideEnum.Attacker; _attackHero._spells = attackHero._spells; foreach (Heroes.Core.Army army in attackHero._armyKSlots.Values) { Heroes.Core.Battle.Armies.Army army2 = new Heroes.Core.Battle.Armies.Army(); army2.CopyFrom(army); army2._armySide = Heroes.Core.Battle.Characters.ArmySideEnum.Attacker; army2._qtyLeft = army2._qty; army2._healthRemain = army2._health; army2._shotRemain = army2._noOfShot; army2._retaliateRemain = army2._noOfRetaliate; army2._cell = GetCell(army2._armySide, army2._slotNo, army2._isBig); army2._cell._character = army2; _attackHero._armyKSlots.Add(army2._slotNo, army2); } _attackArmies = _attackHero._armyKSlots; } _defendHeroOriginal = null; _defendHero = null; if (defendHero != null) { _defendHeroOriginal = defendHero; _defendHero = new Heroes.Core.Battle.Heros.Hero(); _defendHero.CopyFrom(defendHero); _defendHero._armySide = Heroes.Core.Battle.Characters.ArmySideEnum.Defender; _defendHero._spells = attackHero._spells; foreach (Heroes.Core.Army army in defendHero._armyKSlots.Values) { Heroes.Core.Battle.Armies.Army army2 = new Heroes.Core.Battle.Armies.Army(); army2.CopyFrom(army); army2._armySide = Heroes.Core.Battle.Characters.ArmySideEnum.Defender; army2._qtyLeft = army2._qty; army2._healthRemain = army2._health; army2._shotRemain = army2._noOfShot; army2._retaliateRemain = army2._noOfRetaliate; army2._cell = GetCell(army2._armySide, army2._slotNo, army2._isBig); army2._cell._character = army2; _defendHero._armyKSlots.Add(army2._slotNo, army2); } _defendArmies = _defendHero._armyKSlots; } _monsterOriginal = null; _monster = null; if (monster != null) { _monsterOriginal = monster; _monster = new Heroes.Core.Battle.Quick.Monster(); _monster.CopyFrom(monster); _monster._armySide = Heroes.Core.Battle.Characters.ArmySideEnum.Defender; foreach (Heroes.Core.Army army in monster._armyKSlots.Values) { Heroes.Core.Battle.Armies.Army army2 = new Heroes.Core.Battle.Armies.Army(); army2.CopyFrom(army); army2._armySide = Heroes.Core.Battle.Characters.ArmySideEnum.Defender; army2._qtyLeft = army2._qty; army2._healthRemain = army2._health; army2._shotRemain = army2._noOfShot; army2._retaliateRemain = army2._noOfRetaliate; army2._cell = GetCell(army2._armySide, army2._slotNo, army2._isBig); army2._cell._character = army2; _monster._armyKSlots.Add(army2._slotNo, army2); } _defendArmies = _monster._armyKSlots; } _heroes = new Hashtable(); _heroes.Add(_attackHero._id, _attackHero); if (_defendHero != null) _heroes.Add(_defendHero._id, _defendHero); _armies = new ArrayList(); foreach (Heroes.Core.Army army in _attackArmies.Values) { _armies.Add(army); } foreach (Heroes.Core.Army army in _defendArmies.Values) { _armies.Add(army); } BattleEngine.SortBySpeed(_armies); _quickCombat = quickCombat; _turn = new Turn(_armies, _attackHero, _attackArmies, _defendHero, _monster, _defendArmies); }
private void SetCurrentHero() { if (_currentPlayer._heroes.Count > 0) _currentHero = (Heroes.Core.Hero)_currentPlayer._heroes[0]; else _currentHero = null; }
public StartingBattleEventArg(Heroes.Core.Hero attackHero, Heroes.Core.Hero defendHero, Heroes.Core.Monster monster) { _attackHero = attackHero; _defendHero = defendHero; _monster = monster; _success = false; }