Quantcast
Channel: Questions in topic: "javascipt"
Viewing all articles
Browse latest Browse all 1875

Why am I only allowed to trigger my dash script once?

$
0
0
I have a player movement controller script and a dash script. The movement controller turns on the dash script whenever space is pressed but for some reason it only works once. It won't let me do it a second time. Can anyone tell me why? Here's the movement controller: #pragma strict var originalMoveSpeed : float; var moveSpeed : float; var dashSpeed : float; var clampRadius : float; var walkSpeed : float; var isDashing : boolean; var rb2D : Rigidbody2D; var movement : Vector2; var playerObject : GameObject; function Update () { movement.x = Input.GetAxisRaw("Horizontal"); movement.y = Input.GetAxisRaw("Vertical"); } function FixedUpdate () { //normalize movement if (movement.magnitude > 1) { movement = movement.normalized; } //move rb2D.MovePosition(rb2D.position + movement * moveSpeed * Time.fixedDeltaTime); movement = Vector3.ClampMagnitude(movement, clampRadius); //dash if(Input.GetKeyDown(KeyCode.Space) && playerObject.GetComponent(playerDash).enabled == false) { playerObject.GetComponent(playerDash).enabled = true; } //walk if(Input.GetKey(KeyCode.LeftShift) == true && !Input.GetKeyDown(KeyCode.Space) == true) { moveSpeed = walkSpeed; } else { moveSpeed = originalMoveSpeed; } } Here's the dash script: #pragma strict var dashSpeed : float; var dashTime : float; var isDashing : boolean; var playerObject : GameObject; function Start () { isDashing = true; playerObject = GameObject.Find("player"); yield WaitForSeconds(dashTime); isDashing = false; } function Update () { if(isDashing == true) { playerObject.GetComponent(playerMovement).moveSpeed = dashSpeed; } else { playerObject.GetComponent(playerMovement).moveSpeed = playerObject.GetComponent(playerMovement).originalMoveSpeed; playerObject.GetComponent(playerDash).enabled = false; } }

Viewing all articles
Browse latest Browse all 1875

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>