hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.06.16. 09:36



Jelenlévő felhasználók

Jelenleg 427 felhasználó van jelen :: 1 regisztrált, 0 rejtett és 426 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: Google [Bot] az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 15 hozzászólás ]  Oldal 1 2 Következő
Szerző Üzenet
 Hozzászólás témája: [JailBreak] CT Ban
HozzászólásElküldve: 2013.07.09. 20:34 
Offline
Felfüggesztve
Avatar

Csatlakozott: 2013.06.09. 18:47
Hozzászólások: 2004
Megköszönt másnak: 1 alkalommal
Megköszönték neki: 220 alkalommal
Ü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 ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <cstrike>
  4. #include <fun>
  5.  
  6. #pragma semicolon 1
  7. #define VERSION "2.3"
  8.  
  9. #define SetCtBan(%1) (g_iBanned |= (1<<(%1&31)))
  10. #define ClearCtBan(%1) (g_iBanned &= ~(1 <<(%1&31)))
  11. #define CheckCtBan(%1) (g_iBanned & (1<<(%1&31)))
  12.  
  13. #define set_user_messagemode(%1) (client_cmd(%1,"messagemode %s", g_szReasonMessage))
  14.  
  15. #define TEAMMENU_ID 5
  16.  
  17. #define TEAM_CT 1
  18. #define TEAM_RANDOM 4
  19.  
  20. new const g_szReasonMessage[] = "Reason_for_ct-ban";
  21.  
  22.  
  23. enum Cvars
  24. {
  25. KillBanned
  26. , ConnectMsg
  27. };
  28.  
  29.  
  30. new Trie: g_tBannedSteamids
  31. , g_iBanned
  32. , g_iSelectedPlayer[33]
  33. , g_szFile[64]
  34. , g_pCvars[Cvars]
  35. ;
  36.  
  37.  
  38. public plugin_init()
  39. {
  40. register_plugin("Ct Banner", VERSION, "Drekes");
  41.  
  42. register_dictionary("ctbanner.txt");
  43. register_dictionary("common.txt");
  44.  
  45. register_concmd("amx_addctban", "Cmd_CtBan", ADMIN_BAN, "<player> <reason> ^"Bans a player from ct team^"");
  46. register_concmd("amx_removectban", "Cmd_CtUnBan", ADMIN_BAN, "<player> ^"Unbans a player from ct team^"");
  47.  
  48. register_clcmd("amx_ctbanmenu", "Menu_Main", ADMIN_BAN, "opens the ct-ban menu");
  49. register_clcmd("jointeam", "Cmd_JoinTeam");
  50. register_clcmd(g_szReasonMessage, "CmdEnterReason");
  51.  
  52. register_menucmd(register_menuid("Team_Select", 1), (1<<0)|(1<<1)|(1<<4)|(1<<5), "Menu_TeamSelect");
  53.  
  54. register_cvar("ctban_version", VERSION, FCVAR_SPONLY | FCVAR_SERVER);
  55.  
  56. new const szCvars[Cvars][][] =
  57. {
  58. { "ctban_kill", "1" },
  59. { "ctban_connect_msg", "1" }
  60. };
  61.  
  62. for(new Cvars: i = Cvars: 0; i < Cvars; i++)
  63. g_pCvars[i] = register_cvar(szCvars[i][0], szCvars[i][1]);
  64.  
  65.  
  66. g_tBannedSteamids = TrieCreate();
  67.  
  68. if(g_tBannedSteamids == Invalid_Trie)
  69. set_fail_state("Error creating Trie. Update your AMXX installation!");
  70.  
  71.  
  72. formatex(g_szFile[get_datadir(g_szFile, charsmax(g_szFile))], charsmax(g_szFile), "/ct-banlist.ini");
  73.  
  74. new iFile = fopen(g_szFile, "rt")
  75. , szSteamid[35]
  76. ;
  77.  
  78. if(iFile)
  79. {
  80. new szData[35];
  81. while(!feof(iFile))
  82. {
  83. fgets(iFile, szData, charsmax(szData));
  84. trim(szData);
  85.  
  86. if(comment(szData))
  87. continue;
  88.  
  89. parse(szData, szSteamid, charsmax(szSteamid));
  90. TrieSetCell(g_tBannedSteamids, szSteamid, 1);
  91. }
  92.  
  93. fclose(iFile);
  94.  
  95. log_amx("Ctban list loaded succesfully");
  96. }
  97.  
  98. else
  99. log_amx("^"%s^" not found", g_szFile);
  100.  
  101. }
  102.  
  103.  
  104. public client_authorized(id)
  105. {
  106. new szSteamid[35], szName[35];
  107. get_user_authid(id, szSteamid, charsmax(szSteamid));
  108. get_user_name(id, szName, charsmax(szName));
  109.  
  110. if(TrieKeyExists(g_tBannedSteamids, szSteamid))
  111. {
  112. if(get_pcvar_num(g_pCvars[ConnectMsg]))
  113. client_print(0, print_chat, "* %L", LANG_PLAYER, "FOUND", szName);
  114.  
  115. SetCtBan(id);
  116. }
  117.  
  118. else
  119. {
  120. if(get_pcvar_num(g_pCvars[ConnectMsg]))
  121. client_print(0, print_chat, "* %L", LANG_PLAYER, "NOT_FOUND", szName);
  122.  
  123. ClearCtBan(id);
  124. }
  125. }
  126.  
  127.  
  128. public Cmd_CtBan(id, iLevel, iCid)
  129. {
  130. if(!cmd_access(id, iLevel, iCid, 3))
  131. return PLUGIN_HANDLED;
  132.  
  133. new szArg[35];
  134. read_argv(1, szArg, charsmax(szArg));
  135.  
  136. new iPlayer = cmd_target(id, szArg, CMDTARGET_OBEY_IMMUNITY);
  137.  
  138. if(iPlayer)
  139. {
  140. new szPlayerSteamid[35];
  141. get_user_authid(iPlayer, szPlayerSteamid, charsmax(szPlayerSteamid));
  142.  
  143. if(TrieKeyExists(g_tBannedSteamids, szPlayerSteamid))
  144. {
  145. console_print(id, "* %L", id, "ALREADY", szPlayerSteamid);
  146.  
  147. return PLUGIN_HANDLED;
  148. }
  149.  
  150. new szReason[64];
  151. read_argv(2, szReason, charsmax(szReason));
  152.  
  153. AddCtBan(id, iPlayer, szReason);
  154. }
  155.  
  156. return PLUGIN_HANDLED;
  157. }
  158.  
  159.  
  160. public Cmd_CtUnBan(id, iLevel, iCid)
  161. {
  162. if(!cmd_access(id, iLevel, iCid, 2))
  163. return PLUGIN_HANDLED;
  164.  
  165. new szArg[35];
  166. read_argv(1, szArg, charsmax(szArg));
  167.  
  168. new iPlayer = cmd_target(id, szArg, CMDTARGET_OBEY_IMMUNITY);
  169.  
  170. if(iPlayer)
  171. {
  172. new szSteamid[34];
  173. get_user_authid(iPlayer, szSteamid, charsmax(szSteamid));
  174.  
  175. if(!TrieKeyExists(g_tBannedSteamids, szSteamid))
  176. {
  177. console_print(id, "* %L", id, "NOT", szSteamid);
  178.  
  179. return PLUGIN_HANDLED;
  180. }
  181.  
  182. RemoveCtBan(id, iPlayer);
  183. }
  184.  
  185. return PLUGIN_HANDLED;
  186. }
  187.  
  188.  
  189. public Cmd_JoinTeam(id)
  190. {
  191. if(CheckCtBan(id))
  192. {
  193. new szArg[4];
  194. read_argv(1, szArg, charsmax(szArg));
  195.  
  196. new iTeam = str_to_num(szArg) - 1;
  197. if(iTeam == TEAM_CT || iTeam == TEAM_RANDOM)
  198. {
  199. engclient_cmd(id, "chooseteam");
  200.  
  201. return PLUGIN_HANDLED;
  202. }
  203. }
  204.  
  205. return PLUGIN_CONTINUE;
  206. }
  207.  
  208.  
  209. public CmdEnterReason(id)
  210. {
  211. new iPlayer = g_iSelectedPlayer[id];
  212.  
  213. if(!iPlayer)
  214. return PLUGIN_HANDLED;
  215.  
  216. new szReason[64];
  217. read_argv(1, szReason, charsmax(szReason));
  218.  
  219. if(!szReason[0])
  220. {
  221. client_print(id, print_chat, "* %L", id, "ENTER_REASON");
  222.  
  223. set_user_messagemode(id);
  224. }
  225.  
  226. else
  227. {
  228. AddCtBan(id, iPlayer, szReason);
  229. g_iSelectedPlayer[id] = 0;
  230. }
  231.  
  232. return PLUGIN_HANDLED;
  233. }
  234.  
  235. public Menu_TeamSelect(id, key)
  236. {
  237. if(CheckCtBan(id) && key == TEAM_CT || key == TEAM_RANDOM)
  238. {
  239. engclient_cmd(id, "chooseteam");
  240.  
  241. return PLUGIN_HANDLED;
  242. }
  243.  
  244. return PLUGIN_CONTINUE;
  245. }
  246.  
  247.  
  248. public Menu_Main(id, iLevel)
  249. {
  250. if(!(get_user_flags(id) & iLevel))
  251. return PLUGIN_HANDLED;
  252.  
  253. new iPlayers[32], iNum, iPlayer;
  254. get_players(iPlayers, iNum, "ch");
  255.  
  256. if(!iNum)
  257. console_print(id, "%L", id, "NO_PLAYERS");
  258.  
  259. else
  260. {
  261. new szData[64], iMenu;
  262. formatex(szData, charsmax(szData), "\y%L", id, "MAINMENU_TITLE");
  263. iMenu = menu_create(szData, "HandleMainMenu");
  264.  
  265. for(new szSteamid[32], i = 0; i < iNum; i++)
  266. {
  267. iPlayer = iPlayers[i];
  268.  
  269. if(iPlayer == id)
  270. continue;
  271.  
  272. get_user_authid(iPlayer, szSteamid, charsmax(szSteamid));
  273. get_user_name(iPlayer, szData, charsmax(szData));
  274.  
  275. format(szData, charsmax(szData), "%s (%L)", szData, id, TrieKeyExists(g_tBannedSteamids, szSteamid) ? "BANNED" : "NOT_BANNED");
  276.  
  277. menu_additem(iMenu, szData, szSteamid);
  278. }
  279.  
  280. menu_display(id, iMenu);
  281. }
  282.  
  283. return PLUGIN_HANDLED;
  284. }
  285.  
  286.  
  287. public HandleMainMenu(id, iMenu, iItem)
  288. {
  289. if(iItem != MENU_EXIT)
  290. {
  291. new iAccess, szSteamid[32], iCallback;
  292. menu_item_getinfo(iMenu, iItem, iAccess, szSteamid, charsmax(szSteamid), _, _, iCallback);
  293.  
  294. new iPlayer = find_player("ch", szSteamid);
  295.  
  296. if(iPlayer)
  297. {
  298. if(!TrieKeyExists(g_tBannedSteamids, szSteamid))
  299. {
  300. g_iSelectedPlayer[id] = iPlayer;
  301.  
  302. set_user_messagemode(id);
  303. }
  304.  
  305. else
  306. RemoveCtBan(id, iPlayer);
  307. }
  308.  
  309. else
  310. client_print(id, print_chat, "* %L", id, "CL_NOT_FOUND");
  311. }
  312.  
  313. menu_destroy(iMenu);
  314.  
  315. return PLUGIN_HANDLED;
  316. }
  317.  
  318.  
  319. AddCtBan(id, iPlayer, const szReason[])
  320. {
  321. if(cs_get_user_team(id) == CS_TEAM_CT)
  322. {
  323. if(get_pcvar_num(g_pCvars[KillBanned]))
  324. user_kill(iPlayer);
  325.  
  326. cs_set_user_team(iPlayer, CS_TEAM_T);
  327. }
  328.  
  329. new szBuffer[128], szSteamid[34], szPlayerName[32];
  330. get_user_authid(iPlayer, szSteamid, charsmax(szSteamid));
  331. get_user_name(iPlayer, szPlayerName, charsmax(szPlayerName));
  332.  
  333. formatex(szBuffer, charsmax(szBuffer), "%s %s ^"%s^"", szSteamid, szPlayerName, szReason);
  334. write_file(g_szFile, szBuffer);
  335.  
  336. TrieSetCell(g_tBannedSteamids, szSteamid, 1);
  337. SetCtBan(iPlayer);
  338.  
  339. new szAdminName[32], szAdminSteamid[34];
  340. get_user_name(id, szAdminName, charsmax(szAdminName));
  341. get_user_authid(id, szAdminSteamid, charsmax(szAdminSteamid));
  342.  
  343. client_print(id, print_chat, "* %L", id, "ADDED", szSteamid);
  344. show_activity_key("ACTIVITY_ADDED_CASE1", "ACTIVITY_ADDED_CASE2", szAdminName, szPlayerName);
  345. log_amx("%L", LANG_SERVER, "LOG_ADDED", szAdminName, szAdminSteamid, szPlayerName, szSteamid);
  346. }
  347.  
  348.  
  349. RemoveCtBan(id, iPlayer)
  350. {
  351. new szData[128], Line;
  352. new iFile = fopen(g_szFile, "rt");
  353.  
  354. if(!iFile)
  355. return;
  356.  
  357. new szSteamid[34], szTempSteamid[34];
  358. get_user_authid(iPlayer, szSteamid, charsmax(szSteamid));
  359.  
  360. while(!feof(iFile))
  361. {
  362. fgets(iFile, szData, charsmax(szData));
  363. trim(szData);
  364.  
  365. Line++;
  366.  
  367. if(comment(szData))
  368. continue;
  369.  
  370. parse(szData, szTempSteamid, charsmax(szTempSteamid));
  371.  
  372. if(equali(szSteamid, szTempSteamid))
  373. {
  374. format(szData, charsmax(szData), "; %s", szData);
  375. write_file(g_szFile, szData, Line - 1);
  376.  
  377. break;
  378. }
  379. }
  380.  
  381.  
  382. TrieDeleteKey(g_tBannedSteamids, szSteamid);
  383. ClearCtBan(id);
  384.  
  385. new szAdminName[32], szPlayerName[32], szAdminSteamid[32];
  386. get_user_name(id, szAdminName, charsmax(szAdminName));
  387. get_user_name(iPlayer, szPlayerName, charsmax(szPlayerName));
  388. get_user_authid(id, szAdminSteamid, charsmax(szAdminSteamid));
  389.  
  390. console_print(id, "* %L", id, "REMOVED", szSteamid);
  391. show_activity_key("ACTIVITY_REMOVED_CASE1", "ACTIVITY_REMOVED_CASE2", szAdminName, szPlayerName);
  392. log_amx("%L", LANG_SERVER, "LOG_REMOVED", szAdminName, szAdminSteamid, szPlayerName, szSteamid);
  393. }
  394.  
  395.  
  396. bool: comment(const szData[])
  397. return (!szData[0] || szData[0] == ';' || (szData[0] == '/' && szData[1] == '/')) ? true : false;


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!

