Autohaus Problem

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
  • Hallo, Community.
    In meinem Server gibt es zurzeit ein großes Problem.
    Ich habe 5 Autohäuser. In jedem besteht jedenfalls das gleiche Problem.
    Sobald ich Numberpat 4 oder 6 drücke, ändern sich NUR die Farbe vom Auto aber das Auto nicht.
    Wisst ihr vielleicht woran es liegen könnte?


    #define AUTOHAUSER 5 // Anzahl der Autohäuser


    forward OnPlayerBuyCar(playerid,Model,Preis,Autohaus);
    forward SetParkPlatz(playerid,Autohaus);
    forward OnPlayerCarLogin(playerid);
    forward OnPlayerCarUpdate(playerid);
    forward PlayerCarSpawn(playerid,Slot);


    new SideL, SideR, Dtc_Info[AUTOHAUSER];
    new Dtc_PlayerHaveCar[MAX_PLAYERS][MaxVeh];
    new Dtc_PlayerKey[MAX_PLAYERS];
    new RadZahl[AUTOHAUSER];
    new Dtc_Carlock[700];
    new Text: CarKauf[MAX_PLAYERS];
    new dtc_AutohausCar[MAX_PLAYERS],dtc_AutohausCat[MAX_PLAYERS],dtc_AutohausSCar[MAX_PLAYERS];


    enum dtcCarModell
    {
    dtc_Autohaus,
    dtc_CarModel,
    dtc_CarPreis
    };


    public OnPlayerPickUpPickup(playerid,pickupid)
    {
    for(new x = 0; x < AUTOHAUSER;x++)
    {
    if(PlayerToPoint(1.5, playerid, DtcSonstiges[x][0][0],DtcSonstiges[x][0][1],DtcSonstiges[x][0][2]) && !Dtc_PlayerHaveCar[playerid][Dtc_PlayerKey[playerid]] || pickupid == Dtc_Info[x] && !Dtc_PlayerHaveCar[playerid][Dtc_PlayerKey[playerid]])
    {
    TogglePlayerControllable(playerid, 0);
    SetPlayerVirtualWorld(playerid,55+playerid);
    new string[246];
    dtc_AutohausCar[playerid] = 0;
    dtc_AutohausCat[playerid] = x;
    new c1 = random(120);
    new c2 = random(120);
    new car;
    new preis;
    for(new ah = 0; ah < sizeof(dtcKaufliste);ah++)
    {
    if(car == 0 && dtcKaufliste[ah][dtc_Autohaus] == x)
    {
    car = dtcKaufliste[ah][dtc_CarModel];
    preis = dtcKaufliste[ah][dtc_CarModel];
    }
    }
    SetPlayerCameraPos(playerid, DtcSonstiges[x][2][0],DtcSonstiges[x][2][1],DtcSonstiges[x][2][2]);
    SetPlayerCameraLookAt(playerid, DtcSonstiges[x][1][0],DtcSonstiges[x][1][1],DtcSonstiges[x][1][2]);
    dtc_AutohausSCar[playerid] = CreateVehicle(car, DtcSonstiges[x][1][0],DtcSonstiges[x][1][1],DtcSonstiges[x][1][2],DtcSonstiges[x][1][3],c1,c2,-1);
    SetPlayerPos(playerid, DtcSonstiges[x][3][0],DtcSonstiges[x][3][1],DtcSonstiges[x][3][2]);
    SetVehicleVirtualWorld(dtc_AutohausSCar[playerid],55+playerid);
    format(string,sizeof(string),"~r~---------- AUTOHAUS ----------~n~~g~Fahrzeug: ~w~%s~n~~g~Preis: ~w~$%d~n~~b~Auswaehlen:~n~~w~ <Num 4<~b~&~w~>Num 6> ~n~~b~Kaufen:~w~ Enter ~n~~b~Abbrechen:~w~ Tab",CarName[car-400],preis);
    if(!CarKauf[playerid])
    {
    CarKauf[playerid] = TextDrawCreate(200,310,string);
    TextDrawAlignment(CarKauf[playerid],1);
    TextDrawUseBox(CarKauf[playerid],1);
    TextDrawBoxColor(CarKauf[playerid],0x000000FF);
    TextDrawSetOutline(CarKauf[playerid],1);
    TextDrawBackgroundColor(CarKauf[playerid],COLOR_BLACK);
    TextDrawSetOutline(CarKauf[playerid],1);
    TextDrawFont(CarKauf[playerid], 2);
    //TextDrawSetProportional(CarKauf[playerid], 2);
    TextDrawTextSize(CarKauf[playerid],450,410);
    TextDrawShowForPlayer(playerid,CarKauf[playerid]);
    }
    else
    {
    TextDrawHideForPlayer(playerid,CarKauf[playerid]);
    TextDrawSetString(CarKauf[playerid],string);
    TextDrawShowForPlayer(playerid,CarKauf[playerid]);
    }
    }
    else if(PlayerToPoint(1.5, playerid, DtcSonstiges[x][0][0],DtcSonstiges[x][0][1],DtcSonstiges[x][0][2]) && Dtc_PlayerHaveCar[playerid][Dtc_PlayerKey[playerid]] || pickupid == Dtc_Info[x] && Dtc_PlayerHaveCar[playerid][Dtc_PlayerKey[playerid]])
    {
    new mv = MaxVeh;
    if(mv > 1)
    {
    SendClientMessage(playerid, COLOR_GREY, " Du besitzt schon ein Fahrzeug mit deinem Ausgewählten Schlüssel!");
    SendClientMessage(playerid, COLOR_GREY, " Verkaufe es mit /carsell oder wechsel den Schlüssel mit /carkey !");
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Du besitzt schon ein Fahrzeug! Verkaufe es mit /carsell!");
    }
    }
    }


    Ich hoffe ihr wisst wo das Problem sein könnte.



    Mit freundlichen Grüße, Cripain

  • OnPlayerPressKey existiert im Script nicht.


    forward OnPlayerBuyCar(playerid,Model,Preis,Autohaus);


    Habe aber "OnPlayerBuyCar":
    public OnPlayerBuyCar(playerid,Model,Preis,Autohaus)//CARSYS
    {
    if(IsPlayerConnected(playerid) && !Dtc_PlayerHaveCar[playerid][Dtc_PlayerKey[playerid]])
    {
    CallRemoteFunction("M_GivePlayerMoney","id",playerid,-Preis);
    if(Autohaus == 0)
    {
    AddToBizzTill(14,Preis);
    }
    else if(Autohaus == 1)
    {
    AddToBizzTill(12,Preis);
    }
    else if(Autohaus == 2)
    {
    AddToBizzTill(21,Preis);
    }
    else if(Autohaus == 3)
    {
    AddToBizzTill(15,Preis);
    }
    else if(Autohaus == 4)
    {
    AddToBizzTill(13,Preis);
    }
    SetParkPlatz(playerid,Autohaus);
    new name[MAX_PLAYER_NAME], str[128];
    GetPlayerName(playerid, name, sizeof name);
    format(str, sizeof str, "/Autos/%s%d.dtcar", name,Dtc_PlayerKey[playerid]);
    new File: hFile = fopen(str, io_write);
    if (hFile)
    {
    new var[32];
    format(var, 32, "CarId=0\n");fwrite(hFile, var);
    format(var, 32, "CarModel=%d\n",Model);fwrite(hFile, var);
    format(var, 32, "CarPos_x=%.3f\n",PlayerCar[playerid][Dtc_PlayerKey[playerid]][CarPos_x]);fwrite(hFile, var);
    format(var, 32, "CarPos_y=%.3f\n",PlayerCar[playerid][Dtc_PlayerKey[playerid]][CarPos_y]);fwrite(hFile, var);
    format(var, 32, "CarPos_z=%.3f\n",PlayerCar[playerid][Dtc_PlayerKey[playerid]][CarPos_z]);fwrite(hFile, var);
    format(var, 32, "CarRotate=%.3f\n",PlayerCar[playerid][Dtc_PlayerKey[playerid]][CarRotate]);fwrite(hFile, var);
    format(var, 32, "CarNitro=0\n");fwrite(hFile, var);
    format(var, 32, "CarHyd=0\n");fwrite(hFile, var);
    format(var, 32, "CarWheel=0\n");fwrite(hFile, var);
    format(var, 32, "CarAusp=0\n");fwrite(hFile, var);
    format(var, 32, "CarSideL=0\n");fwrite(hFile, var);
    format(var, 32, "CarSideR=0\n");fwrite(hFile, var);
    format(var, 32, "CarFB=0\n");fwrite(hFile, var);
    format(var, 32, "CarRB=0\n");fwrite(hFile, var);
    format(var, 32, "CarSpoiler=0\n");fwrite(hFile, var);
    format(var, 32, "CarRoof=0\n");fwrite(hFile, var);
    format(var, 32, "CarHood=0\n");fwrite(hFile, var);
    format(var, 32, "CarVents=0\n");fwrite(hFile, var);
    format(var, 32, "CarLamps=0\n");fwrite(hFile, var);
    format(var, 32, "CarPJ=-1\n");fwrite(hFile, var);
    format(var, 32, "CarC1=-1\n");fwrite(hFile, var);
    format(var, 32, "CarC2=-1\n");fwrite(hFile, var);
    format(var, 32, "Preis=%d\n",Preis);fwrite(hFile, var);
    fclose(hFile);
    }
    OnPlayerCarLogin(playerid);
    }
    }


    //EDIT: Wenn ich weiter mache kommt z.B von Fletzer zu Turismo. Doch dannach ändert sich das Auto nicht mehr sondern NUR die Farben vom Auto obwohl es das Auto wechseln sollte.