Beiträge von RFT


    strtok(string[],&idx,seperator = ' ')
    {
    new ret[128], i = 0, len = strlen(string);
    while(string[idx] == seperator && idx < len) idx++;
    while(string[idx] != seperator && idx < len)
    {
    ret[i] = string[idx];
    i++;
    idx++;
    }
    while(string[idx] == seperator && idx < len) idx++;
    return ret;
    }


    das rauß ist 2 mal drinnen und wenn der Error mit C:\DOKUME~1\Kadir\Desktop\SERVER~1\GAMEMO~1\TDM.pwn(3244) : error 047: array sizes do not match, or destination array is too small dann steht liegts an der Include dann setzte den String tmp auf 256


    ReturnUser(text[], playerid = INVALID_PLAYER_ID)
    {
    new pos = 0;
    while (text[pos] < 0x21) // Strip out leading spaces
    {
    if (text[pos] == 0) return INVALID_PLAYER_ID; // No passed text
    pos++;
    }
    new userid = INVALID_PLAYER_ID;
    if (IsNumeric(text[pos])) // Check whole passed string
    {
    // If they have a numeric name you have a problem (although names are checked on id failure)
    userid = strval(text[pos]);
    if (userid >=0 && userid < MAX_PLAYERS)
    {
    if(!IsPlayerConnected(userid))
    {
    /*if (playerid != INVALID_PLAYER_ID)
    {
    SendClientMessage(playerid, 0xFF0000AA, "User not connected");
    }*/
    userid = INVALID_PLAYER_ID;
    }
    else
    {
    return userid; // A player was found
    }
    }
    /*else
    {
    if (playerid != INVALID_PLAYER_ID)
    {
    SendClientMessage(playerid, 0xFF0000AA, "Invalid user ID");
    }
    userid = INVALID_PLAYER_ID;
    }
    return userid;*/
    // Removed for fallthrough code
    }
    // They entered [part of] a name or the id search failed (check names just incase)
    new len = strlen(text[pos]);
    new count = 0;
    new name[MAX_PLAYER_NAME];
    for (new i = 0; i < MAX_PLAYERS; i++)
    {
    if (IsPlayerConnected(i))
    {
    GetPlayerName(i, name, sizeof (name));
    if (strcmp(name, text[pos], true, len) == 0) // Check segment of name
    {
    if (len == strlen(name)) // Exact match
    {
    return i; // Return the exact player on an exact match
    // Otherwise if there are two players:
    // Me and MeYou any time you entered Me it would find both
    // And never be able to return just Me's id
    }
    else // Partial match
    {
    count++;
    userid = i;
    }
    }
    }
    }
    if (count != 1)
    {
    if (playerid != INVALID_PLAYER_ID)
    {
    if (count)
    {
    SendClientMessage(playerid, 0xFF0000AA, "Multiple users found, please narrow earch");
    }
    else
    {
    SendClientMessage(playerid, 0xFF0000AA, "No matching user found");
    }
    }
    userid = INVALID_PLAYER_ID;
    }
    return userid; // INVALID_USER_ID for bad return
    }
    IsNumeric(const string[])
    {
    for (new i = 0, j = strlen(string); i < j; i++)
    {
    if (string[i] > '9' || string[i] < '0') return 0;
    }
    return 1;
    }
    strtok(string[],&idx,seperator = ' ')
    {
    new ret[128], i = 0, len = strlen(string);
    while(string[idx] == seperator && idx < len) idx++;
    while(string[idx] != seperator && idx < len)
    {
    ret[i] = string[idx];
    i++;
    idx++;
    }
    while(string[idx] == seperator && idx < len) idx++;
    return ret;
    }


    ganz nach unten ins Script wo ist da das problem o.o


    MFG RFT

    ganz nach unten



    ReturnUser(text[], playerid = INVALID_PLAYER_ID)
    {
    new pos = 0;
    while (text[pos] < 0x21) // Strip out leading spaces
    {
    if (text[pos] == 0) return INVALID_PLAYER_ID; // No passed text
    pos++;
    }
    new userid = INVALID_PLAYER_ID;
    if (IsNumeric(text[pos])) // Check whole passed string
    {
    // If they have a numeric name you have a problem (although names are checked on id failure)
    userid = strval(text[pos]);
    if (userid >=0 && userid < MAX_PLAYERS)
    {
    if(!IsPlayerConnected(userid))
    {
    /*if (playerid != INVALID_PLAYER_ID)
    {
    SendClientMessage(playerid, 0xFF0000AA, "User not connected");
    }*/
    userid = INVALID_PLAYER_ID;
    }
    else
    {
    return userid; // A player was found
    }
    }
    /*else
    {
    if (playerid != INVALID_PLAYER_ID)
    {
    SendClientMessage(playerid, 0xFF0000AA, "Invalid user ID");
    }
    userid = INVALID_PLAYER_ID;
    }
    return userid;*/
    // Removed for fallthrough code
    }
    // They entered [part of] a name or the id search failed (check names just incase)
    new len = strlen(text[pos]);
    new count = 0;
    new name[MAX_PLAYER_NAME];
    for (new i = 0; i < MAX_PLAYERS; i++)
    {
    if (IsPlayerConnected(i))
    {
    GetPlayerName(i, name, sizeof (name));
    if (strcmp(name, text[pos], true, len) == 0) // Check segment of name
    {
    if (len == strlen(name)) // Exact match
    {
    return i; // Return the exact player on an exact match
    // Otherwise if there are two players:
    // Me and MeYou any time you entered Me it would find both
    // And never be able to return just Me's id
    }
    else // Partial match
    {
    count++;
    userid = i;
    }
    }
    }
    }
    if (count != 1)
    {
    if (playerid != INVALID_PLAYER_ID)
    {
    if (count)
    {
    SendClientMessage(playerid, 0xFF0000AA, "Multiple users found, please narrow earch");
    }
    else
    {
    SendClientMessage(playerid, 0xFF0000AA, "No matching user found");
    }
    }
    userid = INVALID_PLAYER_ID;
    }
    return userid; // INVALID_USER_ID for bad return
    }
    IsNumeric(const string[])
    {
    for (new i = 0, j = strlen(string); i < j; i++)
    {
    if (string[i] > '9' || string[i] < '0') return 0;
    }
    return 1;
    }
    strtok(string[],&idx,seperator = ' ')
    {
    new ret[128], i = 0, len = strlen(string);
    while(string[idx] == seperator && idx < len) idx++;
    while(string[idx] != seperator && idx < len)
    {
    ret[i] = string[idx];
    i++;
    idx++;
    }
    while(string[idx] == seperator && idx < len) idx++;
    return ret;
    }







    if(strcmp(cmd, "/makeadmin", true) == 0)
    {
    new tmp[128], idx;
    tmp = strtok(cmdtext, idx);
    if(!tmp[0])return SendClientMessage(playerid, Orange, "Benutze: /makeadmin [ID] [Level]");
    new pId = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    if(!tmp[0])return SendClientMessage(playerid, Orange, "Benutze: /makeadmin [ID] [Level]");
    new Level = strval(tmp);
    if(PlayerInfo[playerid][pAdmin] < 5)return SendClientMessage(playerid, Orange, "You are not Admin.");
    if(!IsPlayerConnected(pId))return SendClientMessage(playerid, Orange, "The User is Offline.");
    new pName[24], pAName[24];
    PlayerInfo[pId][pAdmin] = Level;
    GetPlayerName(pId, pName, 24); GetPlayerName(playerid, pAName, 24);

    printf("AdmCmd: %s has promoted %s to a level %d admin.", pAName, pName, Level);
    format(string, sizeof(string), " You have been promoted to a level %d admin by %s", Level, pAName);
    SendClientMessage(pId, Orange, string);
    format(string, sizeof(string), " You have promoted %s to a level %d admin.", pName,Level);
    SendClientMessage(playerid, Orange, string);
    return 1;
    }


    new Float:Pos[3];
    GetPlayerPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
    if(IsPlayerInRangeOfPoint(playerid, Radius, Pos[0], Pos[1], Pos[2]))return // deinTextdraw


    MFG RFT


    if(strcmp(cmd, "/makeadmin", true) == 0)
    {
    new tmp[128], idx;
    tmp = strtok(cmdtext, idx);
    if(!tmp[0])return SendClientMessage(playerid, Orange, "Benutze: /makeadmin [ID] [Level]");
    new pId = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    if(!tmp[0])return SendClientMessage(playerid, Orange, "Benutze: /makeadmin [ID] [Level]");
    new Level = strval(tmp);
    if(PlayerInfo[playerid][pAdmin] < 5)return SendClientMessage(playerid, Orange, "You are not Admin.");
    if(!IsPlayerConnected(pId))return SendClientMessage(playerid, Orange, "The User is Offline.");
    new pName[24], pAName[24];
    PlayerInfo[para1][pAdmin] = Level;
    GetPlayerName(pId, pName, 24); GetPlayerName(playerid, pAName, 24);

    printf("AdmCmd: %s has promoted %s to a level %d admin.", pAName, pName, Level);
    format(string, sizeof(string), " You have been promoted to a level %d admin by %s", Level, pAName);
    SendClientMessage(pId, Orange, string);
    format(string, sizeof(string), " You have promoted %s to a level %d admin.", pName,Level);
    SendClientMessage(playerid, Orange, string);
    return 1;
    }

    Moin unter welchen Callback haste die.




    new BallasCar[7];
    new GrooveCar[15];
    new LCNCar[10];

    das ganz nach oben




    GrooveCar[0] = AddStaticVehicle(522,2506.0669,-1743.7526,13.0620,356.0646,86,86); // Grove Street
    GrooveCar[1] = AddStaticVehicle(579,2484.5884,-1755.1102,13.4804,3.7055,86,86); // Grove Street
    GrooveCar[2] = AddStaticVehicle(579,2484.7947,-1754.6130,13.4767,358.5887,86,86); // Grove Street
    GrooveCar[3] = AddStaticVehicle(560,2489.6550,-1755.2129,13.2294,359.4737,86,86); // Grove Street
    GrooveCar[4] = AddStaticVehicle(560,2490.4724,-1754.8311,13.2067,359.7295,86,86); // Grove Street
    GrooveCar[5] = AddStaticVehicle(560,2494.5706,-1755.0374,13.2168,0.0539,86,86); // Grove Street
    GrooveCar[6] = AddStaticVehicle(424,2502.3953,-1745.7700,13.1923,90.4451,86,86); // Grove Street
    GrooveCar[7] = AddStaticVehicle(522,2503.0591,-1741.5037,13.1193,86.9154,86,86); // Grove Street
    GrooveCar[8] = AddStaticVehicle(411,2489.1597,-1741.0542,13.2694,91.6841,86,86); // Grove Street
    GrooveCar[9] = AddStaticVehicle(468,2476.9001,-1755.9961,13.2156,5.5541,86,86); // Grove Street
    GrooveCar[10]= AddStaticVehicle(468,2478.3206,-1756.0050,13.2040,4.3641,86,86); // Grove Street
    GrooveCar[11]= AddStaticVehicle(559,2480.8201,-1754.9912,13.2062,356.0418,86,86); // Grove Street
    GrooveCar[12]= AddStaticVehicle(567,2498.2554,-1755.0765,13.3198,0.2178,86,86); // Grove Street
    GrooveCar[13]= AddStaticVehicle(567,2503.1357,-1754.9265,13.2738,8.7884,86,86); // Grove Street
    GrooveCar[14]= AddStaticVehicle(565,2502.7971,-1749.4114,13.0320,92.1775,86,86); // Grove Street



    das unter OnGameModeinit


    MFG RFT

    Moin,


    Setz unter OnPlayerSpawn.



    TextDrawShowForPlayer(playerid, Date);


    und das muss so aussehen



    public settime()
    {
    new hour,minute,second;
    new string[256],year,month,day;
    gettime(hour,minute,second);
    if (minute <= 9)
    format(string,25,"%02d:%02d",hour,minute);
    TextDrawSetString(Uhr,string);
    getdate(year, month, day);
    format(string, sizeof string, "%02d/%s%02d/%s04%d", day, ((month < 10) ? ("0") : ("")), month, (year < 10) ? ("0") : (""), year);
    TextDrawSetString(Date, string);
    return 1;
    }


    MFG RFT

    Auch das geht einfacher.



    if(!strcmp(cmd, "/pay", true) == 0)
    {
    new Parameter, String[128], pName[24];
    Parameter = strtok(cmdtext, idx);
    if(!Parameter[0])return SendClientMessage(playerid, GELB, "Verwendung: /pay [playerid] [Menge]");
    new pId = ReturnUser(Parameter); //falls die ReturnUser Funktion exestiert
    if(!IsPlayerConnected(pId))return SendClientMessage(playerid, GELB, "Info: Dieser Spieler ist offline");
    Parameter = strtok(cmdtext, idx);
    if(!Parameter[0])return SendClientMessage(playerid, GELB, "Verwendung: /pay [playerid] [Menge]");
    new Amount = strval(Parameter);
    if(Amount < 1)return SendClientMessage(playerid, Gelb, "Info: Der Betrag darf nicht unter 1$ liegen");
    if(GetPlayerMoney(playerid) < Amount)return SendClientMessage(playerid, GELB, "Info: Soviel Geld besitzt du nicht");

    GetPlayerName(playerid, pName, 24);
    format(String, 128, "Info: Du hast von %s %d$ erhalten", pName, Amount);
    SendClientMessage(pId, GELB, String);
    GetPlayerName(pId, pName, 24);
    format(String, 128, "Info: Du hast %s %d$ gegeben", pName, Amount);
    SendClientMessage(playerid, GELB, String);

    GivePlayerMoney(pId, Amount);
    GivePlayerMoney(playerid, -Amount);
    return true;
    }

    Meine Hobbys:


    RFT Tontechnik
    - ich repariere die Verstärker aus der DDR Zeit aber auch neue repariere ich mit dem unterschied das die alte Technik beschaulicher ist.


    Kampfsport
    - Thaiboxen


    Mit Kollegen was unternehmen.



    usw....usf....


    MFG RFT