_________________
Ha elnyerte valamelyik témában a hozzászólásom a tetszésedet melyet olvastál, akkor egy egyszerű gombnyomással kifejezheted, hogy tetszett.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: [JailBreak] CT Ban
HozzászólásElküldve: 2013.07.09. 20:46 
Offline
Őstag

Csatlakozott: 2013.01.27. 17:48
Hozzászólások: 1247
Megköszönt másnak: 6 alkalommal
Megköszönték neki: 61 alkalommal
Hú de jó sokat írtál. S annak a fele fölösleges.
SMA Forráskód: [ Mindet kijelol ]
  1. ColorChat(id,)
<-itt az idje.
SMA Forráskód: [ Mindet kijelol ]
  1. ColorChat(id, RED,)
<- színét is megadtuk,rgb Red green blue
SMA Forráskód: [ Mindet kijelol ]
  1. ColorChat(id, RED, "asd^4asd")
<- adtunk neki egy szöveget is ami így néz ki: asdasd
Nem kell semmilyen extra hozzá, csak ez:
SMA Forráskód: [ Mindet kijelol ]
  1. #include <colorchat>

Nem tudom, hogy mit nem értessz ezen.
adok egy példát:
SMA Forráskód: [ Mindet kijelol ]
  1. /* Script generated by Pawn Studio */
  2.  
  3. #include <amxmodx>
  4. #include <amxmisc>
  5. #include <colorchat>
  6.  
  7. #define PLUGIN "New Plugin"
  8. #define AUTHOR "Unknown"
  9. #define VERSION "1.0"
  10.  
  11. public plugin_init()
  12. {
  13. register_plugin(PLUGIN, VERSION, AUTHOR)
  14. register_clcmd("say /asd","asd") //megadjuk a parancsot!
  15. }
  16. public asd(id)
  17. {
  18. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd")
  19. }

_________________
banned user


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: [JailBreak] CT Ban
HozzászólásElküldve: 2013.07.09. 20:53 
Offline
Felfüggesztve
Avatar

Csatlakozott: 2013.06.09. 18:47
Hozzászólások: 2004
Megköszönt másnak: 1 alkalommal
Megköszönték neki: 220 alkalommal
Tehát akkor nem kell semmi extra, csak illesszem be ezt:
SMA Forráskód: [ Mindet kijelol ]
  1. {
  2. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd")
  3. }
a plugnba?(Persze más kiírással)

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;

_________________
Ha elnyerte valamelyik témában a hozzászólásom a tetszésedet melyet olvastál, akkor egy egyszerű gombnyomással kifejezheted, hogy tetszett.


A hozzászólást 1 alkalommal szerkesztették, utoljára Anonymous1337 2013.07.09. 21:00-kor.

Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: [JailBreak] CT Ban
HozzászólásElküldve: 2013.07.09. 20:54 
Offline
Őstag

Csatlakozott: 2013.01.27. 17:48
Hozzászólások: 1247
Megköszönt másnak: 6 alkalommal
Megköszönték neki: 61 alkalommal
Anonymous1337 írta:
JoGoBeLLa írta:
Hú de jó sokat írtál. S annak a fele fölösleges.
SMA Forráskód: [ Mindet kijelol ]
  1. ColorChat(id,)
