Beiträge von DMA

    Schreib dir eine GetDistanceTo funktion und dann dies:
    new Float:self[3];
    GetPlayerPos(playerid, self[0], self[1], self[2]);
    if(GetDistanceTo(self[0], self[1], self[2], pd koords)) {
    SendClientMessage(...);
    }

    Du musst den letzten Replace Operator (%d)
    Durch ein %f ersetzten.
    Z.b.
    format(tmp, sizeof tmp, "%s %s Fuel:%d Heal:%f","_",SpeedString[playerid],Gas[vehicle],health);
    Für eine etwas ungenauere Angabe mit nur zwei Stellen hinter dem Komma wäre das dann dies:
    format(tmp, sizeof tmp, "%s %s Fuel:%d Heal:%0.2f","_",SpeedString[playerid],Gas[vehicle],health);
    Such dir eins raus ;p

    #include <a_samp>
    #define rot 0xFF0000AA
    #define gelb 0xFFFF00FF
    #define NONE_F -1.0
    /* settings */
    #define SIZE_OF_CP 50.0
    public OnFilterScriptInit()
    {
    print("Race Script by Maercell");
    return 1;
    }
    public OnFilterScriptExit()
    {
    return 1;
    }
    public OnPlayerConnect(playerid)
    {
    return 1;
    }
    public OnPlayerDisconnect(playerid, reason)
    {
    DisablePlayerRaceCheckpoint(playerid);
    return 1;
    }


    stock playerLastCheckpoint[MAX_PLAYERS], Float:checkpointPos[][6] = { /* Schema x,y,z, der nächste für den pfeil in dem ding,
    also coords fürs nächste x,y, z */
    { 1477.3345,1763.6573,10.3776,1476.9408,1501.3993,10.3857 },
    { 1476.9408,1501.3993,10.3857,1477.5575,1193.7247,10.3908 },
    { 1477.5575,1193.7247,10.3908, NONE_F, NONE_F, NONE_F } }; /* <== Hier in den Zeilen ein Haufen tagmismatch */


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if(strcmp("/drag",cmdtext,true) == 0)
    {
    if (IsPlayerInAnyVehicle(playerid))
    {
    SetVehiclePos(GetPlayerVehicleID(playerid),1476.5281,1824.1497,10.3834);
    SetVehicleZAngle(GetPlayerVehicleID(playerid),180.0);
    SetPlayerRaceCheckpoint(playerid, 1, checkpointPos[0][0], checkpointPos[0][1],
    checkpointPos[0][2], checkpointPos[0][3], checkpointPos[0][4],
    checkpointPos[0][5], SIZE_OF_CP);// number of arguments does not match with definition
    playerLastCheckpoint[playerid] = 0;
    }
    else
    {
    SendClientMessage(playerid,rot,"Du brauchst ein Auto dazu!");
    }
    }
    return 0;
    }
    public OnPlayerEnterRaceCheckpoint(playerid)
    {
    if((sizeof checkpointPos - 1) == playerLastCheckpoint[playerid])
    {
    GivePlayerMoney(playerid,10000);
    SendClientMessage(playerid,gelb,"Du hast das Dragrennen gewonnen!");
    GameTextForPlayer(playerid," ~g~ 10000$",1000,1);
    }
    else
    {
    DisablePlayerRaceCheckpoint(playerid);
    playerLastCheckpoint[playerid] += 1;
    SetPlayerRaceCheckpoint(playerid, 1, checkpointPos[playerLastCheckpoint[playerid]][0],
    checkpointPos[playerLastCheckpoint[playerid]][1], checkpointPos[playerLastCheckpoint[playerid]][2],
    checkpointPos[playerLastCheckpoint[playerid]][3], checkpointPos[playerLastCheckpoint[playerid]][4],
    checkpointPos[playerLastCheckpoint[playerid]][5], SIZE_OF_CP);// number of arguments does not match with definition
    }
    }
    Bitte sehr.

    Scripten muss gelernt sein
    new string[256]; /* Mehr als 255 Zeichen könne neh nicht ausgegegebn werden Oo */


    //-----------------------------[wanted]----------------------------
    if(strcmp(cmd, "/wanted",true)==0)
    {
    new text[256], temp2;
    text= strtok(cmdtext, idx);
    temp2 = strval(text);
    text = strmid(text,cmdtext,(idx+1),strlen(cmdtext));
    format(string,sizeof(string),"%i : %s",temp2, text);
    SendClientMessage(playerid,COLOR_TRUE,string);
    return 1;
    }

    Deine IP Adresse vllt?
    Mal ganz erlich, lass es lieber und arbeite mit einem File System.
    MySQL auf einem Homerechner ist nicht das wahre und die configuration unter Linux ist auch nicht ganz so leicht.

    Ich weiß nicht in wie weit der Gültigkeitsbereich in PAWN ausgbeaut ist, aber verscuh das mal:
    new Float:LOOp = 2207.501;
    new Float:LOOp2 = -1593.539;
    new Float:LOOp3 = 477.971;


    for(new count = 0; count <= 15; count++) {
    CreateObject(13592,LOOp,LOOp2,LOOp3,-35.237,0.0,-67.500);
    goto LoopAddX;
    goto LoopAddY;
    goto LoopAddZ;
    }
    LoopAddX: LOOp += 6.0;
    LoopAddY: LOOp2 -= 1.0;
    LoopAddZ: LOOp3 -= 4.0;
    Einfach mal ausprobieren, wie gesagt nicht getestet.
    Erklärung:
    Mit [wiki]goto[/wiki] macht mein einen Sprung zu einem songenannt "Label".
    Eigendlich bei Programmierern verhast, weil aufeinmal ganz wo anders hingesprungen wird, aber einversuch ist es bei dir alle mal wert :p

    Windows auf Anti Deutsch und es klappt :p
    Das Programm ließt aus den Windows Source und in den deutschen Versionen ist . und , vertauscht, weil wir auch im Mathematik unterricht gelernt haben, das man Gleitkommazahlen mit einem komma trennt. :>