Witam. Chciałbym, aby ktoś z Was napisał mi plugin.
Respawn gracza > Zablokowanie +attack i +attack2, fm_set_user_godmode na 1 > task 5 sekund > Odblokowanie +attack i +attack2, fm_set_user_godmode na 0
Próbowałem zrobić, ale nie znam za bardzo hamsandwich i moje próby kończyły się zawsze crashem serwera (problem z odblokowaniem strzału).
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
Respawn + Blokada strzelania
Temat rozp. daedhelil, 04.01.2012 22:14
4 odpowiedzi w tym temacie
#1
Napisano 04.01.2012 22:14
#2
Napisano 04.01.2012 23:20
Nie gwarantuje że działa tak na bardzo szybko
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "pc"
new bool:tab[33];
public plugin_init()
{
register_forward(FM_PlayerPreThink, "PlayerPreThink");
register_forward(FM_UpdateClientData, "UpdateClientData_Post", 1);
RegisterHam(Ham_Spawn, "player", "start", 1);
register_plugin(PLUGIN, VERSION, AUTHOR);
}
public client_connect(id)
{
fm_set_user_godmode(id, 0);
tab[id] = false;
}
public client_disconnect(id)
{
fm_set_user_godmode(id, 0);
tab[id] = false;
}
public start(id)
{
fm_set_user_godmode(id, 1);
tab[id] = true;
set_task(5.0, "cos", id);
}
public cos(id)
{
fm_set_user_godmode(id, 0);
tab[id] = false;
}
public PlayerPreThink(id)
{
if(!tab[id])
return FMRES_IGNORED;
if(!is_user_alive(id))
return FMRES_IGNORED;
set_pev(id, pev_button, pev(id,pev_button) & ~IN_ATTACK);
set_pev(id, pev_button, pev(id,pev_button) & ~IN_ATTACK2);
return FMRES_HANDLED;
}
public UpdateClientData_Post(id, sendweapons, cd_handle)
{
if(!tab[id])
return FMRES_IGNORED;
if(!is_user_alive(id))
return FMRES_IGNORED;
set_cd(cd_handle, CD_ID, 0);
return FMRES_HANDLED;
}
stock fm_set_user_godmode(index, godmode = 0)
{
set_pev(index, pev_takedamage, godmode == 1 ? DAMAGE_NO : DAMAGE_AIM);
return 1;
}
Użytkownik Lelek edytował ten post 04.01.2012 23:20
#3
Napisano 05.01.2012 09:21
Działa. Dziękuje Ci bardzo. Teraz postaram się zrozumieć to co napisałeś. Do zamknięcia.
+
+
#4
Napisano 05.01.2012 11:12
Pisałeś że miałeś problem z odblokowaniem str zału. Dlatego popatrz na to co napisałem. Nie mówię że ten kod jest idealny bo ma wady Bynajmniej takie jak na szybko wychwyciłem, ale wracając do odblokowania strzału to kwestia bardzo prosta. Tworzysz sobie tablice typu bool:
Później w głównej funkcji blokady strzału dajesz instrukcje warunkową:
I później w którym momencie chcesz wywołać dajesz true(prawda) a jak chcesz zablokowac(false)
new bool:MojaNazwaTablicy[33];
Później w głównej funkcji blokady strzału dajesz instrukcje warunkową:
if(MojaNazwaTablicy[id])
{
//kod
}
I później w którym momencie chcesz wywołać dajesz true(prawda) a jak chcesz zablokowac(false)
public spawn(id)
{
MojaNazwaTablicy[id] = true;
}
Użytkownik Lelek edytował ten post 05.01.2012 11:13
#5
Napisano 05.01.2012 12:56
Rozumiem to co napisałeś, ale po prostu próbowałem zrobić to z pomocą tego:
http://darkgl.amxx.p...kada-lpm-i-ppm/
http://darkgl.amxx.p...kada-lpm-i-ppm/
Użytkownicy przeglądający ten temat: 1
0 użytkowników, 1 gości, 0 anonimowych