private void AddExtraStatusIfEnabled(Self self, UIStatusIcon.STATUS_TYPE status)
 {
     if (StatusEnabled(self, status))
     {
         exst.Add((int)status);
     }
 }
示例#2
0
 public void SyncFromPlayer(Player player)
 {
     if (Object.op_Implicit(player) && player.isInitialized)
     {
         UpdatePlayerStatus(player.hp, player.buffParam.CreateSyncParam(BuffParam.BUFFTYPE.NONE), player.weaponData.eId);
         List <int> list = null;
         for (int i = 0; i < UIStatusIcon.NON_BUFF_STATUS.Length; i++)
         {
             UIStatusIcon.STATUS_TYPE sTATUS_TYPE = UIStatusIcon.NON_BUFF_STATUS[i];
             if (Coop_Model_RoomSyncPlayerStatus.StatusEnabled(player, sTATUS_TYPE))
             {
                 if (!extraStatus.Contains((int)sTATUS_TYPE))
                 {
                     if (list == null)
                     {
                         list = new List <int>();
                     }
                     list.Add((int)sTATUS_TYPE);
                 }
             }
             else if (extraStatus.Contains((int)sTATUS_TYPE) && list == null)
             {
                 list = new List <int>();
             }
         }
         if (list != null)
         {
             extraStatus = list;
             if (this.onUpdateBuff != null)
             {
                 this.onUpdateBuff();
             }
         }
     }
 }
    public void SetExtraStatus(Self self, List <int> prevStatus)
    {
        bool flag = prevStatus != null && prevStatus.Count > 0;

        for (int i = 0; i < UIStatusIcon.NON_BUFF_STATUS.Length; i++)
        {
            UIStatusIcon.STATUS_TYPE status = UIStatusIcon.NON_BUFF_STATUS[i];
            if (!flag || !prevStatus.Contains(i))
            {
                AddExtraStatusIfEnabled(self, status);
            }
        }
    }
 public static bool StatusEnabled(Player self, UIStatusIcon.STATUS_TYPE status)
 {
     return(UIStatusIcon.CheckStatus(status, self, false));
 }