void RemoveBuff(Buff buff) { switch (buff) { case Buff.None: shadow.enabled = false; break; case Buff.Attack_Up: if (stateBuffLevel_atk != null) { stateBuffLevel_atk.Release(); } stateBuffLevel_atk = null; break; case Buff.MoveSpeed_Up: if (stateBuffLevel_moveSpeed != null) { stateBuffLevel_moveSpeed.Release(); } stateBuffLevel_moveSpeed = null; break; } }
void OnStageChange_ProduceSpeedUp(int level) { if (level == 0) { if (stateBuffLevel_produceSpeed != null) { if (stateBuffLevel_produceSpeed != null) { stateBuffLevel_produceSpeed.Release(); } stateBuffLevel_produceSpeed = null; } } else { if (stateBuffLevel_produceSpeed != null) { stateBuffLevel_produceSpeed.SetLevel(level, legionData.colorId); } else { GameObject go = War.pool.stateBuffProduceSpeedUp.Get(); stateBuffLevel_produceSpeed = go.GetComponent <AbstateStateBuffLevel>(); stateBuffLevel_produceSpeed.SetLevel(level, legionData.colorId); go.transform.SetParent(transform, false); go.transform.localPosition = Vector3.zero; go.transform.localEulerAngles = Vector3.zero; go.SetActive(true); } } }