HILFE bei den Blitzer by Jason.G

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
  • // ~Wichtiges~




    #include <a_samp>




    // Credits: Peter <3 && Antironix für die Blitzer Geschwindigkeit


    // Credits: To Jason_Gregory




    enum SavePlayerPosEnum {


    Float:LastX,


    Float:LastY,


    Float:LastZ


    }


    #define COLOR_GELB 0xFFFF00AA


    #define SLOTS 200




    forward Geschwindkeitsangabe(playerid);




    new SekundenBlitz = 1; // Wie frequent wird es geupdatet


    new maxobject = 2; //Anzahl der aufgestellten Blitzer


    new HergestelltesOb;


    new SavePlayerPos[SLOTS][SavePlayerPosEnum];


    new Abstandsangabe[MAX_PLAYERS];




    stock AddBlitzer(playerid, modelid, Float:xx, Float:yy, Float:zz, radius, speed)


    {


    new fine[MAX_PLAYERS];


    new str[256];




    if(HergestelltesOb!=maxobject)


    {


    CreateObject(modelid, xx, yy, zz, 0.0, 0.0, 10);


    HergestelltesOb++;


    }


    if((Abstandsangabe[playerid])>speed)


    {


    if(IsPlayerInCircle(playerid, xx, yy, radius) && GetPlayerState(playerid)== PLAYER_STATE_DRIVER)


    {


    fine[playerid]=((Abstandsangabe[playerid]*17/6)-speed);


    GivePlayerMoney(playerid, -fine[playerid]);


    format(str,sizeof(str), "Du bist schneller als %d(%d) Km/H gefahren und bezahlst $%d",speed, Abstandsangabe[playerid] ,fine[playerid]);


    SendClientMessage(playerid, COLOR_GELB, str);


    GameTextForPlayer(playerid, "!Geblitzt!", 300, 5);


    SetPlayerWantedLevel(playerid,1);


    }


    }


    }




    IsPlayerInCircle(playerid,Float:x,Float:y,radius)


    {


    if(GetPlayerDistanceToPoint(playerid,Float:x,Float:y) < radius)


    {


    return 1;


    }


    return 0;


    }




    GetPlayerDistanceToPoint(playerid,Float:x,Float:y)


    {


    new Float:x1,Float:y1,Float:z1; GetPlayerPos(playerid,x1,y1,z1);


    new Float:tmpdis = floatsqroot(floatpower(floatabs(floatsub(x,x1)),2)+


    floatpower(floatabs(floatsub(y,y1)),2));


    return floatround(tmpdis);


    }




    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)


    {


    return 1;


    }






    public OnPlayerExitVehicle(playerid, vehicleid)


    {


    return 1;


    }




    public Geschwindkeitsangabe(playerid)


    {


    new Float:x,Float:y,Float:z;


    new Float:distance,value;


    for(new i=0; i<SLOTS; i++)


    {


    if(IsPlayerConnected(i))


    {


    GetPlayerPos(i, x, y, z);


    distance = floatsqroot(floatpower(floatabs(floatsub(x,SavePlayerPos[i][LastX])),2)+floatpower(floatabs(floatsub(y,SavePlayerPos[i][LastY])),2)+floatpower(floatabs(floatsub(z,SavePlayerPos[i][LastZ])),2));


    value = floatround(distance * 3600);


    if(SekundenBlitz > 1)


    {


    value = floatround(value / SekundenBlitz);


    }


    Abstandsangabe[i] = floatround(value/1600);




    SavePlayerPos[i][LastX] = x;


    SavePlayerPos[i][LastY] = y;


    SavePlayerPos[i][LastZ] = z;


    AddBlitzer(i, 1278, 1483.1006,-1737.8201,13.5469, 20, 80); //Hier die Blitzer rein (Unsichtbare Speeding Boundries)


    AddBlitzer(i, 1278, 2034.2117,-1757.9825,13.3828, 20, 80);


    AddBlitzer(i, 1278, 2095.3606,-1106.7803,25.1243, 20, 40);


    AddBlitzer(i, 1278, 1124.7125,-939.8494,42.8917, 20, 80);


    AddBlitzer(i, 1278, 1452.9301,-1027.5425,23.8281, 20, 80);


    AddBlitzer(i, 1278, 1350.0983,-1419.0045,13.5469, 20, 80);


    AddBlitzer(i, 1278, 1523.8218,-1660.9788,13.5392, 20, 80);


    AddBlitzer(i, 1278, 1689.8768,-1446.8567,13.5469, 20, 80);
    AddBlitzer(i, 1278, 1849.4011,-1396.5714,13.3906, 20, 80);


    }


    }


    }



    Die gehen nicht bei mir, ich weiss nicht warum bitte um Hilfe.