private void fightCharacter(string FightName) { FightFormat format = this.CharacterMgr.getFightCharactersFormat(FightName); this.FightLogic.acttackProcessAndOverrideFormat(ref format); this.CharacterMgr.overrideDataByFightFormat(format); this.FightAniMgr.showCurrentAni(format.FinishFormat); checkForOneTeamOutProcess(); }
public void overrideDataByFightFormat(FightFormat format) { CharacterData character; if (tryGetCharacterData(format.AttactCharacter.Name, out character)) { overrideData(character, format.AttactCharacter); } if (tryGetCharacterData(format.HurtCharacter.Name, out character)) { overrideData(character, format.HurtCharacter); } }
public void acttackProcessAndOverrideFormat(ref FightFormat format) { format.HurtCharacter.Blood -= format.AttactCharacter.Attack; AniFormat aniFormat = new AniFormat(); aniFormat.AttackInfo.AttackName = format.AttactCharacter.Name; aniFormat.AttackInfo.HurtNames = new string[] { format.HurtCharacter.Name }; if (0 >= format.HurtCharacter.Blood) { aniFormat.DeadInfo = new AniFormat.DeadAniInfo(); aniFormat.DeadInfo.Names = new string[] { format.HurtCharacter.Name }; } format.FinishFormat = aniFormat; }
public FightFormat getFightCharactersFormat(string FightName) { FightFormat format = null; CharacterData AttactCharacter; CharacterData HurtCharacter; if (FightName.Equals("魔王")) { if (tryGetCharacterData(FightName, out AttactCharacter)) { overrideFightFormat(out format, AttactCharacter, getNotBossData()); } } else { if (tryGetCharacterData(FightName, out AttactCharacter) && tryGetCharacterData("魔王", out HurtCharacter)) { overrideFightFormat(out format, AttactCharacter, HurtCharacter); } } return(format); }
private void overrideFightFormat(out FightFormat format, CharacterData AttactCharacter, CharacterData HurtCharacter) { format = new FightFormat(); format.AttactCharacter = AttactCharacter.clone(); format.HurtCharacter = HurtCharacter.clone(); }