void DrawAddEffect(ref Boost pBoost) { EditorGUILayout.BeginHorizontal(); m_CurrentEffectType = (BaseEffect.EFFECT_TYPE)EditorGUILayout.EnumPopup(m_CurrentEffectType); if (GUILayout.Button("Add Effect")) { if (pBoost.Effects == null) { pBoost.Effects = new List <Boost.Effect>(); } Boost.Effect tEffect = new Boost.Effect(); tEffect.Type = m_CurrentEffectType; tEffect.m_Effect = BaseEffect.GetEffectObject(tEffect.Type); pBoost.Effects.Add(tEffect); } EditorGUILayout.EndHorizontal(); }
public static void DrawTypeList(ref BaseEffect pBaseEffect, BaseEffect.EFFECT_TYPE pEffectType) { switch (pEffectType) { case BaseEffect.EFFECT_TYPE.BLOCK: BlockEffectDrawer tBlockEffectDrawer = new BlockEffectDrawer(); tBlockEffectDrawer.Draw(ref pBaseEffect); break; case BaseEffect.EFFECT_TYPE.CROSS: CrossEffectDrawer tCrossEffectDrawer = new CrossEffectDrawer(); tCrossEffectDrawer.Draw(ref pBaseEffect); break; case BaseEffect.EFFECT_TYPE.DESTROY_BY_TYPE: DestroyByTypeEffectDrawer tDestroyByTypeEffectDrawer = new DestroyByTypeEffectDrawer(); tDestroyByTypeEffectDrawer.Draw(ref pBaseEffect); break; } }