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.
Rozpoczynaj nowe tematy i odpowiedaj na inne
Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
Dodawaj wydarzenia do kalendarza społecznościowego
Stwórz swój własny profil i zdobywaj nowych znajomych
public fw_ItemDeploy_Post(iEnt)
{
if(cvar == 1)
{
set_pdata_float(iEnt, 46, get_gametime() + 999.0, 4);
}
else
{
nie wiem co tutaj wpisać żeby odblokować IN_ATTACK
}
Lepszym zastosowaniem było by.
public fw_ItemDeploy_Post(iEnt)
{
if(cvar != 1)
return HAM_IGNORED; //pomijam resztę funkcji w publicu
set_pdata_float(iEnt, 46, 999.0, 4); //tutaj wystarczy 999.0 ;)
}
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
new const g_iBlockedWeaponId = CSW_GLOCK18; //Id broni do zablokowania
new const g_szBlockedWeaponName[] = "weapon_glock18"; //Nazwa broni do zablokowania
new const Float:g_fAttackTime = 1.1; //Czas ataku (tzn. po ilu sekundach od zaatakowania, mozna atakowac znowu :))
new Float:g_fTimeToNextPlayerAttack[33];
public plugin_init()
{
register_plugin("Fejk szot", "0.1", "d0naciak");
register_forward(FM_CmdStart, "fw_CmdStart_Post", 1);
RegisterHam(Ham_Item_Deploy, g_szBlockedWeaponName, "fw_ItemDeploy_Post", 1);
}
public fw_CmdStart_Post(id, iUc)
{
if(!is_user_alive(id))
return FMRES_IGNORED;
if(get_user_weapon(id) != g_iBlockedWeaponId)
return FMRES_IGNORED;
static iButtons, iOldButtons;
iButtons = get_uc(iUc, UC_Buttons);
iOldButtons = pev(id, pev_oldbuttons);
if(iButtons & IN_ATTACK && !(iOldButtons & IN_ATTACK))
{
if(get_gametime() < g_fTimeToNextPlayerAttack[id])
return FMRES_IGNORED;
setWeaponAnim(id, 5);
g_fTimeToNextPlayerAttack[id] = get_gametime() + g_fAttackTime;
}
return FMRES_IGNORED;
}
public fw_ItemDeploy_Post(iEnt)
set_pdata_float(iEnt, 46, get_gametime() + 999.0, 4);
stock setWeaponAnim(id, anim) {
set_pev(id, pev_weaponanim, anim)
message_begin(MSG_ONE, SVC_WEAPONANIM, {0, 0, 0}, id)
write_byte(anim)
write_byte(pev(id, pev_body))
message_end()
}
Jednak pierwszy kod prethinkowy mnie odstrasza i nie działa kiedy ustawiam go tylko dla jednej wybranej broni, a drugi chciałem przerobić żeby działał tylko przy wybranej broni i włączonym cvarze, co udało mi się "zrobić", ale gdy zmieniam cvar na "wyłączony" to dalej nie da się używać IN_ATTACK, problem leży w "fw_ItemDeploy_Post"
public fw_ItemDeploy_Post(iEnt)
{
if(cvar == 1)
{
set_pdata_float(iEnt, 46, get_gametime() + 999.0, 4);
}
else
{
nie wiem co tutaj wpisać żeby odblokować IN_ATTACK
}
Może mnie ktoś oświecić co trzeba tam wpisać? Tylko ten kod z drugiego spoilera mnie interesuje, więc proszę nie podawać innych
public fw_ItemDeploy_Post(iEnt)
{
if(cvar == 1)
{
set_pdata_float(iEnt, 46, get_gametime() + 999.0, 4);
}
else
{
nie wiem co tutaj wpisać żeby odblokować IN_ATTACK
}
Lepszym zastosowaniem było by.
public fw_ItemDeploy_Post(iEnt)
{
if(cvar != 1)
return HAM_IGNORED; //pomijam resztę funkcji w publicu
set_pdata_float(iEnt, 46, 999.0, 4); //tutaj wystarczy 999.0 ;)
}