<-itt az idje.
SMA Forráskód: [ Mindet kijelol ]
  1. ColorChat(id, RED,)
<- színét is megadtuk,rgb Red green blue
SMA Forráskód: [ Mindet kijelol ]
  1. ColorChat(id, RED, "asd^4asd")
<- adtunk neki egy szöveget is ami így néz ki: asdasd
Nem kell semmilyen extra hozzá, csak ez:
SMA Forráskód: [ Mindet kijelol ]
  1. #include <colorchat>

Nem tudom, hogy mit nem értessz ezen.
adok egy példát:
SMA Forráskód: [ Mindet kijelol ]
  1. /* Script generated by Pawn Studio */
  2.  
  3. #include <amxmodx>
  4. #include <amxmisc>
  5. #include <colorchat>
  6.  
  7. #define PLUGIN "New Plugin"
  8. #define AUTHOR "Unknown"
  9. #define VERSION "1.0"
  10.  
  11. public plugin_init()
  12. {
  13. register_plugin(PLUGIN, VERSION, AUTHOR)
  14. register_clcmd("say /asd","asd") //megadjuk a parancsot!
  15. }
  16. public asd(id)
  17. {
  18. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd")
  19. }


Tehát akkor nem kell semmi extra, csak illesszem be ezt:
SMA Forráskód: [ Mindet kijelol ]
  1. {
  2. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd")
  3. }
