public ColorType GetPlayerNameColor(IEntity en) { ColorType color = ColorType.White; GameCmd.eCamp mycamp = (GameCmd.eCamp)MainPlayerHelper.GetMainPlayer().GetProp((int)CreatureProp.Camp); GameCmd.eCamp camp = (GameCmd.eCamp)en.GetProp((int)CreatureProp.Camp); if (camp != GameCmd.eCamp.CF_None && mycamp != GameCmd.eCamp.CF_None) { if (camp != mycamp) { int pkvalue = en.GetProp((int)PlayerProp.PKValue); switch (pkvalue) { case 0: color = ColorType.JSXT_Enemy_White; break; case 1: color = ColorType.JSXT_Enemy_Gray; break; case 2: color = ColorType.JSXT_Enemy_Yellow; break; case 3: color = ColorType.JSXT_Enemy_Red; break; } return(color); } else if (camp == mycamp) { return(ColorType.White); } } GameCmd.enumGoodNess goodNess = (GameCmd.enumGoodNess)en.GetProp((int)PlayerProp.GoodNess); switch (goodNess) { case GameCmd.enumGoodNess.GoodNess_Badman: color = ColorType.JSXT_Enemy_Yellow; break; case GameCmd.enumGoodNess.GoodNess_Evil: color = ColorType.JSXT_Enemy_Red; break; case GameCmd.enumGoodNess.GoodNess_Hero: break; case GameCmd.enumGoodNess.GoodNess_Normal: color = ColorType.JSXT_Enemy_White; break; case GameCmd.enumGoodNess.GoodNess_Rioter: color = ColorType.JSXT_Enemy_Gray; break; default: break; } return(color); }
public bool Conform(IPlayer e) { if (m_pkmodel == PLAYERPKMODEL.PKMODE_M_TEAM) { if (m_controllerhelper != null && m_controllerhelper.IsSameTeam(e)) { return(false); } } else if (m_pkmodel == PLAYERPKMODEL.PKMODE_M_FAMILY) { if (m_controllerhelper != null && m_controllerhelper.IsSameFamily(e)) { return(false); } } else if (m_pkmodel == PLAYERPKMODEL.PKMODE_M_CAMP) { if (m_controllerhelper != null && !m_controllerhelper.IsEnemyCamp(e)) { return(false); } } else if (m_pkmodel == PLAYERPKMODEL.PKMODE_M_JUSTICE) { //6) 善恶模式:白名、黄名玩家可攻击灰名、红名玩家以及怪物,灰名、红名玩家可以攻击白名、黄名玩家以及怪物。 if (m_mainPlayer != null) { GameCmd.enumGoodNess mainPlayerGoodNess = (GameCmd.enumGoodNess)m_mainPlayer.GetProp((int)PlayerProp.GoodNess); GameCmd.enumGoodNess targetGoodNess = (GameCmd.enumGoodNess)e.GetProp((int)PlayerProp.GoodNess); //GoodNess_Badman Color.yellow; //GoodNess_Normal Color.white; //GoodNess_Rioter Color.gray; //GoodNess_Evil Color.red; if (mainPlayerGoodNess == GameCmd.enumGoodNess.GoodNess_Normal || GameCmd.enumGoodNess.GoodNess_Badman == mainPlayerGoodNess) { if (targetGoodNess != GameCmd.enumGoodNess.GoodNess_Rioter && GameCmd.enumGoodNess.GoodNess_Evil != targetGoodNess) { return(false); } } else if (mainPlayerGoodNess == GameCmd.enumGoodNess.GoodNess_Rioter || GameCmd.enumGoodNess.GoodNess_Evil == mainPlayerGoodNess) { if (targetGoodNess != GameCmd.enumGoodNess.GoodNess_Normal && GameCmd.enumGoodNess.GoodNess_Badman != targetGoodNess) { return(false); } } } } if (e.IsDead()) { return(false); } Vector3 distance = m_playerPos - e.GetPos(); if (distance.sqrMagnitude <= m_dis * m_dis) { return(true); } //Vector3 pos = m_maincamera.WorldToViewportPoint(e.GetNode().GetWorldPosition()); //bool isVisible = (m_maincamera.orthographic || pos.z > 0f) && (pos.x > 0f && pos.x < 1f && pos.y > 0f && pos.y < 1f); //return isVisible; return(true); }