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.
|
Karpaj
Rejestracja: 17.10.2010Aktualnie: Nieaktywny
Poza forum Ostatnio: 23.02.2012 15:25





Statystyki
- Grupa: Użytkownik
- Całość postów: 111
- Odwiedzin: 9 738
- Tytuł: Zaawansowany
- Wiek: 31 lat
- Urodziny: Październik 30, 1993
-
Imię
Karol
-
Płeć
Mężczyzna
-
Lokalizacja
Szamo
Kontakt
Narzędzia użytkownika
Znajomi
Karpaj nie posiada znajomych
#312879 Czas Rozgrzewki oraz vote na wymieszanie składów
Napisane przez Cypis'
w 24.10.2011 17:04
2 - jak masz gscrable to tam w admin menu masz pod przyciskiem 4 wymieszanie składów
#308602 [ROZWIĄZANE] Plugin do (trwałego) głosowania
Napisane przez Cypis'
w 15.10.2011 22:55
#pragma semicolon 1
#include <sourcemod>
public Plugin:myinfo =
{
name = "Fun Vote",
author = "Cypis",
description = "Fun Vote",
version = "1.0",
url = "http://www.amxx.pl/"
};
new Handle:g_Players = INVALID_HANDLE;
new String:file_name[2][128];
public OnPluginStart()
{
g_Players = CreateArray(ByteCountToCells(33));
RegConsoleCmd("glosuj", Command_Vote);
BuildPath(Path_SM, file_name[0], sizeof(file_name[]), "logs/pytania.txt");
BuildPath(Path_SM, file_name[1], sizeof(file_name[]), "logs/sidy.txt");
}
public OnConfigsExecuted()
{
if(!FileExists(file_name[1]))
return;
new Handle:file = OpenFile(file_name[1], "r");
while(!IsEndOfFile(file))
{
decl String:g_sid[32];
ReadFileLine(file, g_sid, sizeof(g_sid));
PushArrayString(g_Players, g_sid);
}
CloseHandle(file);
}
public Action:Command_Vote(client, args)
{
if(!IsClientConnected(client) || !IsClientInGame(client) || IsFakeClient(client) || IsVoteInProgress())
return Plugin_Handled;
if(MozeGlosowac(client))
return Plugin_Handled;
new Handle:menu = CreateMenu(Handle_VoteMenu);
SetMenuTitle(menu, "Pytanie XXX");
AddMenuItem(menu, "1", "OPCJA 1");
AddMenuItem(menu, "2", "OPCJA 2");
AddMenuItem(menu, "3", "OPCJA 3");
AddMenuItem(menu, "4", "OPCJA 4");
SetMenuExitButton(menu, false);
DisplayMenu(menu, client, 20);
return Plugin_Handled;
}
public Handle_VoteMenu(Handle:menu, MenuAction:action, param1, param2)
{
if(action == MenuAction_Select)
{
decl String:info[32];
GetMenuItem(menu, param2, info, sizeof(info));
decl String:name[32];
decl String:auth[32];
GetClientName(param1, name, sizeof(name));
GetClientAuthString(param1, auth, sizeof(auth));
LogToFile(file_name[0], "Gracz %s (%s) zagłosował na %s (%i)", name, auth, info, param2);
LogToFile(file_name[1], "%s", auth);
PushArrayString(g_Players, auth);
}
else if(action == MenuAction_End)
{
CloseHandle(menu);
}
}
stock bool:MozeGlosowac(client)
{
if(!GetArraySize(g_Players))
return false;
decl String:auth[32];
GetClientAuthString(client, auth, sizeof(auth));
for(new i=0; i<GetArraySize(g_Players); i++)
{
decl String:g_sid[32];
GetArrayString(g_Players, i, g_sid, sizeof(g_sid));
if(strcmp(auth, g_sid, false) == 0)
return true;
}
return false;
}
#305661 [ROZWIĄZANE] Plugin do (trwałego) głosowania
Napisane przez Cypis'
w 10.10.2011 14:10
#302663 Minecraft Engine
Napisane przez diablix
w 03.10.2011 15:31
by diablix & DarkGL

