/* Plugin generated by AMXX-Studio By spiderman, requested by spiderman */ #include <amxmodx> #include <amxmisc> #include <csx> #define PLUGIN "Ranga" #define VERSION "1.0" #define AUTHOR "spiderman" #define TASK 666 #define FORUM "ANDRZEJ" public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) } public client_connect(id) { if(is_user_bot(id)) return new param[1] param[0] = id set_task(1.0,"rank",TASK+id,param,1,"b") } public client_disconnect(id) if(task_exists(TASK+id)) remove_task(TASK+id) public rank(param[]) { new id = param[0] static stats[8], body[8], rankpos, rankmax get_user_stats(id, stats, body) rankpos = get_user_stats(id, stats, body); rankmax = get_statsnum(); new ranga[30] if ( stats[0] >= 0 && stats[0] <= 29) format(ranga,29,"Lamus") else if ( stats[0] >= 30 && stats[0] <= 59) format(ranga,29,"Poczatkujacy") else if ( stats[0] >= 60 && stats[0] <= 119) format(ranga,29,"Wiesniak") else if ( stats[0] >= 120 && stats[0] <= 209) format(ranga,29,"Sierota") else if ( stats[0] >= 210 && stats[0] <= 324) format(ranga,29,"Kox") else if ( stats[0] >= 325 && stats[0] <= 499) format(ranga,29,"Cherlak") else if ( stats[0] >= 500 && stats[0] <= 729) format(ranga,29,"Kozak") else if ( stats[0] >= 730 && stats[0] <= 999) format(ranga,29,"Snajper") else if ( stats[0] >= 100 && stats[0] <= 1399) format(ranga,29,"Macho") else if ( stats[0] >= 1400 && stats[0] <= 1849) format(ranga,29,"Rambo") else if ( stats[0] >= 1850 && stats[0] <= 2299) format(ranga,29,"Terminator") else if ( stats[0] >= 2300 && stats[0] <= 2899) format(ranga,29,"Joker") else if ( stats[0] >= 2900 && stats[0] <= 3549) format(ranga,29,"Morfeusz") else if ( stats[0] >= 4200 && stats[0] <= 4999) format(ranga,29,"Wybraniec") else if ( stats[0] >= 5000 && stats[0] <= 5899) format(ranga,29,"Killer") else if ( stats[0] >= 5900 && stats[0] <= 6899) format(ranga,29,"Multi Killer") else if ( stats[0] >= 6900 && stats[0] <= 7999) format(ranga,29,"Owner") else if ( stats[0] >= 8000 && stats[0] <= 9299) format(ranga,29,"Cziter") else if ( stats[0] >= 9300 && stats[0] <= 1999) format(ranga,29,"Vip TeamKielce") else if ( stats[0] >= 1000 ) format(ranga,29,"GM TeamKielce") if(get_user_flags(id) & ADMIN_LEVEL_H){ set_hudmessage(0, 255, 0, 0.15, 0.55) ShowSyncHudMsg(id, CreateHudSyncObj(), "[Forum: %s]^n[Ranga: %s]^n[Rank: %d/%d]^n[VIP: TAK]",FORUM, ranga, rankpos, rankmax ) } if(!(get_user_flags(id) & ADMIN_LEVEL_H)){ set_hudmessage(0, 255, 0, 0.15, 0.55) ShowSyncHudMsg(id, CreateHudSyncObj(), "[Forum: %s]^n[Ranga: %s]^n[Rank: %d/%d]^n[VIP: NIE]",FORUM, ranga, rankpos, rankmax ) } }
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.
|
mikijak
Rejestracja: 09.08.2013Aktualnie: Nieaktywny
Poza forum Ostatnio: 07.03.2017 20:31





Statystyki
- Grupa: Użytkownik
- Całość postów: 27
- Odwiedzin: 1 975
- Tytuł: Życzliwy
- Wiek: 25 lat
- Urodziny: Grudzień 2, 1999
-
Imię
Mikołaj
-
Płeć
Mężczyzna
-
Lokalizacja
Sosnowiec
Kontakt
Narzędzia użytkownika
Ostatnio byli
#610693 Plugin HUD
Napisane przez Wielkie Jol
w 29.01.2014 15:53
#673098 [ROZWIĄZANE] Plugin pokazujący czas otworzenia cel.
Napisane przez XXL
w 02.12.2014 18:03
Definiujemy funkcję w jail api - get_roundtime_left() według wzoru
https://forums.allie...t=87020?t=87020
W jail_api zamieniamy funkcję Otworz_cele na tą
public OtworzCele() { for(new i=0; i<sizeof(g_Buttons); i++) { if(!pev_valid(g_Buttons[i]) || !g_Buttons[i]) continue; ExecuteHam(Ham_Use, g_Buttons[i], 0, 0, 2, 1.0); ColorChat(0, GREEN, "[CELE]^x01 Cele zostaly otwarte: %d", get_roundtime_left()); log_amx("Cele zostaly otwarte o %d", get_roundtime_left()) } }
Dlaczego jak tak robię to wywala mi error
Welcome to the AMX Mod X 1.8.1-300 Compiler. Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team jail_api_jailbreak.sma(2204) : error 017: undefined symbol "g_round_start" 1 Error. Could not locate output file jail_api_jailbreak.amxx (compile failed).
#293791 Nowy Wygląd HUD
Napisane przez Misiaczek ;c
w 08.09.2011 14:53

Jako iż mi się nudzi


nowy HUD wygląda tak:

Instrukcja dla 1.0.7 / 1.1.0
bf2rank.sma
Szukamy
#if defined KOLOROWY_SAY
new gmsgStatusText;
new gmsgScreenFade;
new gmsgScreenShake;
#else
new gmsgStatusText;
new gmsgScreenFade;
new gmsgScreenShake;
new gmsgSayText;
#endif
dodajemy pod tym to
new gHUD;
//Task
#define TASK_HUD 9897
aby wyglądało to tak
#if defined KOLOROWY_SAY
new gmsgStatusText;
new gmsgScreenFade;
new gmsgScreenShake;
#else
new gmsgStatusText;
new gmsgScreenFade;
new gmsgScreenShake;
new gmsgSayText;
#endif
new gHUD;
//Task
#define TASK_HUD 9897
następnie szukamy
#if defined KOLOROWY_SAY
gmsgStatusText = get_user_msgid("StatusText");
gmsgScreenFade = get_user_msgid("ScreenFade");
gmsgScreenShake = get_user_msgid("ScreenShake");
#else
gmsgStatusText = get_user_msgid("StatusText");
gmsgScreenFade = get_user_msgid("ScreenFade");
gmsgScreenShake = get_user_msgid("ScreenShake");
gmsgSayText = get_user_msgid("SayText");
#endif.
dodajemy pod tym to
gHUD = CreateHudSyncObj();
aby to wyglądało tak
#if defined KOLOROWY_SAY
gmsgStatusText = get_user_msgid("StatusText");
gmsgScreenFade = get_user_msgid("ScreenFade");
gmsgScreenShake = get_user_msgid("ScreenShake");
#else
gmsgStatusText = get_user_msgid("StatusText");
gmsgScreenFade = get_user_msgid("ScreenFade");
gmsgScreenShake = get_user_msgid("ScreenShake");
gmsgSayText = get_user_msgid("SayText");
#endif
gHUD = CreateHudSyncObj();
Szukamy dalej
RegisterHam(Ham_Spawn, "player", "Ham_Spawn_Post", 1); // cz bots won't hook here must RegisterHamFromEntity
RegisterHam(Ham_TakeDamage, "player", "Ham_TakeDamage_Pre");
Zastepujemy to tym
RegisterHam(Ham_Spawn, "player", "Ham_Spawn_Post", 1); // cz bots won't hook here must RegisterHamFromEntity
RegisterHam(Ham_TakeDamage, "player", "Ham_TakeDamage_Pre");
RegisterHam(Ham_Killed, "player", "Ham_Death_Player", 1);
Zapisujemy Plik

ham.inl
Szukamy
set_task(0.1, "DisplayHUD", id);
Zastepujemy to tym
if(!task_exists(id+TASK_HUD))
{
set_task(0.1, "DisplayHUD", id+TASK_HUD, _, _, "b");
}
Szukamy
SetHamParamFloat(4, damage);
return HAM_HANDLED;
}
Zastepujemy to tym
SetHamParamFloat(4, damage);
return HAM_HANDLED;
}
public Ham_Death_Player(id)
{
if(!is_user_connected(id))
return HAM_IGNORED;
RemoveHUD(id)
return HAM_IGNORED;
}
Zapisujemy Plik

