open.mp forum
[Filterscript] Knife Shot / Throwing knife - Printable Version

+ open.mp forum (https://forum.open.mp)
-- Forum: SA-MP (https://forum.open.mp/forumdisplay.php?fid=3)
--- Forum: Releases (https://forum.open.mp/forumdisplay.php?fid=13)
---- Forum: Filterscripts (https://forum.open.mp/forumdisplay.php?fid=30)
---- Thread: [Filterscript] Knife Shot / Throwing knife (/showthread.php?tid=1910)



Knife Shot / Throwing knife - AbyssMorgan - 2021-04-18

Hello, I would like to present you the Knife Shot Script



Video:

https://www.youtube.com/watch?v=WJZCn3XXRHY

https://www.youtube.com/watch?v=PSfgKwm3Mc8



Download:

Knife.inc

3DTryg.inc

ColAndreas Plugin



Installation:

Code:
#include <colandreas>

#include <3DTryg>

#include <Knife>



Functions:

Code:
Knife::ToggleUseTeam(bool:toggle);            //default: false

Knife::IsToggleUseTeam();

Knife::ToggleForAll(bool:toggle);             //default: false

Knife::IsToggleForAll();

Knife::ToggleForPlayer(playerid,bool:toggle); //default: false

Knife::IsToggleForPlayer(playerid);

Knife::GetDamage(playerid);

Knife::SetDamage(playerid,Float:amount);

Knife::GetSpeed(playerid);

Knife::SetSpeed(playerid,Float:speed);

Knife::GetRange(playerid);

Knife::SetRange(playerid,Float:range);

Knife::GetAmmo(playerid);

Knife::SetAmmo(playerid,ammo);

Knife::TogglePoisoning(playerid,bool:toggle);

Knife::IsTogglePoisoning(playerid);

Knife::GetPoisoningTime(playerid);

Knife::SetPoisoningTime(playerid,seconds);

Knife::GetPoisoningDamage(playerid);

Knife::SetPoisoningDamage(playerid,Float:damage);



Callbacks:

Code:
OnPlayerRequestKnifeShot(playerid,targetid); //return 0 - prevent to use knife shoot (this callback is called also if ammo is 0)



Definitions:

Code:
KNIFE_SPEED

KNIFE_MAX_RADIUS

KNIFE_REFRESH_ACTION

KNIFE_REFRESH_MISS

KNIFE_DAMAGE

KNIFE_WEAPON_AMMO_INFINITY

KNIFE_DOT_POISONING

KNIFE_POISONING_TIME



WEAPON_KNIFE_THROWN

WEAPON_KNIFE_POISONING



Activation:

Code:
Weapon: Knife



Step 1: Right Mouse Button

Step 2: Left Mouse Button



Notice:

Filterscript not exist because filterscripts have limits.

This has been replaced by include, having automatic installation, efficient GameMode/FilterScript.