Jest to modyfikacja a w zasadzie spore narzędzie dla osób w miarę ogarniających PAWN'a
Dodaje do gry klocki i cały system z minecrafta. Wtajemniczeni mogą przerobić go
pod np. basebuildera czy inne mody

i sporo pomysłów oraz pracy poświęciliśmy temu "silnikowi", więc zachęcam do testowania,
oraz tworzenia modów z jego wykorzystaniem


- Fakemeta
- Engine
- Fun

- modele oraz dźwięki wrzucamy wg. reguły Folder sound -> cstrike/
- minecraft.amxx do addons/amxmodx/plugins
- dopisujemy minecraft.amxx na końcu pliku konfiguracyjnego plugins.ini (addons/amxmodx/configs/)

Zasmieszczam video z wersji 0.1 lekko pobugowanej

http://www.youtube.com/watch?v=FEDblaxhukw
Załączone pliki
-
MINECRAFT_Map_Models_Sounds.zip 386,67 KB 1167 Ilość pobrań
-
minecraft.amxx 18,8 KB 152 Ilość pobrań
-
minecraft.sma 14,7 KB 1045 Ilość pobrań
minecraft.amxx
#298437 Prośba o plugin z vote alltalk
Napisane przez Cypis'
w 20.09.2011 20:45

@Edit
znalazłem

nie sprawdzałem czy działa więc pozostawiam to tobie czy działa a kompilować kompiluje się kod
#include <sourcemod>
new bool:clientvote[MAXPLAYERS + 1];
new bool:votebylo = false;
new vote;
public Plugin:myinfo =
{
name = "Vote AllTalk",
author = "Cypis",
description = "Vote AllTalk",
version = "1.0",
url = "http://amxx.pl"
};
public OnPluginStart()
{
RegConsoleCmd("alltalk", CmdAllTalk, "Vote AllTalk"); //po pisaniu w say wyrazu zawierajacego w sobie alltalk to wywola public CmdAllTalk
}
public Action:CmdAllTalk(client, args)
{
if(!IsClientConnected(client) || !IsClientInGame(client) || IsFakeClient(client) || clientvote[client] || votebylo)
return;
clientvote[client] = true;
vote++;
if(vote >= GetClientCount()/2)
{
if(IsVoteInProgress()) //sprawdzanie czy jest jakies vote w procesie/postepie (?)
return;
new Handle:menu = CreateMenu(Handle_VoteMenu); //rejstruje handled
SetMenuTitle(menu, "Glosowanie na AllTalk:"); //dodaje tytul
AddMenuItem(menu, "on", "On - AllTalk"); //dodaje na co glosowac
AddMenuItem(menu, "off", "Off - AllTalk"); //dodaje na co glosowac
SetMenuExitButton(menu, false); //wylacza przycisk wyjdz
VoteMenuToAll(menu, 20); //pokazuje menu wszytskim gracza i utrzymuje sie one 20s
votebylo = true;
}
}
public Handle_VoteMenu(Handle:menu, MenuAction:action, param1, param2)
{
if(action == MenuAction_End) //akcja koniec (?)
{
CloseHandle(menu); //zamyka handled/menu
}
else if(action == MenuAction_VoteEnd) //wykonuje jak koniec vota (po 20s jak tam ustawilem)
{
SetConVarBool(FindConVar("sv_alltalk"), param1 == 0? false: true, false, false); //lub ServerCommand("sv_alltalk 0");
PrintToChatAll("\x04[\x03AMXX\x04]\x01 AllTalk został %s", param1 == 0? "Wyłączony": "Włączony");
}
}
public OnClientDisconnect(client) //foward wykonany w momecie wyjscia z serwera (pre)
{
if(IsClientInGame(client)) //sprawdza czy gracz jest w grze
{
if(clientvote[client] && !votebylo)
{
clientvote[client] = false;
vote--;
}
}
}
#284741 Opis instalacji SourceMod
Napisane przez Nomaf
w 18.08.2011 18:24
SourceMod
1. Opis
SourceMod jest modyfikacją serwera, która pozwala na potężne rozbudowanie jego. Wymaga Metamod: Source w wersji 1.8 lub większej oraz gry na bazie silnika Source. Pluginy bazują na języku skryptowym Pawn. To właśnie one powodują rozszerzenie możwliości rozgrywki na serwerach. Możemy stworzyń nowe tryby rozgrywki, zmieniać właściwości gracza, ustawiać nowe byty na mapie, czyli praktycznie wszystko. Oficjalna strona znajduje się pod tym adresem:
SourceMod: Half-Life 2 Scripting
Najnowszą wersję możemy pobrać stąd: http://amxx.pl/topic...-sourcemod-172/
2. Instalacja - Etap 1
Windows:
Ci co mają grę NonSteam i chcą grać w trybie LAN, to wystarczy, że wgrają zawartość archiwum do /nazwa_gry/, np. /cstrike/ i już SourceMod będzie działać. Ten kto pobrał Source Dedicated Server przez Steam, to pliki powinien wrzucić do: /steam/steamapps/nazwa_konta/source 2007 dedicated server/nazwa_gry. Przykład: /steam/steamapps/nomaf/source 2007 dedicated server/cstrike.
Linux:
Wypakuj zawartość folderu do /nazwa_gry/. To wszystko.
3. Końcowe kroki
Zresetuj serwer. Aby sprawdzić, czy wszystko zostało pomyślnie zainstalowane, należy wpisać w konsoli serwera:
meta list
Po wpisaniu tego powinno się wyświetlić coś w stylu:
] meta list Listing 1 plugin: [01] SourceMod (1.3.7) by AlliedModders LLC
Teraz można już wybierać z bazy kilku tysięcy pluginów i instalować na serwerze . Kody źródłowe pluginów mają format .sp, a skompilowane .smx. Główne komendy SourceMod'a zaczynają się od sm. Wystarczy wpisać ten początek, a powininno się wyświetlić menu kontekstowe z podpowiedziami komend.
Poradnik stworzony przez: Nomaf dla AMXX.pl - Support AMX Mod X
Kopiowanie bez mojej zgody jest zakazane!
#1145 Prometheus
Napisane przez Gomez
w 14.02.2008 16:48
Przedstawiam wam plugin dzięki któremu Hosty/Zakładnicy umia chodzic po drabinie,
kucaja, chodza w tunelach np. na assaulcie.
Instalacja:
Plik prometheus.amxxwrzucamy do addons/amxmodx/plugins
prometheus.sma wrzucamy do addons/amxmodx/scripting
standardowo do pliku addons/amxmodx/configsplugins.ini dopisujemy prometheus.amxx
Cvary:
hostage_can_duck (default 1) - if hostages can duck or not. hostage_climb_speed (default 256.0) - the speed at which hostages climb ladders. use 0.0 to disable hostage ladder climbing. hostage_directional_ladders (default 1) - if hostages use smart ladder direction calculations to aid in climbing. disable only on maps that have awkward ladders which the hostages just can't seem to climb (I've only observed this on cs_backalley). hostage_fall_damage (default 1.0) - the fall damage scale that hostages take (so 0.5 would be half damage, for example). use 0.0 to disable hostage fall damage. also note that hostage fall damage (with a scale of 1.0) tends to be just a little bit less than player fall damage. hostage_fall_penalty (default 1) - if players lose money for damaging hostages through fall damage, and if it adds to their mp_hostagepenalty count when they kill a hostage through fall damage. hostage_use_door_distance (default 64.0) - if a door is between a hostage and his leader, the maximum distance that the hostage can be from the door to attempt to open it.
Moduły potrzebne do działania pluginu:
Cstrike
Fakemeta
Załączone pliki
-
Prometheus.rar 27,99 KB 2060 Ilość pobrań
#285463 Roll The Dice PL
Napisane przez VVirus
w 20.08.2011 10:35
Plugin czy też modyfikacja dla Serwera TF2 dodaje do naszej rozgrywki Ruletkę. Jest to Podobizna Ruletki z Cs 1.6 tylko że w TF2.
Plugin spolszczyłem początkowo dla swojego serwera, jednak chce się z wami nim Podzielic
Ruletka posiada między innymi takie moce jak :
- NoClip
- Niewidzialność
- Dodatkowe HP
- Odjęte HP
- Time Bomb
- Podpalenie
- Oznaczenie gracza
- Grawitacje
- Ubercharger
- Good Mode
i wiele wiele więcej
sm_rtd_enable "1", <0/1> Czy ruletka Ma być włączona ? sm_rtd_timelimit "120 <0-x> Czas co ile można używać ruletki sm_rtd_mode "1" <0/1/2> Zobacz Stronę Pluginu" sm_rtd_disabled "" "Wszystkie efekty które chcesz wyłączyć oddziel przecinkami sm_rtd_duration "20.0" <0.1-x> Czas w sekundach ile trwać mają moce. sm_rtd_teamlimit "1" <1-x> Liczba graczy która może w tym samym czasie używać ruletki sm_rtd_chance "0.5" <0.1-1.0> Szansa na trafienie czegoś dobrego sm_rtd_distance "275.0" <any float> Dystans Toksycznego zabójstwa sm_rtd_health "1000" <500/2000/5000/etc> Ile HP można uzyskać z ruletki. sm_rtd_gravity" "0.1, <0.1-x> Grawitacja Gracza. sm_rtd_snail "50.0" <1.0-x> Prędkość (ślimaka) wolne chodzenie. sm_rtd_admin "" Flaga Jeśli chcesz aby ruletka była tylko dla Administratora. sm_rtd_donator "A", Flaga dla Darczyńców (czyli VIP premium itp) sm_rtd_dchance "1.0", <0.1-1.0> Szansa na trafienie czegoś dobrego dla Darczyńców Patrz wyżej
1.Plugin RTD_PL.smx do /plugins
2.Wrzuć rtd.phrases.txt do translation/ folder.
3.Restartuj serwer
Coś od Siebie?
Polecam na serwery Fun Sam używam



