From d0f27de4969851ca0e2f708224800f5c805357c8 Mon Sep 17 00:00:00 2001 From: Melbyj1125 <60886701+Melbyj1125@users.noreply.github.com> Date: Wed, 2 Mar 2022 13:56:24 -0600 Subject: [PATCH] should be able to kick player? --- .../DebugMoveState/dMoveStateManager.cs | 1 - .../OffenseState/OffenseStateManager.cs | 16 ++++++++++++++++ Assets/Scripts/UI/PauseMenu.cs | 8 +++++--- 3 files changed, 21 insertions(+), 4 deletions(-) diff --git a/Assets/Scripts/PlayerScripts/DebugStateMachine/DebugMoveState/dMoveStateManager.cs b/Assets/Scripts/PlayerScripts/DebugStateMachine/DebugMoveState/dMoveStateManager.cs index dccd453..33f05aa 100644 --- a/Assets/Scripts/PlayerScripts/DebugStateMachine/DebugMoveState/dMoveStateManager.cs +++ b/Assets/Scripts/PlayerScripts/DebugStateMachine/DebugMoveState/dMoveStateManager.cs @@ -119,7 +119,6 @@ public class dMoveStateManager : NetworkBehaviour pStats.CurTraction = pStats.Traction; pStats.CurAcc = pStats.Acc; - pStats.SetWeather(PlayerStats.Weather.Wind, new Vector3(1,0,0)); } // Update is called once per frame diff --git a/Assets/Scripts/PlayerScripts/NetworkedStateMachines/OffenseState/OffenseStateManager.cs b/Assets/Scripts/PlayerScripts/NetworkedStateMachines/OffenseState/OffenseStateManager.cs index c5df95a..4d6bde1 100644 --- a/Assets/Scripts/PlayerScripts/NetworkedStateMachines/OffenseState/OffenseStateManager.cs +++ b/Assets/Scripts/PlayerScripts/NetworkedStateMachines/OffenseState/OffenseStateManager.cs @@ -114,6 +114,12 @@ public class OffenseStateManager : NetworkBehaviour ApplyKickServerRPC(direction, netObjID); } + if(collision.transform.CompareTag("ArcherTarget") && myCollider == legHitbox.GetComponent()){ + Vector3 direction = this.transform.forward; + ulong netObjID = collision.gameObject.GetComponent().NetworkObjectId; + ApplyKickServerRPC(direction, netObjID); + } + if (collision.transform.CompareTag("destroyable") && myCollider == legHitbox.GetComponent()){ collision.transform.gameObject.GetComponent().damage(pStats.KickPow); } @@ -122,6 +128,7 @@ public class OffenseStateManager : NetworkBehaviour [ServerRpc(RequireOwnership = false)] private void ApplyKickServerRPC(Vector3 direction, ulong netObjId) { GameObject[] kickables = GameObject.FindGameObjectsWithTag("kickable"); + GameObject[] players = GameObject.FindGameObjectsWithTag("ArcherTarget"); foreach (GameObject kickedItem in kickables) { // First check to make sure this is the item we kicked @@ -138,5 +145,14 @@ public class OffenseStateManager : NetworkBehaviour return; } } + + foreach(GameObject kickedPlayer in players){ + //First check if the player is kicked + if(kickedPlayer.transform.root.GetComponent() != null && kickedPlayer.transform.root.GetComponent().NetworkObjectId == netObjId){ + kickedPlayer.GetComponent().GetHit(direction, 10); + } + + return; + } } } diff --git a/Assets/Scripts/UI/PauseMenu.cs b/Assets/Scripts/UI/PauseMenu.cs index 5e4f90d..4ab49ef 100644 --- a/Assets/Scripts/UI/PauseMenu.cs +++ b/Assets/Scripts/UI/PauseMenu.cs @@ -62,6 +62,11 @@ public class PauseMenu : MonoBehaviour { // Have to use if checks since only the runners have these if (player.GetComponentInChildren() != null) { player.GetComponentInChildren().IsPaused = !newState; + + // Lock the cursor + if(newState){ + Cursor.lockState = CursorLockMode.Locked; + } } // King's Movement @@ -76,9 +81,6 @@ public class PauseMenu : MonoBehaviour { // Unlock player controls setPlayerControlsStateServerRPC(true); - // Lock the cursor - Cursor.lockState = CursorLockMode.Locked; - // Hide PauseMenu PauseMenuPanel.SetActive(false); }