- Home /
Why the variable updates only twice?
I have a script which controls an object in x direction. It also should give the direction of the object but the variable is only updated twice. If I move to the left in the log is written left if I move to the right after it is written right but if I move to the left again, nothing happens. Could anyone help?
var speed = 1;
static private var direction:String;
function Update () {
if(Input.GetKeyDown("left")){
direction="left";
}
if(Input.GetKeyDown("right")){
direction="right";
}
transform.Translate(Input.GetAxis("Horizontal")*speed*Time.deltaTime,0,0);
print(direction);
}
Is there a chance you have Collapse selected in the Console window? $$anonymous$$ake sure you have it turned off!
http://docs.unity3d.com/Documentation/$$anonymous$$anual/Console.html
When Collapse is enabled, identical messages will only be shown once.
http://answers.unity3d.com/questions/55419/print-event-only-happening-once.html
Answer by SolidSnake · Nov 13, 2012 at 05:58 PM
use Debug.Log instead of print.
I had issues with print before when trying to log the same value.. not sure if this a feature or a bug .
==Edit== tested your code with print (I am using Unity 3.5.6) and it logs fine
As alucardj said it might be the collapse option.
The only issue with print is that it doesn't work in non-$$anonymous$$onoBehaviour classes. Other than that it works the same as Debug.Log.
Your answer
Follow this Question
Related Questions
GUI Variables doesn't update C# 0 Answers
summing up items price in runtime 1 Answer
Which variables are usable to set my update frequency? 1 Answer
How do i use a value from a var 1 Answer
Set guiText 1 Answer