Beiträge von ENEF

    Hey, welche Zeilen sind den die Error/Warning Zeilen?


    Kannst du das Bitte einfügen?


    MfG



    /Edit:


    Ich meinte eigentlich bsp:
    TruckAnhanerStatus[vehicleid] = 0;// error 017: undefined symbol "TruckAnhanerStatus"


    So, verstanden?
    b2T der Error heisst schonmal das "TruckAnhanerStatus" nicht Definiert wurde.


    Mach das mal so wie ich es gesagt habe dann helfe ich dir :thumbup:

    Im Beitrag hab ich ihn hinzugefügt :)
    Aber hier noch mal:

    Spoiler anzeigen
    if(GetPlayerVehicleSeat(playerid) == 0)
    {
    new v = GetPlayerVehicleID(playerid);
    new m = GetVehicleModel(v);
    if(GetVehicleModel(v) != 509 && GetVehicleModel(v) != 481 && GetVehicleModel(v) != 510)
    {
    new name[32];
    new string[125];
    switch(GetVehicleTankArt(m)) {
    case 0: name = "Diesel";
    case 1: name = "Benzin";
    }
    if(Tank[v] < 10)format(string,sizeof string,"Tankart: %s~n~~w~Tank: ~r~%i ~w~liter~n~Km: 0000012~g~%d ~w~",name,GetVehicleMaxTank(m));
    else if(Tank[v] < 20)format(string,sizeof string,"Tankart: %s~n~~w~Tank: ~y~%i ~w~liter~n~Km: 0000012~g~%d ~w~",name,GetVehicleMaxTank(m));
    else if(Tank[v] <= 70)format(string,sizeof string,"Tankart: %s~n~~w~Tank: ~g~%i ~w~liter~n~Km: 0000012~g~%d ~w~",name,GetVehicleMaxTank(m));
    PlayerTextDrawSetString(playerid,CarTankart[playerid],string);
    }
    }
    else
    {
    //TextDrawSetString(Anzeige[playerid], " ");
    }


    Wie meinst du das?
    "Dann sollte das am Anfang auch klappen. (Ich hoffe, du hast die zwei stocks im Code für GetVehicleMaxTank und das andere)."
    Jeffry:


    Irgendwie bleibt er immer noch auf 50 stehen der Tank :/
    Habe das Public von dir einfach ganz runter gemacht aber irgendwie immer noch keine Wirkung 8|


    MfG :thumbup:

    Jetzt kann ich sie Fahren, Tanken ging davor schon also jetzt geht es mehr oder weniger!
    Das zuweisen der Tankmengen ist ganz oben in OnGameModeInit:



    SetTimer("BenzinVerlust", VERLUST, true);
    for (new v=0; v< MAX_VEHICLES; v++)
    {
    GetVehicleParamsEx(v,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(v,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor[v] = false;
    Tank[v] = GetVehicleMaxTank(v);
    }


    Der Motor ist nun wieder startbar, stand des Codes:

    Spoiler anzeigen
    if(newkeys & KEY_ANALOG_DOWN) {
    if(GetPlayerVehicleSeat(playerid) == 0)
    {
    new car = GetPlayerVehicleID(playerid);
    new v = GetVehicleModel(car);
    Tank[car] = GetVehicleMaxTank(v);
    if(GetVehicleModel(car) == 509 || GetVehicleModel(car) == 481 || GetVehicleModel(car) == 510)
    {
    SendClientMessage(playerid, error, "Du sitzt auf einem Fahrrad. Das hat keinen Motor!");
    }

    Spoiler anzeigen
    else if (Tank[car] < 1)
    {
    SendClientMessage(playerid, error, "Der Tank ist leer. Du musst erst /tanken.");
    }

    Spoiler anzeigen
    else if (Motor[car] == false )
    {
    GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(car,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
    Motor[car] = true; // Setzt den Bool Motor auf true
    }

    Spoiler anzeigen
    else
    {
    GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor[car] = false; // Setzt den Bool wieder auf falsch zurück.
    }
    }
    return 1;
    }


    Bloß, meine Tankanzeige ist zwar Gelb (ab 50%) dennoch glaube ich damit der Tank noch höher ist da er nicht sinkt..


    //Edit:


    Falls du den Code brauchst er steht unter OnPlayerUpdate

    Spoiler anzeigen
    if(GetPlayerVehicleSeat(playerid) == 0)
    {
    new v = GetPlayerVehicleID(playerid);
    new m = GetVehicleModel(v);
    if(GetVehicleModel(v) != 509 && GetVehicleModel(v) != 481 && GetVehicleModel(v) != 510)
    {
    new name[32];
    new string[125];
    switch(GetVehicleTankArt(m)) {
    case 0: name = "Diesel";
    case 1: name = "Benzin";
    }
    if(Tank[v] < 10)format(string,sizeof string,"Tankart: %s~n~~w~Tank: ~r~%i ~w~liter~n~Km: 0000012~g~%d ~w~",name,GetVehicleMaxTank(m));
    else if(Tank[v] < 20)format(string,sizeof string,"Tankart: %s~n~~w~Tank: ~y~%i ~w~liter~n~Km: 0000012~g~%d ~w~",name,GetVehicleMaxTank(m));
    else if(Tank[v] <= 70)format(string,sizeof string,"Tankart: %s~n~~w~Tank: ~g~%i ~w~liter~n~Km: 0000012~g~%d ~w~",name,GetVehicleMaxTank(m));
    PlayerTextDrawSetString(playerid,CarTankart[playerid],string);
    }
    }
    else
    {
    //TextDrawSetString(Anzeige[playerid], " ");
    }


    Mit freundlichen Grüßen

    Doch hier :


    else if (Tank[car] < 1)
    {
    SendClientMessage(playerid, error, "Der Tank ist leer. Du musst erst /tanken.");
    }


    Das erscheint beim Versuch meinen Motor zu starten..


    Es gibt keinen Befehl, ich habe es mit der Taste 2 gemacht:


    Spoiler anzeigen
    //____________Tanken ____________//
    if(newkeys & KEY_LOOK_BEHIND) {
    for(new g;g<MAX_GAS;g++) {
    new car = GetPlayerVehicleID(playerid);
    if(GetPlayerVehicleSeat(playerid) != 0) return SendClientMessage(playerid,error,"Du bist in keinem Fahrzeug (oder kein Fahrer)!");
    if(TanktGerade[car]) return SendClientMessage(playerid,error,"Du bist bereits dabei dein Auto aufzutanken!");
    else if(Motor[car] == true) return SendClientMessage(playerid,error,"Du musst vor dem Tanken den Motor ausschalten!");
    else if(!IsPlayerInRangeOfPoint(playerid,Gasstation[g][Gasradius], Gasstation[g][Gasx],Gasstation[g][Gasy],Gasstation[g][Gasz])) return SendClientMessage(playerid,error,"Du bist an keiner Tankstelle!"); {
    new ZuTanken = 100-GetVehicleMaxTank(car);
    new preis = ZuTanken * BENZINPREIS;
    if(GetPlayerMoney(playerid)-preis < 0) return SendClientMessage(playerid,error,"Du hast nicht genug Geld!");
    GivePlayerMoney(playerid, -preis);
    SendClientMessage(playerid, info, "Tankvorgang wird gestartet...");
    SetCameraBehindPlayer(playerid);
    TogglePlayerControllable(playerid,0);
    TanktGerade[car] = true;
    tanktimer[playerid] = SetTimerEx("Auftanken",500,true,"i",playerid); }
    }
    }


    Hier wird es auf Maximal gestellt:
    SetTimer("BenzinVerlust", VERLUST, true);
    for (new v=0; v< MAX_VEHICLES; v++)
    {
    GetVehicleParamsEx(v,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(v,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor[v] = false;
    Tank[v] = GetVehicleMaxTank(GetVehicleModel(v));
    }


    Hier mal meine Publics:

    Spoiler anzeigen
    public BenzinVerlust()
    {
    for(new i=0; i<MAX_VEHICLES; i++)
    {
    if (Motor[i] == true)
    {
    Tank[i] = GetVehicleMaxTank(i)-1;
    if (Tank[i]<1)
    {
    Tank[i] = 0;
    GetVehicleParamsEx(i,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(i,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor[i] = false;
    }
    }
    }
    return 1;
    }

    Spoiler anzeigen
    public Auftanken(playerid)
    {
    new car = GetPlayerVehicleID(playerid);
    Tank[car] = GetVehicleMaxTank(car) +1;
    if(Tank[car] >= GetVehicleMaxTank(car))
    {
    TanktGerade[car] = false;
    Tank[car] = GetVehicleMaxTank(car);
    SendClientMessage(playerid, erfolg, "Dein Fahrzeug wurde %i€ vollgetankt.");
    TogglePlayerControllable(playerid,1);
    KillTimer(tanktimer[playerid]);
    }
    return 1;
    }


    Soll ja auch nicht über den max. Tank getankt werden und am besten verschieden abgezogen werden(nach 20 Metern bei diesel - 1 und bei 15 Metern Benzin - 1) wenn es geht..


    Falls du noch was brauchst, schreib es mir :)
    Danke dir Jeffry: (und auch dir Kaliber)


    Mit freundlichen Grüßen


    TV :thumbup:

    Okey, hab ich und keine Errors.
    Doch jetzt geht es trotzdem noch nicht :/


    Hab jetzt so wie ihr es gesagt habt gemacht ..


    //Edit;


    Habe mal eins an der Tankstelle hingeschoben und getankt, selbst da sagt er mir ich hätte kein Tank ?

    Spoiler anzeigen
    //____________Motor ____________//
    if(newkeys & KEY_ANALOG_DOWN) {
    if(GetPlayerVehicleSeat(playerid) == 0)
    {
    new car = GetPlayerVehicleID(playerid);
    if(GetVehicleModel(car) == 509 || GetVehicleModel(car) == 481 || GetVehicleModel(car) == 510)
    {
    SendClientMessage(playerid, error, "Du sitzt auf einem Fahrrad. Das hat keinen Motor!");
    }

    Spoiler anzeigen
    else if (GetVehicleMaxTank(car) < 1)
    {
    SendClientMessage(playerid, error, "Der Tank ist leer. Du musst erst /tanken.");
    }

    Spoiler anzeigen
    else if (Motor[car] == false )
    {
    GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(car,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
    Motor[car] = true; // Setzt den Bool Motor auf true
    }

    Spoiler anzeigen
    else
    {
    GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor[car] = false; // Setzt den Bool wieder auf falsch zurück.
    }
    }
    return 1;
    }

    Jeffry:
    MfG

    Hi,


    Habe den Stock jetzt eingefügt, muss ich jetzt bei den anderen Codes noch irgendwas beachten?


    [pwn=2814]
    stock GetVehicleTankArt(model)
    {
    if(model < 400 || model > 611) return -1;
    return VehData[model-400][0];
    }
    stock GetVehicleTankArt(model)
    {
    if(model < 400 || model > 611) return -1;
    return VehData[model-400][1];
    }[/pwn]


    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(2814) : error 017: undefined symbol "model"
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(2816) : error 010: invalid function or declaration
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(2817) : error 010: invalid function or declaration
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(2819) : error 017: undefined symbol "model"
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(2821) : error 010: invalid function or declaration
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(2822) : error 010: invalid function or declaration
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    6 Errors.


    Und soll ich jetzt den Code von Kaliber behalten?


    Verstehe grad nicht mehr so alles.. :D


    MfG

    Geht auch nicht.


    Ich schick jetzt einfach mal mein Tanksystem vielleicht hackt es irgendwo..


    Spoiler anzeigen
    #define VERLUST 10000
    #define BENZINPREIS 3
    #define GetVehicleTankArt(%0) VehData[(%0)-400][0]
    #define GetVehicleMaxTank(%0) VehData[(%0)-400][1]
    forward BenzinVerlust();
    forward Auftanken(playerid);
    #define MAX_GAS 18
    new Tank[MAX_VEHICLES], bool:TanktGerade[MAX_VEHICLES]=false, tanktimer[MAX_PLAYERS];
    new bool:licht[MAX_VEHICLES];


    Spoiler anzeigen
    //____Tank&Motor______//
    for (new i=0; i< MAX_VEHICLES; i++)
    {
    GetVehicleParamsEx(i,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(i,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor[i] = false;
    }
    SetTimer("BenzinVerlust", VERLUST, true);
    for (new v=0; v< MAX_VEHICLES; v++)
    {
    GetVehicleParamsEx(v,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(v,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor[v] = false;
    Tank[v] = GetVehicleMaxTank(GetVehicleModel(v));
    }


    Spoiler anzeigen
    public BenzinVerlust()
    {
    for(new i=0; i<MAX_VEHICLES; i++)
    {
    if (Motor[i] == true)
    {
    Tank[i] = Tank[i]-1;
    if (Tank[i]<1)
    {
    Tank[i] = 0;
    GetVehicleParamsEx(i,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(i,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor[i] = false;
    }
    }
    }
    return 1;
    }

    Spoiler anzeigen
    public Auftanken(playerid)
    {
    new car = GetPlayerVehicleID(playerid);
    Tank[car] = Tank[car] +1;
    if(Tank[car] >= 100)
    {
    TanktGerade[car] = false;
    Tank[car] = 100;
    SendClientMessage(playerid, erfolg, "Dein Fahrzeug wurde für %i€ vollgetankt.");
    TogglePlayerControllable(playerid,1);
    KillTimer(tanktimer[playerid]);
    }
    return 1;
    }


    Mit freundlichen Grüßen

    Leider immer noch nicht, komischerweise wird die Tankfarbe (ID 402 mit Tank max. 50) auch in Rot angezeigt :o?
    mein Motor starten befehl ist ja korrekt?


    Spoiler anzeigen
    if(newkeys & KEY_ANALOG_DOWN) {
    if(GetPlayerVehicleSeat(playerid) == 0)
    {
    new car = GetPlayerVehicleID(playerid);
    if(GetVehicleModel(car) == 509 || GetVehicleModel(car) == 481 || GetVehicleModel(car) == 510)
    {
    SendClientMessage(playerid, error, "Du sitzt auf einem Fahrrad. Das hat keinen Motor!");
    }

    Spoiler anzeigen
    else if (Tank[car] < 1)
    {
    SendClientMessage(playerid, error, "Der Tank ist leer. Du musst erst /tanken.");
    }

    Spoiler anzeigen
    else if (Motor[car] == false )
    {
    GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(car,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
    Motor[car] = true; // Setzt den Bool Motor auf true
    }

    Spoiler anzeigen
    else
    {
    GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor[car] = false; // Setzt den Bool wieder auf falsch zurück.
    }
    }
    return 1;
    }


    MfG

    Hi,


    Ich hab jetzt bisschen weiter angepasst, da alle Autos ja mit 100 Tank gespawnt werden aber ja nur bestimmte Anzahl an Tank haben.
    Deswegen hab ich jetzt es so gemacht, dass jedes Auto mit seiner MAximalen Tankfüllung spawnt...


    for (new i=0; i< MAX_VEHICLES; i++)
    {
    for(new p; p<MAX_PLAYERS; p++) {
    new v = GetPlayerVehicleID(p);
    new m = GetVehicleModel(v);
    GetVehicleParamsEx(i,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(i,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor[i] = false;
    Tank[i] = GetVehicleMaxTank(m); }
    }


    Keine Errors aber wenn ich Motor ingame anmachen möchte sagt er mir ich habe kein Tank :/

    Okey ein bisschen habe ich jetzt gecheckt.
    Zum beispiel im Textdraw es anzeigen zu lassen klappt, aber nur ohne mein System


    Mein System:
    100 % Tank ist er Grün
    50% Tank ist er Gelb
    25% Tank ist er Rot..


    ich musste es jetzt so machen weil ich es anders nicht gerafft hab:


    new v = GetPlayerVehicleID(playerid);
    new m = GetVehicleModel(v);
    new string[125];
    switch(GetVehicleTankArt(m)) {
    case 0: format(string,sizeof string,"Tankart: ~g~Diesel~n~~w~Tank: ~g~%i ~w~liter~n~Km: 0000012~g~%d ~w~",Tank[vehicleid]);
    case 1: format(string,sizeof string,"Tankart: ~g~Benzin~n~~w~Tank: ~g~%i ~w~liter~n~Km: 0000012~g~%d ~w~",Tank[vehicleid]);
    }
    PlayerTextDrawSetString(playerid,CarTankart[playerid],string);


    Kann ich es aber nicht einfach so machen und bei den Case irgendwie schreiben
    case 0: "Diesel"
    und dann :
    if(Tank[vehicleid] < 25)format(string,sizeof string,"Tankart: %i~n~~w~Tank: ~r~%i ~w~liter~n~Km: 0000012~g~%d ~w~",GetVehicleTankArt(m),Tank[vehicleid]);
    else if(Tank[vehicleid] < 50)format(string,sizeof string,"Tankart: %i~n~~w~Tank: ~y~%i ~w~liter~n~Km: 0000012~g~%d ~w~",GetVehicleTankArt(m),Tank[vehicleid]);
    else if(Tank[vehicleid] <= 100)format(string,sizeof string,"Tankart: %i~n~~w~Tank: ~g~%i ~w~liter~n~Km: 0000012~g~%d ~w~",GetVehicleTankArt(m),Tank[vehicleid]);


    Wenn du bei dem helfen kannst, wär ich dir schon dankbar


    //Edit: Habs selbst geschafft :D

    Ich habe jetzt jedem Fahrzeug seinen Tank zugewiesen, aber wenn ich


    [pwn=284]new v;
    v = GetPlayerVehicleID(playerid);
    new m;
    m = GetVehicleModel(v);
    switch(GetVehicleTankArt(m)) {
    case 0: print("Dieses Auto tankt Diesel!"); //<< das wird geprintet
    case 1: print("Dieses Auto tankt Benzin!");
    }


    switch(GetVehicleTankArt(m)) {
    case 0: Tank[veh] -= 20; //da Diesel -= 20
    case 1: Tank[veh] -= 15; //Da Benzin -= 15 //usw
    }[/pwn]


    Einfüge bekomme ich Errors/Warnings

    Spoiler anzeigen
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(285) : error 010: invalid function or declaration
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(287) : error 010: invalid function or declaration
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(288) : error 010: invalid function or declaration
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(289) : error 010: invalid function or declaration
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(290) : error 010: invalid function or declaration
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(293) : error 010: invalid function or declaration
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(294) : error 010: invalid function or declaration
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(295) : error 010: invalid function or declaration
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(3485) : warning 203: symbol is never used: "m"
    C:\Users\Tobi\Desktop\SAMP\samp037_svr_RC1_win32\gamemodes\newrl.pwn(3485) : warning 203: symbol is never used: "v"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase

    Spoiler anzeigen
    8 Errors.


    Und ich bin noch ein ziemlicher Anfänger im Scripten, sorry


    Ich füge das switch ja alles oben ins GM ein gell?


    Kann ich ein Command machen, oder du mir an dem ich mich Orientieren kann..


    bsp: mit einer SendClientMessage "Tankart, Kraftstoff und Zeit"
    Zeit = Die zeit in der das Auto 1 Liter benzin verliert, mit abfragen halt daran könnt ich mich orientieren..


    Sorry wenns zu umständlich für dich ist oder so ...



    Mit freundlichen Grüßen

    Hey, mein Login und register Textdraw ist leider nicht anklickbar.. die anderen im Script gehen alle..



    SelectTextDraw(playerid, 0xA3B4C5FF);//ganz oben Onplayerconnect


    Spoiler anzeigen
    Textdraw3[playerid] = CreatePlayerTextDraw(playerid, 388.500000, 279.011108, "Register");
    PlayerTextDrawLetterSize(playerid, Textdraw3[playerid], 0.000000, 1.895678);
    PlayerTextDrawTextSize(playerid, Textdraw3[playerid], 258.000000, 0.000000);
    PlayerTextDrawAlignment(playerid, Textdraw3[playerid], 1);
    PlayerTextDrawColor(playerid, Textdraw3[playerid], 0);
    PlayerTextDrawUseBox(playerid, Textdraw3[playerid], true);
    PlayerTextDrawBoxColor(playerid, Textdraw3[playerid], 102);
    PlayerTextDrawSetShadow(playerid, Textdraw3[playerid], 0);
    PlayerTextDrawSetOutline(playerid, Textdraw3[playerid], 0);
    PlayerTextDrawFont(playerid, Textdraw3[playerid], 0);
    PlayerTextDrawSetProportional(playerid, Textdraw3[playerid], 1);
    PlayerTextDrawSetSelectable(playerid, Textdraw3[playerid], true);

    Spoiler anzeigen
    Textdraw4[playerid] = CreatePlayerTextDraw(playerid, 388.500000, 308.877838, "Informationen");
    PlayerTextDrawLetterSize(playerid, Textdraw4[playerid], 0.000000, 1.878396);
    PlayerTextDrawTextSize(playerid, Textdraw4[playerid], 258.000000, 0.000000);
    PlayerTextDrawAlignment(playerid, Textdraw4[playerid], 1);
    PlayerTextDrawColor(playerid, Textdraw4[playerid], 0);
    PlayerTextDrawUseBox(playerid, Textdraw4[playerid], true);
    PlayerTextDrawBoxColor(playerid, Textdraw4[playerid], 102);
    PlayerTextDrawSetShadow(playerid, Textdraw4[playerid], 0);
    PlayerTextDrawSetOutline(playerid, Textdraw4[playerid], 0);
    PlayerTextDrawFont(playerid, Textdraw4[playerid], 0);
    PlayerTextDrawSetProportional(playerid, Textdraw4[playerid], 1);
    PlayerTextDrawSetSelectable(playerid, Textdraw4[playerid], true);

    Spoiler anzeigen
    Textdraw5[playerid] = CreatePlayerTextDraw(playerid, 388.500000, 338.744476, "Verlassen");
    PlayerTextDrawLetterSize(playerid, Textdraw5[playerid], 0.000000, 1.895678);
    PlayerTextDrawTextSize(playerid, Textdraw5[playerid], 258.000000, 0.000000);
    PlayerTextDrawAlignment(playerid, Textdraw5[playerid], 1);
    PlayerTextDrawColor(playerid, Textdraw5[playerid], 0);
    PlayerTextDrawUseBox(playerid, Textdraw5[playerid], true);
    PlayerTextDrawBoxColor(playerid, Textdraw5[playerid], 102);
    PlayerTextDrawSetShadow(playerid, Textdraw5[playerid], 0);
    PlayerTextDrawSetOutline(playerid, Textdraw5[playerid], 0);
    PlayerTextDrawFont(playerid, Textdraw5[playerid], 0);
    PlayerTextDrawSetProportional(playerid, Textdraw5[playerid], 1);
    PlayerTextDrawSetSelectable(playerid, Textdraw5[playerid], true);


    Und was passieren soll:


    if(_:playerid != INVALID_TEXT_DRAW)
    {
    if(playertextid == Textdraw3[playerid])
    {
    if(cache_num_rows() == 0)
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"________Herzlich Wilkommen auf San Francisco Reallife________");
    SendClientMessage(playerid, 0xFFFFFFFF,"Datenbank: Akte konnte nicht gefunden werden. Bitte Registrieren Sie sich!");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Bitte gib dein Persöhnliches Passwort ein:","Register","Abbrechen");
    }
    else
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"________Herzlich Wilkommen auf San Francisco Reallife________");
    SendClientMessage(playerid, 0xFFFFFFFF,"Datenbank: Akte wurde gefunden. Bitte Loggen Sie sich ein!");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Einloggen","Bitte gib dein Passwort ein:","Login","Abbrechen");
    }
    }
    }



    Ich verstehe nicht wieso er nicht anklickbar ist und ich kann auf "Spawn" klicken dann werde ich gespawnt aber nicht eingeloggt das soll auch nicht sein :/


    MfG

    Also, ab 3 Verwarnungen sollte eigentlich schluss sein doch sobald ich mal mehr gas gebe laggt es kurz und dann werde ich zugespammt mit Du bist über 80 gefahren.....
    Und hab dann 400 irgendwas verwarnungen :D



    if(!strcmp(cmd,"/mission",true))
    {
    // if(IsPlayerInAnyVehicle(playerid) && GetVehicleModel(GetPlayerVehicleID(playerid)) == 560)
    // {
    Praxis[playerid] = 1;
    veh = CreateVehicle(560,-2029.2120,-94.9321,35.0980,90.7712,1,1,-1);
    speedTimer[playerid] = SetTimerEx("CheckSpeed",1000,1,"i",playerid);
    SetPlayerRaceCheckpoint(playerid,0,racecheckpoints[0][0],racecheckpoints[0][1],racecheckpoints[0][2],racecheckpoints[1][0],racecheckpoints[1][1],racecheckpoints[1][2],3.0);
    // }
    return 1;
    }


    hier rufe ich das auf mit einem Timer :)

    Super es funktioniert!


    Aber leider wird der Spieler erst ab ca 90 und manchmal erst 100 KMH verwarnt(eigentlich 80) und dann bekomm ich nen kleinen Lagg und hab fast 500 Verwarnungen :/


    forward CheckSpeed(playerid);
    public CheckSpeed(playerid)
    {
    for(new i;i<MAX_PLAYERS;i++)
    {
    if(GetPlayerSpeed(GetPlayerVehicleID(i)) > 80)
    {
    new string[128];
    playerWarn[playerid] ++;
    SendClientMessage(playerid,-1,"Du bist über 80 km/h gefahren! +1 Verwarnung!");
    format(string,sizeof string,"Verwarnungen: %d/3",playerWarn[playerid]);
    PlayerTextDrawSetString(playerid,Textwarn[playerid],string);
    }
    if(playerWarn[playerid] == 3)
    {
    KillTimer(speedTimer[playerid]);
    //Hier ist der Spieler 3x über 80 km/h gefahren
    }
    }
    return 1;
    }


    Sollte doch richtig sein oder?


    GetPlayerSpeed(playerid)
    {
    new Float:ST[4];
    if(IsPlayerInAnyVehicle(playerid))
    GetVehicleVelocity(GetPlayerVehicleID(playerid),ST[0],ST[1],ST[2]);
    else GetPlayerVelocity(playerid,ST[0],ST[1],ST[2]);
    ST[3] = floatsqroot(floatpower(floatabs(ST[0]), 2.0) + floatpower(floatabs(ST[1]), 2.0) + floatpower(floatabs(ST[2]), 2.0)) * 179.28625;
    return floatround(ST[3]);
    }


    MfG