public void AddCharacter(int npcId, ActionType action, Direction direction, int x, int y) { MCharacter mCharacter = NpcCacher.Instance.GetFromNpc(npcId); mCharacter.Belong = Belong.friend; mCharacter.StatusInit(); mCharacter.Action = action; VTile vTile = this.mapSearch.GetTile(x, y); mCharacter.X = vTile.transform.localPosition.x; mCharacter.Y = vTile.transform.localPosition.y; mCharacter.CoordinateX = x; mCharacter.CoordinateY = y; mCharacter.Direction = direction; List <MCharacter> characters = mBaseMap.Characters == null ? new List <MCharacter>() : mBaseMap.Characters.ToList(); characters.Add(mCharacter); mBaseMap.Characters = characters.ToArray(); }
public void AddCharacterSkill(int characterId, App.Model.Belong belong, int skillId, int skillLevel) { MCharacter mCharacter = System.Array.Find(mBaseMap.Characters, c => c.CharacterId == characterId && c.Belong == belong); App.Model.MSkill mSkill = new App.Model.MSkill(); mSkill.Id = mCharacter.Skills[mCharacter.Skills.Length - 1].Id + 1; mSkill.SkillId = skillId; mSkill.Level = skillLevel; List <App.Model.MSkill> skills = mCharacter.Skills.ToList(); skills.Add(mSkill); mCharacter.Skills = skills.ToArray(); if (App.Model.Master.MSkill.IsSkillType(mSkill.Master, App.Model.SkillType.ability)) { int hp = mCharacter.Hp; int mp = mCharacter.Mp; mCharacter.StatusInit(); mCharacter.Hp = hp + mSkill.Master.hp; mCharacter.Mp = mp + mSkill.Master.mp; } }
/// <summary> /// 武将初始化 /// </summary> /// <param name="mCharacter">M character.</param> private void CharacterInit(MCharacter mCharacter) { mCharacter.StatusInit(); }