forwards.inl
Szukamy
public client_putinserver(id)
{
// Find a czero bot to register Ham_Spawn
if ( !gCZBotRegisterHam && gPcvarBotQuota && get_pcvar_num(gPcvarBotQuota) > 0 && is_user_bot(id) )
{
// Delay for private data to initialize
set_task(0.1, "RegisterHam_CZBot", id);
}
g_imobile[id] = false;
newplayer[id] = true;
gStatsLoaded[id] = 0;
get_save_key(id);
if (!get_pcvar_num(gPcvarWymus))
{
client_cmd(id,"hud_centerid 0");
client_cmd(id,"cl_shadows 0");
set_task(20.0, "Announcement", id);
}
else
{
set_task(20.0, "Announcement", id);
}
}
Zamieniamy na to
public client_putinserver(id)
{
// Find a czero bot to register Ham_Spawn
if ( !gCZBotRegisterHam && gPcvarBotQuota && get_pcvar_num(gPcvarBotQuota) > 0 && is_user_bot(id) )
{
// Delay for private data to initialize
set_task(0.1, "RegisterHam_CZBot", id);
}
g_imobile[id] = false;
newplayer[id] = true;
gStatsLoaded[id] = 0;
get_save_key(id);
if (!get_pcvar_num(gPcvarWymus))
{
client_cmd(id,"hud_centerid 0");
client_cmd(id,"cl_shadows 0");
set_task(20.0, "Announcement", id);
}
else
{
set_task(20.0, "Announcement", id);
}
RemoveHUD(id);
}
Szukamy
public client_disconnect(id)
{
save_badges(id);
if ( id == highestrankid )
{
set_task(2.0, "ranking_officer_disconnect");
}
clear_stat_globals(id);
gStatsLoaded[id] = 0;
}
Zamieniamy na to
public client_disconnect(id)
{
save_badges(id);
if ( id == highestrankid )
{
set_task(2.0, "ranking_officer_disconnect");
}
clear_stat_globals(id);
gStatsLoaded[id] = 0;
RemoveHUD(id);
}
Zapisujemy Plik

hud.inl
Szukamy
public DisplayHUD(id)
{
if ( !get_pcvar_num(gPcvarBF2Active) || !get_pcvar_num(gPcvarStatusText) ) return;
if ( !is_user_alive(id) || is_user_bot(id) ) return;
static HUD[64];
if ( !gStatsLoaded[id] )
{
formatex(HUD, charsmax(HUD), "[BF2] Wczytuje Dane...");
}
else
{
new rank = g_PlayerRank[id];
new nextrank;
switch(rank)
{
case 16, 19, 20, 21: nextrank = 15;
case 17: nextrank = 7;
case 18: nextrank = 8;
default: nextrank = rank;
}
++nextrank;
new nextrankxp = floatround(gRankXP[nextrank] * get_pcvar_float(gPcvarXpMultiplier));
if ( !get_pcvar_num(gPcvarBadgesActive) )
{
formatex(HUD, charsmax(HUD), "[BF2] Zabicia: %d/%d Ranga: %s", totalkills[id], nextrankxp, gRankName[rank]);
}
else
{
formatex(HUD, charsmax(HUD), "[BF2] Zabicia: %d/%d Odznaki: %d Ranga: %s", totalkills[id], nextrankxp, numofbadges[id], gRankName[rank]);
}
}
message_begin(MSG_ONE_UNRELIABLE, gmsgStatusText, _, id);
write_byte(0);
write_string(HUD);
message_end();
}
Zamieniamy na to
public DisplayHUD(id)
{
id -= TASK_HUD;
if ( !get_pcvar_num(gPcvarBF2Active) || !get_pcvar_num(gPcvarStatusText) )
return;
if ( !is_user_alive(id) || is_user_bot(id) )
return;
if(!is_user_connected(id))
{
remove_task(id+TASK_HUD);
return;
}
set_hudmessage(227, 96, 8, 0.05, 0.15, 0, 0.0, 0.3, 0.0, 0.0, 3)
if ( !gStatsLoaded[id] )
{
ShowSyncHudMsg(id, gHUD,"[%s] Wczytuje Dane...", gPluginName)
}
else
{
new rank = g_PlayerRank[id];
new nextrank;
switch(rank)
{
case 16, 19, 20, 21: nextrank = 15;
case 17: nextrank = 7;
case 18: nextrank = 8;
default: nextrank = rank;
}
++nextrank;
new nextrankxp = floatround(gRankXP[nextrank] * get_pcvar_float(gPcvarXpMultiplier));
if ( !get_pcvar_num(gPcvarBadgesActive) )
{
ShowSyncHudMsg(id, gHUD,"[%s]^nRanga: %s^nZabicia: %d/%d", gPluginName, gRankName[rank], totalkills[id], nextrankxp)
}
else
{
ShowSyncHudMsg(id, gHUD,"[%s]^nRanga: %s^nIlosc Odznak: %d^nZabicia: %d/%d", gPluginName, gRankName[rank], numofbadges[id], totalkills[id], nextrankxp)
}
}
}
public RemoveHUD(id)
{
remove_task(id+TASK_HUD);
}
Zapisujemy Plik

i kompilujemy teraz sma bf2

Instrukcja dla 1.5.3 / 1.5.5
bf2rank.sma
Szukamy
//Message sending variables
new gmsgStatusText;
new gmsgScreenFade;
new gmsgScreenShake;
new gmsgSayText;
dodajemy pod tym to
new gHUD;
//Task
#define TASK_HUD 9897
aby wyglądało to tak
//Message sending variables
new gmsgStatusText;
new gmsgScreenFade;
new gmsgScreenShake;
new gmsgSayText;
new gHUD;
//Task
#define TASK_HUD 9897
następnie szukamy
//Message sending.
gmsgStatusText = get_user_msgid("StatusText");
gmsgScreenFade = get_user_msgid("ScreenFade");
gmsgScreenShake = get_user_msgid("ScreenShake");
gmsgSayText = get_user_msgid("SayText");
dodajemy pod tym to
gHUD = CreateHudSyncObj();
aby to wyglądało tak
//Message sending.
gmsgStatusText = get_user_msgid("StatusText");
gmsgScreenFade = get_user_msgid("ScreenFade");
gmsgScreenShake = get_user_msgid("ScreenShake");
gmsgSayText = get_user_msgid("SayText");
gHUD = CreateHudSyncObj();
Szukamy dalej
RegisterHam(Ham_Spawn, "player", "Ham_Spawn_Post", 1); // cz bots won't hook here must RegisterHamFromEntity
RegisterHam(Ham_TakeDamage, "player", "Ham_TakeDamage_Pre");
Zastepujemy to tym
RegisterHam(Ham_Spawn, "player", "Ham_Spawn_Post", 1); // cz bots won't hook here must RegisterHamFromEntity
RegisterHam(Ham_TakeDamage, "player", "Ham_TakeDamage_Pre");
RegisterHam(Ham_Killed, "player", "Ham_Death_Player", 1);
Zapisujemy Plik

ham.inl
Szukamy
set_task(0.1, "DisplayHUD", id);
Zastepujemy to tym
if(!task_exists(id+TASK_HUD))
{
set_task(0.1, "DisplayHUD", id+TASK_HUD, _, _, "b");
}
Szukamy
SetHamParamFloat(4, damage);
return HAM_HANDLED;
}
Zastepujemy to tym
SetHamParamFloat(4, damage);
return HAM_HANDLED;
}
public Ham_Death_Player(id)
{
if(!is_user_connected(id))
return HAM_IGNORED;
RemoveHUD(id)
return HAM_IGNORED;
}
Zapisujemy Plik

forwards.inl
Szukamy
public client_putinserver(id)
{
// Find a czero bot to register Ham_Spawn
if ( !gCZBotRegisterHam && gPcvarBotQuota && get_pcvar_num(gPcvarBotQuota) > 0 && is_user_bot(id) )
{
// Delay for private data to initialize
set_task(0.1, "RegisterHam_CZBot", id);
}
g_imobile[id] = false;
newplayer[id] = true;
gStatsLoaded[id] = 0;
get_save_key(id);
set_task(20.0, "Announcement", id);
}
Zamieniamy na to
public client_putinserver(id)
{
// Find a czero bot to register Ham_Spawn
if ( !gCZBotRegisterHam && gPcvarBotQuota && get_pcvar_num(gPcvarBotQuota) > 0 && is_user_bot(id) )
{
// Delay for private data to initialize
set_task(0.1, "RegisterHam_CZBot", id);
}
g_imobile[id] = false;
newplayer[id] = true;
gStatsLoaded[id] = 0;
get_save_key(id);
set_task(20.0, "Announcement", id);
RemoveHUD(id);
}
Szukamy
public client_disconnect(id)
{
save_badges(id);
if ( id == highestrankid )
{
set_task(2.0, "ranking_officer_disconnect");
}
clear_stat_globals(id);
gStatsLoaded[id] = 0;
}
Zamieniamy na to
public client_disconnect(id)
{
save_badges(id);
if ( id == highestrankid )
{
set_task(2.0, "ranking_officer_disconnect");
}
clear_stat_globals(id);
gStatsLoaded[id] = 0;
RemoveHUD(id);
}
Zapisujemy Plik

