public static void Postfix(Pawn ingester, ref JoyState __state) { if (!__state.IsVCEDesert) { return; } if (__state.PreviousTolerance.EqualsTo(0)) { __state.PreviousTolerance = 0f; } if (__state.PreviousTolerance < 0) { return; } __state.Tolerances[JoyKindDefOf.Gluttonous] = __state.PreviousTolerance; if (__state.PreviousTolerance <= 0.5f) { DefMap <JoyKindDef, bool> bored = (DefMap <JoyKindDef, bool>)_bored.GetValue(ingester.needs.joy.tolerances); bored[JoyKindDefOf.Gluttonous] = false; } }
static Vector2f RespondToJoystickEvents(Vector2f pos) { Vector2f newpos = new Vector2f(pos.X, pos.Y); if (JoyState.HasFlag(ControllerState.DPAD_UP_PRESSED)) { newpos = new Vector2f(pos.X, pos.Y - 1); } if (JoyState.HasFlag(ControllerState.DPAD_DOWN_PRESSED)) { newpos = new Vector2f(pos.X, pos.Y + 1); } if (JoyState.HasFlag(ControllerState.DPAD_LEFT_PRESSED)) { newpos = new Vector2f(pos.X - 1, pos.Y); } if (JoyState.HasFlag(ControllerState.DPAD_RIGHT_PRESSED)) { newpos = new Vector2f(pos.X + 1, pos.Y); } if (JoyState.HasFlag(ControllerState.B_PRESSED)) { newpos = RespawnCentreScreen(); } return(newpos); }
static void RespondToJoystickEvents(RectangleShape player) { buttonText.DisplayedString = XboxController.RefreshButtonPressed(); axisText.DisplayedString = XboxController.RefreshAxisPressed(); if (JoyState.HasFlag(ControllerState.DPAD_UP_PRESSED)) { player.Position = new Vector2f(player.Position.X, player.Position.Y - 1); } if (JoyState.HasFlag(ControllerState.DPAD_DOWN_PRESSED)) { player.Position = new Vector2f(player.Position.X, player.Position.Y + 1); } if (JoyState.HasFlag(ControllerState.DPAD_LEFT_PRESSED)) { player.Position = new Vector2f(player.Position.X - 1, player.Position.Y); } if (JoyState.HasFlag(ControllerState.DPAD_RIGHT_PRESSED)) { player.Position = new Vector2f(player.Position.X + 1, player.Position.Y); } if (JoyState.HasFlag(ControllerState.B_PRESSED)) { player.Position = RespawnCentreScreen(); } }
static void Main(string[] args) { RenderWindow app = new RenderWindow(new VideoMode(800, 600), "OMG, it works!"); app.Closed += new EventHandler(OnClose); Color windowColor = new Color(77, 255, 130); CircleShape shape = new CircleShape(10); shape.FillColor = new Color(Color.Red); RectangleShape square = new RectangleShape(); square.FillColor = new Color(Color.Red); square.Position = new Vector2f(app.Size.X / 2, app.Size.Y / 2); square.OutlineColor = new Color(0, 0, 0, 255); square.Size = new Vector2f(50, 50); // Start the game loop while (app.IsOpen()) { // Process events app.DispatchEvents(); // Clear screen app.Clear(windowColor); app.Draw(shape); app.Draw(square); Console.WriteLine(XboxController.RefreshButtonPressed()); Console.WriteLine(XboxController.RefreshAxisPressed()); if (JoyState.HasFlag(ControllerState.DPAD_UP_PRESSED)) { square.Position = new Vector2f(square.Position.X, square.Position.Y - 1); } if (JoyState.HasFlag(ControllerState.DPAD_DOWN_PRESSED)) { square.Position = new Vector2f(square.Position.X, square.Position.Y + 1); } if (JoyState.HasFlag(ControllerState.DPAD_LEFT_PRESSED)) { square.Position = new Vector2f(square.Position.X - 1, square.Position.Y); } if (JoyState.HasFlag(ControllerState.DPAD_RIGHT_PRESSED)) { square.Position = new Vector2f(square.Position.X + 1, square.Position.Y); } // Update the window app.Display(); } }
/// <summary> /// Start this instance. /// </summary> public void Begin(Vector3 vPosition) { m_JoyDown.transform.localPosition = vPosition; m_JoyArea.transform.localPosition = vPosition; // set joystick state m_JoyState = JoyState.JOG_MOVING; }
public static bool Prefix(Pawn ingester, Thing __instance, ref JoyState __state) { ThingDef ingestThingDef = __instance.def; JoyToleranceSet set = ingester?.needs?.joy?.tolerances; if (ingestThingDef == null || set == null || !DessertDefs.AllDeserts.Contains(ingestThingDef)) { __state = new JoyState(false, 0, null); return(true); } DefMap <JoyKindDef, float> tolerances = (DefMap <JoyKindDef, float>)_tolerances.GetValue(set); __state = new JoyState(true, tolerances[JoyKindDefOf.Gluttonous], tolerances); return(true); }
void RotatePlayer() { RaycastHit hit1; if (Input.touches.Length > 0) { foreach (Touch touch in Input.touches) { var ray1 = Camera.main.ScreenPointToRay(touch.position); //INPUT.MOUSEPOSITION if (Physics.Raycast(ray1, out hit1)) { if (hit1.collider.CompareTag("turnStick")) { showIndicator(); joyState = JoyState.pressed; fingerPosition = (transform.InverseTransformVector(hit1.point) - transform.InverseTransformVector(gameObject.transform.position)).normalized; //fingerPosition.x fingerPosition.y fingerPosition = transform.TransformVector(new Vector3(fingerPosition.x, 0, fingerPosition.y)).normalized; Debug.Log(fingerPosition); fingerPosition.y = 0f; rotateTowardsVisualizer.transform.position = player.transform.position + fingerPosition; Vector3 turnTowardsPoint = rotateTowardsVisualizer.transform.position; player.transform.LookAt(turnTowardsPoint); } else { joyState = JoyState.unpressed; hideIndicator(); } } else { joyState = JoyState.unpressed; hideIndicator(); } } } else { joyState = JoyState.unpressed; hideIndicator(); } }
/// <summary> /// End this instance. /// </summary> public void End() { m_JoyState = JoyState.JOY_IDLE; }
void Update() { fingerPosition = Vector3.zero; // if(Input.touches.Length > 0) // { // foreach (Touch touch in Input.touches) // { // if (touch.phase == TouchPhase.Began) // { // // Construct a ray from the current touch coordinates // RaycastHit hit; // var ray = arCam.ScreenPointToRay(touch.position); // if (Physics.Raycast(ray, out hit)) // { // // Create a particle if hit // //Instantiate(player, transform.position, transform.rotation); // //Debug.Log("hit object:" + hit.collider.gameObject); // if (hit.collider.CompareTag("turnStick")) // { // } // } // } // // Construct a ray from the current touch coordinates // RaycastHit hit1; // var ray1 = Camera.main.ScreenPointToRay(touch.position); // if (Physics.Raycast(ray1, out hit1)) // { // // Create a particle if hit // //Instantiate(player, transform.position, transform.rotation); // //Debug.Log("hit object:" + hit.collider.gameObject); // if (hit1.collider.CompareTag("turnStick")) // { // fingerPosition = (gameObject.transform.position - hit1.point).normalized; // joyState = JoyState.pressed; // //Debug.Log("touch position" + fingerPosition); // } // else // { // joyState = JoyState.unpressed; // } // } // else // { // joyState = JoyState.unpressed; // } // } // } RotatePlayer(); shootCooldownTracker += Time.deltaTime; if (lastJoyState == JoyState.pressed && joyState == JoyState.unpressed) { if (shootCooldownTracker >= shootCooldown) { shootCooldownTracker = 0f; Shoot(); } } lastJoyState = joyState; }