Leidimas išmesti granatą

Šiame forume rašomi vartotojų klausimai/problemos su kuriomis jie susidūrė kuriant pluginus.
Post Reply
User avatar
xFrostas
Flooderis arba specialistas
Posts: 660
Joined: 2010 Sep 02 15:47
Skype: frost.lt

Leidimas išmesti granatą

Post by xFrostas »

Taigi, noriu padaryti, jog kai būna Leidimas false, neleistų išmesti granatos, o kai true leistų, kaip tai padaryti? Štai nevykęs bandymas

Code: Select all

 RegisterHam(Ham_Item_AddToPlayer, "weapon_hegrenade", "OnHeGrenadeAddToPlayer", true) public OnHeGrenadeAddToPlayer(ent, const player){    if (!Leidimas[player])    {        set_pdata_float(ent, 46, 999999.9, 4)    }    else    {        return HAM_IGNORED    }    return HAM_IGNORED}
Ši funkcija visai neveikia, visada neleidžia išmesti:/
Last edited by xFrostas on 2013 Feb 28 22:42, edited 1 time in total.

User avatar
hleV
AMX Mod X ekspertai
Posts: 875
Joined: 2011 Apr 02 11:23
Skype: hlev.lt
Location: Šiauliai

Re: Leidimas išmesti granatą

Post by hleV »

OnHeGrenadeAddToPlayer() iššaukiamas tik kai žaidėjas gauna granatą. Jei nori leist ar neleist išmest, tai naudok funkciją

Code: Select all

ToggleWeaponPrimaryAttack(ent, bool:allowPrimaryAttack){    set_pdata_float(ent, 46, allowPrimaryAttack ? 0.0 : 999999.9, 4);}
Image ← RIP best userbar
DISKUSIJA: KIETAS PLUGIN'O UŽSAKOVAS
Privačios pagalbos neteikiu!

User avatar
xFrostas
Flooderis arba specialistas
Posts: 660
Joined: 2010 Sep 02 15:47
Skype: frost.lt

Re: Leidimas išmesti granatą

Post by xFrostas »

Code: Select all

public Fwd_CmdStart(id, uc_handle, seed){    if (!(1 <= id <= MaxPlayers) || !is_user_alive(id))         return FMRES_IGNORED     new button = get_uc(uc_handle, UC_Buttons)    new oldbuttons = pev(id, pev_oldbuttons)     new WeaponID, clip, ammo    WeaponID = get_user_weapon(id, clip, ammo)     if (WeaponID == CSW_HEGRENADE)    {        if ((button & IN_ATTACK) && !(oldbuttons & IN_ATTACK))        {            if (!Leidimas[id])            {                ToggleWeaponPrimaryAttack(id, false)            }            else            {                ToggleWeaponPrimaryAttack(id, true)            }        }    }       return FMRES_IGNORED}
Kas čia blogai?

User avatar
hleV
AMX Mod X ekspertai
Posts: 875
Joined: 2011 Apr 02 11:23
Skype: hlev.lt
Location: Šiauliai

Re: Leidimas išmesti granatą

Post by hleV »

Image
Image ← RIP best userbar
DISKUSIJA: KIETAS PLUGIN'O UŽSAKOVAS
Privačios pagalbos neteikiu!

User avatar
xFrostas
Flooderis arba specialistas
Posts: 660
Joined: 2010 Sep 02 15:47
Skype: frost.lt

Re: Leidimas išmesti granatą

Post by xFrostas »

:DDDd

--

tai jį reikia šitaip registruoti?

Code: Select all

    RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_hegrenade", "ToggleWeaponPrimaryAttack" , 1)

User avatar
hleV
AMX Mod X ekspertai
Posts: 875
Joined: 2011 Apr 02 11:23
Skype: hlev.lt
Location: Šiauliai

Re: Leidimas išmesti granatą

Post by hleV »

Tau nereikia nieko registruot. Tą OnHeGrenadeAddToPlayer() palik kaip originaliai buvo (kitoj temoj), o kad leistum/neleistum mest granatos, gali naudot kažką tokio:

Code: Select all

ToggleHeGrenadePrimaryAttack(client, bool:primaryAttack){    new ent = find_ent_by_owner(-1, "weapon_hegrenade", client);     if (ent > 0)        ToggleWeaponPrimaryAttack(ent, primaryAttack);}
Tau nereikia to atlikt kažkokiam tai konkrečiam forward'e, tiesiog panaudok tą funkciją tada, kai keiti kintamojo Leidimas[] reikšmę.
Last edited by hleV on 2013 Mar 03 18:04, edited 2 times in total.
Image ← RIP best userbar
DISKUSIJA: KIETAS PLUGIN'O UŽSAKOVAS
Privačios pagalbos neteikiu!

User avatar
xFrostas
Flooderis arba specialistas
Posts: 660
Joined: 2010 Sep 02 15:47
Skype: frost.lt

Re: Leidimas išmesti granatą

Post by xFrostas »

Meta error

Code: Select all

ToggleHeGrenadePrimaryAttack(client, bool:primaryAttack){    new ent = find_ent_by_owner(client, "weapon_hegrenade"); // number of arguments does not match definition     if (ent > 0)        ToggleWeaponPrimaryAttack(ent, primaryAttack);}

User avatar
hleV
AMX Mod X ekspertai
Posts: 875
Joined: 2011 Apr 02 11:23
Skype: hlev.lt
Location: Šiauliai

Re: Leidimas išmesti granatą

Post by hleV »

Pataisiau.
Image ← RIP best userbar
DISKUSIJA: KIETAS PLUGIN'O UŽSAKOVAS
Privačios pagalbos neteikiu!

User avatar
xFrostas
Flooderis arba specialistas
Posts: 660
Joined: 2010 Sep 02 15:47
Skype: frost.lt

Re: Leidimas išmesti granatą

Post by xFrostas »

Pagaliau, viskas kaip ir veikia, didelis dėkui tau.

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest