void InitNameLb(EEntityProto proto) { if (mInitNameLb) { return; } switch (proto) { case EEntityProto.Player: InitPlayerNameLb(); if (PeGameMgr.IsMulti) { NameLbShow(true); } break; case EEntityProto.Npc: case EEntityProto.RandomNpc: NameLbShow(true); break; case EEntityProto.Monster: case EEntityProto.Doodad: NameLbShow(false); break; default: NameLbShow(false); break; } }
bool CanShowHpChange(float hpChange, EEntityProto entityProto, out Color col) { // 非玩家加血不显示数字 col = Color.red; //lz-2016.11.03 游戏暂停的时候不显示 if (hpChange > 0 && entityProto != EEntityProto.Player || Pathea.PeGameMgr.gamePause) { return(false); } if (entityProto == EEntityProto.Player) { col = hpChange < 0 ? PlayerHurt : PlayerHeal; } else if (entityProto == EEntityProto.Npc || entityProto == EEntityProto.RandomNpc) { col = NPCHurt; } else if (entityProto == EEntityProto.Tower) { col = CreationHurt; } else if (entityProto == EEntityProto.Monster) { col = MonsterHurt; } else if (entityProto == EEntityProto.Doodad) { col = DoodadHurt; } return(true); }
bool ShowHPChange(float hpChange, Vector3 position, EEntityProto entityProto) { if (!m_ShowHPChange) { return(false); } if (GameUI.Instance == null) { return(false); } if (GameUI.Instance.mMainPlayer == null) { return(false); } if (GameUI.Instance.mUIWorldMap == null) { return(false); } if (GameUI.Instance.mUIWorldMap.isShow) { return(false); } if ((position - GameUI.Instance.mMainPlayer.position).magnitude > 100) { return(false); } if (s_Instance == null) { return(false); } if (hpChange == 0f) { return(false); } if (hpChange < 1.0f && hpChange > 0f) { hpChange = 1f; } if (hpChange > -1f && hpChange < 0f) { hpChange = -1f; } Color col = Color.red; if (CanShowHpChange(hpChange, entityProto, out col)) { AddNode(position, hpChange, col); return(true); } return(false); }
void TimerCout(EEntityProto proto, float startTime) { if (proto == EEntityProto.Player || mCurBloodTrans == null || !mDamge) { return; } if (Time.time - startTime >= BLOOD_MAX_TIME && mDamge) { BloodShow(false); mDamge = false; } return; }
void InitBlood(EEntityProto proto) { if (mInitBlood) { return; } switch (proto) { case EEntityProto.Player: InitPlyerBlood(); break; case EEntityProto.Npc: case EEntityProto.Monster: case EEntityProto.Doodad: InitOtherBlood(); break; default: BloodShow(false); break; } }
void SwichBloodByProto(EEntityProto proto) { if (mCurBloodTrans != null) { return; } switch (proto) { case EEntityProto.Player: { if (PeGameMgr.IsMulti && null != m_Entity) { if (null == m_Entity.netCmpt || (null != PeCreature.Instance && m_Entity == PeCreature.Instance.mainPlayer)) { //lz-2016.11.07 玩家自己显示红色血条 mCurBloodTrans = PlayerTrans; mCurBloodSlider = mBloodPlayer; } else { //lz-2016.11.07 队友显示蓝色血条 if (null != m_Entity.netCmpt.network && null != PeCreature.Instance && null != PeCreature.Instance.mainPlayer && null != PeCreature.Instance.mainPlayer.netCmpt && null != PeCreature.Instance.mainPlayer.netCmpt.network && m_Entity.netCmpt.network.TeamId == PeCreature.Instance.mainPlayer.netCmpt.network.TeamId) { mCurBloodTrans = NpcTrans; mCurBloodSlider = mBloodNpc; } else { //lz-2016.11.07 敌人显示红色血条 mCurBloodTrans = PlayerTrans; mCurBloodSlider = mBloodPlayer; } } } else { //lz-2016.11.07 单人红色血条 mCurBloodTrans = PlayerTrans; mCurBloodSlider = mBloodPlayer; } } break; // case EEntityProto.RandomNpc: case EEntityProto.Npc: { mCurBloodTrans = NpcTrans; mCurBloodSlider = mBloodNpc; } break; case EEntityProto.Monster: case EEntityProto.Doodad: { mCurBloodTrans = MonsterTrans; mCurBloodSlider = mBloodMonster; } break; default: { mCurBloodTrans = null; mCurBloodSlider = null; } break; } }