/* Script generated by Pawn Studio */
#include <amxmodx>
#include <ColorChat>
new const tagi[][] = {
{ ADMIN_IMMUNITY, "[Head Admin] " },
{ ADMIN_KICK, "[Admin] " },
{ ADMIN_LEVEL_G, "[VIP] " },
{ ADMIN_LEVEL_H, "[Premium] " }
}
public plugin_init() {
register_plugin("TAG", "1.0", "byCZEK");
register_clcmd("say", "handle_say");
}
public handle_say(id) {
new msg[256]; read_args(msg, 191);
new team = get_user_team(id);
new nick[33]; get_user_name(id, nick, 32);
new bool: b = false;
remove_quotes(msg);
for(new i = 0; i < sizeof(tagi); i++) {
if(get_user_flags(id) & tagi[i][0]) {
ColorChat(0, !team ? GREY : team ? RED : BLUE, "%s%s^x04%s: ^x01%s", tagi[i][1], is_user_alive(id) ? "" : "* DEAD * ", nick, msg);
b = true;
break;
}
}
return b ? PLUGIN_HANDLED : PLUGIN_CONTINUE;
}
Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Guest Message by DevFuse
skate66
Rejestracja: 28.10.2010Aktualnie: Nieaktywny
Poza forum Ostatnio: 25.09.2011 12:36





