Beiträge von Kasakow

    Guten Abend!


    Mir ist heute auf der Arbeit eine tolle Idee eingefallen, und zwar könnte man ja so ein "Tag des offenes Teamspeaks" machen.


    Dort treffen sich dann leute vom Breadfish und können sich mal "näher" kennenlernen, wäre auf jeden Fall mal Interessant auch mit den Personen zu reden statt immer nur in Threads zu diskutieren.
    Was haltet ihr denn von der Idee ?


    mfg :thumbup:

    for(new veh = 0; veh < sizeof(Taxis); veh++){
    Tank[veh] = GasMax;
    zu


    for(new veh = 0; veh < sizeof(Taxis); veh++)
    {
    Tank[veh] = GasMax;
    }


    Eigentlich müsste bei deinem Code ein Error rauskommen.


    mfg :thumbup:

    Guten Morgen!


    Und zwar habe ich das mal auf einen Server so gesehen: Roller und Fraktionsfahrzeuge sind sobald sie zugeschlossen sind nur für dich betretbar, für andere nicht; wenn aufgeschlossen, für beide.
    Ich hoffe ihr versteht was ich meine.


    mfg :thumbup:

    @Mencent:


    if(!strcmp(cmd, "/timeban", true))
    {
    if(sInfo[playerid][sAdminlevel] < 2)return SendClientMessage(playerid, COLOR_RED, "FEHLER: {FFFFFF}Du kannst diesen Befehl nicht nutzen.");
    if(sInfo[playerid][sAdmindienst] == 0)return SendClientMessage(playerid, COLOR_RED, "FEHLER: {FFFFFF}Du bist nicht im Dienst.");
    new playername[MAX_PLAYER_NAME], zeit[20], grund[20], string[128], query[300], returnid;
    playername = strtok(cmdtext, idx), zeit = strtok(cmdtext, idx), grund = strtok(cmdtext, idx);
    if(!IsNumeric(playername)) returnid = ReturnPlayerID(playername); else returnid = strval(playername);
    if(!strlen(playername) || !strlen(zeit) || !strlen(grund))return SendClientMessage(playerid, COLOR_LIGHTBLUE, "BENUTZE: {FFFFFF}/timeban [Name/ID] [Zeit (In Stunden)] [Grund]");
    if(!IsPlayerConnected(returnid))return SendClientMessage(playerid, COLOR_RED, "FEHLER: {FFFFFF}Der Spieler ist nicht online");
    if(strval(zeit) < 1 || strval(zeit) > 72)return SendClientMessage(playerid, COLOR_RED, "FEHLER: {FFFFFF}Ungültige Zeit. (1-72)");
    format(string, sizeof string, "AdmCmd: %s wurde von %s für %i Stunden gebannt, Grund: %s", getPlayerName(returnid), getPlayerName(playerid), zeit, grund),
    SendClientMessageToAll(COLOR_LIGHTRED, string),
    mysql_format(dbhandle, query, sizeof query, "INSERT INTO `bans` (`Datum`,`Uhrzeit`,`Benutzername`,`Benutzerip`,`Verantwortlicher`,`Grund`,`Type`) VALUES ('%e','%e','%e','%e','%e','%e','temp')",
    gDate(),gTime(),getPlayerName(returnid),getPlayerIP(returnid),getPlayerName(playerid),grund),
    mysql_pquery(dbhandle, query, "", ""),
    sInfo[returnid][sTimeban] = gettime() + 3600 * strval(zeit),
    Kick(returnid);
    return 1;
    }


    if(sInfo[playerid][sTimeban] > gettime())
    {
    SendClientMessage(playerid, COLOR_RED, "SERVER: {FFFFFF}Dein Benutzerkonto wurde temporär gesperrt, die Verbindung zum Server wird beendet!"),
    Kick(playerid);
    return 1;
    }


    Würde das so Funktionieren, bin eingerostet.


    mfg :thumbup:

    Okay, das klingt sehr gut.


    Aber was in denn jetzt mit strtok alles möglich ?


    Zitat

    Nicht direkt. Kommt auf dein Vorhaben an, aber wenn du nur solche Befehle erstellen willst, dann passt das so.


    mfg :thumbup:

    Okay cool, was mich nebenbei auch mal Interessieren würde.


    Arbeitet strtok schneller oder langsamer als sscanf und merkt man im Spielgeschehen einen Unterschied ?


    mfg :thumbup:

    Ok, anscheinend hat mein Versuch Funktioniert.


    Aber ich finde der Befehl sieht etwas hässlig so aus, kann man den nicht schöner gestalten ?


    if(!strcmp(cmd, "/veh", true)){
    new vehicleid[20],color1[20],color2[20];
    vehicleid=strtok(cmdtext,idx);
    if(!strlen(vehicleid))return SendClientMessage(playerid, -1, "Syntax: /veh [FahrzeugID] [Farbe1] [Farbe2]");
    if(!IsNumeric(vehicleid))return SendClientMessage(playerid, -1, "Syntax: /veh [FahrzeugID] [Farbe1] [Farbe2]");
    color1=strtok(cmdtext,idx);
    if(!strlen(color1))return SendClientMessage(playerid, -1, "Syntax: /veh [FahrzeugID] [Farbe1] [Farbe2]");
    if(!IsNumeric(color1))return SendClientMessage(playerid, -1, "Syntax: /veh [FahrzeugID] [Farbe1] [Farbe2]");
    color2=strtok(cmdtext,idx);
    if(!strlen(color2))return SendClientMessage(playerid, -1, "Syntax: /veh [FahrzeugID] [Farbe1] [Farbe2]");
    if(!IsNumeric(color2))return SendClientMessage(playerid, -1, "Syntax: /veh [FahrzeugID] [Farbe1] [Farbe2]");
    new string[60];
    format(string,sizeof string,"Du hast dir ein Fahrzeug erstellt. (%i|%i,%i)",strval(vehicleid),strval(color1),strval(color2)),
    SendClientMessage(playerid,-1,string);
    new Float:mp[4];
    GetPlayerPos(playerid,mp[0],mp[1],mp[2]),GetPlayerFacingAngle(playerid,mp[3]),
    CreateVehicle(strval(vehicleid),mp[0],mp[1],mp[2],mp[3],strval(color1),strval(color2),-1);
    return 1;
    }


    mfg :thumbup:

    Ich möchte die Befehle in dem ganz normalen Callback OnPlayerCommandText schreiben.
    Ich probiere gerade mal rum, deine Funktionen scheinen mir schon mal ganz nützlich.


    mfg :thumbup:

    Hallo!


    Kann mir jemand erklären wie man mit strtok umgeht ?
    Ich möchte das auch mal lernen.
    Beispiel: /kick [Name/PlayerID] [Grund] ||/timeban [Name/PlayerID] [Zeit] [Grund]


    mfg :thumbup: