Kartbahn

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hi,


    Ich habe mir eine Kartbahn vor langer Zeit gemappt und wollte jetzt einen schönen Startpunkt scripten.


    Ich hab mir das so vorgestellt:


    Oben ist eine Tafel beim Start. Dort werde ich Bollardlights (Grün und Rot) ranmachen. Wenn jetz einer z.b. /startkart macht, dann sollten zuerst die Grünen Lichter kommen und nachher die Roten. Also so:


    Zuerst dann wieder nochmals Und nochmals (Alle aber nacheinander!)


    Dann Rot alle zusammen...




    Wie scripte ich das? Mit einem Timer?


    Mfg Vince


  • //Ganz oben
    new Lights = 0, LightsObjects[5];
    // In den Startbefehl fürs Kartbahnrennen
    SetTimer("Kartbahn", 1000, 0);


    public Kartbahn()
    {
    if(!Lights)
    {
    LightsObjects[0] = CreateObject(objectgrün, x,y,z,rotx,roty,rotz,streamdistance); // Grünes Licht 1
    Lights++;
    SetTimer("Kartbahn", 1000, 0);
    }
    else if(Lights == 1)
    {
    LightsObjects[1] = CreateObject(objectgrün, x,y,z,rotx,roty,rotz,streamdistance); // Grünes Licht 2
    Lights++;
    SetTimer("Kartbahn", 1000, 0);
    }
    else if(Lights == 2)
    {
    LightsObjects[2] = CreateObject(objectgrün, x,y,z,rotx,roty,rotz,streamdistance); // Grünes Licht 3
    Lights++;
    SetTimer("Kartbahn", 1000, 0);
    }
    else if(Lights == 3)
    {
    LightsObjects[3] = CreateObject(objectgrün, x,y,z,rotx,roty,rotz,streamdistance); // Grünes Licht 4
    Lights++;
    SetTimer("Kartbahn", 1000, 0);
    }
    else if(Lights == 4)
    {
    for(new i = 0; i<4; i++) DestroyObject(LightsObjects[i]);
    LightsObjects[0] = CreateObject(objectrot, x,y,z,rotx,roty,rotz,streamdistance); // Rotes Licht 1
    LightsObjects[1] = CreateObject(objectrot, x,y,z,rotx,roty,rotz,streamdistance); // Rotes Licht 2
    LightsObjects[2] = CreateObject(objectrot, x,y,z,rotx,roty,rotz,streamdistance); // Rotes Licht 3
    LightsObjects[3] = CreateObject(objectrot, x,y,z,rotx,roty,rotz,streamdistance); // Rotes Licht 4
    SetTimer("Kartbahn2", 4000, 0);
    }
    return 1;
    }


    public Kartbahn2()
    {
    for(new i = 0; i<4; i++) DestroyObject(LightsObjects[i]);
    Lights = 0;
    return 1;
    }


    Ungetestet!
    Viel Spaß ;)
    Den Rest musst du alleine können!

  • Fehlen da nicht noch new's und vor allem forwards?



    Mfg Vince


    EDIT:


    Habs probiert: Errors: Hier mein Script: http://pastebin.com/76zFKLNt


    C:\Users\Vince\Desktop\Kartbahn.pwn(241) : warning 235: public function lacks forward declaration (symbol "Kartbahn")
    C:\Users\Vince\Desktop\Kartbahn.pwn(243) : error 017: undefined symbol "Lights"
    C:\Users\Vince\Desktop\Kartbahn.pwn(245) : error 017: undefined symbol "LightsObjects"
    C:\Users\Vince\Desktop\Kartbahn.pwn(245) : warning 215: expression has no effect
    C:\Users\Vince\Desktop\Kartbahn.pwn(245) : error 001: expected token: ";", but found "]"
    C:\Users\Vince\Desktop\Kartbahn.pwn(245) : error 029: invalid expression, assumed zero
    C:\Users\Vince\Desktop\Kartbahn.pwn(245) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    5 Errors.




    PS: Aber ich danke dir vielmals, dass du dir diese Mühe gibst :D

    Einmal editiert, zuletzt von Vince ()