Beiträge von Kasakow
-
-
-
-
Naja ist halt mager ja, aber sehe das für ein Projekt was in den Startlöchern steht für angebracht.
Wünsche euch viel Erfolg.
sehe auch gerade dass ich dermaßen geschielt hab gestern, sorry grad nochmal gelesen, für den Anfang reicht das ehrlich…
-
-
Der Text ist bei mir weiß/hellblau, kann den nicht sehen :o
Wollte dich darauf nur hinweisen, habs deswegen wieder gelöscht xd
wenn ich noch nicht penne dann lass mal runde schnacken auf entspannt aber , wobei.. ne man, nach dem pennen ist besser xd
-
-
Schön ausgeruht die 2 Stunde, jetzt kann man wieder an den Rechner.
ich hab meinen bus wegen Maske verpasst, muss ich morgen früh gelben holen, Ärzte haben nur bis halb 12 morgen offen
-
lädt die!? Weis jemand wo dict das sehe
8C40DE56-E838-47E0-ADA1-458BF41B2A10.jpeg66734F2D-D872-40EF-AA2A-03246F64F0DA.jpeg -
-
-
-
-
-
hoho habe ich lange geschlafen
Wie lang hast gepennt
-
Florian Edelmann hat Lifetime von mir und deswegen immer meinen Namen in seinem Titel.
-
-
Wusste ichs doch xd
//EDit
aebian Was ist dieser Passwort Manager? :p neue Mixtur aus Sonderzeichen , Groß/Kleinbuchstaben und Zahlen eingeprägt
-
-
/ban /offban /tban /offtimeban samt Funktion BanPlayer... müsste halt auf die eigenen Bedürfnisse angepasst werden aber bringt einen Grundbaustein mit sich
Code
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; }