hlmod.hu https://hlmod.hu/ |
|
[JailBreak] CT Ban https://hlmod.hu/viewtopic.php?f=9&t=9376 |
Oldal: 1 / 2 |
Szerző: | Anonymous1337 [2013.07.09. 20:34 ] |
Hozzászólás témája: | [JailBreak] CT Ban |
Üdvözlök minden kedves fórumozót! A kérdéseim a következők lennének. - Hogy tudok plugint színesíteni? Az idáig oké hogy így: ColorChat(id, RED, "[KIKI]^x04 Hi all!") ; De ennyi elég a pluginnak hogy színesen írjon? nem kell semmi extra? gondolok most erre ColorChat(id, RED, "[Server]^x04 %s ^3Udvozollek a szerveren") server ; tehát nem kell semmilyen "formatTextmessage" nem tudom pontosan vagy "printchat" Az ID miért nulla? ColorChat(0, GREEN, "[AdvancedRS]^x03 %s^x04 nullazta ^x03%s^x04 statisztikajat.", name, tempname); Amit olvasgattam: http://hlmod.hu/viewtopic.php?f=23&t=2503 amit KIKI elmagyarázott. ( Ezúton is köszönöm neki! ) Példaként felhoznám ezt a plugint: SMA Forráskód: [ Mindet kijelol ]
Ha én ebbe a pluginba bele szeretnék írni, akkor hogy kezdjek bele? Simán valahova a pluginba rakjam be ezt? ColorChat(0, GREEN, "[Pelda] ^4Peti ^3szerit a meggyet.",); Aki segít, megy a köszönöm! |
Szerző: | JoGoBeLLa [2013.07.09. 20:46 ] |
Hozzászólás témája: | Re: [JailBreak] CT Ban |
Hú de jó sokat írtál. S annak a fele fölösleges. SMA Forráskód: [ Mindet kijelol ]
SMA Forráskód: [ Mindet kijelol ]
SMA Forráskód: [ Mindet kijelol ]
Nem kell semmilyen extra hozzá, csak ez: SMA Forráskód: [ Mindet kijelol ]
Nem tudom, hogy mit nem értessz ezen. adok egy példát: SMA Forráskód: [ Mindet kijelol ]
|
Szerző: | Anonymous1337 [2013.07.09. 20:53 ] |
Hozzászólás témája: | Re: [JailBreak] CT Ban |
Tehát akkor nem kell semmi extra, csak illesszem be ezt: SMA Forráskód: [ Mindet kijelol ]
UI.: Ment a köszönöm! Edit.: Amit vastagon emeltem ki, azt raktam bele: #include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> #include <colorchat> #pragma semicolon 1 #define VERSION "2.3" #define SetCtBan(%1) (g_iBanned |= (1<<(%1&31))) #define ClearCtBan(%1) (g_iBanned &= ~(1 <<(%1&31))) #define CheckCtBan(%1) (g_iBanned & (1<<(%1&31))) #define set_user_messagemode(%1) (client_cmd(%1,"messagemode %s", g_szReasonMessage)) #define TEAMMENU_ID 5 #define TEAM_CT 1 #define TEAM_RANDOM 4 new const g_szReasonMessage[] = "Reason_for_ct-ban"; enum Cvars { KillBanned , ConnectMsg }; new Trie: g_tBannedSteamids , g_iBanned , g_iSelectedPlayer[33] , g_szFile[64] , g_pCvars[Cvars] ; public plugin_init() { register_plugin("Ct Banner", VERSION, "Drekes"); register_dictionary("ctbanner.txt"); register_dictionary("common.txt"); register_concmd("amx_addctban", "Cmd_CtBan", ADMIN_BAN, "<player> <reason> ^"Bans a player from ct team^""); register_concmd("amx_removectban", "Cmd_CtUnBan", ADMIN_BAN, "<player> ^"Unbans a player from ct team^""); register_clcmd("amx_ctbanmenu", "Menu_Main", ADMIN_BAN, "opens the ct-ban menu"); register_clcmd("jointeam", "Cmd_JoinTeam"); register_clcmd(g_szReasonMessage, "CmdEnterReason"); register_menucmd(register_menuid("Team_Select", 1), (1<<0)|(1<<1)|(1<<4)|(1<<5), "Menu_TeamSelect"); register_cvar("ctban_version", VERSION, FCVAR_SPONLY | FCVAR_SERVER); new const szCvars[Cvars][][] = { { "ctban_kill", "1" }, { "ctban_connect_msg", "1" } }; for(new Cvars: i = Cvars: 0; i < Cvars; i++) g_pCvars[i] = register_cvar(szCvars[i][0], szCvars[i][1]); g_tBannedSteamids = TrieCreate(); if(g_tBannedSteamids == Invalid_Trie) set_fail_state("Error creating Trie. Update your AMXX installation!"); formatex(g_szFile[get_datadir(g_szFile, charsmax(g_szFile))], charsmax(g_szFile), "/ct-banlist.ini"); new iFile = fopen(g_szFile, "rt") , szSteamid[35] ; if(iFile) { new szData[35]; while(!feof(iFile)) { fgets(iFile, szData, charsmax(szData)); trim(szData); if(comment(szData)) continue; parse(szData, szSteamid, charsmax(szSteamid)); TrieSetCell(g_tBannedSteamids, szSteamid, 1); } fclose(iFile); log_amx("Ctban list loaded succesfully"); } else log_amx("^"%s^" not found", g_szFile); } public client_authorized(id) { new szSteamid[35], szName[35]; get_user_authid(id, szSteamid, charsmax(szSteamid)); get_user_name(id, szName, charsmax(szName)); if(TrieKeyExists(g_tBannedSteamids, szSteamid)) { if(get_pcvar_num(g_pCvars[ConnectMsg])) client_print(0, print_chat, "* %L", LANG_PLAYER, "FOUND", szName); SetCtBan(id); } else { if(get_pcvar_num(g_pCvars[ConnectMsg])) client_print(0, print_chat, "* %L", LANG_PLAYER, "NOT_FOUND", szName); ClearCtBan(id); } } public Cmd_CtBan(id, iLevel, iCid) { if(!cmd_access(id, iLevel, iCid, 3)) return PLUGIN_HANDLED; new szArg[35]; read_argv(1, szArg, charsmax(szArg)); new iPlayer = cmd_target(id, szArg, CMDTARGET_OBEY_IMMUNITY); if(iPlayer) { new szPlayerSteamid[35]; get_user_authid(iPlayer, szPlayerSteamid, charsmax(szPlayerSteamid)); if(TrieKeyExists(g_tBannedSteamids, szPlayerSteamid)) { console_print(id, "* %L", id, "ALREADY", szPlayerSteamid); return PLUGIN_HANDLED; } new szReason[64]; read_argv(2, szReason, charsmax(szReason)); AddCtBan(id, iPlayer, szReason); } return PLUGIN_HANDLED; } public Cmd_CtUnBan(id, iLevel, iCid) { if(!cmd_access(id, iLevel, iCid, 2)) return PLUGIN_HANDLED; new szArg[35]; read_argv(1, szArg, charsmax(szArg)); new iPlayer = cmd_target(id, szArg, CMDTARGET_OBEY_IMMUNITY); if(iPlayer) { new szSteamid[34]; get_user_authid(iPlayer, szSteamid, charsmax(szSteamid)); if(!TrieKeyExists(g_tBannedSteamids, szSteamid)) { console_print(id, "* %L", id, "NOT", szSteamid); return PLUGIN_HANDLED; } { ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd") } RemoveCtBan(id, iPlayer); } return PLUGIN_HANDLED; } public Cmd_JoinTeam(id) { if(CheckCtBan(id)) { new szArg[4]; read_argv(1, szArg, charsmax(szArg)); new iTeam = str_to_num(szArg) - 1; if(iTeam == TEAM_CT || iTeam == TEAM_RANDOM) { engclient_cmd(id, "chooseteam"); return PLUGIN_HANDLED; } } return PLUGIN_CONTINUE; } public CmdEnterReason(id) { new iPlayer = g_iSelectedPlayer[id]; if(!iPlayer) return PLUGIN_HANDLED; new szReason[64]; read_argv(1, szReason, charsmax(szReason)); if(!szReason[0]) { client_print(id, print_chat, "* %L", id, "ENTER_REASON"); set_user_messagemode(id); } else { AddCtBan(id, iPlayer, szReason); g_iSelectedPlayer[id] = 0; } return PLUGIN_HANDLED; } public Menu_TeamSelect(id, key) { if(CheckCtBan(id) && key == TEAM_CT || key == TEAM_RANDOM) { engclient_cmd(id, "chooseteam"); return PLUGIN_HANDLED; } return PLUGIN_CONTINUE; } public Menu_Main(id, iLevel) { if(!(get_user_flags(id) & iLevel)) return PLUGIN_HANDLED; new iPlayers[32], iNum, iPlayer; get_players(iPlayers, iNum, "ch"); if(!iNum) console_print(id, "%L", id, "NO_PLAYERS"); else { new szData[64], iMenu; formatex(szData, charsmax(szData), "\y%L", id, "MAINMENU_TITLE"); iMenu = menu_create(szData, "HandleMainMenu"); for(new szSteamid[32], i = 0; i < iNum; i++) { iPlayer = iPlayers[i]; if(iPlayer == id) continue; get_user_authid(iPlayer, szSteamid, charsmax(szSteamid)); get_user_name(iPlayer, szData, charsmax(szData)); format(szData, charsmax(szData), "%s (%L)", szData, id, TrieKeyExists(g_tBannedSteamids, szSteamid) ? "BANNED" : "NOT_BANNED"); menu_additem(iMenu, szData, szSteamid); } menu_display(id, iMenu); } return PLUGIN_HANDLED; } public HandleMainMenu(id, iMenu, iItem) { if(iItem != MENU_EXIT) { new iAccess, szSteamid[32], iCallback; menu_item_getinfo(iMenu, iItem, iAccess, szSteamid, charsmax(szSteamid), _, _, iCallback); new iPlayer = find_player("ch", szSteamid); if(iPlayer) { if(!TrieKeyExists(g_tBannedSteamids, szSteamid)) { g_iSelectedPlayer[id] = iPlayer; set_user_messagemode(id); } else RemoveCtBan(id, iPlayer); } else client_print(id, print_chat, "* %L", id, "CL_NOT_FOUND"); } menu_destroy(iMenu); return PLUGIN_HANDLED; } AddCtBan(id, iPlayer, const szReason[]) { if(cs_get_user_team(id) == CS_TEAM_CT) { if(get_pcvar_num(g_pCvars[KillBanned])) user_kill(iPlayer); cs_set_user_team(iPlayer, CS_TEAM_T); } new szBuffer[128], szSteamid[34], szPlayerName[32]; get_user_authid(iPlayer, szSteamid, charsmax(szSteamid)); get_user_name(iPlayer, szPlayerName, charsmax(szPlayerName)); formatex(szBuffer, charsmax(szBuffer), "%s %s ^"%s^"", szSteamid, szPlayerName, szReason); write_file(g_szFile, szBuffer); TrieSetCell(g_tBannedSteamids, szSteamid, 1); SetCtBan(iPlayer); new szAdminName[32], szAdminSteamid[34]; get_user_name(id, szAdminName, charsmax(szAdminName)); get_user_authid(id, szAdminSteamid, charsmax(szAdminSteamid)); client_print(id, print_chat, "* %L", id, "ADDED", szSteamid); show_activity_key("ACTIVITY_ADDED_CASE1", "ACTIVITY_ADDED_CASE2", szAdminName, szPlayerName); log_amx("%L", LANG_SERVER, "LOG_ADDED", szAdminName, szAdminSteamid, szPlayerName, szSteamid); } RemoveCtBan(id, iPlayer) { new szData[128], Line; new iFile = fopen(g_szFile, "rt"); if(!iFile) return; new szSteamid[34], szTempSteamid[34]; get_user_authid(iPlayer, szSteamid, charsmax(szSteamid)); while(!feof(iFile)) { fgets(iFile, szData, charsmax(szData)); trim(szData); Line++; if(comment(szData)) continue; parse(szData, szTempSteamid, charsmax(szTempSteamid)); if(equali(szSteamid, szTempSteamid)) { format(szData, charsmax(szData), "; %s", szData); write_file(g_szFile, szData, Line - 1); break; } } TrieDeleteKey(g_tBannedSteamids, szSteamid); ClearCtBan(id); new szAdminName[32], szPlayerName[32], szAdminSteamid[32]; get_user_name(id, szAdminName, charsmax(szAdminName)); get_user_name(iPlayer, szPlayerName, charsmax(szPlayerName)); get_user_authid(id, szAdminSteamid, charsmax(szAdminSteamid)); console_print(id, "* %L", id, "REMOVED", szSteamid); show_activity_key("ACTIVITY_REMOVED_CASE1", "ACTIVITY_REMOVED_CASE2", szAdminName, szPlayerName); log_amx("%L", LANG_SERVER, "LOG_REMOVED", szAdminName, szAdminSteamid, szPlayerName, szSteamid); } bool: comment(const szData[]) return (!szData[0] || szData[0] == ';' || (szData[0] == '/' && szData[1] == '/')) ? true : false; |
Szerző: | JoGoBeLLa [2013.07.09. 20:54 ] |
Hozzászólás témája: | Re: [JailBreak] CT Ban |
Anonymous1337 írta: JoGoBeLLa írta: Hú de jó sokat írtál. S annak a fele fölösleges. SMA Forráskód: [ Mindet kijelol ]
SMA Forráskód: [ Mindet kijelol ]
SMA Forráskód: [ Mindet kijelol ]
Nem kell semmilyen extra hozzá, csak ez: SMA Forráskód: [ Mindet kijelol ]
Nem tudom, hogy mit nem értessz ezen. adok egy példát: SMA Forráskód: [ Mindet kijelol ]
Tehát akkor nem kell semmi extra, csak illesszem be ezt: SMA Forráskód: [ Mindet kijelol ]
UI.: Ment a köszönöm! persze, csak nem mind1, hogy hova. fontos, hogy jó helyre, jó public-ba írd! |
Szerző: | Anonymous1337 [2013.07.09. 21:02 ] |
Hozzászólás témája: | Re: [JailBreak] CT Ban |
JoGoBeLLa írta: Anonymous1337 írta: JoGoBeLLa írta: Hú de jó sokat írtál. S annak a fele fölösleges. SMA Forráskód: [ Mindet kijelol ]
SMA Forráskód: [ Mindet kijelol ]
SMA Forráskód: [ Mindet kijelol ]
Nem kell semmilyen extra hozzá, csak ez: SMA Forráskód: [ Mindet kijelol ]
Nem tudom, hogy mit nem értessz ezen. adok egy példát: SMA Forráskód: [ Mindet kijelol ]
Tehát akkor nem kell semmi extra, csak illesszem be ezt: SMA Forráskód: [ Mindet kijelol ]
UI.: Ment a köszönöm! persze, csak nem mind1, hogy hova. fontos, hogy jó helyre, jó public-ba írd! És azt én honnan tudjam hogy jó helyre e rakom? ![]() Valahonnan lehet ezt tudni? |
Szerző: | JoGoBeLLa [2013.07.09. 21:05 ] |
Hozzászólás témája: | Re: [JailBreak] CT Ban |
Anonymous1337 írta: És azt én honnan tudjam hogy jó helyre e rakom? ![]() Valahonnan lehet ezt tudni? Leírtam. Megfelelő helyre kell, azt csak te tudod, hogy hova. Gondolom a másik szöveg helyére ha csak átírsz egy plugint. |
Szerző: | Vinnice [2013.07.09. 21:55 ] |
Hozzászólás témája: | Re: [JailBreak] CT Ban |
SMA Forráskód: [ Mindet kijelol ]
|
Szerző: | Gatshow [2013.07.09. 22:10 ] |
Hozzászólás témája: | Re: [JailBreak] CT Ban |
Vinnice írta: SMA Forráskód: [ Mindet kijelol ]
mi a különbség a 2 között?? én egy eltérést nem látok o.O |
Szerző: | Vinnice [2013.07.09. 22:16 ] |
Hozzászólás témája: | Re: [JailBreak] CT Ban |
Gatshow írta: Vinnice írta: SMA Forráskód: [ Mindet kijelol ]
mi a különbség a 2 között?? én egy eltérést nem látok o.O Ahol azt irtam hogy rossz ott errort dob mivel az csak a "levegőben van" (public fuggveny(id) ez nincs ott) |
Szerző: | JoGoBeLLa [2013.07.09. 22:16 ] |
Hozzászólás témája: | Re: [JailBreak] CT Ban |
Gatshow írta: Vinnice írta: SMA Forráskód: [ Mindet kijelol ]
mi a különbség a 2 között?? én egy eltérést nem látok o.O A második nincsen függvényben, csak példa ként hozta fel, hogy ne oda írja. |
Oldal: 1 / 2 | Minden időpont UTC+02:00 időzóna szerinti |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |