Beiträge von Mustang96

    Hey,
    ich habe in German Roleplay gesehen, dass man dort über ein /aimbottest - Script verfügt und habe lange Zeit nach einem solchem Script gesucht, habe jedoch nichts gefunden.
    Deshalb habe ich mir selbst ein solches Script erstellt und dieses könnt ihr euch hier herunterladen:
    http://pastebin.com/U7cpLEHF


    Einfach in den FIlterScript Ordner packen und dort compilen und anschließend laden :)
    Ich wäre sehr dankbar, wenn jemand ein Video von diesem FS zur Verfügung stellen würde (bei mir funktioniert Fraps nicht mehr)



    Ich hoffe es gefällt euch :D


    Hey,
    ich benutze folgendes Tachosystem:
    forward VehStateCheck();
    public VehStateCheck()
    {
    new Float:Speedo_X,Float:Speedo_Y,Float:Speedo_Z;
    new Float:Speedo_HP;
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i) && GetPlayerVehicleSeat(i) == 0)
    {
    GetPlayerPos(i, Speedo_X, Speedo_Y, Speedo_Z);
    GetPlayerVehicleID(i);
    GetVehicleHealth(GetPlayerVehicleID(i), Speedo_HP);

    new str1[256],str2[256],str3[256],str4[256];
    if(SpeedoON[i] == 0)
    {
    TextDrawShowForPlayer(i, kmh[i]); TextDrawShowForPlayer(i, hoehe[i]);
    SpeedoON[i] = 1;
    }
    //new Float:speed_x,Float:speed_y,Float:speed_z,Float:final_speed,final_speed_int;
    new veh = GetPlayerVehicleID(i);
    //GetVehicleVelocity(veh, speed_x, speed_y, speed_z);
    //final_speed = floatsqroot(((speed_x*speed_x)+(speed_y*speed_y))+(speed_z*speed_z))*136.666667; // 136.666667 = kmph // 85.4166672= mph
    //final_speed_int = floatround(final_speed,floatround_round);
    //new kmh_anzahl = final_speed_int;
    new kmh_anzahl = ErmittleGeschwindigkeit(i,true);

    format(str1,sizeof(str1),"Fahrzeug: ~y~%s",VehicleName[veh-400]);

    if(kmh_anzahl >= 150)
    {
    format(str2,sizeof(str2),"km / h: ~g~%d",kmh_anzahl);
    TextDrawSetString(kmh[i], str2);
    }
    else if(kmh_anzahl >= 90)
    {
    format(str2,sizeof(str2),"km / h: ~g~%d",kmh_anzahl);
    TextDrawSetString(kmh[i], str2);
    }
    else if(kmh_anzahl >= 40)
    {
    format(str2,sizeof(str2),"km / h: ~g~%d",kmh_anzahl);
    TextDrawSetString(kmh[i], str2);
    }
    else
    {
    format(str2,sizeof(str2),"km / h: ~g~%d",kmh_anzahl);
    TextDrawSetString(kmh[i], str2);
    }
    new vehicleid = GetPlayerVehicleID(i);
    format(str3,sizeof(str3),"Tank: ~r~%d/100", Tank[vehicleid]);
    TextDrawSetString(hoehe[i], str3);

    if(Speedo_HP >= 551)
    {
    format(str4,sizeof(str4),"Zustand: ~g~%.2f", Speedo_HP);
    }
    else if(Speedo_HP >= 361)
    {
    format(str4,sizeof(str4),"Zustand: ~y~%.2f", Speedo_HP);
    }
    else
    {
    format(str4,sizeof(str4),"Zustand: ~r~%.2f", Speedo_HP);
    }
    }
    else
    {
    TextDrawHideForPlayer(i, kmh[i]); TextDrawHideForPlayer(i, hoehe[i]);
    SpeedoON[i] = 0;
    }
    }
    return 1;
    }


    Dieser Code: "TextDrawShowForPlayer(i, kmh[i]); TextDrawShowForPlayer(i, hoehe[i]);" wird abgefragt, allerdings wird dannach kein Wert angegeben...
    Geschwindigkeit:
    stock ErmittleGeschwindigkeit(playerid, bool:kmh2)
    {
    new Float:x,Float:y,Float:z,Float:rtn;
    if(IsPlayerInAnyVehicle(playerid)) GetVehicleVelocity(GetPlayerVehicleID(playerid),x,y,z); else GetPlayerVelocity(playerid,x,y,z);
    rtn = floatsqroot(x*x+y*y+z*z);
    return kmh2?floatround(rtn * 100 * 1.11):floatround(rtn * 100);
    }


    Danke im Vorraus!

    Bei mir funktioniert es so:
    new myobject = CreateObject(19353, x, y, z, 0.0, 0.0, polca);
    SetObjectMaterialText(myobject, "{FFFFFF}Predator{008500} Reallife", 0, OBJECT_MATERIAL_SIZE_256x128,\
    "Arial", 28, 0, 0xFFFF8200, 0xFF000000, OBJECT_MATERIAL_TEXT_ALIGN_CENTER);

    Der Fehler muss irgendwo in "OnPlayerStateChange(playerid, newstate, oldstate)" liegen, da der darin enthaltene Code: "SetPlayerArmedWeapon(playerid,0);" ebenfalls
    nicht abgefragt wird!


    Hallo,
    ich habe derzeit folgendes Tachosystem:
    new Tachospeedanzeige[Tachosystem];
    new Text:Tacho[MAX_PLAYERS][6];


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER)
    {
    for(new i; i < 13; i++)
    {
    TextDrawShowForPlayer(playerid, Tachospeedanzeige[Tachoanzeige][i]);
    }
    for(new i; i < 6; i++)
    {
    Tacho[playerid][i] = TextDrawCreate(516.0,350.0, "~r~ |");
    }
    }
    else
    {
    for(new i; i < 6; i++)
    TextDrawHideForPlayer(playerid, Tacho[playerid][i]);
    for(new i; i < 13; i++)
    TextDrawHideForPlayer(playerid, Tachospeedanzeige[Tachoanzeige][i]);
    }
    if(newstate == PLAYER_STATE_DRIVER)
    {
    TextDrawShowForPlayer(playerid,Tachospeedanzeige[Tachoanzeige][playerid]);
    }
    }


    public OnPlayerUpdate(playerid)
    {
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    GetVehicleVelocity(GetPlayerVehicleID(playerid), fPos2[0], fPos2[1], fPos2[2]);
    sSpeed = floatsqroot(floatpower(fPos2[0], 2) + floatpower(fPos2[1], 2) +
    floatpower(fPos2[2], 2)) * 200;
    new Float:alpha = 320 - sSpeed;
    if(alpha < 70)
    alpha = 70;
    for(new i; i < 6; i++)
    {
    TextDrawHideForPlayer(playerid, Tacho[playerid][i]);
    TextDrawDestroy(Tacho[playerid][i]);
    Speed(516,350, Pos[i][0], Pos[i][1], alpha, (i + 1) * 7);
    Tacho[playerid][i] = TextDrawCreate(Pos[i][0], Pos[i][1], "~r~ |");
    TextDrawLetterSize(Tacho[playerid][i],0.9,3.0);
    TextDrawSetOutline(Tacho[playerid][i], 0);
    TextDrawSetShadow(Tacho[playerid][i], 1);
    TextDrawShowForPlayer(playerid, Tacho[playerid][i]);
    }
    }
    if(GetPlayerVehicleSeat(playerid) == 0)
    {
    new vehicleid;
    vehicleid = GetPlayerVehicleID(playerid);
    if(GetVehicleModel(vehicleid) != 509 && GetVehicleModel(vehicleid) != 481 && GetVehicleModel(vehicleid) != 510)
    {
    new string[125];
    if(Tank[vehicleid] < 10) format(string,sizeof string,"~r~Tank: ~r~%i",Tank[vehicleid]);
    else if(Tank[vehicleid] < 20) format(string,sizeof string,"~r~Tank: ~r~%i",Tank[vehicleid]);
    else if(Tank[vehicleid] < 40) format(string,sizeof string,"~y~Tank: ~y~%i",Tank[vehicleid]);
    else if(Tank[vehicleid] <= 100) format(string,sizeof string,"~g~Tank: ~g~%i",Tank[vehicleid]);
    TextDrawSetString(Anzeige[playerid],string);
    }
    }
    else
    {
    TextDrawSetString(Anzeige[playerid], " ");
    }
    }


    Doch nach der Zeit (nach 5-6 Stunden, die der Server läuft), verschwindet es (Tank und Geschwindigkeitsanzeige) einfach, woran kann das liegen?
    Vielen Dank im Vorraus!

    Du gibst ja auch nur den Namen der Tanke weiter, nicht aber den String:
    Create3DTextLabel(string, COLOR_RED, BTanke[idx][bPosX], BTanke[idx][bPosY], BTanke[idx][bPosZ], 20.0, 0, 0);


    das Script, welches ich verwende steht weiter unten ;)
    new string[256];
    format(string,sizeof(string), "ZU VERKAUFEN!\nName: %s\nBesitzer: Der Staat\nKaufpreis: %d", BTanke[idx][bName], BTanke[idx][bPrice]);
    Create3DTextLabel(BTanke[idx][bName], COLOR_RED, BTanke[idx][bPosX], BTanke[idx][bPosY], BTanke[idx][bPosZ], 20.0, 0, 0);


    Bitte gründlicher lesen...

    Hallo,
    Ich habe heute ein neues Tanksystem erstellt (mit Erwerben einer Tanke usw.)
    Es kommen keine Fehler/Warnings raus, aber es wird immer nur der Name der Tankstelle (ohne "Name") angezeigt.
    Als hätte ich es so:
    new string[256];
    format(string,sizeof(string), "%s", BTanke[idx][bName]);
    Create3DTextLabel(BTanke[idx][bName], COLOR_RED, BTanke[idx][bPosX], BTanke[idx][bPosY], BTanke[idx][bPosZ], 20.0, 0, 0);


    Mein Script:
    new string[256];
    format(string,sizeof(string), "ZU VERKAUFEN!\nName: %s\nBesitzer: Der Staat\nKaufpreis: %d", BTanke[idx][bName], BTanke[idx][bPrice]);
    Create3DTextLabel(BTanke[idx][bName], COLOR_RED, BTanke[idx][bPosX], BTanke[idx][bPosY], BTanke[idx][bPosZ], 20.0, 0, 0);


    Wie behebe ich diesen Fehler?


    Kann gar nicht, denn würde man das jetzt so im Script einbauen, würde man den Error "undefined Symbol i" bekommen.
    Dazu fehlt die Enum Deklaration


    upps, sry habe das sehr schnell erstellt und bei mir einfach automatisch richtig eingebaut (der Timer ist bei mir wo anders drinne)
    Hier jedenfalls der richtige Code:
    #include <a_samp>


    #define dcmd(%1,%2,%3) if(!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1



    forward Timer();
    forward Float:GetDistanceBetweenPlayers(p1,p2);


    #define AnwaltPos 1778.1670, -1663.6190, 14.4359 //Anwälte müssen, um die Verhandlung am Laufen zu halten an dieser Position sein
    #define AnwaltMark 8 //Größe des Markers (wird auf AnwaltPos gesetzt)
    #define AnwaltEntf 15.0 //Maximaler Abstand zu AnwaltPos (wenn weiter weg läuft die Zeit nicht weiter ab)


    #define COLOR_GREEN 0x33AA33AA
    #define COLOR_RED 0xAA3333AA
    #define COLOR_LIGHTBLUE 0x33CCFFAA
    #define COLOR_GREY 0xAFAFAFAA


    enum pInfo
    {
    pLawSkill,
    freeUser,
    freeUserID,
    freeUserTime,
    freeUserPrice,
    pJailTime,
    pJob,
    pPnumber,
    pJailed
    }
    new PlayerInfo[MAX_PLAYERS][pInfo];


    public OnGameModeInit()
    {
    SetTimer("Timer", 5000, 1);
    return 1;
    }


    public OnPlayerConnect(playerid)
    {
    PlayerInfo[playerid][pLawSkill] = 0;
    PlayerInfo[playerid][freeUser] = -1;
    PlayerInfo[playerid][freeUserID] = -1;
    PlayerInfo[playerid][freeUserTime] = -1;
    PlayerInfo[playerid][freeUserPrice] = -1;
    return 1;
    }


    public Float:GetDistanceBetweenPlayers(p1,p2)
    {
    new Float:xx1,Float:yy1,Float:zz1,Float:xx2,Float:yy2,Float:zz2;
    if(!IsPlayerConnected(p1) || !IsPlayerConnected(p2))
    {
    return -1.00;
    }
    GetPlayerPos(p1,xx1,yy1,zz1);
    GetPlayerPos(p2,xx2,yy2,zz2);
    return floatsqroot(floatpower(floatabs(floatsub(xx2,xx1)),2)+floatpower(floatabs(floatsub(yy2,yy1)),2)+floatpower(floatabs(floatsub(zz2,zz1)),2));
    }


    public Timer()
    {
    new string[256];
    for(new i; i < MAX_PLAYERS; i++)
    {
    if(PlayerInfo[i][freeUserID] != -1)
    {
    if(!IsPlayerConnected(PlayerInfo[i][freeUserID]))
    {
    SendClientMessage(i,COLOR_RED,"Dein Mandant hat sich ausgeloggt!");
    PlayerInfo[i][freeUserID] = -1;
    PlayerInfo[i][freeUserTime] = -1;
    PlayerInfo[i][freeUserPrice] = -1;
    DisablePlayerCheckpoint(i);
    }
    else
    {
    if(IsPlayerInRangeOfPoint(i, AnwaltEntf, AnwaltPos))
    {
    if(PlayerInfo[i][freeUserTime] > 0)
    {
    PlayerInfo[i][freeUserTime] -= 5;
    }
    else if(PlayerInfo[i][freeUserTime] <= 0)
    {
    new pName[32], pIdName[32];
    GetPlayerName(i, pName, sizeof(pName));
    GetPlayerName(PlayerInfo[i][freeUserID], pIdName, sizeof(pIdName));
    format(string, sizeof(string), "Du hast %s für $%d aus dem Gefängnis geholt!", pIdName, PlayerInfo[i][freeUserPrice]);
    SendClientMessage(i,COLOR_RED,string);
    format(string, sizeof(string), "%s hat dich für $%d aus dem gefängnis geholt!", pName, PlayerInfo[i][freeUserPrice]);
    SendClientMessage(PlayerInfo[i][freeUserID],COLOR_RED,string);
    GivePlayerMoney(i, -PlayerInfo[i][freeUserPrice]);
    PlayerInfo[PlayerInfo[i][freeUserID]][pJailTime] = 0;
    PlayerInfo[i][freeUserID] = -1;
    PlayerInfo[i][freeUserTime] = -1;
    PlayerInfo[i][freeUserPrice] = -1;
    PlayerInfo[i][pLawSkill] += 1;
    DisablePlayerCheckpoint(i);
    }
    }
    }


    }
    }
    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    dcmd(free,4,cmdtext);


    //--------------------------- ANWALT -------------------------------------------------
    if(strcmp(cmdtext,"/anwaelte",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    SendClientMessage(playerid, COLOR_GREEN, "______________ Online Anwälte ______________");
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerInfo[i][pJob] == 20)
    {
    new sendername[MAX_PLAYER_NAME], string[256];
    GetPlayerName(i, sendername, sizeof(sendername));
    format(string, 256, "Name: %s ID: %d Skill: %d Tel: %d", sendername, i, PlayerInfo[i][pLawSkill], PlayerInfo[i][pPnumber]);
    SendClientMessage(playerid, COLOR_GREY, string);
    }
    }
    }
    }
    return 1;
    }
    return 1;
    }


    //------------------------------------ [ANWALT] ----------------------------------------
    dcmd_free(playerid,params[])
    {
    new pID;
    new string[256];
    new pName[MAX_PLAYER_NAME],pIdName[MAX_PLAYER_NAME];
    if(PlayerInfo[playerid][pJob] != 20) { return SendClientMessage(playerid,0xAFAFAFAA,"Du bist kein Anwalt!"); }
    if(sscanf(params,"u",pID)) { return SendClientMessage(playerid,0xAFAFAFAA,"benutze: /free [playerid]"); }
    if(!IsPlayerConnected(pID)) { return SendClientMessage(playerid,COLOR_RED,"Ungültige ID!"); }
    if(PlayerInfo[pID][pJailed] == 0) { return SendClientMessage(playerid,COLOR_RED,"Dieser Spieler befindet sich nicht im Gefängnis!"); }
    if(GetDistanceBetweenPlayers(playerid,pID) > 10.0) { return SendClientMessage(playerid,COLOR_GREY,"Du bist zu weit entfernt!"); }


    new skill;
    new level = PlayerInfo[playerid][pLawSkill];
    if(level >= 0 && level <= 50) { skill = 1;}
    else if(level >= 51 && level <= 100) { skill = 2; }
    else if(level >= 101 && level <= 200) { skill = 3; }
    else if(level >= 201 && level <= 400) { skill = 4; }
    else if(level >= 401) { skill = 5; }


    new price = PlayerInfo[pID][pJailTime]*20;
    new ftime;
    if(skill == 1)
    {
    ftime = PlayerInfo[pID][pJailTime]/10*8;
    }
    else if(skill == 2)
    {
    ftime = PlayerInfo[pID][pJailTime]/10*7;
    }
    else if(skill == 3)
    {
    ftime = PlayerInfo[pID][pJailTime]/10*6;
    }
    else if(skill == 4)
    {
    ftime = PlayerInfo[pID][pJailTime]/10*5;
    }
    else if(skill == 5)
    {
    ftime = PlayerInfo[pID][pJailTime]/10*3;
    }
    else
    {
    ftime = PlayerInfo[pID][pJailTime]/10*6;
    }


    GetPlayerName(playerid, pName, sizeof(pName));
    GetPlayerName(pID, pIdName, sizeof(pIdName));
    if(PlayerInfo[playerid][freeUser] == pID)
    {
    PlayerInfo[playerid][freeUserID] = pID;
    PlayerInfo[playerid][freeUserTime] = ftime;
    PlayerInfo[playerid][freeUserPrice] = price;
    format(string, sizeof(string), "Du hast %s's Fall angenommen! Bitte begebe dich zum Checkpoint!", pName);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "%s hat deinen Fall angenommen. Kosten: %d - Dauer: ~%d", pName, price, ftime);
    SendClientMessage(PlayerInfo[playerid][freeUser], COLOR_LIGHTBLUE, string);
    SetPlayerCheckpoint(playerid, AnwaltPos, AnwaltMark);
    }
    else
    {
    format(string, sizeof(string), "%s würde dich %d kosten und dauert etwa %dSekunden. Gib /free %d erneut ein, um den Fall anzunehmen!", pName, price, ftime, pID);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "%s hat sich deinen fall angesehen. Kosten: %d - Dauer: %d Sekunden", pName, price, ftime);
    SendClientMessage(PlayerInfo[playerid][freeUser], COLOR_LIGHTBLUE, string);
    PlayerInfo[playerid][freeUser] = pID;
    }
    return 1;
    }


    stock sscanf(string[], format[], {Float,_}:...)
    {
    #if defined isnull
    if(isnull(string))
    #else
    if(string[0] == 0 || (string[0] == 1 && string[1] == 0))
    #endif
    {
    return format[0];
    }
    #pragma tabsize 4
    new
    formatPos = 0,
    stringPos = 0,
    paramPos = 2,
    paramCount = numargs(),
    delim = ' ';
    while (string[stringPos] && string[stringPos] <= ' ')
    {
    stringPos++;
    }
    while (paramPos < paramCount && string[stringPos])
    {
    switch (format[formatPos++])
    {
    case '\0':
    {
    return 0;
    }
    case 'i', 'd':
    {
    new
    neg = 1,
    num = 0,
    ch = string[stringPos];
    if(ch == '-')
    {
    neg = -1;
    ch = string[++stringPos];
    }
    do
    {
    stringPos++;
    if('0' <= ch <= '9')
    {
    num = (num * 10) + (ch - '0');
    }
    else
    {
    return -1;
    }
    }
    while ((ch = string[stringPos]) > ' ' && ch != delim);
    setarg(paramPos, 0, num * neg);
    }
    case 'h', 'x':
    {
    new
    num = 0,
    ch = string[stringPos];
    do
    {
    stringPos++;
    switch (ch)
    {
    case 'x', 'X':
    {
    num = 0;
    continue;
    }
    case '0' .. '9':
    {
    num = (num << 4) | (ch - '0');
    }
    case 'a' .. 'f':
    {
    num = (num << 4) | (ch - ('a' - 10));
    }
    case 'A' .. 'F':
    {
    num = (num << 4) | (ch - ('A' - 10));
    }
    default:
    {
    return -1;
    }
    }
    }
    while ((ch = string[stringPos]) > ' ' && ch != delim);
    setarg(paramPos, 0, num);
    }
    case 'c':
    {
    setarg(paramPos, 0, string[stringPos++]);
    }
    case 'f':
    {


    new changestr[16], changepos = 0, strpos = stringPos;
    while(changepos < 16 && string[strpos] && string[strpos] != delim)
    {
    changestr[changepos++] = string[strpos++];
    }
    changestr[changepos] = '\0';
    setarg(paramPos,0,_:floatstr(changestr));
    }
    case 'p':
    {
    delim = format[formatPos++];
    continue;
    }
    case '\'':
    {
    new
    end = formatPos - 1,
    ch;
    while ((ch = format[++end]) && ch != '\'') {}
    if(!ch)
    {
    return -1;
    }
    format[end] = '\0';
    if((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
    {
    if(format[end + 1])
    {
    return -1;
    }
    return 0;
    }
    format[end] = '\'';
    stringPos = ch + (end - formatPos);
    formatPos = end + 1;
    }
    case 'u':
    {
    new
    end = stringPos - 1,
    id = 0,
    bool:num = true,
    ch;
    while ((ch = string[++end]) && ch != delim)
    {
    if(num)
    {
    if('0' <= ch <= '9')
    {
    id = (id * 10) + (ch - '0');
    }
    else
    {
    num = false;
    }
    }
    }
    if(num && IsPlayerConnected(id))
    {
    setarg(paramPos, 0, id);
    }
    else
    {
    #if !defined foreach
    #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if(IsPlayerConnected(%2))
    #define __SSCANF_FOREACH__
    #endif
    string[end] = '\0';
    num = false;
    new
    name[MAX_PLAYER_NAME];
    id = end - stringPos;
    foreach (Player, playerid)
    {
    GetPlayerName(playerid, name, sizeof (name));
    if(!strcmp(name, string[stringPos], true, id))
    {
    setarg(paramPos, 0, playerid);
    num = true;
    break;
    }
    }
    if(!num)
    {
    setarg(paramPos, 0, INVALID_PLAYER_ID);
    }
    string[end] = ch;
    #if defined __SSCANF_FOREACH__
    #undef foreach
    #undef __SSCANF_FOREACH__
    #endif
    }
    stringPos = end;
    }
    case 's', 'z':
    {
    new
    i = 0,
    ch;
    if(format[formatPos])
    {
    while ((ch = string[stringPos++]) && ch != delim)
    {
    setarg(paramPos, i++, ch);
    }
    if(!i)
    {
    return -1;
    }
    }
    else
    {
    while ((ch = string[stringPos++]))
    {
    setarg(paramPos, i++, ch);
    }
    }
    stringPos--;
    setarg(paramPos, i, '\0');
    }
    default:
    {
    continue;
    }
    }
    while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
    {
    stringPos++;
    }
    while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
    {
    stringPos++;
    }
    paramPos++;
    }
    do
    {
    if((delim = format[formatPos++]) > ' ')
    {
    if(delim == '\'')
    {
    while ((delim = format[formatPos++]) && delim != '\'') {}
    }
    else if(delim != 'z')
    {
    return delim;
    }
    }
    }
    while (delim > ' ');
    return 0;
    }



    Code
    0 Errors, 0 Warnungen
    Kompilierung erfolgreich
    
    
    PWNMod Compiler Version 1.2
    (c) Trooper[Y]
    In Kooperation mit GTA-Servers.de

    Hey,
    ich will dazu eigentlich nicht viel sagen. Einfach ins Script schauen...
    Informationen zum Release:

    • Grund: Viele User haben nach einem solchem Script gefragt/gesucht und sind nicht fündig geworden
    • Mir ist es wirklich scheißegal, ob ihr das Script als eures ausgebt oder nicht, ob ihr es irgendwo anders als eures hochladet oder was weiß ich; ps. jeder der sowas behaupten muss, ist nämlich einfach nur armselig...

    Script:
    #include <a_samp>


    #define dcmd(%1,%2,%3) if(!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1



    forward Timer();
    forward Float:GetDistanceBetweenPlayers(p1,p2);


    #define AnwaltPos 1778.1670, -1663.6190, 14.4359 //Anwälte müssen, um die Verhandlung am Laufen zu halten an dieser Position sein
    #define AnwaltMark 8 //Größe des Markers (wird auf AnwaltPos gesetzt)
    #define AnwaltEntf 15.0 //Maximaler Abstand zu AnwaltPos (wenn weiter weg läuft die Zeit nicht weiter ab)


    #define COLOR_GREEN 0x33AA33AA
    #define COLOR_RED 0xAA3333AA
    #define COLOR_LIGHTBLUE 0x33CCFFAA
    #define COLOR_GREY 0xAFAFAFAA


    enum pInfo
    {
    pLawSkill,
    freeUser,
    freeUserID,
    freeUserTime,
    freeUserPrice,
    pJailTime,
    pJob,
    pPnumber,
    pJailed
    }
    new PlayerInfo[MAX_PLAYERS][pInfo];


    public OnGameModeInit()
    {
    SetTimer("Timer", 5000, 1);
    return 1;
    }


    public OnPlayerConnect(playerid)
    {
    PlayerInfo[playerid][pLawSkill] = 0;
    PlayerInfo[playerid][freeUser] = -1;
    PlayerInfo[playerid][freeUserID] = -1;
    PlayerInfo[playerid][freeUserTime] = -1;
    PlayerInfo[playerid][freeUserPrice] = -1;
    return 1;
    }


    public Float:GetDistanceBetweenPlayers(p1,p2)
    {
    new Float:xx1,Float:yy1,Float:zz1,Float:xx2,Float:yy2,Float:zz2;
    if(!IsPlayerConnected(p1) || !IsPlayerConnected(p2))
    {
    return -1.00;
    }
    GetPlayerPos(p1,xx1,yy1,zz1);
    GetPlayerPos(p2,xx2,yy2,zz2);
    return floatsqroot(floatpower(floatabs(floatsub(xx2,xx1)),2)+floatpower(floatabs(floatsub(yy2,yy1)),2)+floatpower(floatabs(floatsub(zz2,zz1)),2));
    }


    public Timer()
    {
    new string[256];
    for(new i; i < MAX_PLAYERS; i++)
    {
    if(PlayerInfo[i][freeUserID] != -1)
    {
    if(!IsPlayerConnected(PlayerInfo[i][freeUserID]))
    {
    SendClientMessage(i,COLOR_RED,"Dein Mandant hat sich ausgeloggt!");
    PlayerInfo[i][freeUserID] = -1;
    PlayerInfo[i][freeUserTime] = -1;
    PlayerInfo[i][freeUserPrice] = -1;
    DisablePlayerCheckpoint(i);
    }
    else
    {
    if(IsPlayerInRangeOfPoint(i, AnwaltEntf, AnwaltPos))
    {
    if(PlayerInfo[i][freeUserTime] > 0)
    {
    PlayerInfo[i][freeUserTime] -= 5;
    }
    else if(PlayerInfo[i][freeUserTime] <= 0)
    {
    new pName[32], pIdName[32];
    GetPlayerName(i, pName, sizeof(pName));
    GetPlayerName(PlayerInfo[i][freeUserID], pIdName, sizeof(pIdName));
    format(string, sizeof(string), "Du hast %s für $%d aus dem Gefängnis geholt!", pIdName, PlayerInfo[i][freeUserPrice]);
    SendClientMessage(i,COLOR_RED,string);
    format(string, sizeof(string), "%s hat dich für $%d aus dem gefängnis geholt!", pName, PlayerInfo[i][freeUserPrice]);
    SendClientMessage(PlayerInfo[i][freeUserID],COLOR_RED,string);
    GivePlayerMoney(i, -PlayerInfo[i][freeUserPrice]);
    PlayerInfo[PlayerInfo[i][freeUserID]][pJailTime] = 0;
    PlayerInfo[i][freeUserID] = -1;
    PlayerInfo[i][freeUserTime] = -1;
    PlayerInfo[i][freeUserPrice] = -1;
    PlayerInfo[i][pLawSkill] += 1;
    DisablePlayerCheckpoint(i);
    }
    }
    }


    }
    }
    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    dcmd(free,4,cmdtext);


    //--------------------------- ANWALT -------------------------------------------------
    if(strcmp(cmdtext,"/anwaelte",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    SendClientMessage(playerid, COLOR_GREEN, "______________ Online Anwälte ______________");
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerInfo[i][pJob] == 20)
    {
    new sendername[MAX_PLAYER_NAME], string[256];
    GetPlayerName(i, sendername, sizeof(sendername));
    format(string, 256, "Name: %s ID: %d Skill: %d Tel: %d", sendername, i, PlayerInfo[i][pLawSkill], PlayerInfo[i][pPnumber]);
    SendClientMessage(playerid, COLOR_GREY, string);
    }
    }
    }
    }
    return 1;
    }
    return 1;
    }


    //------------------------------------ [ANWALT] ----------------------------------------
    dcmd_free(playerid,params[])
    {
    new pID;
    new string[256];
    new pName[MAX_PLAYER_NAME],pIdName[MAX_PLAYER_NAME];
    if(PlayerInfo[playerid][pJob] != 20) { return SendClientMessage(playerid,0xAFAFAFAA,"Du bist kein Anwalt!"); }
    if(sscanf(params,"u",pID)) { return SendClientMessage(playerid,0xAFAFAFAA,"benutze: /free [playerid]"); }
    if(!IsPlayerConnected(pID)) { return SendClientMessage(playerid,COLOR_RED,"Ungültige ID!"); }
    if(PlayerInfo[pID][pJailed] == 0) { return SendClientMessage(playerid,COLOR_RED,"Dieser Spieler befindet sich nicht im Gefängnis!"); }
    if(GetDistanceBetweenPlayers(playerid,pID) > 10.0) { return SendClientMessage(playerid,COLOR_GREY,"Du bist zu weit entfernt!"); }


    new skill;
    new level = PlayerInfo[playerid][pLawSkill];
    if(level >= 0 && level <= 50) { skill = 1;}
    else if(level >= 51 && level <= 100) { skill = 2; }
    else if(level >= 101 && level <= 200) { skill = 3; }
    else if(level >= 201 && level <= 400) { skill = 4; }
    else if(level >= 401) { skill = 5; }


    new price = PlayerInfo[pID][pJailTime]*20;
    new ftime;
    if(skill == 1)
    {
    ftime = PlayerInfo[pID][pJailTime]/10*8;
    }
    else if(skill == 2)
    {
    ftime = PlayerInfo[pID][pJailTime]/10*7;
    }
    else if(skill == 3)
    {
    ftime = PlayerInfo[pID][pJailTime]/10*6;
    }
    else if(skill == 4)
    {
    ftime = PlayerInfo[pID][pJailTime]/10*5;
    }
    else if(skill == 5)
    {
    ftime = PlayerInfo[pID][pJailTime]/10*3;
    }
    else
    {
    ftime = PlayerInfo[pID][pJailTime]/10*6;
    }


    GetPlayerName(playerid, pName, sizeof(pName));
    GetPlayerName(pID, pIdName, sizeof(pIdName));
    if(PlayerInfo[playerid][freeUser] == pID)
    {
    PlayerInfo[playerid][freeUserID] = pID;
    PlayerInfo[playerid][freeUserTime] = ftime;
    PlayerInfo[playerid][freeUserPrice] = price;
    format(string, sizeof(string), "Du hast %s's Fall angenommen! Bitte begebe dich zum Checkpoint!", pName);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "%s hat deinen Fall angenommen. Kosten: %d - Dauer: ~%d", pName, price, ftime);
    SendClientMessage(PlayerInfo[playerid][freeUser], COLOR_LIGHTBLUE, string);
    SetPlayerCheckpoint(playerid, AnwaltPos, AnwaltMark);
    }
    else
    {
    format(string, sizeof(string), "%s würde dich %d kosten und dauert etwa %dSekunden. Gib /free %d erneut ein, um den Fall anzunehmen!", pName, price, ftime, pID);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "%s hat sich deinen fall angesehen. Kosten: %d - Dauer: %d Sekunden", pName, price, ftime);
    SendClientMessage(PlayerInfo[playerid][freeUser], COLOR_LIGHTBLUE, string);
    PlayerInfo[playerid][freeUser] = pID;
    }
    return 1;
    }


    stock sscanf(string[], format[], {Float,_}:...)
    {
    #if defined isnull
    if(isnull(string))
    #else
    if(string[0] == 0 || (string[0] == 1 && string[1] == 0))
    #endif
    {
    return format[0];
    }
    #pragma tabsize 4
    new
    formatPos = 0,
    stringPos = 0,
    paramPos = 2,
    paramCount = numargs(),
    delim = ' ';
    while (string[stringPos] && string[stringPos] <= ' ')
    {
    stringPos++;
    }
    while (paramPos < paramCount && string[stringPos])
    {
    switch (format[formatPos++])
    {
    case '\0':
    {
    return 0;
    }
    case 'i', 'd':
    {
    new
    neg = 1,
    num = 0,
    ch = string[stringPos];
    if(ch == '-')
    {
    neg = -1;
    ch = string[++stringPos];
    }
    do
    {
    stringPos++;
    if('0' <= ch <= '9')
    {
    num = (num * 10) + (ch - '0');
    }
    else
    {
    return -1;
    }
    }
    while ((ch = string[stringPos]) > ' ' && ch != delim);
    setarg(paramPos, 0, num * neg);
    }
    case 'h', 'x':
    {
    new
    num = 0,
    ch = string[stringPos];
    do
    {
    stringPos++;
    switch (ch)
    {
    case 'x', 'X':
    {
    num = 0;
    continue;
    }
    case '0' .. '9':
    {
    num = (num << 4) | (ch - '0');
    }
    case 'a' .. 'f':
    {
    num = (num << 4) | (ch - ('a' - 10));
    }
    case 'A' .. 'F':
    {
    num = (num << 4) | (ch - ('A' - 10));
    }
    default:
    {
    return -1;
    }
    }
    }
    while ((ch = string[stringPos]) > ' ' && ch != delim);
    setarg(paramPos, 0, num);
    }
    case 'c':
    {
    setarg(paramPos, 0, string[stringPos++]);
    }
    case 'f':
    {


    new changestr[16], changepos = 0, strpos = stringPos;
    while(changepos < 16 && string[strpos] && string[strpos] != delim)
    {
    changestr[changepos++] = string[strpos++];
    }
    changestr[changepos] = '\0';
    setarg(paramPos,0,_:floatstr(changestr));
    }
    case 'p':
    {
    delim = format[formatPos++];
    continue;
    }
    case '\'':
    {
    new
    end = formatPos - 1,
    ch;
    while ((ch = format[++end]) && ch != '\'') {}
    if(!ch)
    {
    return -1;
    }
    format[end] = '\0';
    if((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
    {
    if(format[end + 1])
    {
    return -1;
    }
    return 0;
    }
    format[end] = '\'';
    stringPos = ch + (end - formatPos);
    formatPos = end + 1;
    }
    case 'u':
    {
    new
    end = stringPos - 1,
    id = 0,
    bool:num = true,
    ch;
    while ((ch = string[++end]) && ch != delim)
    {
    if(num)
    {
    if('0' <= ch <= '9')
    {
    id = (id * 10) + (ch - '0');
    }
    else
    {
    num = false;
    }
    }
    }
    if(num && IsPlayerConnected(id))
    {
    setarg(paramPos, 0, id);
    }
    else
    {
    #if !defined foreach
    #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if(IsPlayerConnected(%2))
    #define __SSCANF_FOREACH__
    #endif
    string[end] = '\0';
    num = false;
    new
    name[MAX_PLAYER_NAME];
    id = end - stringPos;
    foreach (Player, playerid)
    {
    GetPlayerName(playerid, name, sizeof (name));
    if(!strcmp(name, string[stringPos], true, id))
    {
    setarg(paramPos, 0, playerid);
    num = true;
    break;
    }
    }
    if(!num)
    {
    setarg(paramPos, 0, INVALID_PLAYER_ID);
    }
    string[end] = ch;
    #if defined __SSCANF_FOREACH__
    #undef foreach
    #undef __SSCANF_FOREACH__
    #endif
    }
    stringPos = end;
    }
    case 's', 'z':
    {
    new
    i = 0,
    ch;
    if(format[formatPos])
    {
    while ((ch = string[stringPos++]) && ch != delim)
    {
    setarg(paramPos, i++, ch);
    }
    if(!i)
    {
    return -1;
    }
    }
    else
    {
    while ((ch = string[stringPos++]))
    {
    setarg(paramPos, i++, ch);
    }
    }
    stringPos--;
    setarg(paramPos, i, '\0');
    }
    default:
    {
    continue;
    }
    }
    while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
    {
    stringPos++;
    }
    while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
    {
    stringPos++;
    }
    paramPos++;
    }
    do
    {
    if((delim = format[formatPos++]) > ' ')
    {
    if(delim == '\'')
    {
    while ((delim = format[formatPos++]) && delim != '\'') {}
    }
    else if(delim != 'z')
    {
    return delim;
    }
    }
    }
    while (delim > ' ');
    return 0;
    }

    Zitat

    Du bist also schon 19.. Kann ich bei einem Handel auch eine Kopie deines Personal-Ausweises sehen?

    96 weil ich Hannover Fan bin (siehe Fußball):

    Aber für dich gerne, wenn du Interesse an einem Script hast, einfach mal melden ;)

    es gibt auch 30 jährige die noch samp spielen!
    Warum machst du nur gf ?
    Wenn jemand etwas für selfmade braucht machst du es auch? Wie läuft die übergabe ab? Skype oder wie

    Skype, Facebook, sa-mp.de (PN) mir egal, wie ihr wollt ;)
    Und wenn es kein gf ist, muss ich mich erstmal einlesen/einarbeiten, dann kostet das ganze 1-5€ mehr als sonst ;)




    Und es tut mir Leid, dass ich mich in den letzten zwei Tagen nicht gemeldet habe, die Eigentümergemeinschaft meinte, mir den Providerwechsel nicht mitteilen zu müssen -.-




    Ps. Hier ein kleines Anwaltsscript von mir:
    [ANFRAGE] Anwalt (Job) - Release - GodFather
    Weiteres folgt...

    Hallo,
    Ich scripte absofort Godfather Erweiterungen (z.B. Fraktionsautohaus, Tankstellen (kaufbar, verfügbare Liter Benzin, usw.), Jobs, Fraktionen, und noch vieles mehr) an.


    Hierfür verlange ich nur 5-25€ (PaySafeCard oder PayPal).
    Der genaue Preis hängt vom Aufwand und der Dringlichkeit ab.
    Meine Dienste biete ich übrigens für nur etwa 6 Monate an, da ich mir mit dem eingenommenem Geld eine Wohnung finanzieren will (ich kann mich Zuhause nicht auf die Uni konzentrieren) und meine momentanige Wohung wegen Sicherheitsmangeln 5 Monate lang saniert wird ...


    Zu Beachten ist:


    • Nur für Godfather GameModes (ich benötige zum genauem Konfigurieren das Script; auf Wunsch auch selbst konfigurierbar)
    • Ein bereits angefangener Auftrag kann nicht mehr abgebrochen werden
    • Bezahlung vor Erhalt des Scriptes (auf Wunsch durch einen Mittelsmann; Mittelsmann wegen PayPal-Gebühren nur bei PaySafeCard verwendbar)
    • Mit dem Kauf gebe ich alle Rechte an den Auftraggeber ab
    • 31 Tage kostenloser SupportWeitere Hilfe benötigt?
    • Einbau für 0-5€ (auf Wunsch)
    • Das Script sollte in der regel in 3-10 Tagen fertig sein
    • Bereits fertige Scripts (können auf Wunsch bearbeitet werden; diese Scripte werden nach dem Kauf weiterhin verkauft):

      • Gangfight Script (20 Ganggebiete in SF zum erobern; das erstellen von neuen Gebieten ist sehr einfach) - benötigte Zeit: 5 Tage (~10 Stunden) -> 12€
      • StartWar Script (/startwar [FRAKTION] um einen Straßenkrieg zu starten /stopwar [FRAKTION] um ihn zu beenden /warinfo für aktuelle Feinde) - benötigte Zeit: 6 Tage (~11 Stunden) -> 14€
      • Neues Haussystem (Waffen einlagerbar, /hupgrade zum Interior changen (mit Kosten verbunden), HouseCars nur für Hausbesitzer verwendbar (auch für Mieter einstellbar), und vieles mehr) - benötigte Zeit: 3 Tage (~5 Stunden) -> 7€
      • Einbrecher als Job (kann eingelagerte Waffen stehlen, kann das Haus verwüsten (Reperaturkosten), kann das im Haus vorhandene Geld stehlen (Miete), beim Einbruch, falls Alarmanlage aktiv: derzeit 3Wanteds + Nachricht und Marker an die Polizei) - benötigte Zeit: 7 Tage (~15 Stunden) -> 15€


    Aufträge nur per Privat Nachricht oder per Kommentar!


    ______
    Unverbindlicher Hinweis: Die Sicherheit einer Transaktion kann am besten durch die Einschaltung eines Mittelsmannes gewährleistet werden. Weitere Informationen dazu gibt es hier.

    Ich versuche derzeit die Gangfahrzeuge ortbar zu machen.
    Ich bin derzeit so weit:
    if(strcmp(cmdtext,"/gangcarorten",true)==0)
    {
    if(GetPlayerLeader(playerid))
    {
    new CMDSString[2048];
    new string[256];
    new countveh = 0;
    CMDSString = "";
    for(new fc;fc<sizeof(FactionCars);fc++)
    {
    if(FactionCars[fc][fVehid] >= 400 && FactionCars[fc][fVehid] <= 611)
    {
    if(FactionCars[fc][fFaction][0] == GetPlayerFaction(playerid))
    {
    format(string, sizeof(string),"Fraktions Auto Name: %s Nummer: %d\n",fCarName[FactionCars[fc][fVehid]-400],FactionCars[fc][fCarid]);
    strcat(CMDSString, string);
    frakcarid[countveh] = FactionCars[fc][fCarid];
    countveh += 1;
    }
    }
    }
    ShowPlayerDialog(playerid,DIALOG_FraktionsCars,DIALOG_STYLE_LIST,"{00ff00}Fraktions Fahrzeuge",CMDSString,"OK","Orten ($100.000)");
    }
    else
    {
    SendClientMessage(playerid,COLOR_GREY,"Du bist nicht berechtigt diesen Befehl anzuwenden.");
    }
    return true;
    }
    Wenn ich diesen Befehl InGame benutze, erscheint allerdings nicht (obwohl 4 Gangfahrzeuge verfügbar sind. diese werden auch hier angezeigt:)
    if(strcmp(cmdtext,"/listgangcars",true)==0)
    {
    if(GetPlayerLeader(playerid))
    {
    for(new fc;fc<sizeof(FactionCars);fc++)
    {
    if(FactionCars[fc][fVehid] >= 400 && FactionCars[fc][fVehid] <= 611)
    {
    if(FactionCars[fc][fFaction][0] == GetPlayerFaction(playerid))
    {
    format(string, sizeof(string),"Fraktions Auto Name: %s Nummer: %d Wiederverkaufswert: %d\n",fCarName[FactionCars[fc][fVehid]-400],FactionCars[fc][fCarid], FactionCars[fc][fPrice]/2);
    SendClientMessage(playerid,COLOR_GRAD1,string);
    }
    }
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_GREY,"Du bist nicht berechtigt diesen Befehl anzuwenden.");
    }
    return true;
    }


    Wo ist mein Fehler?


    Jeder kann sagen, dass er sich anonym beschwerden will. Am Ende gibt es einen Spam-Mailer, anonymen Internet-Gangster what ever mehr.
    Sorry, aber es ist nun mal so.


    Spoiler anzeigen
    Schon geschaut, ob der Mailserver, also Mercury oder wie der heißt, gestartet ist? :rolleyes: 


    hab es auch schon mit php 5 und IIS 7 versucht
    ps. ich bin selber gegen spams ;)

    Wir dir hier nicht helfen, da man damit auch illegale Aktivitäten ausführen kann. Kann wohl sein, dass du dich anonym beschweren willst, jedoch kann dies auch eine schlechte "Ausrede" sein.

    Welche illegalen Aktivitäten "werde" ich denn "ausführen"?

    Spoiler anzeigen
    Wenn du wirklich glaubst, dass ich soein *** bin, dann irrst du dich gewaltig ^^

    Hallo,
    ich will Emails verschicken, ohne dass der Empfänger irgendeinen Anhaltspunkt hat, wer sie verschickt hat.
    Dies soll am bestem in einem php script funktionieren.
    Ein Script hierfür suche ich nur, um mich anonym bei einem Roleplay Server über das unfaire Verhalten eines Full Admins zu beschweren und Angst habe, dort gebannt zu werden.
    Auf php.net habe ich folgendes gefunden:

    Mit den XXX bei meiner Email-Adresse zensiere ich diese übrigens nur ;)
    Ich habe allerdings
    leider nach dem Aufrufen des Scriptes (mit Hilfe von Xampp) keine Email erhalten.
    Weiß jemand, was ich falsch gemacht habe? Oder hat jemand ein Script, welches funktioniert?
    Danke im Vorraus!