public void CalledEveryFrame() { foreach (KeyValuePair <int, float> kvp in runtimeData.skillContinueSet) { int key = kvp.Key; float effectTime = kvp.Value; if (effectTime == 0) { continue; } effectTime -= Time.deltaTime; if (effectTime <= 0) { BattleService battle = GameCore.GetRegistServices <BattleService>(); battle.GetSkillByID(key); } effectTime = Mathf.Min(0, effectTime); } }