diff --git a/Assets/Prefabs/stalkerNew.prefab b/Assets/Prefabs/stalkerNew.prefab index 161a406d88ba5fb6688610bf808aa6b45abfb310..3bc5cf3622348b574a91e2c3582c8c8911a9e855 100644 --- a/Assets/Prefabs/stalkerNew.prefab +++ b/Assets/Prefabs/stalkerNew.prefab @@ -664,6 +664,7 @@ GameObject: - component: {fileID: 8706493581688564357} - component: {fileID: -5845172045446496843} - component: {fileID: 5153501092162567107} + - component: {fileID: -3475432261814998841} m_Layer: 10 m_Name: stalkerNew m_TagString: Enemy @@ -774,3 +775,25 @@ Rigidbody: m_Interpolate: 0 m_Constraints: 0 m_CollisionDetection: 0 +--- !u!195 &-3475432261814998841 +NavMeshAgent: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7193182883264875344} + m_Enabled: 1 + m_AgentTypeID: 0 + m_Radius: 2.5810952 + m_Speed: 3.5 + m_Acceleration: 8 + avoidancePriority: 50 + m_AngularSpeed: 120 + m_StoppingDistance: 0 + m_AutoTraverseOffMeshLink: 1 + m_AutoBraking: 1 + m_AutoRepath: 1 + m_Height: 5.234543 + m_BaseOffset: 2.6172714 + m_WalkableMask: 4294967295 + m_ObstacleAvoidanceType: 4 diff --git a/Assets/Scenes/Level_01.unity b/Assets/Scenes/Level_01.unity index c4239ea3dac3f35b6d5d4573e93efbf185971b21..fa150b64ee213b3fb7d979fcd97bca6793ddeef1 100644 --- a/Assets/Scenes/Level_01.unity +++ b/Assets/Scenes/Level_01.unity @@ -427,7 +427,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 8ec45203ae7a1a54c9d02c355f983833, type: 3} m_Name: m_EditorClassIdentifier: - speed: 6 --- !u!114 &33458249 MonoBehaviour: m_ObjectHideFlags: 0 @@ -467,23 +466,6 @@ MonoBehaviour: deathClip: {fileID: 8300000, guid: d36a393bca4582043982db9089e1694f, type: 3} flashSpeed: 5 flashColour: {r: 1, g: 0, b: 0, a: 0.1} ---- !u!114 &33458252 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 33458244} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d2ec7b0143f45684d84465ca4e1ae31d, type: 3} - m_Name: - m_EditorClassIdentifier: - startingPower: 10 - currentPower: 0 - powerSlider: {fileID: 941469807} - damageImage: {fileID: 1109176449} - deathClip: {fileID: 8300000, guid: d36a393bca4582043982db9089e1694f, type: 3} --- !u!135 &33458253 SphereCollider: m_ObjectHideFlags: 0 @@ -525,8 +507,6 @@ MonoBehaviour: startingSpeed: 10 currentSpeed: 0 speedSlider: {fileID: 375658143} - damageImage: {fileID: 1109176449} - deathClip: {fileID: 8300000, guid: d36a393bca4582043982db9089e1694f, type: 3} --- !u!1 &36326047 GameObject: m_ObjectHideFlags: 0 @@ -6373,9 +6353,23 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 27c63be2a8918c741863160b9d9da122, type: 3} m_Name: m_EditorClassIdentifier: - damagePerShot: 20 timeBetweenBullets: 0.15 range: 100 +--- !u!114 &581701022 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 581701014} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d2ec7b0143f45684d84465ca4e1ae31d, type: 3} + m_Name: + m_EditorClassIdentifier: + startingPower: 20 + currentPower: 0 + powerSlider: {fileID: 941469807} --- !u!1 &725605032 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Player/PlayerMovement.cs b/Assets/Scripts/Player/PlayerMovement.cs index f72bc7b304b3f1a75095f9503f8bf11403110a56..774a5e33875a9c589c12b20c66847e34f2cb9684 100644 --- a/Assets/Scripts/Player/PlayerMovement.cs +++ b/Assets/Scripts/Player/PlayerMovement.cs @@ -2,7 +2,8 @@ public class PlayerMovement : MonoBehaviour { - public float speed = 6f; + //public float speed = 6f; + PlayerSpeed playerSpeed; Vector3 movement; Animator anim; Rigidbody playerRigidbody; @@ -19,6 +20,7 @@ public class PlayerMovement : MonoBehaviour //Mendapatkan komponen Rigidbody playerRigidbody = GetComponent<Rigidbody>(); + playerSpeed = GetComponent<PlayerSpeed>(); } private void FixedUpdate() @@ -41,7 +43,7 @@ public class PlayerMovement : MonoBehaviour     movement.Set(h, 0f, v); //Menormalisasi nilai vector agar total panjang dari vector adalah 1 - movement = movement.normalized * speed * Time.deltaTime; + movement = movement.normalized * playerSpeed.currentSpeed * Time.deltaTime; //Move to position playerRigidbody.MovePosition(transform.position + movement); diff --git a/Assets/Scripts/Player/PlayerPower.cs b/Assets/Scripts/Player/PlayerPower.cs index 8d2ac048da0df82859eee1ce1dc5bae4b80f3ecc..a54d204bd42204a0ab8415714956846cd9c02c8c 100644 --- a/Assets/Scripts/Player/PlayerPower.cs +++ b/Assets/Scripts/Player/PlayerPower.cs @@ -5,25 +5,15 @@ using UnityEngine.SceneManagement; public class PlayerPower : MonoBehaviour { - public int startingPower = 10; + public int startingPower = 20; public int currentPower; Animator anim; public Slider powerSlider; - public Image damageImage; - public AudioClip deathClip; - AudioSource playerAudio; - PlayerMovement playerMovement; - PlayerShooting playerShooting; - PlayerHealth playerHealth; // Start is called before the first frame update - void Start() + void Awake() { anim = GetComponent<Animator>(); - playerAudio = GetComponent<AudioSource>(); - playerMovement = GetComponent<PlayerMovement>(); - playerHealth = GetComponent<PlayerHealth>(); // - playerShooting = GetComponentInChildren<PlayerShooting>(); currentPower = startingPower; } diff --git a/Assets/Scripts/Player/PlayerShooting.cs b/Assets/Scripts/Player/PlayerShooting.cs index ebd9aaf206967e9a8c7b15e07c4d6d4da282c9bc..570a01b30942e7b1817a35ff79ae228e063bf41b 100644 --- a/Assets/Scripts/Player/PlayerShooting.cs +++ b/Assets/Scripts/Player/PlayerShooting.cs @@ -2,10 +2,11 @@ public class PlayerShooting : MonoBehaviour { - public int damagePerShot = 20; + //public int damagePerShot = 20; public float timeBetweenBullets = 0.15f; - public float range = 100f; + public float range = 100f; + PlayerPower playerPower; float timer; Ray shootRay = new Ray(); RaycastHit shootHit; @@ -23,6 +24,7 @@ public class PlayerShooting : MonoBehaviour gunLine = GetComponent<LineRenderer>(); gunAudio = GetComponent<AudioSource>(); gunLight = GetComponent<Light>(); + playerPower = GetComponent<PlayerPower>(); } void Update() @@ -69,7 +71,7 @@ public class PlayerShooting : MonoBehaviour if (enemyHealth != null) { - enemyHealth.TakeDamage(damagePerShot, shootHit.point); + enemyHealth.TakeDamage(playerPower.currentPower, shootHit.point); } gunLine.SetPosition(1, shootHit.point); diff --git a/Assets/Scripts/Player/PlayerSpeed.cs b/Assets/Scripts/Player/PlayerSpeed.cs index 9248013bc32d412a40b764e1e4820a4e837b4159..916dce7119f81e5aefed7abba6603431be385f85 100644 --- a/Assets/Scripts/Player/PlayerSpeed.cs +++ b/Assets/Scripts/Player/PlayerSpeed.cs @@ -5,25 +5,15 @@ using UnityEngine.SceneManagement; public class PlayerSpeed : MonoBehaviour { - public int startingSpeed = 10; - public int currentSpeed; + public float startingSpeed = 10f; + public float currentSpeed; Animator anim; public Slider speedSlider; - public Image damageImage; - public AudioClip deathClip; - AudioSource playerAudio; - PlayerMovement playerMovement; - PlayerShooting playerShooting; - PlayerHealth playerHealth; // Start is called before the first frame update - void Start() + void Awake() { anim = GetComponent<Animator>(); - playerAudio = GetComponent<AudioSource>(); - playerMovement = GetComponent<PlayerMovement>(); - playerHealth = GetComponent<PlayerHealth>(); // - playerShooting = GetComponentInChildren<PlayerShooting>(); currentSpeed = startingSpeed; }