public void Setup() { engine = EngineFactory.CreateEngine(); toolSelectionMenu = new ToolSelectionMenu(); engine.AddSimulator(new BasicSimulator(() => { toolSelectionMenu.ProcessUserInput(); })); TW.Graphics.SpectaterCamera.EnableUserInput = false; }
public void Simulate() { if (UserInputDisabled) { return; } toolSelectionMenu.ProcessUserInput(); /*if (TW.Graphics.Mouse.RelativeScrollWheel < 0 || TW.Graphics.Keyboard.IsKeyPressed(Key.UpArrow)) * inputHandler.OnPreviousTool(); * if (TW.Graphics.Mouse.RelativeScrollWheel > 0 || TW.Graphics.Keyboard.IsKeyPressed(Key.DownArrow)) * inputHandler.OnNextTool();*/ if (TW.Graphics.Keyboard.IsKeyPressed(Key.O)) { inputHandler.OnSave(); } if (trySimulateUIControls()) { return; } var target = GetTargetedVoxel(); if (target == null) { return; } if (target != previousTarget) { inputHandler.OnTargetChanged(target); } previousTarget = target; if (TW.Graphics.Mouse.LeftMouseJustPressed) { inputHandler.OnLeftClick(target); } if (TW.Graphics.Mouse.RightMouseJustPressed) { inputHandler.OnRightClick(target); } foreach (var k in TW.Graphics.Keyboard.PressedKeys.Where(k => TW.Graphics.Keyboard.IsKeyPressed(k))) { inputHandler.OnKeyPressed(target, k); } }