Beispiel #1
0
 public void SetValue(int newValue, QuestCounterSetValueMode setValueMode = QuestCounterSetValueMode.InformListeners)
 {
     m_currentValue = Mathf.Clamp(newValue, minValue, maxValue);
     if (setValueMode != QuestCounterSetValueMode.DontInformListeners)
     {
         var informDataSync = (updateMode == QuestCounterUpdateMode.DataSync) && (setValueMode != QuestCounterSetValueMode.DontInformDataSync);
         if (informDataSync)
         {
             MessageSystem.SendMessage(this, DataSynchronizer.RequestDataSourceChangeValueMessage, name, currentValue);
         }
         QuestMachineMessages.QuestCounterChanged(this, questID, name, currentValue);
         try
         {
             changed(this);
         }
         catch (Exception e) // Don't let exceptions in user-added events break our code.
         {
             if (Debug.isDebugBuild)
             {
                 Debug.LogException(e);
             }
         }
     }
 }