Problem mit Autohaus von Ping(Edit by RFT)

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
  • Hey, ich suche ein Autokauf-System.


    Wo man ingame diese Autos erstellt, ID und Preis etc. festlegt. also Dynamisch.


    Aber: Das ganze ohne Autohäuser.
    Sprich da sollen die Autos alle stehen,
    dass man sich reinsetzt und dann nen Dialog kommt.


    Und wenn man es gekauft hat, ein NEUES Auto bei den Parkplätzen draußen ist.


    NICHT:
    -Ein Koffer / Icon, wo dann eine Auswahl der Autos ist, die man mit Pfeil Rechts / Links oder Num 4 / Num 6 auswählen.
    -Autos, die da so stehen(wie ich will) und wenn man sie kauft, man mit ihnen direkt wegfahren kann, und sie dann weg sind.


    Es soll ein Auto, sagen wir Infernus sein, der sich niemals von der Stelle bewegt, der NUR zum Reinsetzen und Kaufen da ist.


    Steht alles unten.
    Also das Problem.


    MfG
    Me

    2 Mal editiert, zuletzt von Jörgsib ()

  • Für Privatautos.


    Also so wie ein Fraktionsautohaus, nur Privat.


    PS: habe versucht eins umzuschreiben, also Fraktionsautohaus in Privat, aber das habe ich net hin gekriegt :/


    PS: Kennt ihr Car_Ownership 1.4 ?


    So soll das sein, bloß dass man bei Car_Ownership 1.4 ein Auto erstellt, und dass dann von einem gekauft wird, und benutzt wird.


    Und nicht, dass da ein Auto zum Kauf steht.


    Sagen wir: Ich erstell da jetzt im Autohaus oben nen Infi.
    Bei Car_Ownership kann man dann damit fahren und der gehört einem.
    Ich wills so: Dass das Auto da bleibt, und man wird unten zu nem neuen Auto geportet, was genau das selbe ist, weil man es sich gekauft hat.


    Halt die bei Fraktionsautohaus.


    MfG
    me


    MfG
    me

    Einmal editiert, zuletzt von Jörgsib ()

  • Wollte ich erst, aber da ist irgendwie alles verbuggt -.-


    Keine ahnung.


    Aber genau sowas!


    man kann kein /lc [Slot ID] machen und /cars geht auch nicht immer.
    Und dann manchmal steht das Auto da, aber es gehört mir nicht.
    und bei /lock ist Aufgeschlossen und Zugschlossen falsch herum (nicht so, als wenn ich's nciht ändern könnte, aber ist auch n bug)


    Daher suche ich was vernünftiges.


    Also genau sowas!
    Evtl. dass man dann noch die Autos InGame erstellen kann.


    Aber danke für deine Antwort :)


    //EDIT PS: Welches von Ping ? Kannste aml nen Link geben ?


    Danke es geht!
    Das habe ich gesucht!
    Das von Ping, von RTF editiert!


    Ohh mein gott!
    Danke!


    MfG
    Me

    Einmal editiert, zuletzt von Jörgsib ()

  • Kannste mir das pls. auch mal schicken?

    05eb03de-9fda-461c-9dfc-834ae5b64e65.png << Server | Home >> 13462590508.png

  • Hier: http://pastebin.com/mt4MjgNm


    Emm..


    Es gibt ein Problem, ich weiß aber nicht, woran das liegt :( Ich versteh diese stelle nicht,


    es geht um for(new i...) etc. aber das ist doch keine if abfrage. Trotzdem ist da ein else drunter, und das wird bei /buycar ausgeführt -.-


    Kann mir da einer mal kurz helfen ?



    //Oben:
    #define MaxVeh 4


    //Bei OnPlayerCommandText:
    if(strcmp("/buycar", cmd, true, 10) == 0)
    {
    if (Spectating[playerid][0]!=-1)
    {
    for(new i = 0; i < MaxVeh; i++)
    {
    if (Carlist[playerid][i][Typ]==-1)
    {
    new preis = Kaufliste[Spectating[playerid][0]][Preis];
    if (preis > GetPlayerMoney(playerid)){ format(string, 128, "Du hast nicht genug Geld für das Auto (benötigt: $%i)!", preis); SendClientMessage(playerid, COLOR_LIGHTRED, string); }
    {
    new autohaus=Kaufliste[Spectating[playerid][0]][Autohaus];
    GivePlayerMoney(playerid, - preis);
    Carlist[playerid][i][Typ]=Spectating[playerid][0]; Carlist[playerid][i][X]=Autospawns[autohaus][X]; Carlist[playerid][i][Y]=Autospawns[autohaus][Y];
    Carlist[playerid][i][Z]=Autospawns[autohaus][Z]; Carlist[playerid][i][Rotation]=Autospawns[autohaus][Rotation]; Carlist[playerid][i][Status]=1; Carlist[playerid][i][Lock]=0;
    Carlist[playerid][i][Carid]=CreateVehicle(Kaufliste[Spectating[playerid][0]][Modelid],Carlist[playerid][i][X],Carlist[playerid][i][Y],Carlist[playerid][i][Z],Carlist[playerid][i][Rotation],-1,-1,-1);
    SetVehicleParamsForAll(Kaufliste[Spectating[playerid][0]][Carid],0,0);
    TogglePlayerControllable(playerid,1);
    Spectating[playerid][0]=-1;
    RemovePlayerFromVehicle(playerid);
    format(string,128,"Du hast dir erfolgreich für $%i ein/einen %s gekauft!",preis,Kaufliste[Carlist[playerid][i][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 bereit! Viel Spaß beim Fahren!");
    }
    }
    }
    //format(tmp, 128, "Du besitzt bereits %d Autos", MaxVeh);
    SendClientMessage(playerid, COLOR_GREY, "Fehler (Scheiß bug -,-)"); //Das habe ich mir so makiert, und dass kommt ingame wenn ich /buycar mache.


    }
    else SendClientMessage(playerid, COLOR_GREY, "Du besichtigst kein Auto!");
    return 1;
    }


    Ich versteh das nicht, wieso ein (for...) "abgelehnt" werden kann.


    Sowas hatte ich noch nie :O


    Eig. ist das doch nur eine Aufzählung, für alle "MaxVeh", "MAX_PLAYERS", und so weiter halt.


    MfG
    Me

  • Emm, habe ein wenig "Debug" getestet.


    Es wird bei /buycar Ingame "Bug 2" aufgerufen.



    if(strcmp("/buycar", cmd, true, 10) == 0)
    {
    if (Spectating[playerid][0]!=-1)
    {
    /*for(new i = 0; i < MaxVeh; i++)
    {*/
    for(new x = 0; x < MaxVeh; x++)
    {
    if (Carlist[playerid][x][Typ]==-1)
    {
    new preis = Kaufliste[Spectating[playerid][0]][Preis];
    if (preis > GetPlayerMoney(playerid))
    {
    format(string, 128, "Du hast nicht genug Geld für das Auto (benötigt: $%i)!", preis); SendClientMessage(playerid, COLOR_LIGHTRED, string);
    }
    else
    {
    new autohaus=Kaufliste[Spectating[playerid][0]][Autohaus];
    GivePlayerMoney(playerid, - preis);
    Carlist[playerid][x][Typ]=Spectating[playerid][0]; Carlist[playerid][x][X]=Autospawns[autohaus][X]; Carlist[playerid][x][Y]=Autospawns[autohaus][Y];
    Carlist[playerid][x][Z]=Autospawns[autohaus][Z]; Carlist[playerid][x][Rotation]=Autospawns[autohaus][Rotation]; Carlist[playerid][x][Status]=1; Carlist[playerid][x][Lock]=0;
    Carlist[playerid][x][Carid]=CreateVehicle(Kaufliste[Spectating[playerid][0]][Modelid],Carlist[playerid][x][X],Carlist[playerid][x][Y],Carlist[playerid][x][Z],Carlist[playerid][x][Rotation],-1,-1,-1);
    SetVehicleParamsForAll(Kaufliste[Spectating[playerid][0]][Carid],0,0);
    TogglePlayerControllable(playerid,1);
    Spectating[playerid][0]=-1;
    RemovePlayerFromVehicle(playerid);
    format(string,128,"Du hast dir erfolgreich für $%i ein/einen %s gekauft!",preis,Kaufliste[Carlist[playerid][x][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 bereit! Viel Spaß beim Fahren!");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Bug 2");
    return 1;
    }
    }
    //format(tmp, 128, "Du besitzt bereits %d Autos", MaxVeh);
    /*else
    {
    SendClientMessage(playerid, COLOR_GREY, "Bug 1");
    return 1;
    }*/
    //SendClientMessage(playerid, COLOR_GREY, "Fehler (Scheiß bug -,-)");
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Du besichtigst kein Auto!");
    return 1;
    }
    return 1;
    }


    Liegts evtl. daran irgendwie ?


    Bitte hilfe!


    Problem gelöst, es musste bei der Abfrage wo das mit Typ steht, anstatt "==-1" dann "!=-1" hin -.- voll der fail.


    Das war aber nur bei /buycar.

    MfG
    Me

    Einmal editiert, zuletzt von Jörgsib ()