x


Need help with my script

i have one major problem with this script. everyting works except the buttons "Erster Wert" (first value) and "Letzter Wert" (last value)..

i am really finished off D:

var Source : TextAsset;
var ZeigerSpeed : GameObject;
var ZeigerRPM   : GameObject;
var ZeigerHitze : GameObject;
var DisplaySpeed : GUIText;
var DisplayRPM : GUIText;
var DigitalSpeed = 0;
var DigitalRPM = 0;
var DrehungSpeed = 0.0;
var DrehungRpm = 0.0;
var DrehungHitze = 0.0;

var Paused : boolean = false;
var Rewinding : boolean = false;
var ErsterWert : boolean = false;
var LetzterWert : boolean = false;

var DrehungSpeed_alt = 0.0;
var DrehungRpm_alt = 0.0;
var DrehungHitze_alt = 0.0;

var counter =4;

var i = 4;



function Dashboard()
{
    var lines = Source.text.Split("\n"[0]);
    for(i = counter; i < lines.Length; i++)
    {

        DrehungSpeed_alt = DrehungSpeed;
        DrehungRpm_alt = DrehungRpm;
        DrehungHitze_alt = DrehungHitze;
        var values = lines[i].Split(";"[0]);
        DrehungSpeed = int.Parse(values[4]);
        DrehungRpm = int.Parse(values[8]);
        DigitalSpeed = int.Parse(values[4]);
        //DrehungHitze = int.Parse(values[XXXX]);
        DrehungSpeed = Mathf.Clamp(DrehungSpeed/300.0 * 180.0,0.0,180.0);
        DrehungRpm = Mathf.Clamp(DrehungRpm/8000.0 * 240.0,0.0,240.0);

        DigitalRPM = int.Parse(values[8]);
       yield WaitForSeconds(1.0);
       counter = i;
       if(Paused == true) 
       { 
         Rewinding = false;
         ErsterWert = false;
         LetzterWert = false;
         break;


       }

       if(Rewinding == true)
       {
             Paused = false;
             ErsterWert = false;
             LetzterWert = false;
             for(i = counter; i > 4; i--)
           {

        values = lines[i].Split(";"[0]);
        DrehungSpeed_alt = DrehungSpeed;
        DrehungRpm_alt = DrehungRpm;
        DrehungHitze_alt = DrehungHitze;

        DrehungSpeed = int.Parse(values[4]);
        DrehungRpm = int.Parse(values[8]);
        DigitalSpeed = int.Parse(values[4]);
        //DrehungHitze = int.Parse(values[XXXX]);
        DrehungSpeed = Mathf.Clamp(DrehungSpeed/300.0 * 180.0,0.0,180.0);
        DrehungRpm = Mathf.Clamp(DrehungRpm/8000.0 * 240.0,0.0,240.0);

        DigitalRPM = int.Parse(values[8]);
       yield WaitForSeconds(1.0);
       counter = i;



           }

    } 

        if(ErsterWert == true)
        {
           Paused = false;
           Rewinding = false;
           LetzterWert = false;


           values = lines[4].Split(";"[0]);
           DrehungSpeed = int.Parse(values[4]);
            DrehungRpm = int.Parse(values[8]);
            DigitalSpeed = int.Parse(values[4]);
            //DrehungHitze = int.Parse(values[XXXX]);
            DrehungSpeed = Mathf.Clamp(DrehungSpeed/300.0 * 180.0,0.0,180.0);
            DrehungRpm = Mathf.Clamp(DrehungRpm/8000.0 * 240.0,0.0,240.0);

            DigitalRPM = int.Parse(values[8]);
         yield WaitForSeconds(1.0);
        }

        if(LetzterWert == true)
        {
           Paused = false;
           Rewinding = false;
           ErsterWert = false;

           var endwert = lines.length - 1.0;

           values = lines[endwert].Split(";"[0]);
           DrehungSpeed = int.Parse(values[4]);
            DrehungRpm = int.Parse(values[8]);
            DigitalSpeed = int.Parse(values[4]);
            //DrehungHitze = int.Parse(values[XXXX]);
            DrehungSpeed = Mathf.Clamp(DrehungSpeed/300.0 * 180.0,0.0,180.0);
            DrehungRpm = Mathf.Clamp(DrehungRpm/8000.0 * 240.0,0.0,240.0);

            DigitalRPM = int.Parse(values[8]);
         yield WaitForSeconds(1.0);

        }

}
}
function OnGUI(){


    if(GUI.Button(Rect(10,10,50,50),"Play"))

    {

       Dashboard();

    }

    if(GUI.Button(Rect(10,70,50,50),"Pause")) 

       { 
         if(Paused == false) Paused = true; 
         else 
         Paused=false;
         Dashboard(); 

       }




    if(GUI.Button(Rect(10,130,70,50),"Rewind"))
    {
       Rewinding = true;
    }


    if(GUI.Button(Rect(10,190,100,50),"Erster Wert"))
    {
       ErsterWert = true;
    }


    if(GUI.Button(Rect(10,250,100,50),"Letzter Wert"))
    {
       LetzterWert = true;
    }

    GUI.Box(Rect(0,1080,Screen.width,Screen.height/4.0),"Zeilennummer : " + i + "\n" + "Geschwindigkeit : " + DigitalSpeed + "\n" + "Umdrehungen Pro Minute : " + DigitalRPM + "\n");
}
function Start()
{   

}   

function Update()
{


    ZeigerSpeed.transform.rotation = Quaternion.Lerp(ZeigerSpeed.transform.rotation,Quaternion.Euler(0,0,DrehungSpeed),Time.deltaTime*1.5);
    ZeigerRPM.transform.rotation = Quaternion.Lerp(ZeigerRPM.transform.rotation,Quaternion.Euler(0,0,DrehungRpm),Time.deltaTime);
    //ZeigerHitze.transform.rotation = Quaternion.Lerp(ZeigerHitze.transform.rotation,Quaternion.Euler(0,0,DrehungHitze),Time.deltaTime); //No algorithm yet
     DisplaySpeed.text = DigitalSpeed.ToString("000 km/h");
     DisplayRPM.text = DigitalRPM.ToString("0000 RPM");

}
more ▼

asked Jun 03 '11 at 12:39 PM

biohazard gravatar image

biohazard
303 36 42 46

also offering translations of the variables!

Jun 03 '11 at 01:34 PM biohazard

Could you give the expected behavior? What do you want to happen compared to what actually is happening?

Jun 03 '11 at 01:37 PM Peter G

if i press first value button, the needles on my dashboard are supposed to rotate after the first line's values in my TextAsset....now you can guess what last value button does :O

Jun 03 '11 at 01:43 PM biohazard

I take it this is a speedometer for a car?

How to apply it to test it out?

Whats an Ersterwert and a lesterwert?

Jun 03 '11 at 02:07 PM RetepTrun

ErsterWert = first value LetzterWert = last value

it is a speedometer.

make 3 cyliners and pretend they are ur needles. get a .csv file with speed values in it.

Jun 03 '11 at 02:16 PM biohazard
(comments are locked)
10|3000 characters needed characters left

0 answers: sort voted first
Be the first one to answer this question
toggle preview:

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Topics:

x5276
x3892
x3816
x3570
x3420

asked: Jun 03 '11 at 12:39 PM

Seen: 736 times

Last Updated: Jun 19 '11 at 11:57 PM