[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
  • if (strcmp("/stuff get", cmdtext, true, 10) == 0)
    {
    if (pInfo[playerid][job] == 1)
    {
    if(vehicleid == truck)
    {
    if(PlayerToPoint(50.0,playerid,-1872.7570,1417.2054,7.1801))
    {
    SendClientMessage(playerid,COLOR_OLIVE,"Fahre zum Roten Punkt und Tippe /deliver ein.");
    SendClientMessage(playerid,COLOR_OLIVE,"Die Produkte haben dich 500 gekostet.");
    SetPlayerCheckpoint(playerid,-1548.1746,124.9451,3.4374,5);
    GivePlayerMoney(playerid,-500);
    pInfo[playerid][truckprods] = 5;
    return 1;
    }
    }
    }
    }


    if (strcmp("/deliver", cmdtext, true, 10) == 0)
    {
    if (pInfo[playerid][truckprods] == 5)
    {
    if(vehicleid == truck)
    {
    if(PlayerToPoint(50.0,playerid,-1016.5441,-687.4995,32.0078))
    {
    SendClientMessage(playerid,COLOR_OLIVE,"Du hast 2,5k bekommen.");
    SetPlayerCheckpoint(playerid,-1016.5441,-687.4995,32.00784,5);
    GivePlayerMoney(playerid, 2500);
    pInfo[playerid][truckprods] = 0;
    }
    }
    }
    return 1;
    }
    hab den error da..C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(434) : error 017: undefined symbol "vehicleid"
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(453) : error 017: undefined symbol "vehicleid"
    wei mach ich den weg??und noch was.. wie mach ich mehrere if befehle bei OnePlayerEnterVehicle? ?

  • Danek hat geklappt :D
    aber ich hab noch ne frage.. wie kann ich mehrere befehle bei OnePlayerEnterVehicle machen??
    ich habs jetzt so
    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)


    if (pInfo[playerid][autos] == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast keinen Führerschein! Hol ihn dir an der /fs");
    SendClientMessage(playerid,COLOR_RED,"Warte einfach am Spawn bis der Bus kommt, der fährt dich zur fs oder laufe.");
    SendClientMessage(playerid,COLOR_RED,"Falls du noch gefreezt bist /unfreeze.");
    TogglePlayerControllable(playerid, false);
    SetTimer("TankCheck",15000,-1);
    return 1;
    }
    else
    {
    SetTimer("TankCheck",15000,-1);
    return 1;
    }


    if(vehicleid == truck)
    {
    if (pInfo[playerid][job] == 0)
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Trucker!");
    return 1;
    }
    }
    else
    {
    if(vehicleid == truck)
    {
    if (pInfo[playerid][job] == 1)
    {
    SetPlayerCheckpoint(playerid,-1825.9998,143.3149,15.1172,5);
    SendClientMessage(playerid,COLOR_OLIVE,"Fahre zum Roten Punkt und Tippe /stuff get ein.");
    return 1;
    }
    }
    }

    und da kommt des <.<
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(547) : error 010: invalid function or declaration
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(549) : error 010: invalid function or declaration
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(553) : error 010: invalid function or declaration
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(556) : error 010: invalid function or declaration
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(558) : error 010: invalid function or declaration
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(560) : error 010: invalid function or declaration
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(564) : error 010: invalid function or declaration
    [MSIE_newline_end ]

    Einmal editiert, zuletzt von IceCubeXXL ()

  • public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    if (pInfo[playerid][autos] == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast keinen Führerschein! Hol ihn dir an der /fs");
    SendClientMessage(playerid,COLOR_RED,"Warte einfach am Spawn bis der Bus kommt, der fährt dich zur fs oder laufe.");
    SendClientMessage(playerid,COLOR_RED,"Falls du noch gefreezt bist /unfreeze.");
    TogglePlayerControllable(playerid, false);
    SetTimer("TankCheck",15000,-1);
    return 1;
    }
    else
    {
    SetTimer("TankCheck",15000,-1);
    return 1;
    }


    if(vehicleid == truck)
    {
    if (pInfo[playerid][job] == 0)
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Trucker!");
    return 1;
    }
    }


    if(vehicleid == truck)
    {
    if (pInfo[playerid][job] == 1)
    {
    SetPlayerCheckpoint(playerid,-1825.9998,143.3149,15.1172,5);
    SendClientMessage(playerid,COLOR_OLIVE,"Fahre zum Roten Punkt und Tippe /stuff get ein.");
    return 1;
    }
    }
    }

  • public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    if (pInfo[playerid][autos] == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast keinen Führerschein! Hol ihn dir an der /fs");
    SendClientMessage(playerid,COLOR_RED,"Warte einfach am Spawn bis der Bus kommt, der fährt dich zur fs oder laufe.");
    SendClientMessage(playerid,COLOR_RED,"Falls du noch gefreezt bist /unfreeze.");
    TogglePlayerControllable(playerid, false);
    SetTimer("TankCheck",15000,-1);
    return 1;
    }
    else
    {
    SetTimer("TankCheck",15000,-1);
    return 1;
    }


    if(vehicleid == truck)
    {
    if (pInfo[playerid][job] == 0)
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Trucker!");
    return 1;
    }
    }


    if(vehicleid == truck)
    {
    if (pInfo[playerid][job] == 1)
    {
    SetPlayerCheckpoint(playerid,-1825.9998,143.3149,15.1172,5);
    SendClientMessage(playerid,COLOR_OLIVE,"Fahre zum Roten Punkt und Tippe /stuff get ein.");
    return 1;
    }
    }
    }
    habs so geändert :Dgeht auch danke =)aber ich bekom jetzt des =(C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(547) : warning 225: unreachable code
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(566) : warning 209: function "OnPlayerEnterVehicle" should return a value
    und wo war mein fehler ?

  • Testemal:
    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    if(!pInfo[playerid][autos])
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast keinen Führerschein! Hol ihn dir an der /fs");
    SendClientMessage(playerid,COLOR_RED,"Warte einfach am Spawn bis der Bus kommt, der fährt dich zur fs oder laufe.");
    SendClientMessage(playerid,COLOR_RED,"Falls du noch gefreezt bist /unfreeze.");
    TogglePlayerControllable(playerid, false);
    SetTimer("TankCheck",15000,-1);
    return 1;
    }
    else
    {
    SetTimer("TankCheck",15000,-1);
    }
    if(vehicleid == truck)
    {
    if (!pInfo[playerid][job])
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Trucker!");
    }
    else if(pInfo[playerid][job] == 1)
    {
    SetPlayerCheckpoint(playerid,-1825.9998,143.3149,15.1172,5);
    SendClientMessage(playerid,COLOR_OLIVE,"Fahre zum Roten Punkt und Tippe /stuff get ein.");
    }
    }
    return 1;
    }

  • wenn ich das bei onplayerdeath mache hängt sich das spiel auf
    format(string,sizeof(string),"~r~-%d~g~$",OpferGeld);
    GameTextForPlayer(playerid,string,5000,1);


    hat jemand ein fehler gefunden ?

  • } else if(GetPlayerMoney(playerid) > 499 && killerid != INVALID_PLAYER_ID)
    {
    OpferGeld = GetPlayerMoney(playerid) /4;
    new string[10];
    GivePlayerMoney(playerid, -OpferGeld);
    format(string,sizeof(string),"~r~-%d~g~$",OpferGeld);
    GameTextForPlayer(playerid,string,5000,1);


    GivePlayerMoney(killerid, OpferGeld + 750);
    format(string,sizeof(string),"%d~g~$",OpferGeld + 750);
    GameTextForPlayer(killerid,string,5000,1);
    } else {


    edit: habe fehler gefunden aber weis nicht wie ich ihn behebe
    format(string,sizeof(string),"~r~-%d~g~$",OpferGeld);
    wenn ich das weg mach geht es ~r~-
    aber das muss bleiben

  • wenn ich oben new truck[12];
    hab. wie muss ich dann dass truck[12] in einen cmd befehl einfügen?
    dass man z.B. in diesem car sitzen muss, damit es geht?? weil mit:
    if(vehicleid == truck[12])
    {
    if (!pInfo[playerid][job])
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Trucker!");
    }
    else if(pInfo[playerid][job] == 1)
    {
    if (pInfo[playerid][truckprods] == 5)
    {
    SetPlayerCheckpoint(playerid,1873.8427,1416.7341,7.1763,5);
    SendClientMessage(playerid,COLOR_OLIVE,"Fahre zum Roten Punkt und Tippe /stuff get ein.");
    }
    }
    }

    bekomm ich diese eroors^^
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(437) : error 032: array index out of bounds (variable "truck")
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(456) : error 032: array index out of bounds (variable "truck")
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(545) : error 032: array index out of bounds (variable "truck")
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\versuch.pwn(561) : error 032: array index out of bounds (variable "truck")

    und oben habs ich soo:
    truck[1] = AddStaticVehicle(455,-1857.5786,113.2909,15.5535,267.7358,23,6);//truck
    truck[2] = AddStaticVehicle(455,-1858.4175,118.6883,15.5553,267.0647,23,6);//truck
    truck[3] = AddStaticVehicle(455,-1856.9520,126.1012,15.5562,262.1935,54,321);//truck
    truck[4] = AddStaticVehicle(455,-1858.0853,133.4543,15.5579,259.7325,58,12);//truck
    truck[5] = AddStaticVehicle(455,-1857.0050,142.1420,15.5566,264.5674,87,21);//truck
    truck[6] = AddStaticVehicle(455,-1854.9769,148.5894,15.5551,260.4525,874,897);//truck
    truck[7] = AddStaticVehicle(455,-1853.7804,156.1183,15.5585,258.6157,456,352);//truck
    truck[8] = AddStaticVehicle(455,-1852.3115,163.1903,15.5546,259.0461,6,486); //Truck
    truck[9] = AddStaticVehicle(455,-1851.2345,169.6019,15.5429,256.8250,189,19); //truck
    truck[10] = AddStaticVehicle(455,-1837.8813,-18.7855,15.5540,269.4012,87,187); //truck
    truck[11] = AddStaticVehicle(455,-1839.8022,-12.6983,15.5544,270.1398,254,135); //truck

    kann mir biite wer helfen??[MSIE_newline_end ]

  • Du hast ein Array mit 12 Slots erstellt dabei ist der echte 12te Slot Escape also gibt das Ende der Variable an,
    da eine Array immer bei 0 anfängt jedenfalls in dieser Sprache , limitiert sich das ganze von 0 bis 11 also gibt
    bei genauerem hinsehen noch immer 12 Slots.

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • format(string,sizeof(string),"~r~-%d~g~$",OpferGeld);
    wenn das so ist hängt sich das spiel auf
    der grund dafür ist
    ~r~-
    kann man das noch irgendwie machen, das das geht
    aber es sollte rot sein

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen