Smalltalk
-
-
LeonMrBonnie glaube mit dem Code kam er schon NICHT klar xD und ansonsten ins KCT Script schauen was ich released habe
C++
Alles anzeigenocmd:ban(playerid, params[]) { new pid, reason[45]; if(getAdmin(playerid) < 2)return 1; if(sscanf(params, "us", pid, reason))return SCM(playerid, COLOR_GREY, "Befehl: /ban [Name/ID] [Grund]"); if(LoggedIn(pid) == false)return SEM(playerid, ERROR_NOLOGIN2); BanPlayer(playerid, "", pid, 0, BAN_NORMAL, 45, reason, NULL); return 1; } ocmd:offban(playerid, params[]) { new bname[24], onlineID = INVALID_PLAYER_ID, reason[45]; if(getAdmin(playerid) < 2)return 1; if(sscanf(params, "ss", bname, reason))return SCM(playerid, COLOR_GREY, "Befehl: /offban [Name] [Grund]"); //Online Check onlineID = LoggedInName(bname); if(onlineID != INVALID_PLAYER_ID) { SCMF(playerid, COLOR_LESSRED, "Der Spieler %s ist Online mit der ID %d, nutze /ban", bname, onlineID); return 1; } BanPlayer(playerid, bname, INVALID_PLAYER_ID, 0, BAN_OFFLINE, 45, reason, NULL); return 1; } ocmd:offtimeban(playerid, params[]) { new bname[24], reason[45], usage[10], time, onlineID = INVALID_PLAYER_ID; if(getAdmin(playerid) < 2)return 1; if(sscanf(params, "ssds", bname, usage, time, reason))return SCM(playerid, COLOR_GREY, "Befehl: /offtimeban [Name] [Minuten/Stunden/Tage] [Anzahl] [Grund]"); //Online Check onlineID = LoggedInName(bname); if(onlineID != INVALID_PLAYER_ID) { SCMF(playerid, COLOR_LESSRED, "Der Spieler %s ist Online mit der ID %d, nutze /tban", bname, onlineID); return 1; } if(strcmp(usage, "Minuten", true) && strcmp(usage, "Stunden", true) && strcmp(usage, "Tage", true))return SCM(playerid, COLOR_LESSRED, "Auswahl: Minuten/Stunden/Tage"); BanPlayer(playerid, bname, INVALID_PLAYER_ID, time, BAN_OFFTIME, 45, reason, usage); return 1; } ocmd:tban(playerid, params[]) { new pid, time, reason[45], usage[10]; if(getAdmin(playerid) < 2)return 1; if(sscanf(params, "usds", pid, usage, time, reason))return SCM(playerid, COLOR_GREY, "Befehl: /tban [Name/ID] [Minuten/Stunden/Tage] [Anzahl] [Grund]"); if(LoggedIn(pid) == false)return SEM(playerid, ERROR_NOLOGIN2); if(strcmp(usage, "Minuten", true) && strcmp(usage, "Stunden", true) && strcmp(usage, "Tage", true))return SCM(playerid, COLOR_LESSRED, "Auswahl: Minuten/Stunden/Tage"); BanPlayer(playerid, "", pid, time, BAN_TIME, 45, reason, usage); return 1; } stock BanPlayer(playerid, offname[], target, btime, banart, rlenght, rdata[], udata[]) { if(strlen(rdata) > rlenght) { SCMF(playerid, COLOR_LESSRED, "Der Grund darf maximal %d Zeichen lang sein.", rlenght); return 1;} new string[128]; switch(banart) { case BAN_NORMAL: { pInfo[target][pBan] = 1; format(string, sizeof string, "[SERVER] %s wurde von %s gebannt. Grund: %s", getName(target), getName(playerid), rdata), SCMTA(COLOR_RED, string); playerProtocol(target, "ban", "wurde von %s %s gebannt. Grund: %s", getAdminRang(playerid), getName(playerid), rdata); AdminLog(playerid, "ban", "hat den Spieler %s gebannt. Grund: %s", getName(target), rdata); Kick(target); } case BAN_OFFLINE: { if(target != INVALID_PLAYER_ID)return 1; //OfflineBan Parameter wurde nicht richtig setzt (INVALID_PLAYER_ID) //MySQL Abfrage im gleichem Funktionsrahmen, bitte nur in Ausnamefällen nutzen, am besten gar nicht! - Bryan new cacheSQLID, BanStatus, Cache:result, query[512]; mysql_format(handle, query, sizeof query, "SELECT `Sperre` FROM `player` WHERE `Name` = '%e'", offname); result = mysql_query(handle, query); cache_get_value_int(0, 0, BanStatus); //Checken ob bereits ein Ban besteht if(!cache_num_rows()) { SCMF(playerid, COLOR_LESSRED, "Es ist kein Konto unter dem Namen %s angelegt!", offname); return 1; } if(BanStatus) //Auswertung der Ban Prüfung { SCMF(playerid, COLOR_LESSRED, "Der Spieler %s ist bereits gebannt!", offname); return 1; } cache_delete(result); //SQLID Picken mysql_format(handle, query, sizeof query, "SELECT `playerid` FROM `player` WHERE `Name` = '%e'", offname); result = mysql_query(handle, query); cache_get_value_int(0, 0, cacheSQLID); cache_delete(result); //Log & Ban mysql_format(handle, query, sizeof query, "UPDATE `player` SET `Sperre` = 1 WHERE `Name` = '%e'", offname); mysql_pquery(handle, query, "PlayerQuery", "d", PLAYER_QUERY_BAN); SCMFTA(COLOR_RED, "[SERVER] %s wurde von %s Offline gebannt. Grund: %s", offname, getName(playerid), rdata); format(query, 256, "%s", rdata); playerProtocol(cacheSQLID, "oban", "%s wurde von %s %s offline gebannt. Grund: %s", offname, getAdminRang(playerid), getName(playerid), rdata); AdminLog(playerid, "oban", "%s hat den Spieler %s offline gebannt. Grund: %s", getName(playerid), offname, rdata); } case BAN_TIME: { if(!strcmp(udata, "Minuten", true)) { if(btime < 30 || btime > 10080)return SCM(playerid, COLOR_GREY, "Der Wert bei Minuten, muss zwischen 30 & 10.080 liegen! (Maxmimal 1 Woche)"); pInfo[playerid][pTimeban] = cTime + (60*btime); format(string, sizeof string, "[SERVER] %s wurde von %s für %d Minuten gebannt. Grund: %s", getName(target), getName(playerid), btime, rdata), SCMTA(COLOR_RED, string); playerProtocol(target, "sanction", "wurde von %s %s für %d Minuten gebannt. Grund: %s", getAdminRang(playerid), getName(playerid), btime, rdata); AdminLog(playerid, "timeban", "hat den Spieler %s für %d Minuten gebannt. Grund: %s", getName(target), btime, rdata); Kick(target); return 1; } if(!strcmp(udata, "Stunden", true)) { if(btime < 1 || btime > 168)return SCM(playerid, COLOR_GREY, "Der Wert bei Stunden, muss zwischen 1 & 168 liegen! (Maxmimal 1 Woche)"); pInfo[playerid][pTimeban] = cTime + (3600*btime); format(string, sizeof string, "[SERVER] %s wurde von %s für %d Stunde(n) gebannt. Grund: %s", getName(target), getName(playerid), btime, rdata), SCMTA(COLOR_RED, string); playerProtocol(target, "sanction", "wurde von %s %s für %d Stunden gebannt. Grund: %s", getAdminRang(playerid), getName(playerid), btime, rdata); AdminLog(playerid, "timeban", "hat den Spieler %s für %d Stunden gebannt. Grund: %s", getName(target), btime, rdata); Kick(target); return 1; } if(!strcmp(udata, "Tage", true)) { if(btime < 1 || btime > 7)return SCM(playerid, COLOR_GREY, "Der Wert bei Minuten, muss zwischen 30 & 10.080 liegen! (Maxmimal 1 Woche)"); pInfo[playerid][pTimeban] = cTime + (86400*btime); format(string, sizeof string, "[SERVER] %s wurde von %s für %d Tag(e) gebannt. Grund: %s", getName(target), getName(playerid), btime, rdata), SCMTA(COLOR_RED, string); playerProtocol(target, "sanction", "wurde von %s %s für %d Tage gebannt. Grund: %s", getAdminRang(playerid), getName(playerid), btime, rdata); AdminLog(playerid, "timeban", "hat den Spieler %s für %d Tage gebannt. Grund: %s", getName(target), btime, rdata); Kick(target); return 1; } } case BAN_OFFTIME: { if(target != INVALID_PLAYER_ID)return 1; //OfflineBan Parameter wurde nicht richtig setzt (INVALID_PLAYER_ID) //TBAN-Aufschlag Check new tban_usage[10], tban_math, tban_time, tban_sql, tban_have, tban_offname[24], tban_reason[64], tban_timeset[25], query[256], tmath_days, tmath_hours, tmath_minutes, tmath_secs, tban_second; Math(btime, tmath_days, tmath_hours, tmath_minutes, tmath_secs); cTime = gettime(); if(GetPVarInt(playerid, "TBAN_EXITS") && GetPVarInt(playerid, "TBAN_EXITS") > cTime) { tban_second = 1; tban_have = GetPVarInt(playerid, "TBAN_HAVE"), tban_time = GetPVarInt(playerid, "TBAN_TIME"), GetPVarString(playerid, "TBAN_USAGE", tban_usage, 10); format(tban_timeset, 25, "%s", tban_usage); } else format(tban_timeset, 25, "%s", udata); //Zeiteinheit auswerten if(!strcmp(tban_timeset, "Minuten", true)) { if(btime < 30 || btime > 10080)return SCM(playerid, COLOR_GREY, "Der Wert bei Minuten, muss zwischen 30 & 10.080 liegen! (Maxmimal 1 Woche)"); tban_math = (tban_second) ? ((60*tban_time)) + (tban_have) : (cTime) + (60*btime); } else if(!strcmp(tban_timeset, "Stunden", true)) { if(btime < 1 || btime > 168)return SCM(playerid, COLOR_GREY, "Der Wert bei Stunden, muss zwischen 1 & 168 liegen! (Maxmimal 1 Woche)"); tban_math = (tban_second) ? ((3600*tban_time)) + (tban_have) : (cTime) + (3600*btime); } else if(!strcmp(tban_timeset, "Tage", true)) { if(btime < 1 || btime > 7)return SCM(playerid, COLOR_GREY, "Der Wert bei Tagen, muss zwischen 1 & 7 liegen! (Maxmimal 1 Woche)"); tban_math = (tban_second) ? ((86400*tban_time)) + (tban_have) : (cTime) + (86400*btime); } if(tban_second) { tban_sql = GetPVarInt(playerid, "TBAN_SQL"); Math(tban_math, tmath_days, tmath_hours, tmath_minutes, tmath_secs); GetPVarString(playerid, "TBAN_OFFNAME", tban_offname, 24), GetPVarString(playerid, "TBAN_REASON", tban_reason, 64); //Log & Ban format(string, sizeof string, "%d Tage, %d Stunden, %d Minuten und %d Sekunden", tmath_days, tmath_hours, tmath_minutes, tmath_secs); playerProtocol(tban_sql, "OFFTB-EXTRA", "%s sein Timeban wurde von %s um %d %s verlängert. Gesamtstrafe: %s / Grund: %s", tban_offname, getName(playerid), tban_time, tban_usage, string, tban_reason); AdminLog(playerid, "OFFTB-EXTRA", "%s hat dem Spieler %s seinen Timeban um %d %s verlängert. Gesamtstrafe: %s / Grund: %s", getName(playerid), tban_offname, tban_time, tban_usage, string, tban_reason); mysql_format(handle, query, sizeof query, "UPDATE player SET Timeban=%d WHERE Name = '%e' AND playerid = %d", tban_math, tban_offname, tban_sql), mysql_pquery(handle, query); format(string, sizeof string, "[ADMIN] %s hat dem Spieler %s seine Strafzeit um %d %s verlängert.", getName(playerid), tban_offname, tban_time, tban_usage), SendAdminMessage(COLOR_YELLOW, string), format(string, sizeof string, "[ADMIN] Insgesamt Strafe: %d Tage, %d Stunden, %d Minuten und %d Sekunden", tmath_days, tmath_hours, tmath_minutes, tmath_secs), SendAdminMessage(COLOR_YELLOW, string), format(string, sizeof string, "[ADMIN] Grund: %s", tban_reason), SendAdminMessage(COLOR_YELLOW, string); //Cache entfernen DeletePVar(playerid, "TBAN_EXITS"), DeletePVar(playerid, "TBAN_SQL"), DeletePVar(playerid, "TBAN_TIME"), DeletePVar(playerid, "TBAN_OFFNAME"), DeletePVar(playerid, "TBAN_USAGE"), DeletePVar(playerid, "TBAN_REASON"); return 1; } //MySQL Abfrage im gleichem Funktionsrahmen, bitte nur in Ausnamefällen nutzen, am besten gar nicht! - Bryan new cacheSQLID, BanUnix, Cache:result; mysql_format(handle, query, sizeof query, "SELECT Timeban FROM player WHERE Name = '%e'", offname); result = mysql_query(handle, query); if(!cache_num_rows()) { SCMF(playerid, COLOR_LESSRED, "Es ist kein Konto unter dem Namen %s angelegt!", offname); return 1; } cache_delete(result); //SQLID Picken mysql_format(handle, query, sizeof query, "SELECT playerid FROM player WHERE Name = '%e'", offname); result = mysql_query(handle, query); cache_get_value_int(0, 0, cacheSQLID); cache_delete(result); //Checken ob bereits ein aktiver TBan besteht mysql_format(handle, query, sizeof query, "SELECT Timeban FROM player WHERE Name = '%e'", offname); result = mysql_query(handle, query); cache_get_value_int(0, 0, BanUnix); cache_delete(result); //Auswertung der Ban Prüfung (Bestehender Timeban) if(BanUnix && BanUnix > cTime) { new days, hour, mins, secs; //Cache setzen für Timeban Erhöhung setzen (Offline TBan) (60 Sekunden) Math(BanUnix, days, hour, mins, secs), SetPVarInt(playerid, "TBAN_EXITS", cTime + 60), SetPVarInt(playerid, "TBAN_SQL", cacheSQLID), SetPVarInt(playerid, "TBAN_TIME", btime), SetPVarInt(playerid, "TBAN_HAVE", BanUnix), SetPVarString(playerid, "TBAN_OFFNAME", offname), SetPVarString(playerid, "TBAN_USAGE", udata), SetPVarString(playerid, "TBAN_REASON", rdata); SCMF(playerid, COLOR_LESSRED, "Der Spieler %s ist noch %d Tage, %d Stunden, %d Minuten und %d Sekunden gebannt!", offname, days, hour, mins, secs); SCM(playerid, COLOR_YELLOW, "INFO: Falls du die Ban-Zeit erhöhen möchtest, wiederhole den Befehl einfach innerhalb 60 Sekunden"), SCM(playerid, COLOR_YELLOW, "INFO: Falls du keine Aktion in der angegebenen Zeit tätigst, erlischt das Angebot."); return 1; } Math(tban_math, tmath_days, tmath_hours, tmath_minutes, tmath_secs); playerProtocol(tban_sql, "OFFTB-EXTRA", "%s wurde von %s %s für %d %s gebannt. Grund: %s", offname, getAdminRang(playerid), getName(playerid), btime, udata, rdata); AdminLog(playerid, "OFFTB-EXTRA", "%s hat den Spieler %s für %d %s gebannt. Grund: %s", getName(playerid), offname, btime, udata, rdata); SCMFTA(COLOR_RED, "[ADMIN] %s wurde von %s für %d %s offline gebannt. Grund: %s", offname, getName(playerid), btime, udata, rdata); mysql_format(handle, query, sizeof query, "UPDATE player SET Timeban = %d WHERE Name = '%e' AND playerid = %d", tban_math, offname, cacheSQLID), mysql_pquery(handle, query); //Cache entfernen DeletePVar(playerid, "TBAN_EXITS"), DeletePVar(playerid, "TBAN_SQL"), DeletePVar(playerid, "TBAN_TIME"), DeletePVar(playerid, "TBAN_OFFNAME"), DeletePVar(playerid, "TBAN_USAGE"), DeletePVar(playerid, "TBAN_REASON"); } } return 1; }
Hab zwar schon seit Jahren kein PAWN mehr geschrieben, sieht aber ziemlich normal aus
-
LeonMrBonnie glaube mit dem Code kam er schon NICHT klar xD und ansonsten ins KCT Script schauen was ich released habe
C++
Alles anzeigenocmd:ban(playerid, params[]) { new pid, reason[45]; if(getAdmin(playerid) < 2)return 1; if(sscanf(params, "us", pid, reason))return SCM(playerid, COLOR_GREY, "Befehl: /ban [Name/ID] [Grund]"); if(LoggedIn(pid) == false)return SEM(playerid, ERROR_NOLOGIN2); BanPlayer(playerid, "", pid, 0, BAN_NORMAL, 45, reason, NULL); return 1; } ocmd:offban(playerid, params[]) { new bname[24], onlineID = INVALID_PLAYER_ID, reason[45]; if(getAdmin(playerid) < 2)return 1; if(sscanf(params, "ss", bname, reason))return SCM(playerid, COLOR_GREY, "Befehl: /offban [Name] [Grund]"); //Online Check onlineID = LoggedInName(bname); if(onlineID != INVALID_PLAYER_ID) { SCMF(playerid, COLOR_LESSRED, "Der Spieler %s ist Online mit der ID %d, nutze /ban", bname, onlineID); return 1; } BanPlayer(playerid, bname, INVALID_PLAYER_ID, 0, BAN_OFFLINE, 45, reason, NULL); return 1; } ocmd:offtimeban(playerid, params[]) { new bname[24], reason[45], usage[10], time, onlineID = INVALID_PLAYER_ID; if(getAdmin(playerid) < 2)return 1; if(sscanf(params, "ssds", bname, usage, time, reason))return SCM(playerid, COLOR_GREY, "Befehl: /offtimeban [Name] [Minuten/Stunden/Tage] [Anzahl] [Grund]"); //Online Check onlineID = LoggedInName(bname); if(onlineID != INVALID_PLAYER_ID) { SCMF(playerid, COLOR_LESSRED, "Der Spieler %s ist Online mit der ID %d, nutze /tban", bname, onlineID); return 1; } if(strcmp(usage, "Minuten", true) && strcmp(usage, "Stunden", true) && strcmp(usage, "Tage", true))return SCM(playerid, COLOR_LESSRED, "Auswahl: Minuten/Stunden/Tage"); BanPlayer(playerid, bname, INVALID_PLAYER_ID, time, BAN_OFFTIME, 45, reason, usage); return 1; } ocmd:tban(playerid, params[]) { new pid, time, reason[45], usage[10]; if(getAdmin(playerid) < 2)return 1; if(sscanf(params, "usds", pid, usage, time, reason))return SCM(playerid, COLOR_GREY, "Befehl: /tban [Name/ID] [Minuten/Stunden/Tage] [Anzahl] [Grund]"); if(LoggedIn(pid) == false)return SEM(playerid, ERROR_NOLOGIN2); if(strcmp(usage, "Minuten", true) && strcmp(usage, "Stunden", true) && strcmp(usage, "Tage", true))return SCM(playerid, COLOR_LESSRED, "Auswahl: Minuten/Stunden/Tage"); BanPlayer(playerid, "", pid, time, BAN_TIME, 45, reason, usage); return 1; } stock BanPlayer(playerid, offname[], target, btime, banart, rlenght, rdata[], udata[]) { if(strlen(rdata) > rlenght) { SCMF(playerid, COLOR_LESSRED, "Der Grund darf maximal %d Zeichen lang sein.", rlenght); return 1;} new string[128]; switch(banart) { case BAN_NORMAL: { pInfo[target][pBan] = 1; format(string, sizeof string, "[SERVER] %s wurde von %s gebannt. Grund: %s", getName(target), getName(playerid), rdata), SCMTA(COLOR_RED, string); playerProtocol(target, "ban", "wurde von %s %s gebannt. Grund: %s", getAdminRang(playerid), getName(playerid), rdata); AdminLog(playerid, "ban", "hat den Spieler %s gebannt. Grund: %s", getName(target), rdata); Kick(target); } case BAN_OFFLINE: { if(target != INVALID_PLAYER_ID)return 1; //OfflineBan Parameter wurde nicht richtig setzt (INVALID_PLAYER_ID) //MySQL Abfrage im gleichem Funktionsrahmen, bitte nur in Ausnamefällen nutzen, am besten gar nicht! - Bryan new cacheSQLID, BanStatus, Cache:result, query[512]; mysql_format(handle, query, sizeof query, "SELECT `Sperre` FROM `player` WHERE `Name` = '%e'", offname); result = mysql_query(handle, query); cache_get_value_int(0, 0, BanStatus); //Checken ob bereits ein Ban besteht if(!cache_num_rows()) { SCMF(playerid, COLOR_LESSRED, "Es ist kein Konto unter dem Namen %s angelegt!", offname); return 1; } if(BanStatus) //Auswertung der Ban Prüfung { SCMF(playerid, COLOR_LESSRED, "Der Spieler %s ist bereits gebannt!", offname); return 1; } cache_delete(result); //SQLID Picken mysql_format(handle, query, sizeof query, "SELECT `playerid` FROM `player` WHERE `Name` = '%e'", offname); result = mysql_query(handle, query); cache_get_value_int(0, 0, cacheSQLID); cache_delete(result); //Log & Ban mysql_format(handle, query, sizeof query, "UPDATE `player` SET `Sperre` = 1 WHERE `Name` = '%e'", offname); mysql_pquery(handle, query, "PlayerQuery", "d", PLAYER_QUERY_BAN); SCMFTA(COLOR_RED, "[SERVER] %s wurde von %s Offline gebannt. Grund: %s", offname, getName(playerid), rdata); format(query, 256, "%s", rdata); playerProtocol(cacheSQLID, "oban", "%s wurde von %s %s offline gebannt. Grund: %s", offname, getAdminRang(playerid), getName(playerid), rdata); AdminLog(playerid, "oban", "%s hat den Spieler %s offline gebannt. Grund: %s", getName(playerid), offname, rdata); } case BAN_TIME: { if(!strcmp(udata, "Minuten", true)) { if(btime < 30 || btime > 10080)return SCM(playerid, COLOR_GREY, "Der Wert bei Minuten, muss zwischen 30 & 10.080 liegen! (Maxmimal 1 Woche)"); pInfo[playerid][pTimeban] = cTime + (60*btime); format(string, sizeof string, "[SERVER] %s wurde von %s für %d Minuten gebannt. Grund: %s", getName(target), getName(playerid), btime, rdata), SCMTA(COLOR_RED, string); playerProtocol(target, "sanction", "wurde von %s %s für %d Minuten gebannt. Grund: %s", getAdminRang(playerid), getName(playerid), btime, rdata); AdminLog(playerid, "timeban", "hat den Spieler %s für %d Minuten gebannt. Grund: %s", getName(target), btime, rdata); Kick(target); return 1; } if(!strcmp(udata, "Stunden", true)) { if(btime < 1 || btime > 168)return SCM(playerid, COLOR_GREY, "Der Wert bei Stunden, muss zwischen 1 & 168 liegen! (Maxmimal 1 Woche)"); pInfo[playerid][pTimeban] = cTime + (3600*btime); format(string, sizeof string, "[SERVER] %s wurde von %s für %d Stunde(n) gebannt. Grund: %s", getName(target), getName(playerid), btime, rdata), SCMTA(COLOR_RED, string); playerProtocol(target, "sanction", "wurde von %s %s für %d Stunden gebannt. Grund: %s", getAdminRang(playerid), getName(playerid), btime, rdata); AdminLog(playerid, "timeban", "hat den Spieler %s für %d Stunden gebannt. Grund: %s", getName(target), btime, rdata); Kick(target); return 1; } if(!strcmp(udata, "Tage", true)) { if(btime < 1 || btime > 7)return SCM(playerid, COLOR_GREY, "Der Wert bei Minuten, muss zwischen 30 & 10.080 liegen! (Maxmimal 1 Woche)"); pInfo[playerid][pTimeban] = cTime + (86400*btime); format(string, sizeof string, "[SERVER] %s wurde von %s für %d Tag(e) gebannt. Grund: %s", getName(target), getName(playerid), btime, rdata), SCMTA(COLOR_RED, string); playerProtocol(target, "sanction", "wurde von %s %s für %d Tage gebannt. Grund: %s", getAdminRang(playerid), getName(playerid), btime, rdata); AdminLog(playerid, "timeban", "hat den Spieler %s für %d Tage gebannt. Grund: %s", getName(target), btime, rdata); Kick(target); return 1; } } case BAN_OFFTIME: { if(target != INVALID_PLAYER_ID)return 1; //OfflineBan Parameter wurde nicht richtig setzt (INVALID_PLAYER_ID) //TBAN-Aufschlag Check new tban_usage[10], tban_math, tban_time, tban_sql, tban_have, tban_offname[24], tban_reason[64], tban_timeset[25], query[256], tmath_days, tmath_hours, tmath_minutes, tmath_secs, tban_second; Math(btime, tmath_days, tmath_hours, tmath_minutes, tmath_secs); cTime = gettime(); if(GetPVarInt(playerid, "TBAN_EXITS") && GetPVarInt(playerid, "TBAN_EXITS") > cTime) { tban_second = 1; tban_have = GetPVarInt(playerid, "TBAN_HAVE"), tban_time = GetPVarInt(playerid, "TBAN_TIME"), GetPVarString(playerid, "TBAN_USAGE", tban_usage, 10); format(tban_timeset, 25, "%s", tban_usage); } else format(tban_timeset, 25, "%s", udata); //Zeiteinheit auswerten if(!strcmp(tban_timeset, "Minuten", true)) { if(btime < 30 || btime > 10080)return SCM(playerid, COLOR_GREY, "Der Wert bei Minuten, muss zwischen 30 & 10.080 liegen! (Maxmimal 1 Woche)"); tban_math = (tban_second) ? ((60*tban_time)) + (tban_have) : (cTime) + (60*btime); } else if(!strcmp(tban_timeset, "Stunden", true)) { if(btime < 1 || btime > 168)return SCM(playerid, COLOR_GREY, "Der Wert bei Stunden, muss zwischen 1 & 168 liegen! (Maxmimal 1 Woche)"); tban_math = (tban_second) ? ((3600*tban_time)) + (tban_have) : (cTime) + (3600*btime); } else if(!strcmp(tban_timeset, "Tage", true)) { if(btime < 1 || btime > 7)return SCM(playerid, COLOR_GREY, "Der Wert bei Tagen, muss zwischen 1 & 7 liegen! (Maxmimal 1 Woche)"); tban_math = (tban_second) ? ((86400*tban_time)) + (tban_have) : (cTime) + (86400*btime); } if(tban_second) { tban_sql = GetPVarInt(playerid, "TBAN_SQL"); Math(tban_math, tmath_days, tmath_hours, tmath_minutes, tmath_secs); GetPVarString(playerid, "TBAN_OFFNAME", tban_offname, 24), GetPVarString(playerid, "TBAN_REASON", tban_reason, 64); //Log & Ban format(string, sizeof string, "%d Tage, %d Stunden, %d Minuten und %d Sekunden", tmath_days, tmath_hours, tmath_minutes, tmath_secs); playerProtocol(tban_sql, "OFFTB-EXTRA", "%s sein Timeban wurde von %s um %d %s verlängert. Gesamtstrafe: %s / Grund: %s", tban_offname, getName(playerid), tban_time, tban_usage, string, tban_reason); AdminLog(playerid, "OFFTB-EXTRA", "%s hat dem Spieler %s seinen Timeban um %d %s verlängert. Gesamtstrafe: %s / Grund: %s", getName(playerid), tban_offname, tban_time, tban_usage, string, tban_reason); mysql_format(handle, query, sizeof query, "UPDATE player SET Timeban=%d WHERE Name = '%e' AND playerid = %d", tban_math, tban_offname, tban_sql), mysql_pquery(handle, query); format(string, sizeof string, "[ADMIN] %s hat dem Spieler %s seine Strafzeit um %d %s verlängert.", getName(playerid), tban_offname, tban_time, tban_usage), SendAdminMessage(COLOR_YELLOW, string), format(string, sizeof string, "[ADMIN] Insgesamt Strafe: %d Tage, %d Stunden, %d Minuten und %d Sekunden", tmath_days, tmath_hours, tmath_minutes, tmath_secs), SendAdminMessage(COLOR_YELLOW, string), format(string, sizeof string, "[ADMIN] Grund: %s", tban_reason), SendAdminMessage(COLOR_YELLOW, string); //Cache entfernen DeletePVar(playerid, "TBAN_EXITS"), DeletePVar(playerid, "TBAN_SQL"), DeletePVar(playerid, "TBAN_TIME"), DeletePVar(playerid, "TBAN_OFFNAME"), DeletePVar(playerid, "TBAN_USAGE"), DeletePVar(playerid, "TBAN_REASON"); return 1; } //MySQL Abfrage im gleichem Funktionsrahmen, bitte nur in Ausnamefällen nutzen, am besten gar nicht! - Bryan new cacheSQLID, BanUnix, Cache:result; mysql_format(handle, query, sizeof query, "SELECT Timeban FROM player WHERE Name = '%e'", offname); result = mysql_query(handle, query); if(!cache_num_rows()) { SCMF(playerid, COLOR_LESSRED, "Es ist kein Konto unter dem Namen %s angelegt!", offname); return 1; } cache_delete(result); //SQLID Picken mysql_format(handle, query, sizeof query, "SELECT playerid FROM player WHERE Name = '%e'", offname); result = mysql_query(handle, query); cache_get_value_int(0, 0, cacheSQLID); cache_delete(result); //Checken ob bereits ein aktiver TBan besteht mysql_format(handle, query, sizeof query, "SELECT Timeban FROM player WHERE Name = '%e'", offname); result = mysql_query(handle, query); cache_get_value_int(0, 0, BanUnix); cache_delete(result); //Auswertung der Ban Prüfung (Bestehender Timeban) if(BanUnix && BanUnix > cTime) { new days, hour, mins, secs; //Cache setzen für Timeban Erhöhung setzen (Offline TBan) (60 Sekunden) Math(BanUnix, days, hour, mins, secs), SetPVarInt(playerid, "TBAN_EXITS", cTime + 60), SetPVarInt(playerid, "TBAN_SQL", cacheSQLID), SetPVarInt(playerid, "TBAN_TIME", btime), SetPVarInt(playerid, "TBAN_HAVE", BanUnix), SetPVarString(playerid, "TBAN_OFFNAME", offname), SetPVarString(playerid, "TBAN_USAGE", udata), SetPVarString(playerid, "TBAN_REASON", rdata); SCMF(playerid, COLOR_LESSRED, "Der Spieler %s ist noch %d Tage, %d Stunden, %d Minuten und %d Sekunden gebannt!", offname, days, hour, mins, secs); SCM(playerid, COLOR_YELLOW, "INFO: Falls du die Ban-Zeit erhöhen möchtest, wiederhole den Befehl einfach innerhalb 60 Sekunden"), SCM(playerid, COLOR_YELLOW, "INFO: Falls du keine Aktion in der angegebenen Zeit tätigst, erlischt das Angebot."); return 1; } Math(tban_math, tmath_days, tmath_hours, tmath_minutes, tmath_secs); playerProtocol(tban_sql, "OFFTB-EXTRA", "%s wurde von %s %s für %d %s gebannt. Grund: %s", offname, getAdminRang(playerid), getName(playerid), btime, udata, rdata); AdminLog(playerid, "OFFTB-EXTRA", "%s hat den Spieler %s für %d %s gebannt. Grund: %s", getName(playerid), offname, btime, udata, rdata); SCMFTA(COLOR_RED, "[ADMIN] %s wurde von %s für %d %s offline gebannt. Grund: %s", offname, getName(playerid), btime, udata, rdata); mysql_format(handle, query, sizeof query, "UPDATE player SET Timeban = %d WHERE Name = '%e' AND playerid = %d", tban_math, offname, cacheSQLID), mysql_pquery(handle, query); //Cache entfernen DeletePVar(playerid, "TBAN_EXITS"), DeletePVar(playerid, "TBAN_SQL"), DeletePVar(playerid, "TBAN_TIME"), DeletePVar(playerid, "TBAN_OFFNAME"), DeletePVar(playerid, "TBAN_USAGE"), DeletePVar(playerid, "TBAN_REASON"); } } return 1; }
Sieht schon fast aus wie C# Code..
Servus
-
Ist Normaler C# Code..
Servus
PAWN xD
-
PAWN xD
hab edit
-
-
Sieht schon fast aus wie C# Code..
Servus
Was für ein C# Code schreibst du denn? Also C# sieht für mich schon sehr anders aus, also aussehen wie C (ohne das #) tut es, aber ist ja auch zu erwarten weil PAWN sich stark an C orientiert. (Aber halt nur in beschissen)
-
cringe wer heut zu tage noch selber schreibt.
-
Pawn wurde doch auf C++/C# basis geschrieben oder
-
Was für ein C# Code schreibst du denn? Also C# sieht für mich schon sehr anders aus, also aussehen wie C (ohne das #) tut es, aber ist ja auch zu erwarten weil PAWN sich stark an C orientiert. (Aber halt nur in beschissen)
Lese ich sagte fast
-
Pawn wurde doch auf C++/C# basis geschrieben oder
PAWN selber ist in C geschrieben und basiert vom Syntax und auch der API her auf C.
Als PAWN entwickelt wurde gab es C# noch gar nicht
-
spuckst hier ganz schön große töne möne für jemanden der nur 50€ die nacht will
-
Gab es nicht sogar mal für FiveM, oder AltV eine Pawn version. Meine da war mal was.
-
Gab es nicht sogar mal für FiveM, oder AltV eine Pawn version. Meine da war mal was.
Beides nein.
Gibt aber auch keinen Grund dafür, warum sollte man diese veraltete Sprache heutzutage noch verwenden? Sprachen wie JavaScript, C# etc. sind alle a) einfacher zu verwenden, b) weiter verbreitet (man findet mehr Tutorials) und c) moderner und schneller
spuckst hier ganz schön große töne möne für jemanden der nur 50€ die nacht will
Nerv mal nicht
-
-
To be honest Kasakow
Leon hat Mal gecoded wie ShadowKev1999.
So haben wir zufällig alle mal gecodet, nur bei Kevin ist der Unterschied dass er es schon seit Jahren "versucht" und immer noch auf dem gleichen Stand ist.
Aber ebenfalls 2BH, er codet jetzt als wäre er, ich zitiere gedanklich aus einem internen Post auf Pure Reallife. "Wirtschaftsstudent"
Weiß jetzt nicht ob das ein Front oder ein Kompliment sein soll
-
Nerv mal nicht
olm sei mal nicht so frech was denkst du mit wem du redest
-
-
So haben wir zufällig alle mal gecodet, nur bei Kevin ist der Unterschied dass er es schon seit Jahren "versucht" und immer noch auf dem gleichen Stand ist.
Weiß jetzt nicht ob das ein Front oder ein Kompliment sein soll
Leon hat Mal gecoded wie @ShadowKev1999.
Finde das nicht Stark von euch beiden gegen jemanden zu Fronten der Probleme hat mit denen ihr euch nicht täglich auseinander setzen müsst.
Props an euch.
-
warum haben hier so viele stock im göt?? nervt auf krank
-