Einmalig Auto für Spieler erstellen

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
  • Heyho Leute,


    ich wage mich seit knapp nem Jahr nun mal wieder aus Lust daran, ein Script zu editieren um wieder in Pawno reinzukommen.
    Jetzt liegt mir aber folgendes Problem vor:


    Ich möchte dass ein Spieler nach einem Dialog, ein Auto gesettet bekommt. Also habe ich das vorhandene /buycar system kopiert und dementsprechend abgeändert.
    Allerdings funktioniert das ganze nicht so wie ich möchte. Vielleicht kann einer von euch ja mal drüber schauen & mir sagen, was ich übersehe.


    Dialog Response

    Spoiler anzeigen

    FrankCar[playerid] = 478;
    if(FrankCar[playerid] != -1)
    {
    if(Carlist[playerid][CarKey[playerid]][Typ] == -1)
    {
    new autohaus = Kaufliste[FrankCar[playerid]][Autohaus];
    Carlist[playerid][CarKey[playerid]][Typ] = FrankCar[playerid];
    Carlist[playerid][CarKey[playerid]][pos_x] = Autospawns[autohaus][pos_x];
    Carlist[playerid][CarKey[playerid]][pos_y] = Autospawns[autohaus][pos_y];
    Carlist[playerid][CarKey[playerid]][pos_z] = Autospawns[autohaus][pos_z];
    Carlist[playerid][CarKey[playerid]][z_angle] = Autospawns[autohaus][z_angle];
    Carlist[playerid][CarKey[playerid]][SpawnSaveX] = Autospawns[autohaus][pos_x];
    Carlist[playerid][CarKey[playerid]][SpawnSaveY] = Autospawns[autohaus][pos_y];
    Carlist[playerid][CarKey[playerid]][SpawnSaveZ] = Autospawns[autohaus][pos_z];
    Carlist[playerid][CarKey[playerid]][SpawnSaveRot] = Autospawns[autohaus][z_angle];
    Carlist[playerid][CarKey[playerid]][Status] = 0;
    Carlist[playerid][CarKey[playerid]][Lock] = 0;
    Carlist[playerid][CarKey[playerid]][TankVolumen] = 100;
    Carlist[playerid][CarKey[playerid]][Carid] = CreateTunedCar(playerid, CarKey[playerid]);
    Carlist[playerid][CarKey[playerid]][Meter] = 0;
    Gas[Carlist[playerid][CarKey[playerid]][Carid]] = Carlist[playerid][CarKey[playerid]][TankVolumen];
    SetPlayerCheckpoint(playerid,Carlist[playerid][CarKey[playerid]][pos_x],Carlist[playerid][CarKey[playerid]][pos_y],Carlist[playerid][CarKey[playerid]][pos_z],10.0);
    ForAllPlayers(i)
    {
    if(IsPlayerConnected(i))
    {
    SetVehicleParamsForPlayer(Kaufliste[Spectating[playerid]][Carid], i, 0, 0);
    }
    }
    }


    Buycar System
    Spoiler anzeigen


    if(strcmp("/buycar", cmd, true) == 0)
    {
    if(Spectating[playerid] != -1)
    {
    if(Carlist[playerid][CarKey[playerid]][Typ] == -1)
    {
    new preis = Kaufliste[Spectating[playerid]][Preis];
    if(preis <= PlayerInfo[playerid][pCash])
    {
    new autohaus = Kaufliste[Spectating[playerid]][Autohaus];
    GivePlayerMoneys(playerid, - preis);
    Carlist[playerid][CarKey[playerid]][Typ] = Spectating[playerid];
    Carlist[playerid][CarKey[playerid]][pos_x] = Autospawns[autohaus][pos_x];
    Carlist[playerid][CarKey[playerid]][pos_y] = Autospawns[autohaus][pos_y];
    Carlist[playerid][CarKey[playerid]][pos_z] = Autospawns[autohaus][pos_z];
    Carlist[playerid][CarKey[playerid]][z_angle] = Autospawns[autohaus][z_angle];
    Carlist[playerid][CarKey[playerid]][SpawnSaveX] = Autospawns[autohaus][pos_x];
    Carlist[playerid][CarKey[playerid]][SpawnSaveY] = Autospawns[autohaus][pos_y];
    Carlist[playerid][CarKey[playerid]][SpawnSaveZ] = Autospawns[autohaus][pos_z];
    Carlist[playerid][CarKey[playerid]][SpawnSaveRot] = Autospawns[autohaus][z_angle];
    Carlist[playerid][CarKey[playerid]][Status] = 0;
    Carlist[playerid][CarKey[playerid]][Lock] = 0;
    Carlist[playerid][CarKey[playerid]][TankVolumen] = 100;
    Carlist[playerid][CarKey[playerid]][Carid] = CreateTunedCar(playerid, CarKey[playerid]);
    Carlist[playerid][CarKey[playerid]][Meter] = 0;
    Gas[Carlist[playerid][CarKey[playerid]][Carid]] = Carlist[playerid][CarKey[playerid]][TankVolumen];
    SetPlayerCheckpoint(playerid,Carlist[playerid][CarKey[playerid]][pos_x],Carlist[playerid][CarKey[playerid]][pos_y],Carlist[playerid][CarKey[playerid]][pos_z],10.0);
    ForAllPlayers(i){
    if(IsPlayerConnected(i)){
    SetVehicleParamsForPlayer(Kaufliste[Spectating[playerid]][Carid], i, 0, 0);
    }}
    TogglePlayerControllable(playerid,1);
    RemovePlayerFromVehicle(playerid);
    format(string, sizeof(string), "Du hast dir erfolgreich für %s$ ein/einen %s gekauft!",GetPoint(preis),Kaufliste[Carlist[playerid][CarKey[playerid]][Typ]][Name]);
    SendClientMessage(playerid, COLOR_RED, string);
    SendClientMessage(playerid, COLOR_GREEN, "Wenn du dein Fahrzeug zerstörst, gib /fixcar ein.");
    SendClientMessage(playerid, COLOR_GREEN, "Mit /carlock kannst du dein Fahrzeug für andere Leute freigeben oder abschließen.");
    SendClientMessage(playerid, COLOR_GREEN, "Mehr Befehle kannst du unter /carhelp sehen.");
    SendClientMessage(playerid, COLOR_YELLOW, "Dein Auto steht am Ausgabepunkt(Roter Marker) bereit! Viel Spaß beim Fahren!");
    GetPlayerName(playerid, sendername, sizeof(sendername));
    if(Kaufliste[Spectating[playerid]][Autohaus] == 2)
    {
    BizInfo[13][bTill] += (preis/100)*19;
    }
    Spectating[playerid] = -1;
    }


    Vielen Dank im Vorraus :)

  • Hua :D


    Also, ich möchte einfach, dass der Spieler genauso wie durch /buycar ein Auto mit der ModelID 478 gesetzt bekommt.
    Funktionieren tut quasi garnichts, wenn ich den Dialog beende, passiert einfach nichts. Weder das Car spawnt noch irgendwas.

    2 Mal editiert, zuletzt von Sinister ()


  • new Kaufliste[68][ahModell] =
    {
    {"Phoenix",1,603,-1,100000,10000,-1664.4386,1206.8241,20.9289,332.5978},
    {"Super GT",1,506,-1,500000,30000,-1651.6372,1208.2538,20.9231,305.1015},
    {"Turismo",1,451,-1,700000,35000,-1665.1248,1222.7113,20.9265,267.4103},
    {"Premier",1,426,-1,100000,45000,-1661.1943,1217.9629,20.9268,286.1662},
    {"Club",1,589,-1,100000,15000,-1665.7789,1222.4406,13.4485,279.6459},
    {"Blista Compact",1,496,-1,100000,25000,-1668.6447,1207.0372,7.0249,309.5959},
    {"Buffalo",1,402,-1,100000,35000,-1663.6709,1215.2883,7.0234,274.9868},
    {"Bullet",1,541,-1,500000,45000,-1651.3892,1210.3469,7.0208,281.3321},
    {"Cheetah",1,415,-1,500000,36000,-1671.5294,1206.1067,13.4442,259.1177},
    {"Euros",1,587,-1,100000,12000,-1660.7256,1217.6407,13.4444,283.1553},
    {"Moonbeam",1,418,-1,10000,1500,741.4233,-1333.2793,13.6554,179.3295},
    {"Sabre",1,475,-1,60000,1500,745.9780,-1333.3726,13.3941,179.8945},
    {"Regina",1,479,-1,16000,1500,749.9028,-1333.3452,13.3586,179.8789},

    geht immer so weiter. :D


    Und hier ahModel Enum
    enum ahModell
    {
    Name[128],
    Autohaus,
    Modelid,
    Carid,
    Preis,
    Reparatur,
    Float:pos_x,
    Float:pos_y,
    Float:pos_z,
    Float:z_angle,
    };