private void ControllerOperate() { if (Dualshock4.LeftStick(dualshock4Num).magnitude > 0) { //var cameraVec = transform.position - playerCamera.transform.position; //var cameraForward = Vector3.Scale(playerCamera.forward, new Vector3(1, 0, 1)).normalized; //var cameraRight = Vector3.Scale(playerCamera.right, new Vector3(1, 0, 1)).normalized; //var moveDirection = (cameraForward * Dualshock4.LeftStick(dualshock4Num).y + cameraRight * Dualshock4.LeftStick(dualshock4Num).x).normalized; var moveDirection = new Vector3(Dualshock4.LeftStick(dualshock4Num).x, 0, Dualshock4.LeftStick(dualshock4Num).y).normalized; CharacterMove(moveDirection); } if (Dualshock4.R2(dualshock4Num)) { CollectBlock(blockCollectPeriod); } else if (Dualshock4.R2Up(dualshock4Num)) { if (myAttack == null) { return; } BlockAttack(); } }
// Update is called once per frame void Update() { if (Dualshock4.LeftStick(0).magnitude > 0.3f) { if (Dualshock4.LeftStick(0).y > 0) { x = 0; startActive(); } else { creditActive(); x = 1; } } if (Dualshock4.CircleDown(0)) { if (x == 0) { Fader.switchScene("Main"); //SceneManager.LoadScene("Main"); } else { Fader.switchScene("Credit"); //SceneManager.LoadScene("Credit"); } } }
private void CharaMove() { if (Dualshock4.LeftStick(dualshock4Num).magnitude != 0) { var direction = new Vector3(Dualshock4.LeftStick(dualshock4Num).x, 0, Dualshock4.LeftStick(dualshock4Num).y); //Dualshock4.LeftStick(dualshock4Num); character.CharacterMove(direction); } else { character.CharacterStandby(); } }
private void KeyCtrl() { switch (mode) { case Mode.OnePlayer: if (blockManNames[0] == "nothing") { if (Dualshock4.LeftStick(0).x != 0 && keyTrigger[0] == false) { if (Dualshock4.LeftStick(0).x > 0) { if (nowSelected[0] < buttons.Length - 1) { buttons[nowSelected[0]].Cancel(); buttons[nowSelected[0] + 1].Select(0, Color.red); nowSelected[0] += 1; } } else if (Dualshock4.LeftStick(0).x < 0) { if (nowSelected[0] > 0) { buttons[nowSelected[0]].Cancel(); buttons[nowSelected[0] - 1].Select(0, Color.red); nowSelected[0] -= 1; } } keyTrigger[0] = true; } else if (Dualshock4.LeftStick(0).x == 0) { if (keyTrigger[0] == true) { keyTrigger[0] = false; } } if (Dualshock4.CircleDown(0)) { blockManNames[0] = buttons[nowSelected[0]].blockManName; buttons[nowSelected[0]].Decision(0, Color.red); } } break; case Mode.TwoPlayer: for (int i = 0; i < keyTrigger.Length; i++) { if (blockManNames[i] == "nothing") { if (Dualshock4.LeftStick(i + 1).x != 0 && keyTrigger[i] == false) { if (Dualshock4.LeftStick(i + 1).x > 0) { if (nowSelected[i] < buttons.Length - 1) { if (buttons[nowSelected[i] + 1].selected != 0) { if (nowSelected[i] + 2 <= buttons.Length - 1) { buttons[nowSelected[i]].Cancel(); switch (i) { case 0: buttons[nowSelected[i] + 2].Select(i + 1, Color.red); break; case 1: buttons[nowSelected[i] + 2].Select(i + 1, Color.blue); break; } nowSelected[i] += 2; } } else { buttons[nowSelected[i]].Cancel(); switch (i) { case 0: buttons[nowSelected[i] + 1].Select(i + 1, Color.red); break; case 1: buttons[nowSelected[i] + 1].Select(i + 1, Color.blue); break; } nowSelected[i] += 1; } } } else if (Dualshock4.LeftStick(i + 1).x < 0) { if (nowSelected[i] > 0) { if (buttons[nowSelected[i] - 1].selected != 0) { if (nowSelected[i] - 2 >= 0) { buttons[nowSelected[i]].Cancel(); switch (i) { case 0: buttons[nowSelected[i] - 2].Select(i + 1, Color.red); break; case 1: buttons[nowSelected[i] - 2].Select(i + 1, Color.blue); break; } nowSelected[i] -= 2; } } else { buttons[nowSelected[i]].Cancel(); switch (i) { case 0: buttons[nowSelected[i] - 1].Select(i + 1, Color.red); break; case 1: buttons[nowSelected[i] - 1].Select(i + 1, Color.blue); break; } nowSelected[i] -= 1; } } } keyTrigger[i] = true; } else if (Dualshock4.LeftStick(i + 1).x == 0) { if (keyTrigger[i] == true) { keyTrigger[i] = false; } } if (Dualshock4.CircleDown(i + 1)) { blockManNames[i] = buttons[nowSelected[i]].blockManName; switch (i) { case 0: buttons[nowSelected[i]].Decision(i + 1, Color.red); break; case 1: buttons[nowSelected[i]].Decision(i + 1, Color.blue); break; } } } } break; } int num = 0; foreach (string name in blockManNames) { if (name != "nothing") { num += 1; } } if (num == blockManNames.Length) { nextText.SetActive(true); if (Dualshock4.OptionsDown(0)) { switch (mode) { case Mode.OnePlayer: nextSceneSingleton.NextScene1P(blockManNames[0]); Fader.FadeIn(2f, "VsCOM"); break; case Mode.TwoPlayer: nextSceneSingleton.NextScene2P(blockManNames[0], blockManNames[1]); Fader.FadeIn(2f, "2P"); break; } } } }