//Run when the program is unloaded or closed public override void Exit() { //Set up the camera follow for hte player CameraEvent cei = new CameraEvent(); //cei.target = (Node2D)player.GetParent().GetParent().GetParent(); cei.target = GetNode <Node2D>("../../../Main"); cei.FireEvent(); //Call program event and pass along the movement data to the run state SendProgramEvent pei = new SendProgramEvent(); pei.leftInputTimer = leftInputTimer; pei.rightInputTimer = rightInputTimer; pei.upInputTimer = upInputTimer; pei.downInputTimer = downInputTimer; pei.lmbInputTimer = lmbInputTimer; pei.rmbInputTimer = rmbInputTimer; pei.mousePosTimer = mousePosTimer; pei.FireEvent(); //Hide the programing map displayMap.Visible = false; //Unregister the keyboard and mouse position input methods InputCallbackEvent.UnregisterListener(GrabInput); MouseInputCallbackEvent.UnregisterListener(GrabMouseInput); }
public override void _ExitTree() { InputCallbackEvent.UnregisterListener(GetInput); MouseInputCallbackEvent.UnregisterListener(GetMousePos); }