a plugnba?(Persze más kiírással)

UI.: Ment a köszönöm!

persze, csak nem mind1, hogy hova. fontos, hogy jó helyre, jó public-ba írd!

_________________
banned user


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: [JailBreak] CT Ban
HozzászólásElküldve: 2013.07.09. 21:02 
Offline
Felfüggesztve
Avatar

Csatlakozott: 2013.06.09. 18:47
Hozzászólások: 2004
Megköszönt másnak: 1 alkalommal
Megköszönték neki: 220 alkalommal
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 ]
  1. ColorChat(id,)
<-itt az idje.
SMA Forráskód: [ Mindet kijelol ]
  1. ColorChat(id, RED,)
<- színét is megadtuk,rgb Red green blue
SMA Forráskód: [ Mindet kijelol ]
  1. ColorChat(id, RED, "asd^4asd")
<- adtunk neki egy szöveget is ami így néz ki: asdasd
Nem kell semmilyen extra hozzá, csak ez:
SMA Forráskód: [ Mindet kijelol ]
  1. #include <colorchat>

Nem tudom, hogy mit nem értessz ezen.
adok egy példát:
SMA Forráskód: [ Mindet kijelol ]
  1. /* Script generated by Pawn Studio */
  2.  
  3. #include <amxmodx>
  4. #include <amxmisc>
  5. #include <colorchat>
  6.  
  7. #define PLUGIN "New Plugin"
  8. #define AUTHOR "Unknown"
  9. #define VERSION "1.0"
  10.  
  11. public plugin_init()
  12. {
  13. register_plugin(PLUGIN, VERSION, AUTHOR)
  14. register_clcmd("say /asd","asd") //megadjuk a parancsot!
  15. }
  16. public asd(id)
  17. {
  18. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd")
  19. }


Tehát akkor nem kell semmi extra, csak illesszem be ezt:
SMA Forráskód: [ Mindet kijelol ]
  1. {
  2. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd")
  3. }
a plugnba?(Persze más kiírással)

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?

