- Home /
Can't Modify PlatformerCharacter2D Jump Force From Other Script
Hey there Unity community,
I have been trying to modify this darn jump force value for a couple days now! No matter how I modify the value in the PlatformerCharacter2D script and how I modify my access method in my other script, I can't get it to change!
I am creating a powerup that on pickup will adjust the player's jump force from 450 to 600 for 8 seconds then return it back to 450.
I have tried using StartCoroutine and also modifying the value with a static command, but no matter what I do it just won't budge.
Here is the script (PlatformerCharacter2D) containing jump force:
using UnityEngine;
public class PlatformerCharacter2D : MonoBehaviour
{
bool facingRight = true; // For determining which way the player is currently facing.
[SerializeField] float maxSpeed = 4f; // The fastest the player can travel in the x axis.
**public float jumpForce = 450f;** // Amount of force added when the player jumps.
[Range(0, 1)]
[SerializeField] float crouchSpeed = .25f; // Amount of maxSpeed applied to crouching movement. 1 = 100%
[SerializeField] bool airControl = true; // Whether or not a player can steer while jumping;
[SerializeField] LayerMask whatIsGround; // A mask determining what is ground to the character
Transform groundCheck; // A position marking where to check if the player is grounded.
float groundedRadius = .2f; // Radius of the overlap circle to determine if grounded
bool grounded = false; // Whether or not the player is grounded.
Transform ceilingCheck; // A position marking where to check for ceilings
float ceilingRadius = .01f; // Radius of the overlap circle to determine if the player can stand up
Animator anim; // Reference to the player's animator component.
bool doubleJump = false;
I cut off just the top portion of the script because it is a bit lengthy.
The line needed to be modified is denoted with line .
Can someone provide a sample script that I can modify to attach to an object that will change the jump force on 3 different objects on collision, then switch it back to the default 450 after 8 seconds?
Any help is much appreciated. Some filler names for the 3 objects to have their jump force modified could be object1, object2 and object 3.
Thanks again!
Your answer
Follow this Question
Related Questions
Character doesn't jump repeatedly 1 Answer
2d Beat Em Up Jump Functionality 0 Answers
Cannot call Coroutine on another Gameobject. 2 Answers
Jumping from a floor to another floor (2D) 2 Answers
Accelerating speed 2 Answers