public void Popup <A, B>(EHudPopupType popupType, A a, B b) { HudPopupBase tmpHudPopup = GetPopupInstance(popupType); if (null == tmpHudPopup) { return; } if (tmpHudPopup is IPopupStart2 <A, B> ) { (tmpHudPopup as IPopupStart2 <A, B>).StartPopup(a, b); } }
public void Popup(EHudPopupType popupType) { HudPopupBase tmpHudPopup = GetPopupInstance(popupType); if (null == tmpHudPopup) { return; } if (tmpHudPopup is IPopupStart0) { (tmpHudPopup as IPopupStart0).StartPopup(); } }
ObjectPoolBase GetPoolByType(EHudPopupType popupType) { ObjectPoolBase tmpObjPool = null; switch (popupType) { case EHudPopupType.Damage: tmpObjPool = Game.PoolMgr.GetObjectPool <HudPopupDamage>() as ObjectPoolBase; break; default: break; } return(tmpObjPool); }
HudPopupBase GetPopupInstance(EHudPopupType popupType) { ObjectPoolBase tmpPool = GetPoolByType(popupType); if (null == tmpPool) { return(null); } var tmpHudPopupBase = tmpPool.Spawn2() as HudPopupBase; if (null != tmpHudPopupBase) { tmpHudPopupBase.Initialize(Parent); mHudPopupList.Add(tmpHudPopupBase); } return(tmpHudPopupBase); }