einfaches automieten

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 hab einen mini reallife ;) und wenn man auf meinen server kommt bekommt man 60.000 start doller, nun habe ich die frage könnte einer nen kleinen script erstelle, automieten? ich habe es versucht aber ging leider nicht also ungefair so


    new rentcar[5]


    // Fahrzeuge
    rentcar[0]=AddVeh...


    rentcar[1]=AddVeh...
    rentcar[2]=AddVeh...


    rentcar[3]=AddVeh...


    rentcar[4]=AddVeh...



    Was soll passieren?


    - Spieler steigt in Auto
    - Bildschirm Text wird angezeigt, "Du kannst dieses Fahrzeug Mieten für 4000 Doller, dazu gib ein /rentcar oder /exit"
    - Spieler hat /rentcar eingegeben und kann nun erst losfahren
    - wenn Spieler aussteigt und inerhalb Timer setzen.. 5 Min nicht wider einsteigt wird das Auto zurück gespawnt und man kann es neu mieten


    jedes auto sollte für 4000 verkauft werden, aber wenn man die preisen einstellen kann für jeden auto wäre auch nicht schnlecht, es soll simple sein aber... bin anfänger ;). Ich hoffe einer könnte sowas erstellen, wäre echt geil :D


    Gruß Andy

  • Oben:


    new Rentcarpreis[5],Rentcarvar[MAX_PLAYERS],Mieter[MAX_VEHICLES]=999,checktimer,checktimervar[playerid] = 999;


    OnGameModeInit


    {



    Rentcarpreis[0] = 4000;//auch für die anderen einstellen.
    checktimer = SetTimer("Mietcheck",1000,1);


    }


    OnPlayerStateChange


    for(new i = 0; i < sizeof(rentcar); i++)


    {
    if(rentcar == GetPlayerVehicleID(playerid)&& Mieter[rentcar] == playerid){ checktimervar[Mieter[rentcar]] = 999;}
    if(rentcar[i] == GetPlayerVehicleID(playerid) && Mieter[GetPlayerVehicleID(playerid)] != playerid && Mieter[GetPlayerVehicleID(playerid)] == 999)


    {


    SendClientMessage(playerid,COLOR_WHITE,"Dieses Fahrzeug kannst du mieten.");


    new string[64];


    format(string,sizeof(string),"Preis: %d, benutze /mieten",Rentcarpreis[i]);


    SendClientMessage(playerid,COLOR_WHITE,string);


    Rentcarvar[playerid] = Rentcarpreis[i];


    TogglePlayerControllable(playerid,0);


    }


    }


    OnPlayerCommandText(playerid,cmdtext[])


    {


    if(strcmp(cmdtext,"/mieten",true) == 0)


    {


    if(Rentcarvar[playerid] != 0)


    {


    GivePlayerMoney(playerid,-Rentcarvar[playerid];


    TogglePlayerControllable(playerid,1);


    Mieter[GetPlayerVehicleID(playerid)] = playerid;


    }


    else{SendClientMessage(playerid,COLOR_RED,"Dieses Fahrzeug kannst du nicht mieten.");}


    }


    }




    OnPlayerExitvehicle


    {


    for(new i = 0; i < sizeof (rentcar); i++)


    {


    if(Mieter[rentcar] == playerid && GetPlayerVehicleID(playerid) == rentcar)


    {


    checktimervar[playerid] = 300;


    }


    }


    }




    forward Mietcheck();


    public Mietcheck()


    {


    for(new i = 0; i < sizeof(rentcar); i++)


    {


    if(Mieter[rentcar[i][i]] != 999 && IsPlayerConnected(Mieter[rentcar[i][i]]) && checktimervar[Mieter[rentcar[i]]] != 999)


    {


    checktimervar[Mieter[rentcar[i][i]]] --;


    if(checktimervar[Mieter[rentcar[i][i]]] <= 0)


    {


    Mieter[rentcar[i][i]] = 999;


    //Fahrzeug wird Spieler weggenommen


    }


    }


    }


    }[/i][/i][/i][/i][/i]




    UNGETESTET!!
    Ich kann auch einiges vergessen haben, denn das ist nicht die beste Scriptzeit. Teste es einfach mal.




    Lg Black[/i][/i][/i][/i][/i][/i][/i][/i][/i]

  • hab es versucht bekomme leider nur errors könntest du es evtl so schreiben das ich es nur kopieren müste und in pawno schrift? wäre echt hammer weil siht gut aus :)


    Lg Andy

  • ok ich glaube davon sollte ich noch die Finger lassen ich weis nicht was "Callbacks" sind :) naja aber vielen dank


    lg andy