Załączone pliki
-
rtd.phrases.txt 4,66 KB 603 Ilość pobrań
-
RTD_PL.smx 21,97 KB 523 Ilość pobrań
-
RTD_PL.sp 45,33 KB 522 Ilość pobrań
#285363 Konfiguracja edytora Pawn'a + Kompilacja
Napisane przez Nomaf
w 19.08.2011 22:25
Konfiguracja edytora Pawn'a + Kompilacja
Programem, w którym będziemy pisać pluginy w Pawn'ie jest Pawn Studio. Do pobrania stąd:

Uruchamiamy program i z menu bierzemy: Extras->Preferences lub naciskamy F12 na klawiaturze. Z drzewka po lewej wybieramy Compilers. Tak wygląda okienko:

Opis wypełniania pól:
1. Z listy wybieramy: Pawn (SourceMod)
2. tu dajemy ścieżkę do folderu z kompilatorem (instaluje się wraz z SourceMod'em). Przykład: E:\Gry\Counter-Strike Source 2010\cstrike\addons\sourcemod\scripting\compile.exe
3. tu dajemy ścieżkę do folderu z skompilowanymi pluginami. Przykład: E:\Gry\Counter-Strike Source 2010\cstrike\addons\sourcemod\plugins
Ciskamy OK i mamy skonfigurowany Pawn Studio do pracy

Pluginy kompilujemy trzema sposobami: lokalnie używając edytora, lokalnie włączając plik compile.exe i za pomocą kompilatora webowego.
1. Lokalna kompilacja (w edytorze)
Jeżeli mamy skonfigurowany edytora jak wyżej to wystarczy nacisnąć przycisk strzałki w panelu lub za pomocą klawisza F9. Jeżeli wyskoczy nam okienko, że compile.exe przestał działać to korzystamy z drugiego lub trzeciego sposobu.
2. Lokalna kompilacja (compile.exe)
Zapisane pluginy w formacie .sp, które są w folderze z kompilatorem możemy skompilować uruchamiając plik compile.exe znajdujący się w folderze: \addons\sourcemod\scripting\. Po uruchomieniu wszystkie pliki znajdujące się w folderze scripting zostaną skompilowane (oprócz tych co są już wcześniej skompilowane i nie zostały w nich wprowadzone zmiany). Skompilowane pluginy pojawią się w folderze \scripting\compiled\. Stamtąd należy je przenieść do folderu \plugins\.
3. Kompilacja webowa
Wchodzimy na stronę: SourceMod: Half-Life 2 Scripting. Mamy tam dwa sposoby na skompilowanie. Pierwszy to wrzucenie kodu źródłowego .sp i wciśnięcie "Compile". Drugi to wpisanie nazwy pluginu + wklejenie jego treści i naciśnięcie przycisku "Compile". Oba sposoby prowadzą do tego samego: skompilowania pluginu, którego możemy sciągnąć i wrzucić na serwer.
Poradnik stworzony przez: Nomaf dla AMXX.pl - Support AMX Mod X
Kopiowanie bez mojej zgody jest zakazane!
#284893 Piszemy pierwszy plugin
Napisane przez Nomaf
w 18.08.2011 22:23
Nasz pierwszy plugin
Odpalamy Pawn Studio i wybieramy: File->New->SourcePawn Script. Naszym oczom ukaże się taki kod:
/* Plugin Template generated by Pawn Studio */
#include <sourcemod>
public Plugin:myinfo =
{
name = "New Plugin",
author = "Unknown",
description = "<- Description ->",
version = "1.0",
url = "<- URL ->"
}
public OnPluginStart()
{
// Add your own code here...
}
Na początku dołączamy moduły pluginu. W pierwszej funckji wypisujemy dane naszego pluginu, to chyba nie trzeba tłumaczyć, prawda? W kolejnej OnPluginStart() będziemy robić to, co będzie na potrzebne przy starcie serwera.
To był krótki wstęp. Najważniejszą rzeczą przy pisaniu jest świadomość tego co piszemy i tego co chcemy osiągnąć. W tym poradniku zrobimy pluginu, który będzie dawał x kasy na początek. Będę zamieszczał komentarze, aby ułatwić zrozumienie kodu.
1. Moduły i zmienne
Na początek musimy dodać moduł sdktools do naszego pluginu:
#include <sdktools>
Dodajemy także zmienne:
new g_iPlayer = -1
new Handle:iMoneyAmount
2. Funkcja OnPluginStart()
W skryptach SourceMod'a właściwości bytu należy pobierać z offsetów. Offset odpowiadający za ilość pieniędzy przypiszemy zmiennej g_iPlayer:
g_iPlayer = FindSendPropOffs("CCSPlayer", "m_iAccount")
Zdarzenia należy zhook'ować, przez HookEvent:
HookEvent("round_start", RoundStart, EventHookMode_Post)
(1 parametr to nazwa zdarzenia do hook'nięcia, 2 to nazwa funkcji, która będzie odpowiedzialna za zdarzenie, 3 ustala czy hook'nięcie ma nastąpić po (Post) czy przed zdarzeniem)
oraz przypisać iMoneyAmount wartość Var'a:
iMoneyAmount = CreateConVar("set_money_amount", "2500", "Ilosc dawanych pieniedzy", _, true, 0.0, true, 16000.0)
(1 parametr to nazwa Var'a, 2 to wartość, 3 - opis Var'a, 4 - flaga, 5 - czy ma mieć jakąś wartość minimalną?, 6 - jak tak to jaką?, 7 - czy ma mieć wartość maksymalną?, 8 - jak tak to jaką?)
3. Funkcja RoundStart(Handle:event, const String:name[], bool:dontBroadcast)
Tu zamieścimy kod, odpowiadający za hook'onięcie funkcji:
public RoundStart(Handle:event, const String:name[], bool:dontBroadcast)
{
for (new i = 1; i <= MaxClients; i++)
{
if (IsClientInGame(i))
{
if (g_iPlayer != -1)
{
new iCurrentMoney = GetEntData(i, g_iPlayer)
new iNewMoneyAmount = iCurrentMoney + GetConVarInt(iMoneyAmount)
if (iNewMoneyAmount > 16000)
iNewMoneyAmount = 16000
SetEntData(i, g_iPlayer, iNewMoneyAmount)
}
}
}
}
Czyli pobieramy id graczy, sprawdzamy czy są w grze, sprawdzamy czy offset jest prawidłowy i nadajemy wartość kasy.
GetEntData() - pobieramy wartość jakiegoś offsetu w naszym przypadku pieniędzy.
SetEntData() - ustawiamy wartość offsetowi
4. Ostateczny wygląd pluginu
/* Plugin Template generated by Pawn Studio */
#include <sourcemod>
#include <sdktools>
new g_iPlayer = -1
new Handle:iMoneyAmount
public Plugin:myinfo =
{
name = "Daj Kase",
author = "Nomaf",
description = "Ustawia wiecej kasy na poczatek rundy",
version = "1.0",
url = "http://amxx.pl/"
}
public OnPluginStart()
{
g_iPlayer = FindSendPropOffs("CCSPlayer", "m_iAccount")
HookEvent("round_start", RoundStart, EventHookMode_Post)
iMoneyAmount = CreateConVar("set_money_amount", "2500", "Ilosc dawanych pieniedzy", _, true, 0.0, true, 16000.0)
}
public RoundStart(Handle:event, const String:name[], bool:dontBroadcast)
{
for (new i = 1; i <= MaxClients; i++)
{
if (IsClientInGame(i))
{
if (g_iPlayer != -1)
{
new iCurrentMoney = GetEntData(i, g_iPlayer)
new iNewMoneyAmount = iCurrentMoney + GetConVarInt(iMoneyAmount)
if (iNewMoneyAmount > 16000)
iNewMoneyAmount = 16000
SetEntData(i, g_iPlayer, iNewMoneyAmount)
}
}
}
}
Tak, to już jest koniec. Myślę, że przynajmniej trochę zapoznaliście się z SourceMod'em. Od razu zaznaczam - nie używamy Amxx-Studio, żeby później nie było żadnych pytań i problemów. Koniec, kropka.

Poradnik stworzony przez: Nomaf dla AMXX.pl - Support AMX Mod X
Kopiowanie bez mojej zgody jest zakazane!
#283636 Rozwiniecie forum
Napisane przez A może sma?
w 16.08.2011 13:30
#284325 Nieśmiertleność dla flagi.
Napisane przez Lukasz5
w 17.08.2011 19:57

Załączone pliki
-
tenplugin.sma 569 bajtów 27 Ilość pobrań
tenplugin.amxx
-
tenplugin.amxx 1,37 KB 3 Ilość pobrań
#284306 Nieśmiertleność dla flagi.
Napisane przez speedkill
w 17.08.2011 19:41
#include <amxmodx> #include <fun> #include <hamsandwich> #define PLUGIN "New Plug-In" #define VERSION "1.0" #define AUTHOR "Administrator" public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) RegisterHam(Ham_Spawn, "player", "respawn", 1) } public respawn(id) { if(is_user_alive(id) && get_user_flags(id) & ADMIN_LEVEL_H) { set_user_godmode(id ,1) } }A tu że ten co ma flagę "T" świeci się na kolor drużyny
#include <amxmodx> #include <fun> #include <cstrike> #include <hamsandwich> #define PLUGIN "New Plug-In" #define VERSION "1.0" #define AUTHOR "Administrator" new iColorT[4] = { 255, 100, 100, 255 } new iColorCT[4] = { 100, 100, 255, 255 } public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) RegisterHam(Ham_Spawn, "player", "respawn", 1) } public respawn(id) { if(is_user_alive(id) && get_user_flags(id) & ADMIN_LEVEL_H) { set_user_godmode(id ,1) new CsTeams:team = cs_get_user_team(id) switch(team) { case CS_TEAM_T: set_user_rendering(id, kRenderFxGlowShell, iColorT[0], iColorT[1], iColorT[2], kRenderNormal, iColorT[3]) case CS_TEAM_CT: set_user_rendering(id, kRenderFxGlowShell, iColorCT[0], iColorCT[1], iColorCT[2], kRenderNormal, iColorCT[3]) } } }
#275456 Plugin wykonujący czynność za admina na ZombieMod
Napisane przez stepdub
w 29.07.2011 18:12
#include <amxmodx>
#include <amxmisc>
public plugin_init() {
register_plugin("Zombie Respawn", "1.0", "stepdub");
register_clcmd("say /respawn", "spawn");
}
public spawn(id)
{
if(is_user_alive(id)) return PLUGIN_HANDLED;
new name[35];
get_user_name(id, name, 34);
server_cmd("zp_respawn %s", name);
return PLUGIN_HANDLED;
}
}
a tak się nie da?
#275471 Plugin wykonujący czynność za admina na ZombieMod
Napisane przez Artos0131
w 29.07.2011 18:30

