public override void InitState(ContentManager content, MainGame owner) { base.InitState(content, owner); GlobalVariables.MonsterManager = new MonsterManager(); GlobalVariables.MonsterManager.InitPrototypes(content, @"Data\monster\monster.xml"); _charManager.InitPrototypes(content, @"Data\character\character.xml"); _mapManager.InitPrototypes(content, @"Data\Map\map01.xml"); _map = (Map)_mapManager.CreateObject(0); GlobalVariables.MapCollisionDim = _map.CollisionDim; _char = (PlayerCharacter)_charManager.CreateObject(0); _char.SetMap(_map); _listMonsters = _map.InitMonsterList(); _frog = new Frog(); _frog.Init(content); _frog.SetCharacter(_char); }
public void SetCharacter(PlayerCharacter _char) { _character = _char; }
public override bool InitPrototypes(ContentManager content, string fileName) { try { XmlDocument doc = new XmlDocument(); doc.Load(fileName); XmlNodeList nodelist = doc.SelectNodes(@"//Character"); _nprototype = nodelist.Count; _prototype = new VisibleGameObject[_nprototype]; for (int i = 0; i < nodelist.Count; ++i) { _prototype[i] = new PlayerCharacter(); _prototype[i]._nsprite = 40; _prototype[i]._sprite = new GameSprite[_prototype[i]._nsprite]; XmlNode node = nodelist[i].SelectSingleNode(@"Stand"); GameSprite[] temp = Utility.LoadSprites(node, content); for (int j = 0; j < 8; ++j) _prototype[i]._sprite[j] = temp[j]; node = nodelist[i].SelectSingleNode(@"Move"); temp = Utility.LoadSprites(node, content); for (int j = 8; j < 16; ++j) _prototype[i]._sprite[j] = temp[j - 8]; node = nodelist[i].SelectSingleNode(@"Attack"); temp = Utility.LoadSprites(node, content); for (int j = 16; j < 24; ++j) _prototype[i]._sprite[j] = temp[j - 16]; node = nodelist[i].SelectSingleNode(@"Dying"); temp = Utility.LoadSprites(node, content); for (int j = 24; j < 32; ++j) _prototype[i]._sprite[j] = temp[j - 24]; node = nodelist[i].SelectSingleNode(@"Dyed"); temp = Utility.LoadSprites(node, content); for (int j = 32; j < 40; ++j) _prototype[i]._sprite[j] = temp[j - 32]; ((PlayerCharacter)_prototype[i]).CellToMove = new List<Point>(); ((PlayerCharacter)_prototype[i]).DestPoint = new Point(); ((PlayerCharacter)_prototype[i]).IsMoving = false; ((PlayerCharacter)_prototype[i]).Map = null; ((PlayerCharacter)_prototype[i]).Speed = int.Parse(nodelist[i].SelectSingleNode(@"Speed").InnerText); ((PlayerCharacter)_prototype[i]).Hp = int.Parse(nodelist[i].SelectSingleNode(@"Hp").InnerText); ((PlayerCharacter)_prototype[i]).Mp = int.Parse(nodelist[i].SelectSingleNode(@"Mp").InnerText); ((PlayerCharacter)_prototype[i]).CriticalRate = int.Parse(nodelist[i].SelectSingleNode(@"CriticalRate").InnerText); ((PlayerCharacter)_prototype[i]).Attack = int.Parse(nodelist[i].SelectSingleNode(@"Damage").InnerText); ((PlayerCharacter)_prototype[i]).Defense = int.Parse(nodelist[i].SelectSingleNode(@"Defense").InnerText); ((PlayerCharacter)_prototype[i]).AttackSpeed = int.Parse(nodelist[i].SelectSingleNode(@"AttackSpeed").InnerText); ((PlayerCharacter)_prototype[i]).Range = int.Parse(nodelist[i].SelectSingleNode(@"Range").InnerText); ((PlayerCharacter)_prototype[i]).X = 0; ((PlayerCharacter)_prototype[i]).Y = 0; ((PlayerCharacter)_prototype[i]).HitFrame = int.Parse(nodelist[i].SelectSingleNode(@"HitFrame").InnerText); } return true; } catch { return false; } }
public void SetCharacter(PlayerCharacter _char) { _character = _char; _char.Skillboard = this; }
//------------------ public void SetCharacter(PlayerCharacter _char) { _character = _char; _char.Healthbar = this; }
public void SetCharacter(PlayerCharacter _char) { _character = _char; _character.LhSkillSelectionFrame = this; }
public override bool InitOne(ContentManager content, int id) { try { XmlDocument _doc = new XmlDocument(); _doc.Load(_xmlInfo); XmlNode _char = _doc.SelectSingleNode(@"//Character[@id = '" + id.ToString() + "']"); _prototype[id] = new PlayerCharacter(); _prototype[id]._nsprite = 56; _prototype[id]._sprite = new GameSprite[_prototype[id]._nsprite]; XmlNode node = _char.SelectSingleNode(@"Stand"); GameSprite[] temp = Utility.LoadSprites(node, content); for (int j = 0; j < 8; ++j) _prototype[id]._sprite[j] = temp[j]; node = _char.SelectSingleNode(@"Move"); temp = Utility.LoadSprites(node, content); for (int j = 8; j < 16; ++j) _prototype[id]._sprite[j] = temp[j - 8]; node = _char.SelectSingleNode(@"Attack1"); temp = Utility.LoadSprites(node, content); for (int j = 16; j < 24; ++j) _prototype[id]._sprite[j] = temp[j - 16]; node = _char.SelectSingleNode(@"Attack2"); temp = Utility.LoadSprites(node, content); for (int j = 24; j < 32; ++j) _prototype[id]._sprite[j] = temp[j - 24]; node = _char.SelectSingleNode(@"Dying"); temp = Utility.LoadSprites(node, content); for (int j = 32; j < 40; ++j) _prototype[id]._sprite[j] = temp[j - 32]; node = _char.SelectSingleNode(@"Dyed"); temp = Utility.LoadSprites(node, content); for (int j = 40; j < 48; ++j) _prototype[id]._sprite[j] = temp[j - 40]; node = _char.SelectSingleNode(@"Skill"); temp = Utility.LoadSprites(node, content); for (int j = 48; j < 56; ++j) _prototype[id]._sprite[j] = temp[j - 48]; ((PlayerCharacter)_prototype[id]).CellToMove = new List<Point>(); ((PlayerCharacter)_prototype[id]).DestPoint = new Point(); ((PlayerCharacter)_prototype[id]).IsMoving = false; ((PlayerCharacter)_prototype[id]).Map = null; ((PlayerCharacter)_prototype[id]).Speed = int.Parse(_char.SelectSingleNode(@"Speed").InnerText); ((PlayerCharacter)_prototype[id]).Hp = int.Parse(_char.SelectSingleNode(@"Hp").InnerText); ((PlayerCharacter)_prototype[id]).Mp = int.Parse(_char.SelectSingleNode(@"Mp").InnerText); ((PlayerCharacter)_prototype[id]).CriticalRate = int.Parse(_char.SelectSingleNode(@"CriticalRate").InnerText); ((PlayerCharacter)_prototype[id]).MinDamage = int.Parse(_char.SelectSingleNode(@"MinDamage").InnerText); ((PlayerCharacter)_prototype[id]).MaxDamage = int.Parse(_char.SelectSingleNode(@"MaxDamage").InnerText); ((PlayerCharacter)_prototype[id]).Defense = int.Parse(_char.SelectSingleNode(@"Defense").InnerText); ((PlayerCharacter)_prototype[id]).AttackSpeed = int.Parse(_char.SelectSingleNode(@"AttackSpeed").InnerText); ((PlayerCharacter)_prototype[id]).Range = int.Parse(_char.SelectSingleNode(@"Range").InnerText); ((PlayerCharacter)_prototype[id]).X = 0; ((PlayerCharacter)_prototype[id]).Y = 0; ((PlayerCharacter)_prototype[id]).HitFrame = int.Parse(_char.SelectSingleNode(@"HitFrame").InnerText); ((PlayerCharacter)_prototype[id]).CastFrame = int.Parse(_char.SelectSingleNode(@"CastFrame").InnerText); ((PlayerCharacter)_prototype[id]).MaxHp = int.Parse(_char.SelectSingleNode(@"MaxHp").InnerText); ((PlayerCharacter)_prototype[id]).MaxMp = int.Parse(_char.SelectSingleNode(@"MaxMp").InnerText); ((PlayerCharacter)_prototype[id]).ChangeToDodge = int.Parse(_char.SelectSingleNode(@"ChangeToDodge").InnerText); ((PlayerCharacter)_prototype[id]).Level = 1; ((PlayerCharacter)_prototype[id]).CurrentEXP = 0; ((PlayerCharacter)_prototype[id]).NextLevelEXP = 6000; return true; } catch { return false; } }
public override void InitState(GameObjectManager[] objectManagerArray, MainGame owner) { base.InitState(objectManagerArray, owner); _map = (Map)objectManagerArray[1].CreateObject(0); GlobalVariables.MapCollisionDim = _map.CollisionDim; _char = (PlayerCharacter)objectManagerArray[0].CreateObject(0); _char.SetMap(_map); _char.StateOwner = this; _map.Owner = this; _listMonsters = _map.InitMonsterList((MonsterManager)objectManagerArray[2],@"Data\Map\map01\map01_monster.xml"); _frog = new Fog(); _frog.Init(owner.Content); _frog.SetCharacter(_char); _displayMessageLayer = new DisplayMessageLayer(); //Phần ???--------------------------------------------------------------------------- _listPortral = _map.InitPortralList((PortralManager)objectManagerArray[4], @"Data\Map\map01\map01_portral.xml"); _listObstacle = _map.InitObstacle((MapObstacleManager)objectManagerArray[5], @"Data\Map\map01\map01_obstacle.xml"); _objectManagerArray = objectManagerArray; _listToDraw = new List<VisibleGameEntity>(); _char.InitSkill(); //Phần healthbar-------------------------------------------------------------------- _healthBar = new HealthBar(); _healthBar.SetCharacter(_char); List<GameObjectManager> _resourcesForHealthbar = new List<GameObjectManager>(); _resourcesForHealthbar.Add(objectManagerArray[8]); _resourcesForHealthbar.Add(objectManagerArray[9]); _resourcesForHealthbar.Add(objectManagerArray[10]); _resourcesForHealthbar.Add(objectManagerArray[11]); _healthBar.GetResources(_resourcesForHealthbar); //Phần SkillBoard------------------------------------------------------------------ _skillBoard = new SkillBoard(); _skillBoard.SetCharacter(_char); List<GameObjectManager> _resourcesForSkillBoard = new List<GameObjectManager>(); _resourcesForSkillBoard.Add(objectManagerArray[8]); _resourcesForSkillBoard.Add(objectManagerArray[10]); _resourcesForSkillBoard.Add(objectManagerArray[11]); _skillBoard.GetResources(_resourcesForSkillBoard); //Phần Left-hand selection frame _lhSkillSelectionFrame = new LHSkillSelectionFrame(); _lhSkillSelectionFrame.SetCharacter(_char); List<GameObjectManager> _resourceForLHSSelectionFrame = new List<GameObjectManager>(); _resourceForLHSSelectionFrame.Add(_objectManagerArray[8]); _resourceForLHSSelectionFrame.Add(_objectManagerArray[10]); _lhSkillSelectionFrame.GetResources(_resourceForLHSSelectionFrame); //Phần Right-hand selection frame _rhSkillSelectionFrame = new RHSkillSelectionFrame(); _rhSkillSelectionFrame.SetCharacter(_char); _rhSkillSelectionFrame.GetResources(_resourceForLHSSelectionFrame); //Phần subMenu _subMenu = new SubMenu(); List<GameObjectManager> _resourceForSubMenu = new List<GameObjectManager>(); _resourceForSubMenu.Add(_objectManagerArray[8]); _resourceForSubMenu.Add(_objectManagerArray[10]); _subMenu.GetResources(_resourceForSubMenu); _subMenu.GetStateOwner(this); //Phần infoBoard _infoBoard = new InfoBoard(); _infoBoard.SetCharacter(_char); List<GameObjectManager> _resourceForInfo = new List<GameObjectManager>(); _resourceForInfo.Add(_objectManagerArray[8]); _resourceForInfo.Add(_objectManagerArray[10]); _resourceForInfo.Add(_objectManagerArray[11]); _infoBoard.GetResources(_resourceForInfo); }
public override bool InitOne(ContentManager content, int id) { try { XmlDocument _doc = new XmlDocument(); _doc.Load(_xmlInfo); XmlNode _char = _doc.SelectSingleNode(@"//Character[@id = '" + id.ToString() + "']"); _prototype[id] = new PlayerCharacter(); _prototype[id]._nsprite = 56; _prototype[id]._sprite = new GameSprite[_prototype[id]._nsprite]; XmlNode node = _char.SelectSingleNode(@"Stand"); GameSprite[] temp = Utility.LoadSprites(node, content); for (int j = 0; j < 8; ++j) { _prototype[id]._sprite[j] = temp[j]; } node = _char.SelectSingleNode(@"Move"); temp = Utility.LoadSprites(node, content); for (int j = 8; j < 16; ++j) { _prototype[id]._sprite[j] = temp[j - 8]; } node = _char.SelectSingleNode(@"Attack1"); temp = Utility.LoadSprites(node, content); for (int j = 16; j < 24; ++j) { _prototype[id]._sprite[j] = temp[j - 16]; } node = _char.SelectSingleNode(@"Attack2"); temp = Utility.LoadSprites(node, content); for (int j = 24; j < 32; ++j) { _prototype[id]._sprite[j] = temp[j - 24]; } node = _char.SelectSingleNode(@"Dying"); temp = Utility.LoadSprites(node, content); for (int j = 32; j < 40; ++j) { _prototype[id]._sprite[j] = temp[j - 32]; } node = _char.SelectSingleNode(@"Dyed"); temp = Utility.LoadSprites(node, content); for (int j = 40; j < 48; ++j) { _prototype[id]._sprite[j] = temp[j - 40]; } node = _char.SelectSingleNode(@"Skill"); temp = Utility.LoadSprites(node, content); for (int j = 48; j < 56; ++j) { _prototype[id]._sprite[j] = temp[j - 48]; } ((PlayerCharacter)_prototype[id]).CellToMove = new List <Point>(); ((PlayerCharacter)_prototype[id]).DestPoint = new Point(); ((PlayerCharacter)_prototype[id]).IsMoving = false; ((PlayerCharacter)_prototype[id]).Map = null; ((PlayerCharacter)_prototype[id]).Speed = int.Parse(_char.SelectSingleNode(@"Speed").InnerText); ((PlayerCharacter)_prototype[id]).Hp = int.Parse(_char.SelectSingleNode(@"Hp").InnerText); ((PlayerCharacter)_prototype[id]).Mp = int.Parse(_char.SelectSingleNode(@"Mp").InnerText); ((PlayerCharacter)_prototype[id]).CriticalRate = int.Parse(_char.SelectSingleNode(@"CriticalRate").InnerText); ((PlayerCharacter)_prototype[id]).MinDamage = int.Parse(_char.SelectSingleNode(@"MinDamage").InnerText); ((PlayerCharacter)_prototype[id]).MaxDamage = int.Parse(_char.SelectSingleNode(@"MaxDamage").InnerText); ((PlayerCharacter)_prototype[id]).Defense = int.Parse(_char.SelectSingleNode(@"Defense").InnerText); ((PlayerCharacter)_prototype[id]).AttackSpeed = int.Parse(_char.SelectSingleNode(@"AttackSpeed").InnerText); ((PlayerCharacter)_prototype[id]).Range = int.Parse(_char.SelectSingleNode(@"Range").InnerText); ((PlayerCharacter)_prototype[id]).X = 0; ((PlayerCharacter)_prototype[id]).Y = 0; ((PlayerCharacter)_prototype[id]).HitFrame = int.Parse(_char.SelectSingleNode(@"HitFrame").InnerText); ((PlayerCharacter)_prototype[id]).CastFrame = int.Parse(_char.SelectSingleNode(@"CastFrame").InnerText); ((PlayerCharacter)_prototype[id]).MaxHp = int.Parse(_char.SelectSingleNode(@"MaxHp").InnerText); ((PlayerCharacter)_prototype[id]).MaxMp = int.Parse(_char.SelectSingleNode(@"MaxMp").InnerText); ((PlayerCharacter)_prototype[id]).ChangeToDodge = int.Parse(_char.SelectSingleNode(@"ChangeToDodge").InnerText); ((PlayerCharacter)_prototype[id]).Level = 1; ((PlayerCharacter)_prototype[id]).CurrentEXP = 0; ((PlayerCharacter)_prototype[id]).NextLevelEXP = 6000; return(true); } catch { return(false); } }