hud.inl
Szukamy
public DisplayHUD(id)
{
if ( !get_pcvar_num(gPcvarBF2Active) || !get_pcvar_num(gPcvarStatusText) ) return;
if ( !is_user_alive(id) || is_user_bot(id) ) return;
static HUD[64];
if ( !gStatsLoaded[id] )
{
formatex(HUD, charsmax(HUD), "[BF2] Wczytuje Dane...");
}
else
{
new rank = g_PlayerRank[id];
new nextrank;
switch(rank)
{
case 16, 19, 20: nextrank = 15;
case 17: nextrank = 7;
case 18: nextrank = 8;
default: nextrank = rank;
}
++nextrank;
new nextrankxp = floatround(gRankXP[nextrank] * get_pcvar_float(gPcvarXpMultiplier));
if ( !get_pcvar_num(gPcvarBadgesActive) )
{
formatex(HUD, charsmax(HUD), "[BF2] Zabicia: %d/%d Ranga: %s", totalkills[id], nextrankxp, gRankName[rank]);
}
else
{
formatex(HUD, charsmax(HUD), "[BF2] Zabicia: %d/%d Odznaki: %d Ranga: %s", totalkills[id], nextrankxp, numofbadges[id], gRankName[rank]);
}
}
message_begin(MSG_ONE_UNRELIABLE, gmsgStatusText, _, id);
write_byte(0);
write_string(HUD);
message_end();
}
Zamieniamy na to
public DisplayHUD(id)
{
id -= TASK_HUD;
if ( !get_pcvar_num(gPcvarBF2Active) || !get_pcvar_num(gPcvarStatusText) )
return;
if ( !is_user_alive(id) || is_user_bot(id) )
return;
if(!is_user_connected(id))
{
remove_task(id+TASK_HUD);
return;
}
set_hudmessage(227, 96, 8, 0.05, 0.15, 0, 0.0, 0.3, 0.0, 0.0, 3)
if ( !gStatsLoaded[id] )
{
ShowSyncHudMsg(id, gHUD,"[%s] Wczytuje Dane...", gPluginName)
}
else
{
new rank = g_PlayerRank[id];
new nextrank;
switch(rank)
{
case 16, 19, 20, 21: nextrank = 15;
case 17: nextrank = 7;
case 18: nextrank = 8;
default: nextrank = rank;
}
++nextrank;
new nextrankxp = floatround(gRankXP[nextrank] * get_pcvar_float(gPcvarXpMultiplier));
if ( !get_pcvar_num(gPcvarBadgesActive) )
{
ShowSyncHudMsg(id, gHUD,"[%s]^nRanga: %s^nZabicia: %d/%d", gPluginName, gRankName[rank], totalkills[id], nextrankxp)
}
else
{
ShowSyncHudMsg(id, gHUD,"[%s]^nRanga: %s^nIlosc Odznak: %d^nZabicia: %d/%d", gPluginName, gRankName[rank], numofbadges[id], totalkills[id], nextrankxp)
}
}
}
public RemoveHUD(id)
{
remove_task(id+TASK_HUD);
}
Zapisujemy Plik

i kompilujemy teraz sma bf2

#287283 [AMXX] Diagnozowanie problemów z pluginami
Napisane przez R3X
w 23.08.2011 22:54
Zdecydowana większość problemów z pluginami zostawia po sobie wyraźne ślady. Ich odnalezienie i interpretacja to połowa sukcesu w walce z niedziałającym dodatkiem.
1. Stan pluginu
Podstawową informacją o pluginie jest to czy się w ogóle załadował. Najłatwiej to sprawdzić wpisując w konsoli:
amx_showrcon amxx list
Efektem będzie listing podobny do tego:

Wszystkie pluginy mają status running, więc wszystkie zostały poprawnie załadowane. No i pozytywnie

Innym, równie dobrym statusem jest debug, to jest takie running, ale przygotowane na błędy
Mniej przyjemniej jest kiedy ilość przeczytanych pluginów nie zgadza się z ilością załadowanych. Częsty problemem jest status bad load

Oznacza to tyle, że w katalogu plugins/ nie ma wskazanego w plugins.ini pliku.
(W skrajnych przypadkach plik może istnieć, ale nie uprawniać serwera do odczytu. Ustawienie chmodu 644 załawiłoby sprawę.)
Inny kiepskim przypadkiem jest status error. Pojawia się wtedy, gdy przetwarzanie pluginu zostanie przerwane, np. za pomocą funkcji set_fail_state


jeśli komunikat jest niejasny, niezrozumiały jedynym wyjściem jest zajrzenie do źródła pluginu i sprawdzenie przyczyny
Rzut okiem i mam winowajcę
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) if(5 > 2) set_fail_state("nie chce mi sie"); }W tym przypadku to tylko głupi żart programisty, zwykle problemy są o wiele poważniejsze.
Jest jeszcze stan paused i stopped, są one związane z komendą amx_pausecfg w plikach konfiguracyjnych oraz funkcją (un)pause() w pluginach. W takim przypadku należy sprawdzić wszystkie wczytanie configi, zwykle są to: amxx.cfg z configs, server.cfg z cstrike/ i configs/maps/NAZWAMAPY_LUB_PREFIX.cfg oraz upewnić się, że żaden plugin nie zatrzymuje naszego niedziałającego dodatku.
2. Logi
Gdy mamy pewność, że plugin został załadowany przyszedł czas na szperanie w plikach. Logi, czyli zapisy czynności, są zapisywane w folderze addons/amxmodx/logs/.
Logi zwyczajne są nazywane w formacie L<RRRRMMDD>.log a logi błędów error_<RRRRMMDD>.log. Informacje o problemach mogą się pojawić i w jednych i w drugich. Zgłoszone błędy całkowicie wyjaśniają powód problemów tylko kiedy plugin ma status debug. Aby wymusić ten stan należy w plugins.ini dopisać debug po nazwie pluginu, np.
test.amxx debugW stanie running komunikaty są okrojone i nie lokalizują konkretnie źródła błędu, natomiast w debugu mamy informacje o ścieżce wywołania, czyli co i w której linijce po kolei się wykonywało zanim wystąpił problem. Ścieżka sięga ostatniej funkcji wywołanej przez moduł.
3. Komendy nie reagują
Problem występuje zwykle, kiedy 2 pluginy dostarczają takie same komendy. W tej sytuacji zwycięzca bierze wszystko: pierwszy plugin na liście plugins.ini przetworzy komendę i zablokuje ją, przez co żaden inny plugin nie zostanie nawet o niej poinformowany. Rozwiązaniem jest zmiana kolejności ładownia albo zmiana nazw komendy. Istnieją pluginy, które blokują więcej komend niż przetwarzają, np. blokują wszyskie komendy say z / na początku. Takie pluginy powinny znajdować się na samym końcu listy.
#214639 Server Shutting Down.
Napisane przez mgr inż. Pavulon
w 10.02.2011 23:16
#611971 By Cypis - Wojna na granaty dla więźniów.
Napisane przez Wielkie Jol
w 01.02.2014 22:46
Zabawa do Cypisa, więźniowie po 30 sekundach od rozpoczęcia zabawy zabijają się granatami, życzenie ma ostatni żywy, podczas zabawy jest włączona grawitacja 500.
Załączone pliki
-
Granaty_Cypis.sma 2,12 KB 489 Ilość pobrań
Granaty_Cypis.amxx
#636068 JailBreak
Napisane przez
.Etc
w 02.05.2014 14:07
Paczka JailBreak by Cypis + kilka modyfikacji
Jest to paczka na 'silniku' cypisa z kilkoma moimi poprawkami, nie koniecznie profesjonalnymi Z tego co pamiętam paczka sypie logami ( nie mam serwera żeby sprawdzić ) ale nie crashuje
Amx mod x - 1.8.1 linux
Modyfikacje, dodatkowe pluginy:
- Zmiany w menu
- Zmiana HUD
- Info o wejściu VIP'a na serwer w tutorze, nowe modele vipa + sklep dla nich
- Sklep z nowymi broniami / modelami / dzwiękami
- System pkt. 'respekt' dla sklepu + możliwość kupiwania pkt. w menu
- Wypadająca kasa, lewitujące bronie, freezer zamiast smok'a itd.
- Czapki z submodelami
- Zmiany w ostatnim życzeniu
- Ogarnięcie duszka i fd przy dodatkowych modelach vip'a
- Proste modyfikacje typu: tm zamiast timeleft, godz zamiast thetime itd.
Zabawy:
- Wojna na granaty
- Sniper Day
- Kill Day
- Ganiany
- Chowany
- Zombie Day
- Dzieci Wojny
- Ninja Day
- Wojna Gangów
- Zabij Gejusa
Życzenia:
- Losowa broń ( + bezruch )
- Freeday
- Duszek
- Rambomode
- Solówka ( 13 broni do wyboru )
- 4 pkt Respektu
- Święto - dzień bez broni ( Strażnicy na drugi dzień nie mogą podnieść broni )
+ masa rzeczy o których nie pamiętam a zostały zmienione, dodane







