Witajcie, problem z tym pluginem jest taki, że jeśli ktoś się z respi w czasie trwania rundy to jest on nieśmiertelny przez cały czas.
To równanie zostało stworzone przy pomocy kodu LaTeX:
Edytor LaTeX online: CodeCogs.com/latex/eqneditor.php
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.
|




Nie podano
Gram Jajami nie posiada znajomych
27.08.2014 12:31
Witajcie, problem z tym pluginem jest taki, że jeśli ktoś się z respi w czasie trwania rundy to jest on nieśmiertelny przez cały czas.
12.08.2014 18:08
Witajcie, proszę o napisanie pluginu, który będzie chronił gracza przy odrodzeniu przez 2s (może być cvar), nie będzie mógł oddać strzału (opcjonalnie) oraz będzie on podświetlany przez ten czas. Używam tego http://amxx.pl/topic...on-pl-by-dudix/ ale nie działa on jak powinien.
06.08.2014 16:34
Witajcie, chce dodać do pluginu od respienia, aby dostawało się "coś" przy respieniu tylko w czasie trwania rundy (nie przy rozpoczęciu nowej rundy), ale nie wiem dokładnie, w które miejsce
#include <amxmodx>
#include <hamsandwich>
#define PLUGIN "Autorespawn/Auto-respawn"
#define AUTHOR "HubertTM"
#define VERSION "1.0"
new TimeSpawn[33] = 0;
new bool:Timer[33] = false;
new cTimeSpawn, pTimeSpawn, cInfoSpawn, pInfoSpawn, cTeamSpawn, pTeamSpawn, cSayRespawn, pSayRespawn, cTeamAuto, pTeamAuto, cPlayers, pPlayers, cColor, pColor
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
RegisterHam(Ham_Killed, "player", "ham_killed", 1);
RegisterHam(Ham_Spawn, "player", "ham_spawn", 1);
register_clcmd("say /respawn", "SayRespawn");
register_clcmd("say_team /respawn", "SayRespawn");
register_clcmd("say respawn", "SayRespawn");
cTimeSpawn = register_cvar("spawn_time", "3");
cInfoSpawn = register_cvar("spawn_infotimer", "1");
cTeamSpawn = register_cvar("spawn_team", "0");
cSayRespawn = register_cvar("spawn_say", "1");
cTeamAuto = register_cvar("spawn_auto", "1");
cPlayers = register_cvar("spawn_minplayers", "2");
cColor = register_cvar("spawn_colorhud", "0");
}
public client_putinserver(id){
Timer[id] = false
TimeSpawn[id] = 0;
set_task(5.0, "CheckTeam", id+291,_,_,"b");
}
public client_disconnect(id){
Timer[id] = false
TimeSpawn[id] = 0;
remove_task(id+291);
}
public ham_killed(id)
{
pTimeSpawn = get_pcvar_num(cTimeSpawn);
pInfoSpawn = get_pcvar_num(cInfoSpawn);
pTeamSpawn = get_pcvar_num(cTeamSpawn);
pSayRespawn = get_pcvar_num(cSayRespawn);
pTeamAuto = get_pcvar_num(cTeamAuto);
pPlayers = get_pcvar_num(cPlayers);
pColor = get_pcvar_num(cColor);
if(!is_user_connected(id) || get_user_team(id) == 3 || get_user_team(id) == 0 || is_user_alive(id))
return HAM_IGNORED;
if(pTeamSpawn && get_user_team(id) != pTeamSpawn)
return HAM_IGNORED;
if(pPlayers && get_playersnum() < pPlayers)
return HAM_IGNORED;
TimeSpawn[id] = pTimeSpawn;
UtworzHUD(id);
remove_task(id+492);
set_task(1.0, "TimerSpawn", id+492);
Timer[id] = true;
return HAM_IGNORED;
}
public SpawnPlayer(id)
{
if(!is_user_connected(id) || get_user_team(id) == 3 || get_user_team(id) == 0 || is_user_alive(id))
return PLUGIN_CONTINUE;
if(pTeamSpawn && get_user_team(id) != pTeamSpawn)
return PLUGIN_CONTINUE;
if(get_playersnum() < pPlayers)
return PLUGIN_CONTINUE;
TimeSpawn[id] = pTimeSpawn;
UtworzHUD(id);
remove_task(id+492);
set_task(1.0, "TimerSpawn", id+492);
Timer[id] = true;
return PLUGIN_CONTINUE;
}
public UtworzHUD(id){
if(pInfoSpawn){
switch(pColor)
{
case 0: set_hudmessage(255, 0, 0, -1.0, 0.4, 0, 1.5, 3.0);
case 1: set_hudmessage(0, 255, 0, -1.0, 0.4, 0, 1.5, 3.0);
case 2: set_hudmessage(0, 102, 255, -1.0, 0.4, 0, 1.5, 3.0);
case 3: set_hudmessage(255, 255, 255, -1.0, 0.4, 0, 1.5, 3.0);
}
switch(TimeSpawn[id]){
case 0: show_hudmessage(id, "Odradzanie...");
case 1: show_hudmessage(id, "Odrodzisz sie za: %d sekunde", TimeSpawn[id]);
case 2 .. 4: show_hudmessage(id, "Odrodzisz sie za: %d sekundy", TimeSpawn[id]);
default: show_hudmessage(id, "Odrodzisz sie za: %d sekund", TimeSpawn[id]);
}
}
}
public TimerSpawn(id){
id-=492
if(!is_user_connected(id) || is_user_alive(id) || get_user_team(id) == 3 || get_user_team(id) == 0){
Timer[id] = false;
return PLUGIN_CONTINUE;
}
if(TimeSpawn[id] > 1)
{
TimeSpawn[id]--;
Timer[id] = true;
UtworzHUD(id);
set_task(1.0, "TimerSpawn", id+492);
}
else
{
PlayerSpawn(id);
Timer[id] = false;
}
return PLUGIN_CONTINUE;
}
public PlayerSpawn(id)
{
if(!is_user_connected(id) || is_user_alive(id) || get_user_team(id) == 3 || get_user_team(id) == 0)
return PLUGIN_CONTINUE;
ExecuteHamB(Ham_CS_RoundRespawn, id);
Timer[id] = false;
return PLUGIN_CONTINUE;
}
public ham_spawn(id){
if(task_exists(id+492))
remove_task(id+492);
Timer[id] = false;
TimeSpawn[id] = pTimeSpawn
}
public SayRespawn(id)
{
if(!pSayRespawn || !is_user_connected(id) || is_user_alive(id) || get_user_team(id) == 3 || get_user_team(id) == 0 || Timer[id])
{
if(pSayRespawn && is_user_alive(id))
client_print(id, print_chat, "[Respawn] Jestes zywy!");
else
if(pSayRespawn && (get_user_team(id) == 0 || get_user_team(id) == 3))
client_print(id, print_chat, "[Respawn] Jestes spectatorem!");
else
if(pSayRespawn && Timer[id] && is_user_connected(id) && !is_user_alive(id) && (get_user_team(id) == 1 || get_user_team(id) == 2)){
new menu = menu_create("Trwa odrodzenie jednak odrodzic?", "SayRespawnH");
menu_additem(menu, "Tak, odrodz mnie");
menu_additem(menu, "Nie chce.");
menu_display(id, menu);
}
return PLUGIN_CONTINUE;
}
SpawnPlayer(id);
return PLUGIN_CONTINUE;
}
public SayRespawnH(id, menu , item){
if(item != 0){
menu_destroy(menu);
return PLUGIN_HANDLED;
}
SpawnPlayer(id);
Timer[id] = false;
return PLUGIN_CONTINUE;
}
public CheckTeam(id){
id-=291
if(!is_user_connected(id))
return PLUGIN_CONTINUE;
if(is_user_alive(id)){
Timer[id] = false;
return PLUGIN_CONTINUE;
}
if(!pTeamAuto)
return PLUGIN_CONTINUE;
if(Timer[id])
return PLUGIN_CONTINUE;
if(get_user_team(id) == 1 || get_user_team(id) == 2)
SpawnPlayer(id);
return PLUGIN_CONTINUE;
}
04.08.2014 18:04
Witajcie, potrzebuje funkcji na odradzanie się z ekwipunkiem, który miało się przed śmiercią.
03.08.2014 23:32
Witajcie, w pluginie Spawn Protection PL nie działa mi cvar "sv_sptime". Proszę o naprawienie.
//----------------------------------------------------------//
/* Podziekowania dla:
Xeroblood, JJkiller, KingPin za pomoc w tworzeniu pluginu oraz dla Firestorm
Instalacja:
Zawartosc tego pliku nalezy skompilowac (tutaj: http://www.amxmodx.org/webcompiler.cgi)
Stworzony plik spawn_protection_pl.amxx, trzeba wrzucic do katalogu "plugins" w amx'ie
Do plugins.ini, ktory znajduje sie w configs nalezy dodac w nowej lini tekst: spawn_protection_pl.amxx
Zrestartowac serwer lub zmienic mape i gotowe :)
Cvary:
// 1 - wlacza plugin, 0 wylacza (domyslnie: 1)
sv_sp
// Od 1 do 10 - Czas przez jaki ma byc ochrona na poczatku rundy (domyslnie: 5)
sv_sptime
// 1 - Wlaczona wiadomosc o ochronie na poczatku rundy, 0 - wylaczona (domyslnie: 1)
sv_spmessage
// Od 1 do 100 - Grubosc powloki ochronnej (domyslnie: 25)
sv_spshellthick
Opis:
Protects players when the spawn from being killed
Polska wersja jezykowa:
Spolszczenia dokonal Dudix ([email protected])
*/
//----------------------------------------------------------//
#include <amxmodx>
#include <amxmisc>
#include <fun>
//----------------------------------------------------------//
public plugin_init()
{
register_plugin("Ochrona na Spawnie PL", "7.0", "Peli")
register_concmd("amx_sptime", "cmd_sptime", ADMIN_CVAR, "Od 1 do 10 - Czas przez jaki ma byc ochrona na poczatku rundy")
register_concmd("amx_spmessage", "cmd_spmessage", ADMIN_CVAR, "1 - Wlaczona wiadomosc o ochronie na poczatku rundy, 0 - wylaczona")
register_concmd("amx_spshellthickness", "cmd_spshellthickness", ADMIN_CVAR, "Od 1 do 100 - Grubosc powloki ochronnej")
register_cvar("sv_sp", "1") // 1 - wlacza plugin, 0 wylacza
register_cvar("sv_sptime", "5") // Od 1 do 10 - Czas przez jaki ma byc ochrona na poczatku rundy
register_cvar("sv_spmessage", "1") // 1 - Wlaczona wiadomosc o ochronie na poczatku rundy, 0 - wylaczona
register_cvar("sv_spshellthick", "25") // Od 1 do 100 - Grubosc powloki ochronnej
register_event("ResetHUD", "sp_on", "be")
register_clcmd("fullupdate", "clcmd_fullupdate")
}
//----------------------------------------------------------//
public client_disconnect(id)
{
remove_task(id)
return PLUGIN_HANDLED
}
//----------------------------------------------------------//
public cmd_sptime(id, level, cid)
{
if(!cmd_access(id, level, cid, 2))
return PLUGIN_HANDLED
new arg_str[3]
read_argv(1, arg_str, 3)
new arg = str_to_num(arg_str)
if(arg > 10 || arg < 1)
{
client_print(id, print_chat, "Mozesz ustawic czas ochrony od 1 do 10 sekund")
return PLUGIN_HANDLED
}
else if (arg > 0 || arg < 11)
{
set_cvar_num("sv_sptime", arg)
client_print(id, print_chat, "Czas ochronny trwa u Ciebie 5 sekund", arg)
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
//----------------------------------------------------------//
public cmd_spmessage(id, level, cid)
{
if (!cmd_access(id, level, cid, 2))
{
return PLUGIN_HANDLED
}
new sp[3]
read_argv(1, sp, 2)
if (sp[0] == '1')
{
set_cvar_num("amx_spmessage", 1)
}
else if (sp[0] == '0')
{
set_cvar_num("amx_spmessage", 0)
}
else if (sp[0] != '1' || sp[0] != '0')
{
console_print(id, "1 - Wlaczona wiadomosc o ochronie na poczatku rundy, 0 - wylaczona")
return PLUGIN_HANDLED
}
return PLUGIN_HANDLED
}
//----------------------------------------------------------//
public cmd_spshellthickness(id, level, cid)
{
if(!cmd_access(id, level, cid, 2))
return PLUGIN_HANDLED
new arg_str[3]
read_argv(1, arg_str, 3)
new arg = str_to_num(arg_str)
if(arg > 100 || arg < 1)
{
client_print(id, print_chat, "Od 1 do 100 - Grubosc powloki ochronnej")
return PLUGIN_HANDLED
}
else if (arg > 0 || arg < 101)
{
set_cvar_num("sv_spshellthickness", arg)
client_print(id, print_chat, "Grubosc powloki ochronnej to 25", arg)
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
//----------------------------------------------------------//
public sp_on(id)
{
if(get_cvar_num("sv_sp") == 1)
{
set_task(0.1, "protect", id)
}
return PLUGIN_CONTINUE
}
//----------------------------------------------------------//
public protect(id)
{
new Float:SPTime = get_cvar_float("sv_sptime")
new SPSecs = get_cvar_num("sv_sptime")
new FTime = get_cvar_num("mp_freezetime")
new SPShell = get_cvar_num("sv_spshellthick")
set_user_godmode(id, 1)
if(get_user_team(id) == 1)
{
set_user_rendering(id, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, SPShell)
}
if(get_user_team(id) == 2)
{
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 255, kRenderNormal, SPShell)
}
if(get_cvar_num("sv_spmessage") == 1)
{
set_hudmessage(255, 1, 1, -1.0, -1.0, 0, 6.0, SPTime+FTime, 0.1, 0.2, 4)
show_hudmessage(id, "Ochrona na poczatku rundy trwa %d sekund(y)", SPSecs)
}
set_task(SPTime+FTime, "sp_off", id)
return PLUGIN_HANDLED
}
//----------------------------------------------------------//
public sp_off(id)
{
new SPShell = get_cvar_num("sv_spshellthick")
if(!is_user_connected(id))
{
return PLUGIN_HANDLED
}
else
{
set_user_godmode(id, 0)
set_user_rendering(id, kRenderFxGlowShell, 0, 0,0, kRenderNormal, SPShell)
return PLUGIN_HANDLED
}
return PLUGIN_HANDLED
}
//----------------------------------------------------------//
public clcmd_fullupdate(id)
{
return PLUGIN_HANDLED
}
//----------------------------------------------------------//



Moja zawartość