_________________
Ha elnyerte valamelyik témában a hozzászólásom a tetszésedet melyet olvastál, akkor egy egyszerű gombnyomással kifejezheted, hogy tetszett.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: [JailBreak] CT Ban
HozzászólásElküldve: 2013.07.09. 21:05 
Offline
Őstag

Csatlakozott: 2013.01.27. 17:48
Hozzászólások: 1247
Megköszönt másnak: 6 alkalommal
Megköszönték neki: 61 alkalommal
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.

_________________
banned user


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: [JailBreak] CT Ban
HozzászólásElküldve: 2013.07.09. 21:55 
Offline
Jómunkásember
Avatar

Csatlakozott: 2012.09.23. 20:29
Hozzászólások: 325
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 87 alkalommal
SMA Forráskód: [ Mindet kijelol ]
  1. /* Plugin generated by AMXX-Studio */
  2.  
  3. #include <amxmodx>
  4. #include <amxmisc>
  5. #include <colorchat> //Itt beíllesztjük azt a függvénykönyvtárat amelyik engedélyezi azt hogy színes üzeneteket készítsünk.
  6.  
  7. #define PLUGIN "Plugin"
  8. #define VERSION "1.0"
  9. #define AUTHOR "Vinnice"
  10.  
  11.  
  12. public plugin_init() {
  13. register_plugin(PLUGIN, VERSION, AUTHOR)
  14.  
  15. register_clcmd("say /asd","fuggveny") //Itt regisztráltuk a parancsot ami ez esetben /asd.
  16. }
  17. public fuggveny(id) //Ez akkor fut le ha a játékos beírta azt hogy /asd.
  18. {
  19. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd") //itt kiírjuk neki szinesen a szöveget.
  20. }
  21. /*
  22. ez itt rossz!*/
  23. {
  24. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd") //Mivel errort dob és nincs függvényben , egyszóval ez csak van
  25. }


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: [JailBreak] CT Ban
HozzászólásElküldve: 2013.07.09. 22:10 
Offline
Jómunkásember
Avatar

Csatlakozott: 2012.11.14. 15:20
Hozzászólások: 449
Megköszönt másnak: 80 alkalommal
Megköszönték neki: 19 alkalommal
Vinnice írta:
SMA Forráskód: [ Mindet kijelol ]
  1. public fuggveny(id) //Ez akkor fut le ha a játékos beírta azt hogy /asd.
  2. {
  3. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd") //itt kiírjuk neki szinesen a szöveget.
  4. }
  5. /*
  6. ez itt rossz!*/
  7. {
  8. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd") //Mivel errort dob és nincs függvényben , egyszóval ez csak van
  9. }


mi a különbség a 2 között?? én egy eltérést nem látok o.O

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: [JailBreak] CT Ban
HozzászólásElküldve: 2013.07.09. 22:16 
Offline
Jómunkásember
Avatar

Csatlakozott: 2012.09.23. 20:29
Hozzászólások: 325
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 87 alkalommal
Gatshow írta:
Vinnice írta:
SMA Forráskód: [ Mindet kijelol ]
  1. public fuggveny(id) //Ez akkor fut le ha a játékos beírta azt hogy /asd.
  2. {
  3. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd") //itt kiírjuk neki szinesen a szöveget.
  4. }
  5. /*
  6. ez itt rossz!*/
  7. {
  8. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd") //Mivel errort dob és nincs függvényben , egyszóval ez csak van
  9. }


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)


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: [JailBreak] CT Ban
HozzászólásElküldve: 2013.07.09. 22:16 
Offline
Őstag

Csatlakozott: 2013.01.27. 17:48
Hozzászólások: 1247
Megköszönt másnak: 6 alkalommal
Megköszönték neki: 61 alkalommal
Gatshow írta:
Vinnice írta:
SMA Forráskód: [ Mindet kijelol ]
  1. public fuggveny(id) //Ez akkor fut le ha a játékos beírta azt hogy /asd.
  2. {
  3. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd") //itt kiírjuk neki szinesen a szöveget.
  4. }
  5. /*
  6. ez itt rossz!*/
  7. {
  8. ColorChat(id, RED, "[SERVER] - ^4 Te most beírtad azt, hogy ^3/asd") //Mivel errort dob és nincs függvényben , egyszóval ez csak van
  9. }


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.

_________________
banned user


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 15 hozzászólás ]  Oldal 1 2 Következő


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 151 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole