neon licht unter dem auto

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
  • hai ich habe mir auto licht gescripte aber nun habe ich das problem das sie noch nicht weg gehen auser bei server restart und ich will das aber so machen:
    if(strcmp(cmd,"/autolichtgreen",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    new x_nr[256];
    new farbegrun;
    new farbegrun2;
    x_nr = strtok(cmdtext, idx);
    if(!strlen(x_nr)) {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /autolichtgreen [name]");
    SendClientMessage(playerid, COLOR_WHITE, "Befehle: an, aus.");
    return 1;
    }
    if(strcmp(x_nr,"an",true) == 0)
    {
    //new farbegrun;
    //new farbegrun2;
    new Float:x,Float:y,Float:z;
    farbegrun = CreateObject(18649,x,y,z,0,0,0,0);
    farbegrun2 = CreateObject(18649,x,y,z,0,0,0,0);
    AttachObjectToVehicle(farbegrun, GetPlayerVehicleID(playerid),0.4,0,-0.80,0,0,0);
    AttachObjectToVehicle(farbegrun2, GetPlayerVehicleID(playerid),-0.4,0,-0.80,0,0,0);
    }
    else if(strcmp(x_nr,"aus",true) == 0)
    {
    DestroyObject(farbegrun);
    DestroyObject(farbegrun2);
    }
    }
    return 1;
    }
    das wenn man /autolichtgreen aus eingibt das die neonlichter wieder verschwinden
    geht das?
    wenn ja wie?

    Das Originale SOR ( Street´s of Reallife ) seit 03.10.2009

  • Hi


    Du solltest das Objekt für jedes Car definieren :)


    new farbegrun[MAX_VEHICLES]


    So halt definieren


    Und dann alles was mit den Variablen zu tun hat dann auch zu


    farbegrun[vehicleid]


    machen. Falls es falsch is, pls korrigieren, kam grad von nem Geburtstag xD


    MFG, Robdeflop®

  • if(strcmp(cmd,"/autolichtgreen",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    new x_nr[256];
    new farbegrun[MAX_VEHICLES]
    new farbegrun2[MAX_VEHICLES]
    x_nr = strtok(cmdtext, idx);
    if(!strlen(x_nr)) {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /autolichtgreen [name]");
    SendClientMessage(playerid, COLOR_WHITE, "Befehle: an, aus.");
    return 1;
    }
    if(strcmp(x_nr,"an",true) == 0)
    {
    new Float:x,Float:y,Float:z;
    farbegrun = CreateObject(18649,x,y,z,0,0,0,0);
    farbegrun2 = CreateObject(18649,x,y,z,0,0,0,0);
    AttachObjectToVehicle(farbegrun, GetPlayerVehicleID(playerid),0.4,0,-0.80,0,0,0);
    AttachObjectToVehicle(farbegrun2, GetPlayerVehicleID(playerid),-0.4,0,-0.80,0,0,0);
    }
    else if(strcmp(x_nr,"aus",true) == 0)
    {
    DestroyObject(farbegrun[vehicleid]);
    DestroyObject(farbegrun2[vehicleid]);
    }
    }
    return 1;
    }


    so oder wie meinste daS?

    Das Originale SOR ( Street´s of Reallife ) seit 03.10.2009

  • Also ich habe das nun so drinne und geteste:
    if(strcmp(cmd,"/autolichtgreen",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    new vehicleid;
    new x_nr[256];
    new farbegrun[MAX_VEHICLES];
    new farbegrun2[MAX_VEHICLES];
    x_nr = strtok(cmdtext, idx);
    if(!strlen(x_nr)) {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /autolichtgreen [name]");
    SendClientMessage(playerid, COLOR_WHITE, "Befehle: an, aus.");
    return 1;
    }
    if(strcmp(x_nr,"an",true) == 0)
    {
    //new farbegrun;
    //new farbegrun2;
    new Float:x,Float:y,Float:z;
    farbegrun[vehicleid] = CreateObject(18649,x,y,z,0,0,0,0);
    farbegrun2[vehicleid] = CreateObject(18649,x,y,z,0,0,0,0);
    AttachObjectToVehicle(farbegrun[vehicleid], GetPlayerVehicleID(playerid),0.4,0,-0.80,0,0,0);
    AttachObjectToVehicle(farbegrun2[vehicleid], GetPlayerVehicleID(playerid),-0.4,0,-0.80,0,0,0);
    }
    else if(strcmp(x_nr,"aus",true) == 0)
    {
    DestroyObject(farbegrun[vehicleid]);
    DestroyObject(farbegrun2[vehicleid]);
    }
    }
    return 1;
    }
    aber wenn ich /autolichtgreen aus mache passirt wieder nicht de lichter gehen nicht weg




    //edit

    Das Originale SOR ( Street´s of Reallife ) seit 03.10.2009

    Einmal editiert, zuletzt von eli ()

  • Das muss nach ganz oben in´s Script:

    new farbegrun[MAX_VEHICLES];
    new farbegrun2[MAX_VEHICLES];

    Und dann wird der Command zu dem hier:


    if(strcmp(cmd,"/autolichtgreen",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    new x_nr[256];
    x_nr = strtok(cmdtext, idx);
    if(!strlen(x_nr))
    {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /autolichtgreen [name]");
    SendClientMessage(playerid, COLOR_WHITE, "Befehle: an, aus.");
    return 1;
    }
    if(strcmp(x_nr,"an",true) == 0)
    {
    farbegrun[GetPlayerVehicleID(playerid)] = CreateObject(18649,0,0,0,0,0,0,0); // Hier kannste auch einfach 0 rein machen.....
    farbegrun2[GetPlayerVehicleID(playerid)] = CreateObject(18649,0,0,0,0,0,0,0);
    AttachObjectToVehicle(farbegrun[GetPlayerVehicleID(playerid)], GetPlayerVehicleID(playerid),0.4,0,-0.80,0,0,0);
    AttachObjectToVehicle(farbegrun2[GetPlayerVehicleID(playerid)], GetPlayerVehicleID(playerid),-0.4,0,-0.80,0,0,0);
    }
    else if(strcmp(x_nr,"aus",true) == 0)
    {
    DestroyObject(farbegrun[GetPlayerVehicleID(playerid)]);
    DestroyObject(farbegrun2[GetPlayerVehicleID(playerid)]);
    }
    }
    return 1;
    }


    Edit: Klammerfehler und noch einen Array Fehler

    PAWNit gratis nutzen?
    Geschenkcode: 2017VQXPKB8V3KA

    Hier könnte Ihre Werbung stehen.

  • thx jetzt habe ich nur noch eine sachen:
    wenn ich z.B 2 mal /autolichtgreen an mache dann geht nur noch eins weg wie kann ich machen das er überprfüt ob das fahrzeug schon eine neon röhre hat?

    Das Originale SOR ( Street´s of Reallife ) seit 03.10.2009

  • Eine variable setzen.


    Beispiel:

    new h_l[MAX_VEHICLES];


    //falls nicht vorhanden.
    if(h_L[vehicleid] == 0)
    {//not having a neon light
    //code
    h_l[vehicleid] = 1;
    }


    //falls vorhanden
    if(h_l[vehicleid] == 1)
    {//having a neon light
    h_l[vehicleid] = 0;
    }



    In deinem Code angepasst.



    //definierung der Variable nicht vergessen.
    new h_l[MAX_VEHICLES];
    //dann unter 'OnVehicelSpawn'
    h_l[vehicleid] = 0; //resetten des Neonlichts
    if(strcmp(cmd,"/autolichtgreen",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    new x_nr[256];
    x_nr = strtok(cmdtext, idx);
    if(!strlen(x_nr))
    {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /autolichtgreen [name]");
    SendClientMessage(playerid, COLOR_WHITE, "Befehle: an, aus.");
    return 1;
    }
    if(strcmp(x_nr,"an",true) == 0)
    {
    if(h_l[GetPlayerVehicleID(playerid)] == 1) return SendClientMessage(playerid, farbe, "Dieses Fahrzeug hat schon Neonlicht.");
    farbegrun[GetPlayerVehicleID(playerid)] = CreateObject(18649,0,0,0,0,0,0,0); // Hier kannste auch einfach 0 rein machen.....
    farbegrun2[GetPlayerVehicleID(playerid)] = CreateObject(18649,0,0,0,0,0,0,0);
    AttachObjectToVehicle(farbegrun[GetPlayerVehicleID(playerid)], GetPlayerVehicleID(playerid),0.4,0,-0.80,0,0,0);
    AttachObjectToVehicle(farbegrun2[GetPlayerVehicleID(playerid)], GetPlayerVehicleID(playerid),-0.4,0,-0.80,0,0,0);

    h_l[GetPlayerVehicleID(playerid)] = 1;
    }
    else if(strcmp(x_nr,"aus",true) == 0)
    {
    if(h_l[GetPlayerVehicleID(playerid)] == 0) return SendClientMessage(playerid, farbe, "Dieses Fahrzeug hat kein Neonlicht.");
    DestroyObject(farbegrun[GetPlayerVehicleID(playerid)]);
    DestroyObject(farbegrun2[GetPlayerVehicleID(playerid)]);
    h_l[GetPlayerVehicleID(playerid)] = 0;
    }
    }
    return 1;
    }


    Sorry, dass es nicht richtig eingerückt ist. Liegt an meinem blöden Browser.


    Natürlich könntest du das noch mit
    switch(h_l[vehicleid])
    machen, aber ist nicht so tragisch.^^

  • wo muss das hin?
    h_l[vehicleid] = 0; //resetten des Neonlichts
    und wo muss das hin?:
    switch(h_l[vehicleid])

    Das Originale SOR ( Street´s of Reallife ) seit 03.10.2009

  • Zur 1. Frage:
    //dann unter 'OnVehicelSpawn'
    h_l[vehicleid] = 0; //resetten des Neonlichts
    public OnVehicleSpawn(vehicleid.......)


    Zur 2. Frage, kannst getrost Ignorieren. War nur für diejenige, die dann 'switch' vorschlagen.^^