- Home /
Very Simple Left and Right Movement Script [OR] disable dravity on CharacterController?
Hello, all. I am making a very simple game where you push left and right to move a gameobject back and forth. I currently have this script:
var speed = 3.0; function Update () { var controller : CharacterController = GetComponent(CharacterController); var forward = transform.TransformDirection(Vector3.right); var curSpeed = speed * Input.GetAxis ("Horizontal"); controller.SimpleMove(forward * curSpeed); }
@script RequireComponent(CharacterController)
The problem is that the object I attach this to, since it generates the CharacterController, drops due to gravity. Is there a way to stop it from doing this (or disabling gravity altogether in the whole game), or could somebody please include a new script that does the same effect without using a character controller?
Thank you so much!
-Keavon
Answer by AngryOldMan · Mar 11, 2011 at 01:23 AM
you could always just apply it to a game object instead of character controller. edit Just tested this, it works fine but ignors collision
var speed : float = 3;
function Update () { var translationX : float = Input.GetAxis ("Vertical") speed; var translationZ : float = Input.GetAxis ("Horizontal") speed; translationX = Time.deltaTime; translationZ = Time.deltaTime; transform.Translate (translationX, 0, translationZ); }
or use move instead of simpleMove (not tested that)
Wonderful. I'll try that now. I don't even care about collision, so yay!
Answer by zmar0519 · Mar 11, 2011 at 02:06 AM
Or, simply set the gravity to zero (on the fps walker/motor).
Your answer
Follow this Question
Related Questions
Help with CharacterController.Move 0 Answers
How to fix a infinity jump? 1 Answer
fps script not working 1 Answer
Custom Character Script Allowing Movement in the Air? 0 Answers