Statystyki
- Grupa: Użytkownik
- Całość postów: 10
- Odwiedzin: 2 414
- Tytuł: Początkujący
- Wiek: 33 lat
- Urodziny: Styczeń 17, 1992
-
Płeć
Mężczyzna
-
Lokalizacja
Bytom
Kontakt
-1
Nowy
Narzędzia użytkownika
Znajomi
skate66 nie posiada znajomych
#273838 Tag przed nickiem
Napisane przez byCZUS
w 25.07.2011 18:31
Krótsza ver. sprawdź sobie:
#274025 Kolejka do TT
Napisane przez byCZUS
w 26.07.2011 10:05
#274201 Admin Tag
Napisane przez byCZUS
w 26.07.2011 16:17
Możesz uzyskać krótszy kod zamieniając:
na
Zauważyłem również, że zrobiłeś "byka" kopiując tekst, no chyba tak nie powinno być ponieważ w case 7 i 8 masz Tagi[6] dwukrotnie.
switch(FlagaGracza[id])
{
case 1: {
ColorChat(0, kolor, "%s[%s] ^x04%s : ^x01%s", is_user_alive(id) ? "" : info[1], Tagi[0], nick, message)
}
case 2: {
ColorChat(0, kolor, "%s[%s] ^x04%s : ^x01%s", is_user_alive(id) ? "" : info[1], Tagi[1], nick, message)
}
case 3: {
ColorChat(0, kolor, "%s[%s] ^x04%s : ^x01%s", is_user_alive(id) ? "" : info[1], Tagi[2], nick, message)
}
case 4: {
ColorChat(0, kolor, "%s[%s] ^x04%s : ^x01%s", is_user_alive(id) ? "" : info[1], Tagi[3], nick, message)
}
case 5: {
ColorChat(0, kolor, "%s[%s] ^x04%s : ^x01%s", is_user_alive(id) ? "" : info[1], Tagi[4], nick, message)
}
case 6: {
ColorChat(0, kolor, "%s[%s] ^x04%s : ^x01%s", is_user_alive(id) ? "" : info[1], Tagi[5], nick, message)
}
case 7: {
ColorChat(0, kolor, "%s[%s] ^x04%s : ^x01%s", is_user_alive(id) ? "" : info[1], Tagi[6], nick, message)
}
case 8: {
ColorChat(0, kolor, "%s[%s] ^x04%s : ^x01%s", is_user_alive(id) ? "" : info[1], Tagi[6], nick, message)
}
}
na
ColorChat(0, kolor, "%s[%s] ^x04%s : ^x01%s", is_user_alive(id) ? "" : info[1], Tagi[FlagaGracza[id] - 1], nick, message)
Zauważyłem również, że zrobiłeś "byka" kopiując tekst, no chyba tak nie powinno być ponieważ w case 7 i 8 masz Tagi[6] dwukrotnie.
#274206 Tag przed nickiem
Napisane przez byCZUS
w 26.07.2011 16:25
Jeżeli chcesz by można było używać @, / itp użyj tego, u mnie w tamtej ver. nie było można z prostego powodu - nie sprawdzało czy coś takiego występuje.
/* Script generated by Pawn Studio */
#include <amxmodx>
#include <ColorChat>
new const tagi[][] = {
{ ADMIN_IMMUNITY, "[Head Admin] " },
{ ADMIN_KICK, "[Admin] " },
{ ADMIN_LEVEL_G, "[VIP] " },
{ ADMIN_LEVEL_H, "[Premium] " }
}
public plugin_init() {
register_plugin("TAG", "1.0", "byCZEK");
register_clcmd("say", "handle_say");
}
public handle_say(id) {
new msg[256]; read_args(msg, 191);
new team = get_user_team(id);
new nick[33]; get_user_name(id, nick, 32);
new bool: b = false;
remove_quotes(msg);
// Z kodu wyzej
if(msg[0] == '/' || msg[0] == '@' || msg[0] == '!' || equal(msg, ""))
return PLUGIN_CONTINUE;
for(new i = 0; i < sizeof(tagi); i++) {
if(get_user_flags(id) & tagi[i][0]) {
ColorChat(0, !team ? GREY : team ? RED : BLUE, "%s%s^x04%s: ^x01%s", tagi[i][1], is_user_alive(id) ? "" : "* DEAD * ", nick, msg);
b = true;
break;
}
}
return b ? PLUGIN_HANDLED : PLUGIN_CONTINUE;
}
#274210 Error w logach plugin muzyka w czasie zmianu mapy
Napisane przez byCZUS
w 26.07.2011 16:37
#215148 Przenoszenie lvl
Napisane przez byCZUS
w 12.02.2011 16:44
Napisałem plugin który przenosi lvl między dwoma klasami, na prośbę jednego z użytkowników.
Na sam początek trzeba sprawdzić czy mamy poprawny nativ, ponieważ został on naprawiony dopiero w najnowszej ver mod'a.
A więc tak odpalamy QTM_CodMod.sma i szukamy
Jeśli kod jest poprawny to powinien wyglądać tak:
Lecz jeśli taki nie jest zamieniamy >= na <=. Kompilujemy plugin i wgrywamy na ftp. Teraz przechodzimy do "głównej części programu". Wgrywamy plugin(załącznik) i można już sobie przenosić poziomy![:]](http://img.amxx.pl/public/style_emoticons/default/cwaniak.gif)
Sposób użycia pluginu: w consoli wpisujemy
Po tej czynności powinno nas przenieść na nową klasę. Jeśli nie wiesz jakie ID mają klasy specjalnie dodałem opcję sprawdzenia. Służy do tego funkcja
Na sam początek trzeba sprawdzić czy mamy poprawny nativ, ponieważ został on naprawiony dopiero w najnowszej ver mod'a.
A więc tak odpalamy QTM_CodMod.sma i szukamy
public PobierzNazweKlasy(klasa, Return[], len)
Jeśli kod jest poprawny to powinien wyglądać tak:
public PobierzNazweKlasy(klasa, Return[], len)
{
if(klasa <= ilosc_klas)
{
param_convert(2);
copy(Return, len, nazwy_klas[klasa]);
}
}
Lecz jeśli taki nie jest zamieniamy >= na <=. Kompilujemy plugin i wgrywamy na ftp. Teraz przechodzimy do "głównej części programu". Wgrywamy plugin(załącznik) i można już sobie przenosić poziomy
![:]](http://img.amxx.pl/public/style_emoticons/default/cwaniak.gif)
Sposób użycia pluginu: w consoli wpisujemy
cod_przenies <nick> <id starej> <id nowej>
Po tej czynności powinno nas przenieść na nową klasę. Jeśli nie wiesz jakie ID mają klasy specjalnie dodałem opcję sprawdzenia. Służy do tego funkcja
lista_klasTo tyle myślę że się przyda
![:]](http://img.amxx.pl/public/style_emoticons/default/cwaniak.gif)
Załączone pliki
-
cod_przenoszenie.sma 1,57 KB 487 Ilość pobrań
cod_przenoszenie.amxx
-
cod_przenoszenie.amxx 2,89 KB 150 Ilość pobrań
#174090 [QTM COD:MW Mod] Sklep
Napisane przez byCZUS
w 25.09.2010 12:12
Dzisiaj pokażę jak zrobić sklep w osobnym pluginie. Na samym początku pobieramy plik .inc i wrzucamy do amxmodx/scripting/include. W nim zawarte są używane nativy.
Otwieramy nasz Call Of Duty:
pod
Na samym dole kodu umieszczamy
To tyle z modyfikacji Call Of Duty. Czas zająć się głównym pluginem (sklepem). Pokażę tutaj mój mały sklepik
Plugin sklepu również znajduje się w załączniku.
Teraz kompilujemy nowy COD z nativami i wgrywamy wraz z sklepem do amxmodx/plugins/
Otwieramy nasz Call Of Duty:
pod
public plugin_init() { // zawartość }umieszczamy
public plugin_natives() { register_library("codzik"); register_native("cod_add_exp", "native_cod_add_exp", 1); // Dodawanie expa. register_native("cod_give_ritem", "native_cod_give_ritem", 1); // Losowy przedmiot. }
Na samym dole kodu umieszczamy
public native_cod_add_exp(id, ile) { doswiadczenie_gracza[id] += ile; } public native_cod_give_ritem(id) { DajPrzedmiot(id, random_num(1, sizeof nazwy_przedmiotow-1)); }
To tyle z modyfikacji Call Of Duty. Czas zająć się głównym pluginem (sklepem). Pokażę tutaj mój mały sklepik
Spoiler
#include <amxmodx> #include <fakemeta_util> #include <cod> new const wycena[][] = { //"Napraw przedmiot [Naprawa]", "Flegamina [+50HP]", "Aspirina [+100HP]", "RedBull [Szybszy] [Lzejszy]", "EXP [+100]", "EXP [+300]", "EXP [+500]", "Lotto [Lotto]", "Losowy Item [Los]" }; new const cennik[] = { 3000, 5000, 2000, 5000, 10000, 15000, 2000, 3000 }; public plugin_init() { register_plugin("Call of Duty: MW Mod Shop", "0.1", "byQQ"); register_clcmd("say /buy", "menu_kupywania"); register_clcmd("say_team /buy", "menu_kupywania"); register_clcmd("say /sklep", "menu_kupywania"); register_clcmd("say_team /sklep", "menu_kupywania"); } public menu_kupywania(id) { new menu = menu_create("\ySklep [COD]", "handler_shop"); static menu_text[128]; for(new i = 0; i < sizeof(wycena); i++) { formatex(menu_text, 127, "\w%s \r%d$", wycena[i], cennik[i]); menu_additem(menu, menu_text); } menu_setprop(menu, MPROP_EXIT, MEXIT_ALL); menu_display(id, menu, 0); } public handler_shop(id, menu, item) { client_cmd(id, "spk QTM_CodMod/select"); if( item == MENU_EXIT ) { menu_destroy(menu); return PLUGIN_HANDLED; } item++; new kasa = get_pdata_int(id, 115) if(kasa < cennik[item-1]) { client_print(id, print_chat, "[COD:MW] Nie stac cie na to!"); return PLUGIN_HANDLED; } switch(item) { //case 1: { cod_set_dura(id, random_num(300, 390)); } case 1: { fm_set_user_health(id, pev(id, pev_health)+50); } case 2: { fm_set_user_health(id, pev(id, pev_health)+100); } case 3: { fm_set_user_gravity(id, 0.6); fm_set_user_maxspeed(id, fm_get_user_maxspeed(id) + 10.0); } case 4: { cod_add_exp(id, 100); } case 5: { cod_add_exp(id, 300); } case 6: { cod_add_exp(id, 500); } case 7: { client_print(id, print_chat, "[COD:MW] Kupiles kupon Totolotka"); client_print(id, print_chat, "[COD:MW] Trwa losowanie..."); new rand = random_num(0, 10); switch(rand) { case 0: { client_print(id, print_chat, "[COD:MW] Wygrales 10$ !"); fm_set_user_money(id, kasa + 10); } case 1: { client_print(id, print_chat, "[COD:MW] Niestety nic nie wygrales !"); } case 2: { client_print(id, print_chat, "[COD:MW] Wygrales 300$ !"); fm_set_user_money(id, kasa + 300); } case 3: { client_print(id, print_chat, "[COD:MW] Wygrales 5000$ !"); fm_set_user_money(id, kasa + 5000); } case 4..6: { client_print(id, print_chat, "[COD:MW] Niestety nic nie wygrales !"); } case 7: { client_print(id, print_chat, "[COD:MW] Przegrales Wszystko !"); fm_set_user_money(id, 0); } case 8: { client_print(id, print_chat, "[COD:MW] Wygrales 300 EXP !"); cod_add_exp(id, 300); } case 9: { client_print(id, print_chat, "[COD:MW] Wygrales 100 EXP !"); cod_add_exp(id, 100); } case 10: { client_print(id, print_chat, "[COD:MW] Niestety nic nie wygrales !"); } } } case 8: { cod_give_ritem(id); } } client_print(id, print_chat, "[COD:MW] Kupiles ^"%s^"", wycena[item-1]); fm_set_user_money(id, kasa - cennik[item-1]); menu_destroy(menu); return PLUGIN_HANDLED; } stock fm_set_user_money(index, money) { set_pdata_int(index, 115, money); message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("Money"), {0, 0, 0}, index); write_long(money); write_byte(1); message_end(); return 1; }
Plugin sklepu również znajduje się w załączniku.
Teraz kompilujemy nowy COD z nativami i wgrywamy wraz z sklepem do amxmodx/plugins/
Załączone pliki
-
cod.inc 153 bajtów 564 Ilość pobrań
-
COD_shop.sma 3,26 KB 610 Ilość pobrań
COD_shop.amxx
#217358 Dodawkowy exp
Napisane przez byCZUS
w 19.02.2011 19:07
Ostatnio dla siebie pisałem plugin do dawania exp'a za podłożenie paki, uratowanie hostów itp. Widzę że kilka osób go też poszukuje a więc go udostępniam.
Są 2 ver.
Ver 1:
Ver 2:
Są 2 ver.
Ver 1:
- podłożona paka
- rozbrojona paka
- uratowanie hosta
cod_plantxp "100" cod_defusxp "120" cod_rescuxp "30"
Ver 2:
- podłożona paka
- rozbrojona paka
cod_plantxp "100" cod_defusxp "120"
Załączone pliki
-
cod_xpv1.sma 1,14 KB 1697 Ilość pobrań
cod_xpv1.amxx
-
cod_xpv1.amxx 2,68 KB 385 Ilość pobrań
-
cod_xpv2.sma 724 bajtów 897 Ilość pobrań
cod_xpv2.amxx
-
cod_xpv2.amxx 1,88 KB 191 Ilość pobrań
- AMXX.pl: Support AMX Mod X i SourceMod
- → Przeglądanie profilu: Reputacja: skate66
- Regulamin