public override void update() { base.update(); if (justPressedLeftButton() && isPosInScreen(gameScreenPos)) { Trigger trigger = new Trigger(); trigger.position = new Vector2(getMousePosInZ().X, getMousePosInZ().Y); TriggerManager.Instance.addTrigger(trigger); MyEditor.Instance.changeState(new EditorState_EditTrigger(trigger)); } }
public void addTrigger(Trigger trigger) { triggers.Add(trigger); }
public EditorState_EditTrigger(Trigger selected = null) : base() { this.selected = selected; }
public override void update() { base.update(); if (justPressedLeftButton() && isPosInScreen(gameScreenPos)) //&& (Math.Abs(lastMouseState.X - mouseState.X) > 2 || Math.Abs(lastMouseState.Y - mouseState.Y) > 2)) { selected = null; foreach (Trigger trigger in TriggerManager.Instance.getTriggers()) { float delta = (getMousePosInZ().toVector2() - trigger.position).Length(); if (delta < 25 && (selected == null || delta < selectedDelta)) { selected = trigger; selectedDelta = delta; } } if (selected != null) { updateFunctions(); } } }