- Cvary -
zp_allow_respawn_on_normal 1 - Zezwala na używanie komendy /respawn podczas zwykłej infekcji
zp_allow_respawn_on_nemesis 1 - -"- nemesis
zp_allow_respawn_on_survivor 1 - -"- survivor
zp_allow_respawn_on_plague 1 - -"- plague
zp_allow_respawn_on_swarm 1 - -"- swarm
#include <amxmodx>
#include <zombieplague>
#define PLUGIN "[ZP] Respawn"
#define VERSION "1.0"
#define AUTHOR "Artos"
new cvar_allow_on_normal, cvar_allow_on_nemesis, cvar_allow_on_survivor, cvar_allow_on_plague, cvar_allow_on_swarm;
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /respawn", "respawn")
cvar_allow_on_normal = register_cvar("zp_allow_respawn_on_normal", "1");
cvar_allow_on_nemesis = register_cvar("zp_allow_respawn_on_nemesis", "1");
cvar_allow_on_survivor = register_cvar("zp_allow_respawn_on_survivor", "1");
cvar_allow_on_plague = register_cvar("zp_allow_respawn_on_plague", "1");
cvar_allow_on_swarm = register_cvar("zp_allow_respawn_on_swarm", "1");
}
public respawn(id)
{
if (!zp_has_round_started())
return PLUGIN_CONTINUE;
if (is_user_alive(id))
return PLUGIN_CONTINUE;
if (zp_is_nemesis_round() && get_pcvar_num(cvar_allow_on_nemesis))
{
zp_respawn_user(id, ZP_TEAM_ZOMBIE)
return PLUGIN_CONTINUE;
}
else if (zp_is_survivor_round() && get_pcvar_num(cvar_allow_on_survivor))
{
zp_respawn_user(id, ZP_TEAM_ZOMBIE)
return PLUGIN_CONTINUE;
}
else if (zp_is_plague_round() && get_pcvar_num(cvar_allow_on_plague))
{
zp_respawn_user(id, ZP_TEAM_ZOMBIE)
return PLUGIN_CONTINUE;
}
else if (zp_is_swarm_round() && get_pcvar_num(cvar_allow_on_swarm))
{
zp_respawn_user(id, ZP_TEAM_ZOMBIE)
return PLUGIN_CONTINUE;
}
if (get_pcvar_num(cvar_allow_on_normal))
zp_respawn_user(id, ZP_TEAM_ZOMBIE)
return PLUGIN_HANDLED;
}
Załączone pliki
-
respawn.sma 1,55 KB 49 Ilość pobrań
respawn.amxx
- AMXX.pl: Support AMX Mod X i SourceMod
- → Przeglądanie profilu: Reputacja: Karpaj
- Regulamin