SHOW:
|
|
- or go back to the newest paste.
1 | /* | |
2 | - | * Admin Script |
2 | + | * Admin Script 2.0 |
3 | * © by Dominik 'MARV' Lisy | |
4 | * Prosím, neprepisovať autora. | |
5 | - | * Command.pwn(QCMD) by Denis QWER Granec |
5 | + | * Royal State Command System |
6 | * © by Denis 'QWER' Granec & Martin 'MartinHavo' Haviar | |
7 | * Pastebin: http://pastebin.com/u/DominikMarvLisy | |
8 | * Download: http://pawno.cz/file...9-admin-script/ | |
9 | * Autora TD Chatu som nenašiel, pretože som ten script našiel v PC a nebol uvedený Autor. | |
10 | */ | |
11 | //=Include====================================================================== | |
12 | #include <a_samp> | |
13 | #include <dini> | |
14 | #include <dudb> | |
15 | #include <sscanf2> | |
16 | #define INFINITY "-2147483648" | |
17 | #include "Command.pwn" | |
18 | #pragma unused ret_memcpy | |
19 | //=Forward====================================================================== | |
20 | forward SAM(msg[]); | |
21 | forward ACH(); | |
22 | forward Zmazat(playerid); | |
23 | forward bzbrane(playerid); | |
24 | forward PlayerName(playerid); | |
25 | //=Define======================================================================= | |
26 | #define Admin 0x33CCFFAA | |
27 | #define Player 0xFF9900AA | |
28 | #define SCM SendClientMessage | |
29 | #define SCMTA SendClientMessageToAll | |
30 | #define FILTERSCRIPT | |
31 | //=New========================================================================== | |
32 | new jespektovany[MAX_PLAYERS]; | |
33 | new jezamrazeny[MAX_PLAYERS]; | |
34 | new adminmod[MAX_PLAYERS]; | |
35 | new varovanie[MAX_PLAYERS]; | |
36 | new AdminLevel[MAX_PLAYERS]; | |
37 | new Text:atd[15]; | |
38 | new tdchat[15][128]; | |
39 | //=FilterScriptInt============================================================== | |
40 | public OnFilterScriptInit() | |
41 | { | |
42 | for(new line; line<15; line++) | |
43 | { | |
44 | format(tdchat[line], 128, " "); | |
45 | } | |
46 | atd[2] = TextDrawCreate(365, 374.000000, tdchat[2]); | |
47 | atd[3] = TextDrawCreate(365, 383.000000, tdchat[3]); | |
48 | atd[4] = TextDrawCreate(365, 392.000000, tdchat[4]); | |
49 | atd[5] = TextDrawCreate(365, 410.000000, tdchat[5]); | |
50 | atd[6] = TextDrawCreate(365, 410.000000, tdchat[6]); | |
51 | atd[7] = TextDrawCreate(365, 419.000000, tdchat[7]); | |
52 | atd[8] = TextDrawCreate(365, 428.000000, tdchat[8]); | |
53 | atd[9] = TextDrawCreate(365, 436.000000, tdchat[9]); | |
54 | for(new line; line<15; line++) | |
55 | { | |
56 | TextDrawLetterSize(atd[line], 0.230000, 1.100000); | |
57 | TextDrawSetShadow(atd[line], 0); | |
58 | TextDrawTextSize(atd[line], 640, 480); | |
59 | TextDrawBoxColor(atd[line], 0x000000FF); | |
60 | TextDrawSetProportional(atd[line], 1); | |
61 | TextDrawFont(atd[line], 1); | |
62 | TextDrawSetOutline(atd[line], 1); | |
63 | TextDrawShowForAll(atd[line]); | |
64 | } | |
65 | - | strcat(str, "/aprikazy - Zobrazia sa vám admin príkazy\n{004500}/ban [ID] - Zabanuje hráča\n{004500/kick [ID] - Vyhodi hráča\n/zamrazit [ID] - Zamrazý hráča\n/odmrazit [ID] - Odmrazý hráča\n/varovat [ID] - Varuje hráča\n/zabi [ID] - Zabije hráča\n/gotam [ID] . Portne vás ku hráčovy\n/gosem [ID] - Portnete ku sebe hráča\n"); |
65 | + | for(new line; line<15; line++) |
66 | - | strcat(str, "/nesmrtelny - Budete nesmrteľný\n/smrtelny - Budete smrteľný\n/ach [TEXT] - Admin Chat\n/zmenitskin [ID] - Zmeníte si skin\n/spektovat [ID] - Budete spektovat hráča\n/nespektovat - Prestanete spektovať hráča\n/admin [TEXT] -Zvýrazneny chat\n/ann [TEXT] - Text v strede obrazovky\n/dann [TEXT] - Text na boku obrazovky"); |
66 | + | |
67 | - | ShowPlayerDialog(playerid, 100, DIALOG_STYLE_LIST,"{FF3333}Admin Prikazy",str,"Koniec",""); |
67 | + | TextDrawLetterSize(atd[line], 0.230000, 1.100000); |
68 | TextDrawSetShadow(atd[line], 0); | |
69 | TextDrawTextSize(atd[line], 640, 480); | |
70 | TextDrawBoxColor(atd[line], 0x000000FF); | |
71 | TextDrawSetProportional(atd[line], 1); | |
72 | TextDrawFont(atd[line], 1); | |
73 | TextDrawSetOutline(atd[line], 1); | |
74 | TextDrawShowForAll(atd[line]); | |
75 | } | |
76 | return 1; | |
77 | } | |
78 | //=FilterScriptExit============================================================= | |
79 | public OnFilterScriptExit() | |
80 | { | |
81 | ||
82 | for(new line; line<15; line++) | |
83 | { | |
84 | TextDrawDestroy(atd[line]); | |
85 | } | |
86 | return 1; | |
87 | } | |
88 | //=Hráčske Píikazy============================================================== | |
89 | QCMD:sprava() | |
90 | { | |
91 | new string[128]; | |
92 | new pname[128]; | |
93 | GetPlayerName(playerid, pname, sizeof(pname)); | |
94 | if(!strlen(params)) | |
95 | { | |
96 | SCM(playerid, Player, "Použi: /sprava [SPRAVA]"); | |
97 | return 1; | |
98 | } | |
99 | format(string, sizeof(string), "[SPRAVA] %s(%d): %s", pname, playerid, params); | |
100 | SCMTA(Player, string); | |
101 | return 1; | |
102 | } | |
103 | //------------------------------------------------------------------------------ | |
104 | QCMD:credits() | |
105 | { | |
106 | ShowPlayerDialog(playerid,106,DIALOG_STYLE_MSGBOX,"{FF3333}Credits"," * Admin Script\n * © by Dominik 'MARV' Lisy\n * Skype: marv.samp \n * PasteBin: www.pastebin.com/u/DominikMarvLisy ","Koniec",""); | |
107 | return 1; | |
108 | } | |
109 | //------------------------------------------------------------------------------ | |
110 | QCMD:prikazy() | |
111 | { | |
112 | ShowPlayerDialog(playerid,101,DIALOG_STYLE_MSGBOX,"{FF3333}Prikazy","/sprava - Odošle viditelnu správu.\n/credits - Zobrazý tvorcu Admin Scriptu.","Koniec",""); | |
113 | return 1; | |
114 | } | |
115 | //=Admin Príkazy================================================================ | |
116 | QCMD:aprikazy() | |
117 | { | |
118 | if(AdminLevel[playerid] < 1) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 1"); | |
119 | { | |
120 | new str[500]; | |
121 | strcat(str, "\n{008F00}LVL1\t\t\tLVL2\t\t\tLVL3\n\n/zamrazit [ID]\t\t/dajzdravie [ID]\t/nesmrtelnost\n/odmrazit [ID]\t\t/dajvestu [ID]\t\t/smrtelnost\n/spektovat [ID]\t\t/gotam [ID]\t\t"); | |
122 | strcat(str, "/tdchat [TEXT]\n/nespektovat [ID]\t/gosem [ID]\t\t/tdchatzmaz\n/zabi [ID]\t\t/varovat [ID]\n/admin [TEXT]\\t\t/kick [ID] [DOVOD]\n/dann [TEXT]\t\t/ban [ID] [DOVOD]\n/ann [TEXT]\t\t/zmazatchat\n/ach [TEXT]\n\t\t\t\t\t\t\t\t{FA0000}© Marv"); | |
123 | ShowPlayerDialog(playerid, 100, DIALOG_STYLE_MSGBOX,"{FF3333}Admin Prikazy",str,"Koniec",""); | |
124 | return 1; | |
125 | } | |
126 | } | |
127 | //------------------------------------------------------------------------------ | |
128 | QCMD:zamrazit() | |
129 | { | |
130 | new string[128]; | |
131 | new ID; | |
132 | new pname[128]; | |
133 | GetPlayerName(ID, pname, sizeof(pname)); | |
134 | if(AdminLevel[playerid] < 1) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 1"); | |
135 | { | |
136 | if(sscanf(params, "i", ID)) | |
137 | { | |
138 | SCM(playerid, Admin, "Použi: /zamrazit [ID]"); | |
139 | return 1; | |
140 | } | |
141 | if(!IsPlayerConnected(ID)) | |
142 | { | |
143 | SCM(playerid, Admin, "Hráč neexistuje."); | |
144 | return 1; | |
145 | } | |
146 | if(jezamrazeny[ID] ==1 ) | |
147 | { | |
148 | SCM(playerid, Admin, "Tento hrač už je zamrazený!"); | |
149 | return 1; | |
150 | } | |
151 | jezamrazeny[ID] =1; | |
152 | format(string, sizeof(string), "[ZAMRAZIL] %s(%d)", pname, ID); | |
153 | SCMTA(Admin, string); | |
154 | SCM(playerid, Admin, "[ZAMRAZIL] Hráč už je zamrazený!"); | |
155 | TogglePlayerControllable(ID, 0); | |
156 | return 1; | |
157 | } | |
158 | } | |
159 | //------------------------------------------------------------------------------ | |
160 | QCMD:odmrazit() | |
161 | { | |
162 | new string[128]; | |
163 | new pname[128]; | |
164 | new ID; | |
165 | GetPlayerName(ID, pname, sizeof(pname)); | |
166 | if(AdminLevel[playerid] < 1) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 1"); | |
167 | { | |
168 | if(sscanf(params, "i", ID)) | |
169 | { | |
170 | SCM(playerid, Admin, "Použi: /odmrazit [ID]"); | |
171 | return 1; | |
172 | } | |
173 | if(!IsPlayerConnected(ID)) | |
174 | { | |
175 | SCM(playerid, Admin, "Hráč neexistuje."); | |
176 | return 1; | |
177 | } | |
178 | format(string, sizeof(string), "[ODMRAZIL] %s(%d)", pname, ID); | |
179 | SCMTA(Admin, string); | |
180 | SCM(playerid, Admin, "[ODMRAZIL] Hráč už je odmrazený!"); | |
181 | TogglePlayerControllable(ID, 1); | |
182 | return 1; | |
183 | } | |
184 | } | |
185 | //------------------------------------------------------------------------------ | |
186 | QCMD:zabi() | |
187 | { | |
188 | new string[128]; | |
189 | new pname[128]; | |
190 | new ID; | |
191 | GetPlayerName(ID, pname, sizeof(pname)); | |
192 | if(AdminLevel[playerid] < 1) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 1"); | |
193 | { | |
194 | if(sscanf(params, "i", ID)) | |
195 | { | |
196 | SCM(playerid, Admin, "Použi: /zabi [ID]"); | |
197 | return 1; | |
198 | } | |
199 | if(!IsPlayerConnected(ID)) | |
200 | { | |
201 | SCM(playerid, Admin, "Hráč neexistuje."); | |
202 | return 1; | |
203 | } | |
204 | format(string, sizeof(string), "[ZABIL] %s(%d)", pname, ID); | |
205 | SCMTA(Admin, string); | |
206 | SCM(playerid, Admin, "[ZABI] Hráč už je zabitý!"); | |
207 | SetPlayerHealth(ID, 0); | |
208 | return 1; | |
209 | } | |
210 | } | |
211 | //------------------------------------------------------------------------------ | |
212 | QCMD:admin() | |
213 | { | |
214 | new string[128]; | |
215 | if(AdminLevel[playerid] < 1) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 1"); | |
216 | { | |
217 | if(!strlen(params)) | |
218 | { | |
219 | SCM(playerid, Admin, "Použi: /admin [SPRAVA]"); | |
220 | return 1; | |
221 | } | |
222 | format(string, sizeof(string), "[ADMIN] %s", params); | |
223 | SCMTA(Admin, string); | |
224 | return 1; | |
225 | } | |
226 | } | |
227 | //------------------------------------------------------------------------------ | |
228 | QCMD:ach() | |
229 | { | |
230 | new string[128]; | |
231 | new pname[128]; | |
232 | GetPlayerName(playerid, pname, sizeof(pname)); | |
233 | if(AdminLevel[playerid] < 1) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 1"); | |
234 | { | |
235 | if(!strlen(params)) | |
236 | { | |
237 | SCM(playerid, Admin, "Použi: /ach [SPRAVA]"); | |
238 | return 1; | |
239 | } | |
240 | format(string, sizeof(string), "[ACH] %s(%d): %s", pname, playerid, params); | |
241 | SAM(string); | |
242 | return 1; | |
243 | } | |
244 | } | |
245 | //------------------------------------------------------------------------------ | |
246 | QCMD:spektovat() | |
247 | { | |
248 | new ID; | |
249 | new pname[128]; | |
250 | GetPlayerName(ID, pname, sizeof(pname)); | |
251 | if(AdminLevel[playerid] < 1) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 1"); | |
252 | { | |
253 | if(sscanf(params, "i", ID)) | |
254 | { | |
255 | SCM(playerid, Admin, "Použi: /spektovat [ID]"); | |
256 | return 1; | |
257 | } | |
258 | if(!IsPlayerConnected(ID)) | |
259 | { | |
260 | SCM(playerid, Admin, "Hráč neexistuje."); | |
261 | return 1; | |
262 | } | |
263 | TogglePlayerSpectating(playerid, 1); | |
264 | PlayerSpectatePlayer(playerid, ID); | |
265 | SetPlayerInterior(playerid, ID); | |
266 | SetPlayerInterior(playerid, GetPlayerInterior(ID)); | |
267 | jespektovany[playerid] =1; | |
268 | return 1; | |
269 | } | |
270 | } | |
271 | //------------------------------------------------------------------------------ | |
272 | QCMD:nespektovat() | |
273 | { | |
274 | if(AdminLevel[playerid] < 1) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 1"); | |
275 | { | |
276 | if(jespektovany[playerid] == 1) | |
277 | { | |
278 | TogglePlayerSpectating(playerid, 0); | |
279 | jespektovany[playerid] =0; | |
280 | return 1; | |
281 | } | |
282 | return 1; | |
283 | } | |
284 | } | |
285 | //------------------------------------------------------------------------------ | |
286 | QCMD:ann() | |
287 | { | |
288 | new string[128]; | |
289 | if(AdminLevel[playerid] < 1) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 1"); | |
290 | { | |
291 | if(!strlen(params)) | |
292 | { | |
293 | SCM(playerid, Admin, "Použi: /ann [SPRAVA]"); | |
294 | return 1; | |
295 | } | |
296 | format(string, sizeof(string), "%s", params); | |
297 | GameTextForAll(string, 5000, 1); | |
298 | return 1; | |
299 | } | |
300 | } | |
301 | //------------------------------------------------------------------------------ | |
302 | QCMD:dann() | |
303 | { | |
304 | new string[128]; | |
305 | if(AdminLevel[playerid] < 1) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 1"); | |
306 | { | |
307 | if(!strlen(params)) | |
308 | { | |
309 | SCM(playerid, Admin, "Použi: /dann [SPRAVA]"); | |
310 | return 1; | |
311 | } | |
312 | format(string, sizeof(string), "%s", params); | |
313 | - | new aname[128]; |
313 | + | |
314 | return 1; | |
315 | - | GetPlayerName(playerid, aname, sizeof(aname)); |
315 | + | |
316 | - | if(AdminLevel[playerid] < 2) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 2"); |
316 | + | |
317 | //-LVL 2------------------------------------------------------------------------ | |
318 | - | if(sscanf(params, "i", ID)) |
318 | + | QCMD:dajzdravie() |
319 | { | |
320 | - | SCM(playerid, Admin, "Použi: /ban [ID]"); |
320 | + | |
321 | - | return 1; |
321 | + | |
322 | new id = strval(params[0]); | |
323 | new Kolko = strval(params[1]); | |
324 | if(AdminLevel[playerid] < 2) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 2"); | |
325 | { | |
326 | if(sscanf(params, "i", ID)) | |
327 | { | |
328 | - | format(string, sizeof(string), "[BAN] %s(%d)", pname, ID); |
328 | + | SCM(playerid, Admin, "Použi: /dajzdravie [ID] [0-100]"); |
329 | return 1; | |
330 | - | format(string, sizeof(string), "Od: %s", aname); |
330 | + | |
331 | if(!IsPlayerConnected(ID)) | |
332 | { | |
333 | SCM(playerid, Admin, "Hráč neexistuje."); | |
334 | return 1; | |
335 | } | |
336 | if(Kolko < 1 || Kolko > 100) | |
337 | { | |
338 | SCM(playerid, Admin, "Rozmedzie je 1-100"); | |
339 | return 1; | |
340 | } | |
341 | format(string, sizeof(string),"Administrátor %s nastavil hráčovy %s zdravie na %d",PlayerName(playerid),PlayerName(id),Kolko); | |
342 | SCMTA(Admin,string); | |
343 | SetPlayerHealth(id,Kolko); | |
344 | return 1; | |
345 | } | |
346 | - | SCM(playerid, Admin, "Použi: /kick [ID]"); |
346 | + | |
347 | //------------------------------------------------------------------------------ | |
348 | QCMD:dajvestu() | |
349 | { | |
350 | new string[128]; | |
351 | new ID; | |
352 | new id = strval(params[0]); | |
353 | new Kolko = strval(params[1]); | |
354 | - | format(string, sizeof(string), "[KICK] %s(%d)", pname, ID); |
354 | + | |
355 | { | |
356 | if(sscanf(params, "i", ID)) | |
357 | { | |
358 | SCM(playerid, Admin, "Použi: /setvesta [ID] [0-100]"); | |
359 | return 1; | |
360 | } | |
361 | if(!IsPlayerConnected(ID)) | |
362 | { | |
363 | SCM(playerid, Admin, "Hráč neexistuje."); | |
364 | return 1; | |
365 | } | |
366 | if(Kolko < 1 || Kolko > 100) | |
367 | { | |
368 | SCM(playerid, Admin, "Rozmedzie je 1-100"); | |
369 | return 1; | |
370 | } | |
371 | format(string, sizeof(string),"Administrátor %s nastavil hráčovy %s vestu na %d",PlayerName(playerid),PlayerName(id),Kolko); | |
372 | SCMTA(Admin,string); | |
373 | SetPlayerArmour(id,Kolko); | |
374 | return 1; | |
375 | } | |
376 | } | |
377 | //------------------------------------------------------------------------------ | |
378 | QCMD:varovat() | |
379 | { | |
380 | new ID; | |
381 | new pname[128]; | |
382 | GetPlayerName(ID, pname, sizeof(pname)); | |
383 | new string[128]; | |
384 | if(AdminLevel[playerid] < 2) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 2"); | |
385 | { | |
386 | if(sscanf(params, "i", ID)) | |
387 | { | |
388 | SCM(playerid, Admin, "Použi: /varovat [ID]"); | |
389 | return 1; | |
390 | } | |
391 | if(!IsPlayerConnected(ID)) | |
392 | { | |
393 | SCM(playerid, Admin, "Hráč neexistuje."); | |
394 | return 1; | |
395 | } | |
396 | if(varovanie[playerid] == 2) | |
397 | { | |
398 | format(string, sizeof(string), "[AUTO KICK] %s(%d) Príliš veľa varovaní.", pname, ID); | |
399 | SCMTA(Admin, string); | |
400 | SCM(ID, Admin, "Bol ste vyhodený za príliš vela varovaní. Dodržujte prosím pravidlá!"); | |
401 | Kick(ID); | |
402 | return 1; | |
403 | } | |
404 | if(varovanie[playerid] == 1) | |
405 | { | |
406 | format(string, sizeof(string), "[VAROVANIE] %s(%d) ból varovaný. Treba dodržiavať pravidlá.", pname, ID); | |
407 | SCMTA(Admin, string); | |
408 | SCM(ID, Admin, "Boli ste varovaní, aby ste dodržiavali pravidlá! Prosím, dodržiavajte pravidlá! To je vaše druhé varovanie. Ešte jedno a budete vyhodený"); | |
409 | varovanie[playerid] +=1; | |
410 | return 1; | |
411 | } | |
412 | if(varovanie[playerid] == 0) | |
413 | { | |
414 | format(string, sizeof(string), "[VAROVANIE] %s(%d) bol varovaný správca dodržiavať pravidlá.", pname, ID); | |
415 | SCMTA(Admin, string); | |
416 | SCM(ID, Admin, "Boli ste varovaní, aby ste dodržiavali pravidlá! Prosím, dodržiavajte pravidlá! To je vaše prvé varovanie. Ešte dve a budete vyhodený"); | |
417 | varovanie[playerid] +=1; | |
418 | return 1; | |
419 | } | |
420 | } | |
421 | return 1; | |
422 | } | |
423 | //------------------------------------------------------------------------------ | |
424 | QCMD:ban() | |
425 | { | |
426 | new string[128]; | |
427 | new ID; | |
428 | new id = strval(params[0]); | |
429 | new preco = strval(params[1]); | |
430 | if(AdminLevel[playerid] < 2) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 2"); | |
431 | { | |
432 | if(sscanf(params, "i", ID)) | |
433 | { | |
434 | SCM(playerid, Admin, "Použi: /ban [ID] [DOVOD]"); | |
435 | return 1; | |
436 | } | |
437 | if(!IsPlayerConnected(ID)) | |
438 | { | |
439 | SCM(playerid, Admin, "Hráč neexistuje."); | |
440 | return 1; | |
441 | } | |
442 | format(string, sizeof(string), "Administrátor %s zabanoval hráča %s [Dôvod: %s]",PlayerName(playerid),PlayerName(id),preco); | |
443 | SCMTA(Admin, string); | |
444 | BanEx(ID, string); | |
445 | return 1; | |
446 | } | |
447 | } | |
448 | //------------------------------------------------------------------------------ | |
449 | QCMD:kick() | |
450 | { | |
451 | new string[128]; | |
452 | new ID; | |
453 | - | new level = strval(params[1]); |
453 | + | |
454 | - | if(!IsPlayerAdmin(playerid)) return SCM(playerid,Admin,"{FF0000}[ADMIN] {FFFFFF}Nemáš oprávnenie na tento príkaz"); |
454 | + | new preco = strval(params[1]); |
455 | - | else if(!IsPlayerConnected(id)) return SCM(playerid,Admin,"{FF0000}[ADMIN] {FFFFFF}Hráč neexistuje"); |
455 | + | |
456 | - | else if(!params[0] || !params[1]) return SCM(playerid,Admin,"{FF0000}[ADMIN] {FFFFFF}/nastavlvl [ID] [0-3]"); |
456 | + | |
457 | - | new str[128]; |
457 | + | |
458 | - | format(str,128,"{D70000}[ADMIN] Hlavní Administrator %s nastavil hráčovy %s AdminLevel %d",PlayerName(playerid),PlayerName(id),level); |
458 | + | |
459 | - | SCMTA(Admin,str); |
459 | + | SCM(playerid, Admin, "Použi: /kick [ID] [DOVOD]"); |
460 | - | AdminLevel[id] = level; |
460 | + | |
461 | } | |
462 | if(!IsPlayerConnected(ID)) | |
463 | { | |
464 | SCM(playerid, Admin, "Hráč neexistuje."); | |
465 | return 1; | |
466 | } | |
467 | format(string, sizeof(string), "Administrátor %s vyhodil hráča %s [Dôvod: %s]",PlayerName(playerid),PlayerName(id),preco); | |
468 | SCMTA(Admin, string); | |
469 | Kick(ID); | |
470 | return 1; | |
471 | } | |
472 | } | |
473 | //------------------------------------------------------------------------------ | |
474 | QCMD:gotam() | |
475 | { | |
476 | new string[128]; | |
477 | new ID; | |
478 | new pname[128]; | |
479 | GetPlayerName(ID, pname, sizeof(pname)); | |
480 | if(AdminLevel[playerid] < 2) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 2"); | |
481 | { | |
482 | if(sscanf(params, "i", ID)) | |
483 | { | |
484 | SCM(playerid, Admin, "Použi: /gotam [ID]"); | |
485 | return 1; | |
486 | } | |
487 | if(!IsPlayerConnected(ID)) | |
488 | { | |
489 | SCM(playerid, Admin, "Hráč neexistuje."); | |
490 | return 1; | |
491 | } | |
492 | new Float:x, Float:y, Float:z; | |
493 | GetPlayerPos(ID, x, y, z); | |
494 | SetPlayerPos(playerid, x, y, z); | |
495 | SetPlayerPos(playerid,x+1,y,z); | |
496 | SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(ID)); | |
497 | SetPlayerInterior(playerid,GetPlayerInterior(ID)); | |
498 | format(string, sizeof(string), "[GO TAM] Bol si teleportovany ku %s(%d)", pname, ID); | |
499 | SCM(playerid, Admin, string); | |
500 | return 1; | |
501 | } | |
502 | } | |
503 | //------------------------------------------------------------------------------ | |
504 | QCMD:gosem() | |
505 | { | |
506 | new string[128]; | |
507 | new ID; | |
508 | new pname[128]; | |
509 | GetPlayerName(ID, pname, sizeof(pname)); | |
510 | if(AdminLevel[playerid] < 2) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 2"); | |
511 | { | |
512 | if(sscanf(params, "i", ID)) | |
513 | { | |
514 | SCM(playerid, Admin, "Použi: /gosem [ID]"); | |
515 | return 1; | |
516 | } | |
517 | if(!IsPlayerConnected(ID)) | |
518 | { | |
519 | SCM(playerid, Admin, "Hráč neexistuje."); | |
520 | return 1; | |
521 | } | |
522 | new Float:x, Float:y, Float:z; | |
523 | GetPlayerPos(playerid, x, y, z); | |
524 | ||
525 | SetPlayerPos(ID, x+1, y, z); | |
526 | SetPlayerVirtualWorld(ID, GetPlayerVirtualWorld(playerid)); | |
527 | SetPlayerInterior(ID, GetPlayerInterior(playerid)); | |
528 | format(string, sizeof(string), "[GO SEM] Portol si %s(%d) pri seba.", pname, ID); | |
529 | SCM(playerid, Admin, string); | |
530 | return 1; | |
531 | } | |
532 | } | |
533 | //------------------------------------------------------------------------------ | |
534 | QCMD:zmazatchat() | |
535 | { | |
536 | new string[128]; | |
537 | new ID; | |
538 | new pname[128]; | |
539 | GetPlayerName(ID, pname, sizeof(pname)); | |
540 | if(AdminLevel[playerid] < 2) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 2"); | |
541 | { | |
542 | Zmazat(playerid); | |
543 | format(string, sizeof(string), "[CHAT] Administrator %s premazal chat.",PlayerName(playerid)); | |
544 | SCMTA(Admin,string); | |
545 | } | |
546 | return 1; | |
547 | } | |
548 | ||
549 | //-LVL 3------------------------------------------------------------------------ | |
550 | QCMD:nesmrtelnost() | |
551 | { | |
552 | if(AdminLevel[playerid] < 3) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 3"); | |
553 | { | |
554 | adminmod[playerid] =1; | |
555 | SetPlayerHealth(playerid, 9999.99); | |
556 | SetPlayerArmour(playerid, 9999.99); | |
557 | GivePlayerWeapon(playerid, 38, 9999999); | |
558 | SCM(playerid, Admin, "[GODMODE] Odteraz si nesmrteľný."); | |
559 | return 1; | |
560 | } | |
561 | } | |
562 | //------------------------------------------------------------------------------ | |
563 | QCMD:smrtelnost() | |
564 | { | |
565 | if(AdminLevel[playerid] < 3) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 3"); | |
566 | { | |
567 | if(adminmod[playerid] == 1) | |
568 | { | |
569 | SetPlayerHealth(playerid, 100); | |
570 | SetPlayerArmour(playerid, 100); | |
571 | ResetPlayerWeapons(playerid); | |
572 | SCM(playerid, Admin, "[GODMODE] Odteraz si smrteľný."); | |
573 | return 1; | |
574 | } | |
575 | return 1; | |
576 | } | |
577 | } | |
578 | //------------------------------------------------------------------------------ | |
579 | QCMD:tdchat() | |
580 | { | |
581 | new string[128]; | |
582 | new pname[24]; | |
583 | if(AdminLevel[playerid] < 3) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 3"); | |
584 | { | |
585 | if(!strlen(params)) | |
586 | { | |
587 | SCM(playerid, Admin, "Použi: /tdchat [SPRAVA]"); | |
588 | return 1; | |
589 | } | |
590 | GetPlayerName(playerid,pname,sizeof(pname)); | |
591 | format(string,sizeof(string),"Admin %s: %s",pname,params); | |
592 | SendXMessage(playerid,string); | |
593 | return 1; | |
594 | } | |
595 | } | |
596 | //------------------------------------------------------------------------------ | |
597 | QCMD:tdchatzmaz() | |
598 | { | |
599 | if(AdminLevel[playerid] < 3) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Nemáš AdminLevel 3"); | |
600 | { | |
601 | SendXMessage(playerid," "); | |
602 | SendXMessage(playerid," "); | |
603 | SendXMessage(playerid," "); | |
604 | SendXMessage(playerid," "); | |
605 | SendXMessage(playerid," "); | |
606 | SendXMessage(playerid," "); | |
607 | SendXMessage(playerid," "); | |
608 | SendXMessage(playerid," "); | |
609 | SendXMessage(playerid," "); | |
610 | return 1; | |
611 | } | |
612 | } | |
613 | //-RCON------------------------------------------------------------------------ | |
614 | QCMD:nastavlvl() | |
615 | { | |
616 | new string[128]; | |
617 | new ID; | |
618 | new id = strval(params[0]); | |
619 | new Kolko = strval(params[1]); | |
620 | if(!IsPlayerAdmin(playerid)) return SCM(playerid,Admin,"{FF0000}[ Admin ] {FFFFFF}Niesi prihláseny cez RCON."); | |
621 | { | |
622 | if(sscanf(params, "i", ID)) | |
623 | { | |
624 | SCM(playerid, Admin, "Použi: /nastavlvl [ID] [0-5]"); | |
625 | return 1; | |
626 | } | |
627 | if(!IsPlayerConnected(ID)) | |
628 | { | |
629 | SCM(playerid, Admin, "Hráč neexistuje."); | |
630 | return 1; | |
631 | } | |
632 | if(Kolko < 1 || Kolko > 5) | |
633 | { | |
634 | SCM(playerid, Admin, "Rozmedzie je 1-5"); | |
635 | return 1; | |
636 | } | |
637 | format(string, sizeof(string),"Hlavní Administrator %s nastavil hráčovy %s Admin Level na %d",PlayerName(playerid),PlayerName(id),Kolko); | |
638 | SCMTA(Admin,string); | |
639 | AdminLevel[id] = Kolko; | |
640 | dUserSetINT(PlayerName(playerid)).("AdminLevel",AdminLevel[playerid]); | |
641 | return 1; | |
642 | } | |
643 | } | |
644 | //=Public======================================================================= | |
645 | public OnPlayerConnect(playerid) | |
646 | { | |
647 | AdminLevel[playerid] = (playerid,dUserINT(PlayerName(playerid)).("AdminLevel")-AdminLevel[playerid]); | |
648 | for(new line; line<15; line++) | |
649 | { | |
650 | TextDrawShowForPlayer(playerid, atd[line]); | |
651 | } | |
652 | return 1; | |
653 | } | |
654 | //------------------------------------------------------------------------------ | |
655 | public OnPlayerDisconnect(playerid, reason) | |
656 | { | |
657 | dUserSetINT(PlayerName(playerid)).("AdminLevel",AdminLevel[playerid]); | |
658 | return 1; | |
659 | } | |
660 | public SAM(msg[]) | |
661 | { | |
662 | for(new i=0; i<MAX_PLAYERS; i++) | |
663 | { | |
664 | if(IsPlayerConnected(i)) | |
665 | { | |
666 | if(IsPlayerAdmin(i)) | |
667 | { | |
668 | SCM(i, Admin, msg); | |
669 | } | |
670 | } | |
671 | } | |
672 | } | |
673 | //------------------------------------------------------------------------------ | |
674 | public bzbrane(playerid) | |
675 | { | |
676 | if(GetPlayerWeapon(playerid) == 16 || | |
677 | GetPlayerWeapon(playerid) == 17 || | |
678 | GetPlayerWeapon(playerid) == 35 || | |
679 | GetPlayerWeapon(playerid) == 36 || | |
680 | GetPlayerWeapon(playerid) == 37 || | |
681 | GetPlayerWeapon(playerid) == 38 || | |
682 | GetPlayerWeapon(playerid) == 39 || | |
683 | GetPlayerWeapon(playerid) == 40 || | |
684 | GetPlayerWeapon(playerid) == 18) | |
685 | { | |
686 | return 1; | |
687 | } | |
688 | return 0; | |
689 | } | |
690 | //------------------------------------------------------------------------------ | |
691 | public ACH() | |
692 | { | |
693 | for(new i=0; i<MAX_PLAYERS; i++) | |
694 | { | |
695 | new string[128]; | |
696 | new opname[22]; | |
697 | GetPlayerName(i, opname, 22); | |
698 | if(IsPlayerConnected(i)) | |
699 | { | |
700 | if(bzbrane(i)) | |
701 | { | |
702 | if(!IsPlayerAdmin(i)) | |
703 | { | |
704 | format(string, sizeof(string), "[A CHEAT] %s(%d) bol automaticky zabanovany Anti Cheatom.", opname, i); | |
705 | SCMTA(Admin, string); | |
706 | BanEx(i, "[A CHEAT] Zakazane zbrane."); | |
707 | return 1; | |
708 | } | |
709 | } | |
710 | new SpecialAction = GetPlayerSpecialAction(i); | |
711 | if(SpecialAction == SPECIAL_ACTION_USEJETPACK) | |
712 | { | |
713 | if(!IsPlayerAdmin(i)) | |
714 | { | |
715 | format(string, sizeof(string), "[A CHEAT] %s(%d) bol automaticky zabanovany Anti Cheatom.", opname, i); | |
716 | SCMTA(Admin, string); | |
717 | BanEx(i, "[A CHEAT] Jetpack."); | |
718 | return 1; | |
719 | } | |
720 | } | |
721 | if(GetPlayerMoney(i) > 500000000) | |
722 | { | |
723 | format(string, sizeof(string), "[A CHEAT] %s(%d) bol automaticky zabanovany Anti Cheatom.", opname, i); | |
724 | BanEx(i, "[A CHEAT] Money Hack."); | |
725 | return 1; | |
726 | } | |
727 | } | |
728 | } | |
729 | return 1; | |
730 | } | |
731 | //------------------------------------------------------------------------------ | |
732 | public Zmazat(playerid) | |
733 | { | |
734 | SCMTA(Admin," "); | |
735 | SCMTA(Admin," "); | |
736 | SCMTA(Admin," "); | |
737 | SCMTA(Admin," "); | |
738 | SCMTA(Admin," "); | |
739 | SCMTA(Admin," "); | |
740 | SCMTA(Admin," "); | |
741 | SCMTA(Admin," "); | |
742 | SCMTA(Admin," "); | |
743 | SCMTA(Admin," "); | |
744 | SCMTA(Admin," "); | |
745 | SCMTA(Admin," "); | |
746 | SCMTA(Admin," "); | |
747 | SCMTA(Admin," "); | |
748 | SCMTA(Admin," "); | |
749 | return 1; | |
750 | } | |
751 | //=Stock======================================================================== | |
752 | stock PlayerName(playerid) | |
753 | { | |
754 | new name[MAX_PLAYER_NAME]; | |
755 | GetPlayerName(playerid,name,MAX_PLAYER_NAME); | |
756 | return name; | |
757 | } | |
758 | //------------------------------------------------------------------------------ | |
759 | stock SendXMessage(playerid, const text[]) | |
760 | { | |
761 | for(new line; line < 15; line++) | |
762 | { | |
763 | TextDrawShowForPlayer(playerid, atd[line]); | |
764 | } | |
765 | for(new line; line < 15; line++) | |
766 | { | |
767 | TextDrawHideForAll(atd[line]); | |
768 | if(line < 14) | |
769 | { | |
770 | tdchat[line] = tdchat[line+1]; | |
771 | TextDrawSetString(atd[line], tdchat[line]); | |
772 | } | |
773 | } | |
774 | format(tdchat[9], 128, "%s",text); | |
775 | TextDrawSetString(atd[9], tdchat[9]); | |
776 | for(new line; line < 15; line++) | |
777 | { | |
778 | TextDrawShowForAll(atd[line]); | |
779 | } | |
780 | return 1; | |
781 | } |