public override void Update(double gameTime) { if (ManagerEvents.Active) { return; } _counter += gameTime; if (_counter < _cooldown) { return; } var ownerSprite = GetComponent <Sprite>(ComponentType.Sprite); if (ownerSprite == null) { return; } foreach (var baseObject in _targetList) { var sprite = baseObject.GetComponent <Sprite>(ComponentType.Sprite); if (sprite != null) { if (ManagerFunction.Distance(ownerSprite.Position, sprite.Position) < _distance) { ManagerEvents.AddEvents(_gameEvent); _counter = 0; } } } }
public void StartEvent() { if (!ManagerEvents.Active) { var keys = _gameEvents.Keys; var biggest = -1; foreach (int key in keys) { if (key > biggest && ManagerLists.GetEventSwitchValue(key)) { biggest = key; } } if (biggest != -1) { ManagerEvents.AddEvents(_gameEvents[biggest]); } } }