protected void Deactivate(QuestConnection connection) { QuestObjectState state = GetState(connection); if (state.Locked || state.Active == QuestObjectState.ActivationState.Inactive) { return; } state.Active = QuestObjectState.ActivationState.Inactive; GameDebugger.Log(LogLevel.Debug, "QS: {0} '0x{1:X16}' deactivated", connection.GetType().Name, connection.Id); Deactivate((QuestPin)connection.Target); }
protected void Lock(QuestConnection connection, bool propagate) { QuestObjectState state = GetState(connection); if (state.Locked) { return; } state.Locked = true; GameDebugger.Log(LogLevel.Debug, "QS: {0} '0x{1:X16}' locked", connection.GetType().Name, connection.Id); if (propagate) { Lock((QuestPin)connection.Source); } }