void Awake() { ShrinkOrExanpand = new Ps4Controller(); ShrinkOrExanpand.Player.Shrink.performed += ctx => Shrink(); ShrinkOrExanpand.Player.Expand.performed += ctx => Expand(); ShrinkOrExanpand.Player.Reset.performed += ctx => ResetRoom(); }
void Awake() { movePlayer = new Ps4Controller(); movePlayer.Player.MovePlayer.performed += ctx => move = ctx.ReadValue <Vector2>(); movePlayer.Player.MovePlayer.canceled += ctx => move = Vector2.zero; movePlayer.Player.LightsOn.performed += ctx => closeTheLight(); movePlayer.Player.LanternOn.performed += ctx => closeTheLantern(); movePlayer.Player.Escape.performed += ctx => Escape(); }
internal unsafe static bool TryRegisterPS4Controller(IntPtr handle, out Ps4Controller controller, out string product) { controller = null; var devName = GetRawInputDeviceName(handle); char[] arr = new char[126]; product = null; var devHandle = CreateFileW(devName, FileAccess.Read, FileShare.ReadWrite, IntPtr.Zero, FileMode.Open, FileAttributes.Normal, IntPtr.Zero); fixed(char *p = arr) { if (HidD_GetProductString(devHandle, p, 126)) { product = new string(p); var index = product.IndexOf('\0'); if (index != -1) { product.Remove(index); } } } if (product == "Wireless Controller") { var preparsedData = IntPtr.Zero; if (!HidD_GetPreparsedData(devHandle, ref preparsedData)) { devHandle.Close(); return(false); } HidPCaps caps = new HidPCaps(); if (HidP_GetCaps(preparsedData, ref caps) != NTStatus.Success) { HidD_FreePreparsedData(ref preparsedData); devHandle.Close(); return(false); } if (caps.InputReportByteLength == 64) { HidD_FreePreparsedData(ref preparsedData); controller = new Ps4Controller(devHandle, caps); return(true); } else { devHandle.Close(); return(false); } } devHandle.Close(); return(false); }
void Awake() { makeBeep = new Ps4Controller(); makeBeep.Player.Beep.performed += ctx => TurnOn(); }
// Start is called before the first frame update void Awake() { lookTo = new Ps4Controller(); lookTo.LookTo.lookAt.performed += ctx => rotate = ctx.ReadValue <Vector2>(); lookTo.LookTo.lookAt.canceled += ctx => rotate = Vector2.zero; }