/// <summary> /// 根据参数配置创建类的实例 /// </summary> /// <param name="createArgs">参数配置</param> /// <returns>返回类实例</returns> public static Hero Create(XElement createArgs) { CharacterArgs data = CharacterArgs.CreateFrom(createArgs); int row, col; try { row = int.Parse(createArgs.Attribute("row").Value); col = int.Parse(createArgs.Attribute("col").Value); } catch (Exception) { throw new Exception("错误的位置"); } Coord showPosation = new Coord(col, row); string fileName = data.FaceFile; Size unitSize = GetSize(createArgs.Attribute("unitSize").Value); Hero player = new Hero(showPosation, data, unitSize); //获取背包数据 player.Pack = Packet.Create(createArgs.Element("packet")); //加载技能信息 if (createArgs.Element("skill") != null) { XElement faceXml = createArgs.Element("skill").Element("skillImages"); string[] images = Weapon.GetSkillImages(faceXml); player.SetSkillFlash(images[0], images[1], images[2]); } return(player); }
/// <summary> /// 根据参数配置创建类的实例 /// </summary> /// <param name="createArgs">参数配置</param> /// <returns>返回类实例</returns> public static MapEvent Create(XElement createArgs, Coord existCoord) { CharacterArgs data = CharacterArgs.CreateFrom(createArgs); string fileName = data.FaceFile; Size unitSize = GetSize(createArgs.Attribute("unitSize").Value); return(new Monster(existCoord, data, unitSize)); }