Exemplo n.º 1
0
 public void UpdateItem()
 {
     this.isModeOpen = (this.systemId == 0 || SystemOpenManager.IsSystemOn(this.systemId, out this.failedType, out this.failedValue));
     if (this.isModeOpen)
     {
         this.UpdateTime();
     }
     else
     {
         SystemOpenFailedType systemOpenFailedType = this.failedType;
         if (systemOpenFailedType != SystemOpenFailedType.LevelOpen)
         {
             if (systemOpenFailedType != SystemOpenFailedType.Task)
             {
                 this.InfoText.set_text(string.Empty);
             }
             else
             {
                 this.InfoText.set_text(GameDataUtils.GetChineseContent(513532, false));
             }
         }
         else
         {
             this.InfoText.set_text(string.Format(GameDataUtils.GetChineseContent(513512, false), this.failedValue));
         }
     }
 }
Exemplo n.º 2
0
    public static bool IsSystemOn(int systemId, out SystemOpenFailedType failedType, out int failedValue)
    {
        if (ClientGMManager.Instance.IsAlwaysOpen)
        {
            failedType  = SystemOpenFailedType.None;
            failedValue = 0;
            return(true);
        }
        SystemOpen systemOpen = DataReader <SystemOpen> .Get(systemId);

        if (systemOpen != null && EntityWorld.Instance.EntSelf != null)
        {
            if (EntityWorld.Instance.EntSelf.Lv < systemOpen.level)
            {
                failedType  = SystemOpenFailedType.LevelOpen;
                failedValue = systemOpen.level;
                return(false);
            }
            if (systemOpen.taskId > 0 && !MainTaskManager.Instance.IsFinishedTask(systemOpen.taskId))
            {
                failedType  = SystemOpenFailedType.Task;
                failedValue = systemOpen.taskId;
                return(false);
            }
            if (systemOpen.levelClose > 0 && EntityWorld.Instance.EntSelf.Lv > systemOpen.levelClose)
            {
                failedType  = SystemOpenFailedType.LevelClose;
                failedValue = systemOpen.levelClose;
                return(false);
            }
        }
        failedType  = SystemOpenFailedType.None;
        failedValue = 0;
        return(true);
    }