Nie pamiętam wszystkich komend raczej wszytko jest w menu ( zbindowanym pod V )
/menu - główne menu serwera
/cele - po 30s więźniowie mogą sie zbuntować i otworzyć cele
/ruletka - losujemy nagrody
/oddaj - menu oddawanias prowadzenia ( Strażnik )
/czapki - menu czapek
/sklep /sklepvip - jak sama nazwa wskazuje

// AMX Mod X Configuration File amxbans_core.amxx
/a - podręczne menu
/ball - spawnowanie piłki
/kursor - szybkie kickowanie / slajowanie graczy
/ozyw - spawnowanie nieżywych graczy
amxx.cfg
echo Executing AMX Mod X Configuration File
// Default access for all non admin players (see users.ini for access details)
//
// Default value: "z"
amx_default_access "z"
// Name of setinfo which should store a password on a client (you should change this)
// Note: Always prefix the field with an underscore (aka: "_")
// (Example: setinfo _pw "password")
//
// Default value: "_pw"
amx_password_field "_pw"
// Mode of logging to a server
// 0 - disable logging, players won't be checked (and access won't be set)
// 1 - normal mode which obey flags set in accounts
// 2 - kick all players not on list
//
// Default value: 1
amx_mode 1
// Show admins activity
// 0 - disabled
// 1 - show without admin name
// 2 - show with name
//
// Default value: 2
// Frequency in seconds and text of scrolling message
//
// Default value: "%hostname%" 600
amx_scrollmsg "" 6000
// Frequency in seconds of colored messages
//
// Default value: 180
amx_freq_imessage 180
// Ban times for the main ban menu (amx_banmenu)
// Use 0 for permanent ban
// Default values: 0 5 10 15 30 45 60
amx_plmenu_bantimes 0 5 10 15 30 45 60
// Slap damage amounts for the main slap menu (amx_slapmenu)
// Slay is automaticall inserted as the first option
// Default values: 0 1 5
amx_plmenu_slapdmg 0 1 5 30
// Set in seconds how fast players can chat (chat-flood protection)
//
// Default value: 0.75
amx_flood_time 0.75
// Amount of slots to reserve.
//
// Default value: 0
amx_reservation 0
// If you set this to 1, you can hide slots on your server.
// If server "full" of public slots and slots hidden, you must manually connect with connect console command
//
// Default value: 0
amx_hideslots 0
// Displaying of time remaining
// a - display white text on bottom
// b - use voice
// c - don't add "remaining" (only in voice)
// d - don't add "hours/minutes/seconds" (only in voice)
// e - show/speak if current time is less than this set in parameter
//
// Default value: "ab 1200" "ab 600" "ab 300" "ab 180" "ab 60" "bcde 11"
amx_time_display "ab 1200" "ab 600" "ab 300" "ab 180" "ab 60" "bcde 11"
// Announce "say thetime" and "say timeleft" with voice, set to 0 to disable.
//
// Default value: 1
amx_time_voice 1
// Minimum delay in seconds between two voting sessions
//
// Default value: 10
amx_vote_delay 10
// How long voting session goes on
//
// Default value: 10
amx_vote_time 10
// Display who votes for what option, set to 0 to disable, 1 to enable.
//
// Default value: 1
amx_vote_answers 1
// Some ratios for voting success
// Default value: 0.40
amx_votekick_ratio 0.40
// Default value: 0.40
amx_voteban_ratio 0.40
// Default value: 0.40
amx_votemap_ratio 0.40
// Default value: 0.02
amx_vote_ratio 0.02
// Max. time to which map can be extended
//
// Default value: 90
amx_extendmap_max 90
// Step for each extending
//
// Default value: 15
amx_extendmap_step 15
// If you set this to 0, clients cannot chose their language, instead they use
// whatever language the server is configured to use.
//
// Default value: 1
amx_client_languages 1
// Plugin Debug mode
// 0 - No debugging (garbage line numbers)
// 1 - Plugins with "debug" option in plugins.ini are put into debug mode
// 2 - All plugins are put in debug mode
// Note - debug mode will affect JIT performance
//
// Default value: 1
amx_debug 1
// Plugin MultiLingual Debug
// To debug a language put its 2 letter code between quotes ("en", "de", etc)
// "" means disabled
//
// Default value: ""
amx_mldebug ""
//
// Beginning of Counter-Strike package specific configurations.
//
// Rank mode
// 0 - by nick
// 1 - by authid
// 2 - by ip
//
csstats_rank 1
// Max size of the stats file
//
// Default value: 3500
csstats_maxsize 3500
// Whether or not to rank bots with csstats - set to 1 to rank bots, 0 otherwise.
//
// Default value: 0
csstats_rankbots 0
// Duration of HUD-statistics
//
// Default value: 12.0
amx_statsx_duration 12.0
// HUD-statistics display limit relative round freeze end
// Negative time will clear the HUD-statstics before the round freeze time has ended
//
// Default value: -2.0
amx_statsx_freeze -2.0
//// 3rd part
// spadochron
sv_parachute "1" - 0: wyłączony - 1: włączony
parachute_fallspeed "70" - szybkosc lotu
amx_show_activity 2
// pdm
amx_dropmoney 1 // <1/0> (on/off) (default: 1)
amx_dropmethod 2// <1/2/3/4/5> (Player drops the amount of money you've set in amx_dropamount, Player drops half of his money, player drops random money, chooses a random money amount from 3 numbers, chooses a random number between 2 numbers) (default: 2)
amx_dropamount <0-16000> (How much money players will drop - ONLY if you're using 1. Dropping method!) (default: 300)
amx_droprandom <"1 2 3"> (Money amounts who are chosen random on player death, only if you use dropmethod 4!) (example - "200 900 1200") (default: "300 500 700")
amx_droprandomnums <"1 2">(2 Numbers, the amount of moneydropped from player will be chosen between these 2 numbers, ONLY if drop method is 5) (default: "300 7500")
amx_moneyfade 1 // <1/0> (on/off) (When you collect money - screen fades green for 1 second)(default: 1)
amx_playerdrop 1 // <1/0> (on/off) (Can player drop money while having knife in his hands)
amx_playerdropamount 1000 // <0-16000> (How much player will drop, if amx_playerdrop is On) (default: 1000)
amx_moneysound 1 // <1/0> (on/off) (When you pick up a money pile,you'll hear a sound) (default: 1)
amx_moneydivide 2 //<number>(Only if using dropmethod 2, it'll dividevictims money with this number) (default: 2)
amx_dropforce 10 // <number>(With how much force you'll drop moneywhen pressing G button, only if playerdrop is 1) (default: 10)
//ruletka
jb_hp 255 // ile ma ustawiać hp za wylosowanie
jb_hp1 1 // ile ma ustawiać za wylosowanie 1 hp
jb_invi 50 // jaką niewidoczność ma wylosować
jb_speed 270.0 // jaką szybkość ma wylosować
jb_timeinvi 5 // czas niewidzialności
jb_timect 10.0 // czas bezruchu i 0 dmg
jb_timegod 5 // czas godmoda
jb_gravity 0.5 // jaką grawitacje ma wylosować
jb_zajetaczas 10 // przez jaki czas ma być zajęta ruletka
// kolor chat admina
amx_namecolor 2 // - Kolor nicku
//Name colors: [1] Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-Color
amx_color 1 // - Kolor tekstu
//Message colors: [1] Yellow, [2] Green, [3] White, [4] Blue, [5] Red
amx_listen 0
// Włączanie / wyłączanie Sklepy i Pomoc
jb_Shop 1 // 1(ON) 0(OFF)
jb_ShopKnifes 1 // 1(ON) 0(OFF)
jb_help 0 // 1(ON) 0(OFF)
// JbPacks
jb_killJP 3 // Domyślna Wartość:"3"
jb_bonushsJP 2 // Domyślna Wartość:"2"
jb_startJP 7 // Domyślna Wartość:"7"
jb_maxgiveJP 10000 // Domyślna Wartość:"10000"
// Ceny
jb_pFlash 11 // Domyślna Wartość:"4"
jb_pHe 18 // Domyślna Wartość:"6"
jb_pHEFL 28 // Domyślna Wartość:"12"
jb_pWalk 15 // Domyślna Wartość:"15"
jb_pFast 18 // Domyślna Wartość:"18"
jb_pDrugs 22 // Domyślna Wartość:"22"
jb_pGlock 25 // Domyślna Wartość:"25"
jb_pKnife1 8 // Domyślna Wartość:"4"
jb_pKnife2 14 // Domyślna Wartość:"12"
jb_pKnife3 20 // Domyślna Wartość:"18"
jb_pKnife4 36 // Domyślna Wartość:"25"
// Drugs Cvary
jb_drLife 200 // Domyślna Wartość: "200"
jb_drArmor 200 // Domyślna Wartość: "200"
// Glock Cvary
jb_gClip 1 // Domyślna Wartość: "0"
jb_gAmmo 1 // Domyślna Wartość: "1"
// Obrażenia
jb_dKnifeT 40 // Domyślna Wartość: "20"
jb_dKnifeCT 70 // Domyślna Wartość: "50"
jb_dKnife1 80 // Domyślna Wartość: "30"
jb_dKnife2 120 // Domyślna Wartość: "60"
jb_dKnife3 260 // Domyślna Wartość: "80"
jb_dKnife4 400 // Domyślna Wartość: "200"
// Obrażenia za Head Shot
jb_dHsKnifeT 80 // Domyślna Wartość: "30"
jb_dHsKnifeCT 140 // Domyślna Wartość: "80"
jb_dhsKnife1 160 // Domyślna Wartość: "45"
jb_dhsKnife2 240 // Domyślna Wartość: "75"
jb_dhsKnife3 500 // Domyślna Wartość: "95"
plugins.ini
amxbans_main.amxx debug
amxbans_ssban.amxx
;admin.amxx ;
;admin_sql.amxx ;
; Basic
admincmd.amxx ; basic admin console commands
adminhelp.amxx ; help command for admin console commands
;adminslots.amxx ; slot reservation
multilingual.amxx ; Multi-Lingual management
; Menus
menufront.amxx ; front-end for admin menus
cmdmenu.amxx ; command menu (speech, settings)
plmenu.amxx ; players menu (kick, ban, client cmds.)
telemenu.amxx ; teleport menu (Fun Module required!)
mapsmenu.amxx ; maps menu (vote, changelevel)
pluginmenu.amxx ; Menus for commands/cvars organized by plugin
; Chat / Messages
std_admin_color_chat.amxx
adminchat.amxx ; console chat commands
antiflood.amxx ; prevent clients from chat-flooding the server
scrollmsg.amxx ; displays a scrolling message
imessage.amxx ; displays information messages
adminvote.amxx ; vote commands
; Map related
timeleft.amxx ; displays time left on map
; Configuration
pausecfg.amxx ; allows to pause and unpause some plugins
;statscfg.amxx ; allows to manage stats plugins via menu and commands
; Counter-Strike
;restmenu.amxx ; restrict weapons menu
; Admin
ozyw.amxx ; Ozywianie graczy
mazak_ct.amxx ; marker dla ct i adminow
admin_chat_colors.amxx ;
extreme_bancfg2.amxx
kursor.amxx
adminlisten.amxx
admin_spec_esp.amxx
; JailBreak
jail_ball.amxx ; pilka jb
jail_zasady.amxx ; Zasady JB
jailbreak_openjails.amxx ; Cele po 30s przez TT
; Mapy
galileo.amxx
;Map_Spawns_Editor.amxx ; Edytor spawnow
; Vip
vip.amxx ; vip
sklepvip.amxx ; sklep vipa
;Bronie
descriptive_fire_in_the_hole.amxx ; Granat POL
abd.amxx ; Obra?enia wok? celownika
grenade_trail.amxx ; Smuga za granatem
GHW_Floating_Weapons.amxx
shop_z_kupowaniem.amxx debug ;
FrostNade(1).amxx ; freezer zamiast smoka
;Inne
speclist.amxx ; Pokazuje kto Cie oglada
ad_manager.amxx ; Reklamy w Say
bind.amxx ; bindy
show_ip.amxx ; amx_ip
Ruletka_Jailbreak.amxx
jail_hats.amxx ; czapki z submodelami
pdm.amxx
parachute.amxx ; Spadochron
plugins-jb.ini
;JailBreak API
jail_api_jailbreak.amxx debug
;Dodatki wymagane
cs_player_models_api.amxx
jail_team.amxx
jail_menu.amxx debug
ulepszony_bezruch_dodatki.amxx debug
;zabawy
jail_granaty.amxx debug
jail_sniper.amxx
jail_freeday.amxx ;zabawa wymagana
jail_kd.amxx
jail_ganiany.amxx
jail_chowany.amxx
jail_zombi.amxx
jail_dzieciwojny.amxx
jail_ninja.amxx debug
jail_wojnagangow.amxx

Jak to się mówi, tego nie da się opisać - to trzeba przeżyć, zapraszam do pobierania

Sounds, models, sprites etc.
http://www30.zippysh...44865/file.html
Addons
http://www34.zippysh...80402/file.html
#642172 Plugin zmieniający model broni osobny dla CT i TT na flage.
Napisane przez
Pomager'ek
w 07.06.2014 01:17
CT i TT oddzielenie na flage
#define FLAGA ADMIN_LEVEL_A << tu zmieniasz flagi
Kilka flag:
ADMIN_ALL - wszystkie
ADMIN_IMMUNITY - flaga "a"
ADMIN_RESERVATION - flaga "b"
ADMIN_KICK - flaga "c"
ADMIN_BAN - flaga "d"
ADMIN_SLAY - flaga "e"
ADMIN_MAP - flaga "f"
ADMIN_CVAR - flaga "g"
ADMIN_CFG - flaga "h"
ADMIN_CHAT - flaga "i" *
ADMIN_VOTE - flaga "j"
ADMIN_PASSWORD - flaga "k"
ADMIN_RCON - flaga "l"
ADMIN_LEVEL_A - flaga "m"
ADMIN_LEVEL_B - flaga "n"
ADMIN_LEVEL_C - flaga "o"
ADMIN_LEVEL_D - flaga "p"
ADMIN_LEVEL_E - flaga "q"
ADMIN_LEVEL_F - flaga "r"
ADMIN_LEVEL_G - flaga "s"
ADMIN_LEVEL_H - flaga "t"
ADMIN_MENU - flaga "u"
ADMIN_ADMIN - flaga "y"
ADMIN_USER - flaga "z"Flagi dodatkowe :
ADMIN_FLAG_V - flaga "v"
ADMIN_FLAG_W - flaga "w"
ADMIN_FLAG_X - flaga "x"
Załączone pliki
-
modelCTflaga.sma 1,09 KB 40 Ilość pobrań
modelCTflaga.amxx
-
modelTTflaga.sma 918 bajtów 39 Ilość pobrań
modelTTflaga.amxx
#317222 JailBreak: Mikrofon
Napisane przez LucKy_skiLL
w 03.11.2011 13:38

Plugin pozwala Strażnikom (CT) na włączenie lub wyłączenie mikrofonów dla Więźniów (TT) na serwerach JailBreak. Plugin jest pod ten mod: http://amxx.pl/topic...lbreak-extreme/

Plik jb_mikrofon.amxx wrzuć do ../addons/amxmodx/plugins

/mikro - włącza menu mikrofonu
/mikrofon - włącza menu mikrofonu
Załączone pliki
-
jb_mikrofon.sma 1,89 KB 797 Ilość pobrań
jb_mikrofon.amxx
-
jb_mikrofon.amxx 4,8 KB 71 Ilość pobrań
#1081 Autoresponder/Advertiser + tag [ you]
Napisane przez
bicek
w 11.02.2008 22:45
Opis:
Plugin który spamuje co jakiś czas na czacie say, przydatny przy reklamie forum lub informowaniu graczy na serwerze...

Instalacja:
Plik ad_manager.amxx wrzucamy do addons/amxmodx/plugins
ad_manager.sma wrzucamy do addons/amxmodx/scripting
a advertisements.ini do addons/amxmodx/configs
standardowo do pliku addons/amxmodx/configsplugins.ini dopisujemy:
ad_manager.amxx
Konfiguracja:
otwieramy plik advertisements.ini dopisujemy nasze informacje które chcemy aby plugin pokazywał np.
!t amxx.pl !n polski support !g AMX Mod Xtaki wpis w grze będzie wyglądał tak: amx.pl polski support AMX Mod X
Kolory:
!t - kolor drużyny, dla tt czerwony, dla ct niebieski i dla specra biały
!g - po prostu zielony
!n - standardowy kolor w say
[uwaga="Abes Mapper"]
Wersja z działającą komendą zrobiona przez DarkGL
[you]
Proszę moda o dodanie do 1 posta.



[/uwaga]
Załączone pliki
-
ad_manager.rar 16,26 KB 24507 Ilość pobrań
#192122 Kompilacja lokalna
Napisane przez Abes Mapper
w 27.11.2010 19:13
Czytając posty zauważyłem, że trochę ludzi ma problemy z kompilacją lokalną mimo iż jest tutorial.
Piszę ten poradnik w tym dziale aby pokazał się w spisie artykułów.
Jest jeszcze inny sposób kompilacji lokalnej ( Kompilacja lokalna - AMXX.pl: Support AMX Mod X - by R3X ) ale to tak jakby dla tych, którzy programują, robią coś w PAWN.
Ten sposób (o ile można to nazwać innym sposobem) jest łatwiejszy i szybszy.
1. Pobieramy plik z załącznika w zależności od naszego systemu operacyjnego
2. Rozpakowujemy byle gdzie
3. Wchodząc w folder scripting mamy różne pliki/foldery. Opiszę najważniejsze potrzebne do kompilacji
- include - tutaj wklejamy wszystkie pliki .inc np.: colorchat.inc
- Podstawowe sma - tutaj wkleiłem kody źródłowe z podstawowych pluginów (nie chciałem żebyście tracili czas na ich dodatkowym kompilowaniu)
- compiled - w tym folderze znajdą się wszystkie skompilowane przez nas pluginy (folder utworzy się podczas pierwszej kompilacji)
- compile.exe - program który odpalamy aby skompilować kod źródłowy
Nic prostrzego.
Plik .sma (czyli nasz kod źródłowy) wklejamy do głównego katalogu scripting tam gdzie jest compile.exe
Po wklejeniu uruchamiamy właśnie ten plik compile.exe i nasze pliki zaczną się kompilować.
Skompilowane pluginy znajdą się w folderze compiled
Jeżeli niektóre pluginy (np.: bf2, pokemod) mają dodatkowe foldery z plikami .inl to wklejamy je (foldery) do głównego katalogu scripting
Dodaję plik colorchat.inc
Jest wymagany przy kompilacji niektórych pluginów
Załączone pliki
-
scripting WINDOWS.rar 677,38 KB 8546 Ilość pobrań
-
scripting LINUX.rar 545,96 KB 1837 Ilość pobrań
-
colorchat.rar 1,15 KB 4027 Ilość pobrań
#547665 Czas Online
Napisane przez góruś
w 05.06.2013 08:50
#547664 Czas Online
Napisane przez Misiaczek ;c
w 05.06.2013 08:46
Czas Online v2.1.0
by MisieQ & byCZUS
Witajcie
Wraz z byCZUS prezentujemy wam Czas Online Adminów oraz Graczy na serwerze
Co plugin robi?
Zlicza czas jaki admin/gracz spędza na serwerze i zapisuje to do bazy danych, dodatkowo zapisuje sie pierwsze połączenie admina/gracza z serwerem jak i kiedy ostatnio grał
Konfiguracja
Całą konfiguracje zmieniamy w pliku sma
Konfiguracja danych do połączenia z MySQL
new sqlConfig[ ][ ] = { "localhost", "root", "", "database" }
Instalacja
AMXX
Instalacja Pluginów AMXX
PHP:
Skrypt PHP wgrywamy normalnie na serwer www i uzupełniamy dane w pliku config.php
Demo
Czas Online Demo
Lista Zmian
2.1.0
- Lekka poprawka zapytania SQL (Podziękowanie dla [/size]GwynBleidD
- Wieksza korekta znaków w SQL_PrepareString
- Dodanie Headera i Fotera w statach WWW
- Usunięto różnice w zapisie godziny mędzy serwerem BD a serwerem Gry
- Dodano sprawdzanie HLTV i Botów
2.0.0
- Zmieniona nazwa Pluginu
- Napisany od nowa plugin (byCZUS)
- Napisany od nowa interfejs www
1.2.3
- Poprawka zliczania czasu online
- Poprawka numeracji w SMA
1.2.2
- Poprawka SMA pluginu
już erroru nie ma
1.2.1
- Poprawka pliku srodek.php (Paginacji dokładnie)
1.2:
- Dodanie #define FLAGA
- Poprawka zapytania SQL
- Przepisanie skryptu PHP
1.1:
- Poprawki błędów z SQL
1.0:
- Napisanie pluginu
Pobieranie
Wersja 2.1.0
Czas Online.rar 289,7 KB 1645 Ilość pobrań
Wersja 2.0.0
Czas Online.rar 289,91 KB 552 Ilość pobrań
#450538 JailBreak Mod 1.0.6a by Cypis [Aktualizacja]
Napisane przez Cypis'
w 23.08.2012 16:52
Jest to jailbreak napisany przez zemnie, ale też w niektórych częściach ktoś mi pomógł
Podziękowania dla:
DarkGL - za pomoc przy static
Fili:P - za grafikę do broni
Co on ma w sobie:
- Zablokowanie dhud
- Zablokowanie motd
- Zablokowanie latarki dla TT
- Zablokowanie kupowania bron
- Podmienienie napisów w cs
- Modele pieści, palki i rękawic
- Usunięcie modelów zabitych graczy
- Jeżeli prowadzący strzela w przycisk to włącza go
- Możliwość zablokowania brania broni z automatów i leczenia się
- Podmienienie dźwięków noża
- Zredukowano obrażenia od noża o 60%
- Menu wyboru broni w CT
- Możliwość zablokowania/odblokowania mikrofonu dla TT
- Inne menu wyboru Teamów
- Możliwość wybierania zabaw przez prowadzącego
- Łatwość dodawania zabaw i życzeń (osobnymi pluginami)
- Automatyczne otwieranie cel w FD
- Menu dla prowadzącego "czy dać życzenie dla ostatniego więźnia"
- Możliwość dawania duszka i fd danym więźniom
- Żywi nie słyszą martwych
- Pokazuje na HUD który jest dzień i kto jest prowadzącym
- Wyświetla na HUD kto jest poszukiwanym
Komendy:
Komendy ogólne:
say /menu - główne menu
say /czasgry - pokazuje czas gry przegranej na serwerze
Komendy dla Więźnia:
say /lr - menu z życzeniami dla ostatniego więźnia
Komendy dla Strażnika:
say /oddaj - menu do oddawania prowadzenia
say /obsluga - jak jestes prowadzacym i nie daleś ostatniemu wieźniowi życzenia to po wpisaniu tego wyskoczy ci ponowanie menu z obsluga
say /guns - menu wyboru broni
+revision - służy do przeszukiwania wieźniów
Komendy dla Admina:
jail_addct "< steamid > / <nick>" - służy do banowania graczy tych ktorych nie ma na serwerze żeby niemogli dojsc do CT (flaga - "d")
jail_delct "< steamid > / <nick>" - służy do odbanowywania graczy żeby mogli dojsc do CT (flaga - "d")
jail_menuban - menu banowania obecnych graczy co sa na serwerze żeby nie mogli dojsc do CT (flaga - "d")
+adminvoice - gdy admin mówi mutuje resztę (flaga - "d")
Komendy dla H@:
jail_cele - służy do tego, aby było można otworzyć cele przyciskiem z menu (flaga - "l")
Obsluga jail_cele:
Używa się jail_cele jeżeli na jakiejś mapie nie otwierają się cele z menu prowadzacego
1. Nalezy wpisac w kosnoli jail_cele
2. Podejść do przycisku, którym otwiera się cele
3. Nacelować celownikiem na przycisk, którym otwiera się cele i nacisnąć z menu "Przycisk 1"
4. Jeżeli są dwa przyciski do otwierania cel to należy nacelować na drugi przycisk i nacisnać z menu "Przycisk 2"
5. Po naciśnięciu z menu przycisku powinna wyskoczyć informacja "[Cele] Dodano przycisk 0/1"
6. Bierzemy prowadzacego i otwieramy cele z menu prowadzacego w celu sprawdzenia czy da się otworzyć cele
Cvary:
jail_tt_mikro "0" //Ustawia czy mikro dla TT ma byc od poczatku rundy wlaczone (1) lub wylaczone (0) (Standardowo 0)
jail_tt_to_ct "5" //Ustawiamy ile TT ma przypadać na 1 CT (Standardowo 5)
jail_ct_steam "0" //Ustawiamy czy tylko steam moze dojsc do CT (Standardowo 0)
jail_ct_time "60" //Ustawiamy ile gracz ma przegrac zeby mogl dojsc do CT (Standardowo 60min)
Cvary są dopisane do jailbreak.cfg w confings w "paczce"
Instalacja:
Kopiujemy zawartość folderu cstrike z JailBreak.rar do folderu cstrike na serwerze.
Nic nie trzeba dopisywać do plugins.ini!
Natywy i forwardy (tylko dla developerów)
#define JAIL_CONTINUE 0
#define JAIL_HANDLED -1
#define JAIL_FORCE_TT 1
#define JAIL_FORCE_CT 2
/*------------------------------
Rejstruje zabawe i dodaje ja do menu zabaw
@return - zwraca return index'u dodanej zabawy
------------------------------*/
native jail_register_game(name_game[]);
/*------------------------------
Rejstruje zyczenie i dodaje ja do menu zyczen
@return - zwraca return index'u dodanego zyczenia
------------------------------*/
native jail_register_wish(name_wish[]);
/*------------------------------
Zwraca Bool wartości zmiennej, true - mikro dla wieźniów włączone | false - mikro dla więźniów wyłączone
------------------------------*/
native bool:jail_get_prisoners_micro();
/*------------------------------
Zwraca Bool wartości zmiennej, true - walka dla wieźniów włączona | false - walka dla więźniów wyłączona
------------------------------*/
native bool:jail_get_prisoners_fight();
/*------------------------------
Zwraca Bool wartości zmiennej, true - gracz ma freedaya | false - gracz nie ma freedaya
@bool:id - index gracza ktorego chcemy sprawdzic czy ma freeday'a
------------------------------*/
native bool:jail_get_prisoner_free(id);
/*------------------------------
Zwraca Bool wartości zmiennej, true - gracz ma duszka | false - gracz nie ma duszka
@bool:id - index gracza ktorego chcemy sprawdzic czy ma duszka
------------------------------*/
native bool:jail_get_prisoner_ghost(id);
/*------------------------------
Zwraca Bool wartości zmiennej, true - gracz nie moze podnosic broni, brac broni ich z automatu, leczyc sie i wyrzucac broni | false - przeciwnieństwo "true"
@bool:id - index gracza ktorego chcemy sprawdzic czy ma ustawiona blokade
------------------------------*/
native bool:jail_get_user_block(id);
/*------------------------------
Zwraca Bool wartości zmiennej, true - gracz jest poszukiwany | false - nie jest poszukiwany
@bool:id - index gracza ktorego chcemy sprawdzic czy jest poszukiwany
------------------------------*/
native bool:jail_get_poszukiwany(id);
/*------------------------------
Zwraca przez Return index ostatniego więźnia
------------------------------*/
native jail_get_prisoner_last();
/*------------------------------
Zwraca przez Return index prowadzacego straznika
------------------------------*/
native jail_get_prowadzacy();
/*------------------------------
Zwraca przez Return numer dnia
------------------------------*/
native jail_get_days();
/*------------------------------
Zwraca przez Return numer zabawy
------------------------------*/
native jail_get_play_game_id();
/*------------------------------
@bool:wartosc - jak ustawimy true to mikro dla więźniów będzie włączone, jak false to mikro dla więźniów będzie wyłączone
@bool:info - pokazuje informacje w say czy włączyło się czy włączyło mikro dla więźników
------------------------------*/
native jail_set_prisoners_micro(bool:wartosc, bool:info=true);
/*------------------------------
@bool:wartosc - jak ustawimy true to walka dla więźniów będzie włączona, jak false to walka dla więźniów będzie wyłączona
@bool:modele - jak ustawimy true to modele rekawic bokserskich beda właczone, jak false to będą modele piesci
@bool:info - pokazuje informacje w say czy włączono czy wyłączono walke dla więźników
------------------------------*/
native jail_set_prisoners_fight(bool:wartosc, bool:modele=true, bool:info=true);
/*------------------------------
@bool:id - index gracza któremu chcemy dać freeday
@bool:wartosc - jak damy true to ustawi freedaya, jak false to nie
@bool:nextround - jak damy true to ustawi freedaya w nastepnej rundzie, jak false to nie
@return - zwraca "return = 0" kiedy nie moze ustawic freedaya, zwraca "return = 1" kiedy ustawilo freedaya
------------------------------*/
native jail_set_prisoner_free(id, bool:wartosc=true, bool:nextround=true);
/*------------------------------
@bool:id - index gracza któremu chcemy dać duszka
@bool:wartosc - jak damy true to ustawi duszka, jak false to nie
@bool:nextround - jak damy true to ustawi duszka w nastepnej rundzie, jak false to nie
@return - zwraca "return = 0" kiedy nie moze ustawic duszka, zwraca "return = 1" kiedy ustawilo duszka
------------------------------*/
native jail_set_prisoner_ghost(id, bool:wartosc=true, bool:nextround=true);
/*------------------------------
@bool:id - index gracza, któremu chcemy zablokowac podnoszenie broni, branie ich z automatu, wyrzucanie broni, leczenie sie
@bool:wartosc - true jak chcemy zablokowac, false jak odblokowac
------------------------------*/
native jail_set_user_block(id, bool:wartosc);
/*------------------------------
@bool:wartosc - jak ustawimy true to TT bedzie niesmiertelne, jake false to bedzie mozna ich zabic
------------------------------*/
native jail_set_god_tt(bool:wartosc);
/*------------------------------
@bool:wartosc - jak ustawimy true to CT bedzie niesmiertelne, jake false to bedzie mozna ich zabic
------------------------------*/
native jail_set_god_ct(bool:wartosc);
/*------------------------------
@bool:wartosc - jak ustawimy true to CT nie bedzie moglo zabic TT, jake false to bedzie mogło zabic
------------------------------*/
native jail_set_ct_hit_tt(bool:wartosc);
/*------------------------------
@bool:wartosc - jak ustawimy true to TT nie bedzie moglo zabic CT, jake false to bedzie mogło zabic
------------------------------*/
native jail_set_tt_hit_ct(bool:wartosc);
/*------------------------------
@bool:id - index gracza, któremu chcemy dać prowadzacego straznika
Jak damy id=0 to wtedy usuniemy prowadzacego straznika
------------------------------*/
native jail_set_prowadzacy(id);
/*------------------------------
Wyswietla menu z broniami danemu graczowi
@id - index gracza
@bool:bronie - jak ustawimy na true to graczowi wyświetli się menu broni maszynowych do wyboru
@bool:pistolety - jak ustawimy na true to graczowi wyświetli się menu z pistoletami do wyboru
@bitsum_bronie - tu ustawiamy BITOWO jakich broni ma NIEBYĆ w menu broni maszynowych
@bitsum_pistolety - tu ustawiamy BITOWO jakich broni ma NIEBYĆ w menu pistoletów
Notka:
- Jeżeli bool:bronie i bool:pistolety będą ustawione na false to nie wyświetli się menu
- Jeżeli bool:bronie i bool:pistolety będą ustawione na true to najpierw wyświetli się menu broni maszynowych a później menu pistoletów
Przykład usunięcia AWP i SCOUTA z menu broni maszynowych:
jail_set_user_weapons(id, true, false, (1<<CSW_AWP)|(1<<CSW_SCOUT), 0);
------------------------------*/
native jail_set_user_menuweapons(id, bool:bronie, bool:pistolety, bitsum_bronie=0, bitsum_pistolety=0);
/*------------------------------
Otwiera wszystkie cele lub zamyka
------------------------------*/
native jail_open_cele();
/*------------------------------
Natyw ten mozna wykorzystac do wywolywania forwardu OnDayStartPre w celu uruchomienia jakiejs zabawy
@day - index dnia lub zabawy
@bool:fast - jezeli damy true to wywola forward bez sprawdzania czy nie minelo 60s lub nie zmienila sie ilosc graczy, jak false to musi sprawdzac
@return - zwraca "return = 1" jeżeli forwad OnDayStartPre wywoła sie, zwraca "return = 0" jeżeli jest rożnica w graczach lub minelo 60s
------------------------------*/
native jail_set_play_game(day, bool:fast=false);
/*------------------------------
Ustawia predkosc danemu graczowi
@id - index gracza, ktoremu chcemy ustawic predkosc
@Float:speed - wartosc predkosci
Notatka:
Zeby gracz nie mogl chodzi wartosc Float:speed trzeba ustawic na 0.1
------------------------------*/
native jail_set_user_speed(id, Float:speed);
/*------------------------------
Wywołuje się podczas rozpoczesnia dnia (rundy), przed frezztime. dzięki temu forwardowi mozna dodawac w rozne dni zautomatyzowane zabawy.
@day - jest to index dnia/zabawy
@szInfo[256] - ustawienie informacji na hud (te na zielono)
@szInfo2[512] - ustawienie informacji na hud (te na czerowno)
@setting[10] - tu ustawia sie dane jaki ma miec dzien/zabawa, resetuja sie one po zakonczeniu dnia (rundy)
@gTimeRound - zwraca czas w sekundach do konca dnia (rundy)
------------------------------*/
forward OnDayStartPre(day, szInfo[256], szInfo2[512], setting[10], gTimeRound);
/*------------------------------
Rozni sie od OnDayStartPre tym ze wywoluje sie po frezztime i ma mniej argumentow. Sluzy do otwierania cel, wyswietlania czasu na hud, itd. ...
@day - jest to numer dnia/zabawy
------------------------------*/
forward OnDayStartPost(day);
/*------------------------------
Wywołuje się podczas dania ostatniemu więźniowi możliwość wybrania życzenia.
Ten foward nadaje się też do resetowania/ustawiania jakiś zmiennych.
@id - jest to index ostatniego wieźnia
------------------------------*/
forward OnLastPrisonerShowWish(id);
/*------------------------------
Wywołuje się podczas wybrania zyczenie prze ostatniego więźnia.
Ten foward nadaje się też do resetowania/ustawiania jakiś zmiennych
@id - jest to index ostatniego wieźnia
@wish - jest to index zyczenia wybranego przez wieznia
return JAIL_CONTINUE - nic nie zablokuje
return JAIL_HANDLED - zablokuje wybranie zyczenia
------------------------------*/
forward OnLastPrisonerTakeWish(id, wish);
/*------------------------------
Wywołuje się podczas zakonczenia kazdego dnia (rundy), przeznaczyony do resetowania zmiennych.
@day - jest to id_zabawy jeżeli w tym dniu takowa była, lub id_dnia
------------------------------*/
forward OnRemoveData(day);
/*------------------------------
Wywołuje się podczas dolaczania do druzny, nie wywoluje sie jak gracz wchodzi na spect.
@id - jest to index gracza
@team - jest to numer teamu do jakiego gracz chce dojsc
@tt - ilosc osob w TT
@ct - ilosc osob w CT
return JAIL_CONTINUE - nic nie zablokuje
return JAIL_HANDLED - blokuje wybranie teamu, czyli gracz nie wybierze teamu
return JAIL_FORCE_TT - gracz dolaczy do tt
return JAIL_FORCE_CT - gracz dolaczy do ct
------------------------------*/
forward OnJoinTeam(id, team, tt, ct);
Changelog:
1.0
- Pierwsze wydanie
1.0.1
- Naprawienie błędów z freedayem i duszkiem
- Naprawienie błędów z przeszukaniem więźnia
- Naprawienie błędów z zabawami
1.0.2
- Zmienienie struktury w jail_menu i naprawienie przeszukiwania
- Dodanie do jail_zabawy zablokowanie chodzenia dla CT podczas zabawy polowanie i ganiany
- Dodanie automatycznego otwierania cel (jeżeli na którejś mapie nie działa należy dodać przez komende jail_cele w podjeść do przycisku który otwiera cele i nacelować na niego i nacisnąć z menu przycisk "1")
1.0.3
- Zmienienie wyświetlania dni w HUD
- Poprawienia jail_menu źle działało
1.0.4
- Usunięcie setting[3]
- Dodanie blokowania broni dla TT,CT,CT i TT w setting[4]
- Poprawienie błędów w jailbreak.inc
1.0.5
- Naprawienie wczytywania ustawień z jailbreak.cfg
- Naprawienie błędu po podniesieniu tarczy
- Naprawienie funkcji w jail_menu
- Podzielenie jail_zabawy na odzielene pluginy
- Dodanie cvaru jail_tt_mikro
1.0.6
- "usuniecie" settings[5]
- ulepszenie natywu jail_set_user_weapons i zmienienie jego nazwy na jail_set_user_menuweapons (opis jego działania można znaleźć w spoilerze)
- naprawienie błędu z "[HAMSANDWICH] Invalid entity (210)"
- usunięcie uzywania przez api "msg_DeathMsg"
- dodanie argumenu "day" do forwardów: OnRemoveData(day), OnGameHudTick(day, count), OnGameHudEnd(day)
- zaktualizowanie zabaw żeby działały pod wersje 1.0.6
- dodanie opcji DEBUG w api (standardowo jest on wyłączony)
1.0.6a
- naprawienie błedu z komenda /lr - TT mogl brac zyczenia bez zgody CT
- naprawienie błedu z brakiem funkcji "MenuBroni"
- naprawienie błedu że zabawy mogła inna osoba niż prowadzacy odpalać lub były odpalane w niedziele
DEBUG:
1. Opcję DEBUG można włączyć w .sma api
2. Szukamy "//#define DEBUG 1" i usuwamy "//" czy powinno to tak wyglądać "#define DEBUG 1"
3. Zapisujemy .sma i kompilujemy, wrzucamy na serwer
4. Zapisy DEBUG można znaleźć w pliku jail_api_jailbreak.log
Uwaga:
Opcja DEBUG może obciążyć serwer!
Plany:
- Usunięcie korzystania z cs_player_models_api.amxx
- Dodanie cvarów / natywów / forwardów na prośby userów
- Naprawienie bugów
Download:
JailBreak.rar 3,92 MB 16331 Ilość pobrań
Jak znajdziecie jakiś bugi w kodzie to piszcie w temacie spróbuje naprawić
I jeżeli macie jakiś propozycje to też piszcie
Załączone pliki
-
cs_player_models_api.sma 6,53 KB 1212 Ilość pobrań
cs_player_models_api.amxx
-
jail_menu.sma 9,85 KB 1224 Ilość pobrań
jail_menu.amxx
-
jail_team.sma 6,46 KB 1006 Ilość pobrań
jail_team.amxx
-
jail_zyczenia.sma 7,37 KB 1061 Ilość pobrań
jail_zyczenia.amxx
-
jail_freeday.sma 2,32 KB 1149 Ilość pobrań
jail_freeday.amxx
-
jail_ganiany.sma 1,8 KB 1124 Ilość pobrań
jail_ganiany.amxx
-
jail_kd.sma 2,2 KB 1271 Ilość pobrań
jail_kd.amxx
-
jail_polowanie.sma 1,76 KB 1081 Ilość pobrań
jail_polowanie.amxx
-
jailbreak.inc 13,19 KB 1926 Ilość pobrań
-
jail_api_jailbreak.sma 56,81 KB 1712 Ilość pobrań
jail_api_jailbreak.amxx
#640481 [ROZWIĄZANE] Szukam pluginu dzięki któremu pisze, w say gdy CT zabije TT
Napisane przez Oddaj Wiertarke
w 27.05.2014 15:12
#include <amxmodx> #include <amxmisc> #include <ColorChat> #define PLUGIN "New Plug-In" #define VERSION "1.0" #define AUTHOR "AMXX.Pl" new nazwa_gracza[33][35]; public plugin_init(){ register_plugin(PLUGIN, VERSION, AUTHOR); register_event("DeathMsg", "DeathMsg", "a"); } public client_authorized(id) { get_user_name(id, nazwa_gracza[id], 34); } public DeathMsg(){ new Attacker = read_data(1); new Victim = read_data(2); if(get_user_team(Attacker)==2) { for(new id=0;id<=32;id++) { if(is_user_connected(id)) { ColorChat(id,GREEN,"[JailBreak]^3Strażnik ^4%s ^3zabił więźnia ^4%s",nazwa_gracza[Attacker], nazwa_gracza[Victim]); } } } }
Teraz powinno być ok, po prostu wiadomość "docierała" do graczy którzy nie byli podłączeni/nie było ich. Jeżeli to nie pomaga, to już nie mam pomysłu na to.
- AMXX.pl: Support AMX Mod X i SourceMod
- → Przeglądanie profilu: Reputacja: mikijak
- Regulamin