public override void LoseState(BattlePokemonData pokemon) { NeedReplaceSKill.context.Remove(pokemon.ID); DebugHelper.LogFormat("{0}大闹一番状态解除", pokemon.Ename); pokemon.RemoveChangeState(ChangeStateEnumForPokemon.RockWrecker); DebugHelper.LogFormat("{0}因为大闹一番混乱了", pokemon.Ename); pokemon.AddChangeState(ChangeStateEnumForPokemon.Flinch); }
public override void BattleStartEffect(BattlePokemonData pokemon, ref bool canEnd) { if (!wait.ContainsKey(pokemon.ID)) { NeedReplaceSKill.context[pokemon.ID] = skillID; pokemon.AddChangeState(ChangeStateEnumForPokemon.WaitNextAround); canEnd = true; wait[pokemon.ID] = 1; } else if (wait.ContainsKey(pokemon.ID) && NeedReplaceSKill.context.ContainsKey(pokemon.ID)) { NeedReplaceSKill.context.Remove(pokemon.ID); wait.Remove(pokemon.ID); } }
public override void OnBeAttacked(ref bool hit, BattlePokemonData self, Skill skill, BattlePokemonData attackPokemon) { int skillID = attackPokemon.LastUseSkillID; if (hit && -1 != skillID) { if (RandomService.game.Int(0, 100) < 30) { string skillName = ResourceController.Instance.allSkillDic[skillID].sname; attackPokemon.AddChangeState(ChangeStateEnumForPokemon.DisableSkill); DebugHelper.LogFormat("{1}触发了{0}的诅咒之躯特性,{2}被封印了", attackPokemon.Ename, self.Ename, skillName); } } }
public override void HitEffect(BattlePokemonData pokemon) { CanNotEscapeState.ifCanScape[pokemon.ID] = time; pokemon.AddChangeState(ChangeStateEnumForPokemon.RockWrecker); }
public override void HitEffect(BattlePokemonData pokemon) { NeedReplaceSKill.context[pokemon.ID] = skillID; pokemon.AddChangeState(ChangeStateEnumForPokemon.RockWrecker); }
public override void HitEffect(BattlePokemonData pokemon) { pokemon.AddChangeState(ChangeStateEnumForPokemon.Flinch); }