Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums



(Advanced Search)

Forum Statistics
» Members: 7,773
» Latest member: Polecalex
» Forum threads: 2,370
» Forum posts: 12,327

Full Statistics

Online Users
There are currently 211 online users.
» 1 Member(s) | 207 Guest(s)
Bing, Google, Yandex, swuffted

Latest Threads
Recompiling for x86_64 or...
Forum: General Discussions
Last Post: Polecalex
4 hours ago
» Replies: 0
» Views: 19
Real-time pathfinder, opt...
Forum: Pawn Scripting
Last Post: hiago.sucesso.hs
Yesterday, 03:40 PM
» Replies: 1
» Views: 155
Is there a WebSocket plug...
Forum: General Discussions
Last Post: hiago.sucesso.hs
Yesterday, 03:37 PM
» Replies: 0
» Views: 16
What would you start?
Forum: Life
Last Post: HELLHOUND
2025-12-14, 10:32 PM
» Replies: 5
» Views: 10,301
After School Roleplay - G...
Forum: Advertisements
Last Post: cosminupgaming
2025-12-14, 02:06 PM
» Replies: 3
» Views: 412
PROJECT: LOS ANGELES — TH...
Forum: Advertisements
Last Post: cosminupgaming
2025-12-13, 07:16 PM
» Replies: 4
» Views: 766
LCSHosting.eu - Free SA-M...
Forum: Tech
Last Post: LCSLaces
2025-12-12, 04:57 PM
» Replies: 0
» Views: 68
Las Venturas Gang Wars - ...
Forum: Advertisements
Last Post: lvgwgta
2025-12-12, 03:29 PM
» Replies: 0
» Views: 50
Infamous Roleplay
Forum: Advertisements
Last Post: JakeFalcone
2025-12-11, 11:34 PM
» Replies: 0
» Views: 55
The server didn't respond...
Forum: Support
Last Post: HELLHOUND
2025-12-11, 01:17 PM
» Replies: 1
» Views: 197

 
  Los Santos Gang Graffiti
Posted by: AbyssMorgan - 2021-04-18, 12:30 PM - Forum: Filterscripts - No Replies

Hello, I would like to present you the Los Santos Gang Graffiti.



Video:

[Image: c0RgnwW.gif]



Installation:

Code:
#include <streamer>

#include <3DTryg>



//#define GRAFFITI_DEFAULT_GANG 0

//#define GRAFFITI_DEFAULT_COLOR 0x003D00FF

//#define GRAFFITI_DEFAULT_NAME "Sekhmete Axion Rush"



#include <Graffiti>



public OnGameModeInit(){

//...load gang meta before init Graffiti

Graffiti::Init();

return 1;

}



public Graffiti::GetPlayerGang(playerid){

return PlayerData[playerid][gang]; //your variable returning gangid

}



//called after player change graffiti tag

public OnGraffitiTagChanged(mobid,playerid,gangid,old_gangid){

new buffer[32];

format(buffer,sizeof(buffer),"~w~Tag painted ~n~%d of %d",Graffiti::CountGangTags(gangid),MAX_GRAFFITI);

GameTextForPlayer(playerid,buffer,3000,4);



//Graffiti::SetGangName(mobid,0xDBDE1FFF,"Grove Street");

return 1;

}



//called after server init

public OnGraffitiTagCreated(mobid,gangid){



//Graffiti::SetGangName(mobid,0xDBDE1FFF,"Grove Street");

return 1;

}



Download:

Graffiti.inc

graffiti.bin (put in /scriptfiles)

3DTryg.inc



Notice:

Filterscript not exist because filterscripts have limits.

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


  Magic Wand
Posted by: AbyssMorgan - 2021-04-18, 12:28 PM - Forum: Filterscripts - Replies (1)

Hello, I would like to present you the Magic Wand Script



Video:

https://www.youtube.com/watch?v=aaHfVz-UxR8



Download:

Magic.inc

3DTryg.inc

ColAndreas Plugin



Installation:

Code:
#include <colandreas>

#include <3DTryg>

#include <Magic>



Functions:

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

Magic::IsToggleUseTeam();

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

Magic::IsToggleForAll();

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

Magic::IsToggleForPlayer(playerid);

Magic::GetDamage(playerid);

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

Magic::GetSpeed(playerid);

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

Magic::GetRange(playerid);

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

Magic::GetAmmo(playerid);

Magic::SetAmmo(playerid,ammo);

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

Magic::IsTogglePoisoning(playerid);

Magic::GetPoisoningTime(playerid);

Magic::SetPoisoningTime(playerid,seconds);

Magic::GetPoisoningDamage(playerid);

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

Magic::SetProjectile(playerid,modelid=18693,Float:rx=90.0,Float:ry=0.0,Float:rz=0.0,Float:offx=0.0,Float:offy=0.0,Float:offz=0.0);

Magic::GetProjectile(playerid,&modelid,&Float:rx=0.0,&Float:ry=0.0,&Float:rz=0.0,&Float:offx=0.0,&Float:offy=0.0,&Float:offz=0.0);



Callbacks:

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



Definitions:

Code:
MAGIC_SPEED

MAGIC_MAX_RADIUS

MAGIC_REFRESH_ACTION

MAGIC_DAMAGE

MAGIC_DOT_POISONING

MAGIC_POISONING_TIME

MAGIC_WEAPON_AMMO_INFINITY



WEAPON_MAGIC_BULLET

WEAPON_MAGIC_POISONING



Activation:

Code:
Weapon: Fist

Left Mouse Button



Notice:

Filterscript not exist because filterscripts have limits.

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


  Knife Shot / Throwing knife
Posted by: AbyssMorgan - 2021-04-18, 12:23 PM - Forum: Filterscripts - No Replies

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.


  VehPara (Vehicle parachute)
Posted by: AbyssMorgan - 2021-04-18, 12:14 PM - Forum: Filterscripts - Replies (4)

Hello, I would like to present you the Vehicle Parachute Script



Video:

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



Download:

VehPara.inc

3DTryg.inc

ColAndreas Plugin



Installation:

Code:
#include <ColAndreas>

#include <3DTryg>

#include <VehPara>



Functions:

Code:
bool:IsPlayerUsingVehPara(playerid);

bool:IsToggleVehicleParachute(vehicleid);

ToggleVehicleParachute(vehicleid,bool:toggle);

SetVehicleParachuteKey(key);



Callbacks:

Code:
OnVehicleParachuteThrown(playerid,vehicleid);

OnVehicleParachuteOpened(playerid,vehicleid);

OnVehicleParachuteOpenFail(playerid,vehicleid);



Activation:

Code:
H - Open/thrown parachute



Example Code:

Code:
CMD:vehpara(playerid){



new vid = GetPlayerVehicleID(playerid);

if(IsToggleVehicleParachute(vid)) return SendClientMessage(playerid,0xCC0000FF,"Your vehicle already has a parachute");

if(!IsVehicleFlag(GetVehicleFlags(vid),VF_STREET)) return SendClientMessage(playerid,0xCC0000FF,"For this vehicle can not be mounted parachute");



ToggleVehicleParachute(vid,true);

return 1;

}



//Callbacks:

public OnVehicleParachuteThrown(playerid,vehicleid){

GameTextForPlayer(playerid,"~g~Parachute has been thrown",2500,3);

return 1;

}



public OnVehicleParachuteOpened(playerid,vehicleid){

GameTextForPlayer(playerid,"~g~Parachute has been opened",2500,3);

return 1;

}



public OnVehicleParachuteOpenFail(playerid,vehicleid){

GameTextForPlayer(playerid,"~g~Cannot use parachute",2500,3);

return 1;

}



Notice:

Filterscript not exist because filterscripts have limits.

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


  ExtendedGrenade
Posted by: AbyssMorgan - 2021-04-18, 12:11 PM - Forum: Libraries - No Replies

Hello, I would like to present you the Extended Granade.



Video:

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



Functions:

Code:
Grenade::IsWeaponEnable(playerid,special_weaponid);

Grenade::WeaponEnable(playerid,special_weaponid,bool:enable);

Grenade::GetSpecialAmmo(playerid,special_weaponid);

Grenade::SetSpecialAmmo(playerid,special_weaponid,ammo);

Grenade::GetEffectID(playerid,special_weaponid);

Grenade::SetEffectID(playerid,special_weaponid,effectid);

Grenade::GetDamage(playerid,special_weaponid);

Grenade::SetDamage(playerid,special_weaponid,Float:damage);

Grenade::GetVehicleDamage(playerid,special_weaponid);

Grenade::SetVehicleDamage(playerid,special_weaponid,Float:damage);

Grenade::GetTime(playerid,special_weaponid);

Grenade::SetTime(playerid,special_weaponid,seconds);

Grenade::IsToggleGasMask(playerid);

Grenade::ToggleGasMask(playerid,bool:toggle);

Grenade::GetSpecialWeaponID(weaponid);

Grenade::GrenadeEffectByPlayer(playerid,special_weaponid,Float:x,Float:y,Float:z);

Grenade::CreateGrenadeEffect(special_weaponid,effectid,Float:x,Float:y,Float:z,worldid,interiorid,playerid,Float:streamdistance,Float:damage,Float:veh_damage,active_time=25,byplayerid=INVALID_PLAYER_ID);

Grenade::DestroyEffect(mobid);



Definitions:

Code:
MAX_GRENADE_EFFECT



GRENADE_DOT_TEAR_GAS

GRENADE_DOT_FIRE



GRENADE_EFFECT_TIME



GRENADE_DEFAULT_PLAYER_DAMAGE

GRENADE_DEFAULT_VEHICLE_DAMAGE



INVALID_GRENADE_ID



//death reason

WEAPON_SUFFOCATION

WEAPON_NAPALM



GRENADE_MAX_SPECIAL_WEAPON



GRENADE_SPECIAL_WEAPON_NONE

GRENADE_SPECIAL_WEAPON_GRENADE

GRENADE_SPECIAL_WEAPON_TEARGAS

GRENADE_SPECIAL_WEAPON_MOLTOV



GRENADE_EFFECT_NONE



GRENADE_EFFECT_CLUSTER_BOMB_1

GRENADE_EFFECT_CLUSTER_BOMB_2

GRENADE_EFFECT_CLUSTER_BOMB_3

GRENADE_EFFECT_CLUSTER_BOMB_4

GRENADE_EFFECT_BANG_GRENADE



GRENADE_EFFECT_SMALL_SMOKE

GRENADE_EFFECT_HUGE_SMOKE_1

GRENADE_EFFECT_HUGE_SMOKE_2

GRENADE_EFFECT_HUGE_SMOKE_3



GRENADE_EFFECT_NAPALM



Download:

ExtendedGrenade.inc

3DTryg.inc

ColAndreas Plugin


  vnpc (Visible FCNPC HP Bar)
Posted by: AbyssMorgan - 2021-04-18, 12:02 PM - Forum: Libraries - Replies (6)

This include allowing to enable/disable FCNPC HP Nick Bars



Screen:

https://i.imgur.com/BEyhX5d.png



Functions:

Code:
ShowNPCInTabList(npcid);

HideNPCInTabList(npcid);



Issues:

- Sometimes, npc need respawn after visible toggling.



Notice:

- This function don't display an NPC on player list in SA:MP application.



Download:

vnpc.inc


  #hashtag
Posted by: AbyssMorgan - 2021-04-18, 12:00 PM - Forum: Libraries - Replies (1)

Include contain function for chat #hashtag system



Code:
hashtag.inc

Copyright ? 2021 Abyss Morgan. All rights reserved.

Contributors: None



Website: https://adm.ct8.pl



Plugins: SScanf

Modules: RGB



File Version: 1.2.1



Functions:

GetHashTag(playerid,text[],hashtag_color=0xCC0000FF,back_color=0xFFFFFFFF,max_len=sizeof(text));

GetAllowedHashTag();

SetAllowedHashTag(number);

HashTag::name(playerid);



Callbacks:

OnHashTagPresented(hashtag[]);



Example:

Code:
//I want #suicide now :D

HashTag::suicide(playerid){

    SetPlayerHealth(playerid,0.0);

    return 1;

}



HashTag::banned(playerid){

    PlayAudioStreamForPlayer(playerid,"example.com");

    return 1;

}



public OnPlayerText(playerid,text[]){

    GetHashTag(playerid,text,0xCC0000FF,0x00AA00FF,2048); //back_color the same as first chat color

    SendClientMessageToAll(0x00AA00FF,text);

    return 0;

}



Download:

hashtag.inc

RGB.inc

DataConvert.inc


  BitFunctions
Posted by: AbyssMorgan - 2021-04-18, 11:54 AM - Forum: Libraries - No Replies

Include contains functions for manipulating bits / cells.



Code:
BitFunctions.inc

Copyright ? 2021 Abyss Morgan. All rights reserved.



Website: https://adm.ct8.pl



Plugins: None

Modules: None



File Version: 1.8.0



bit 0 - 31:

(bit 31) --> 11111111000000001111010001010000 <-- (bit 0)



Example cell mode:

Mode 2 (cell id 15) --> 11 11 11 11 00 00 00 00 11 11 01 00 01 01 00 00 <-- (cell id 0)

Mode 4 (cell id 7) --> 1111 1111 0000 0000 1111 0100 0101 0000 <-- (cell id 0)

Mode 8 (cell id 3) --> 11111111 00000000 11110100 01010000 <-- (cell id 0)

Mode 16 (cell id 1) --> 1111111100000000 1111010001010000 <-- (cell id 0)



General Macros:

GetValueBit(value,bit);

SetValueBit(&value,bit,power);? //power 0 or 1

SetValueBitTrue(&value,bit);

SetValueBitFalse(&value,bit);

GetCellValue(value,cellid,mode);

SetCellValue(&value,cellid,mode,power);

GetCellValueEx(value,offset,cellsize);

SetCellValueEx(&value,offset,cellsize,power);

InvertValue(value);

InvertValueEx(value,key); //default key 0xFFFFFFFF

bool:CheckValue(value,&count=0); //even - false,uneven - true



File Byte Macros:

ExtractValue(value,&byte1,&byte2,&byte3,&byte4);

ExtractFloat(Float:value,&byte1,&byte2,&byte3,&byte4);

MergeValue(&value,byte1,byte2,byte3,byte4);

MergeFloat(&Float:value,byte1,byte2,byte3,byte4);

MergeValueEx(byte1,byte2,byte3,byte4);

Float:MergeFloatEx(byte1,byte2,byte3,byte4);



Dynamic Toggle Config Macros:

GetConfigAddress(itemid);

GetConfigBit(itemid);

GetConfigSize(max_items);

IsToggleConfigInformation(variable,itemid);

ToggleConfigInformation(variable,itemid,value); //values: 1/0



Download:

BitFunctions.inc



Example:

Code:
new ExampleConfig[GetConfigSize(MAX_PLAYERS)];

//get:

IsToggleConfigInformation(ExampleConfig,playerid);

//set:

ToggleConfigInformation(ExampleConfig,playerid,1);



Value Extract/Merge:

Code:
new val = 0x89ABCDEF;

new a, b, c, d;

ExtractValue(val,a,b,c,d);

printf("%x %x %x %x",a,b,c,d); //prints 89 AB CD EF

new tmp = 0;

MergeValue(tmp,a,b,c,d);

printf("%x",tmp); //prints 89ABCDEF


  LY (Unsigned Long)
Posted by: AbyssMorgan - 2021-04-18, 11:52 AM - Forum: Libraries - No Replies

Hello, I would like to present the function to use the "unsigned long", or at least to increase the limit of numbers to

2 147 483 647 000 000 000



Code:
LY.inc

Copyright ? 2021 Abyss Morgan. All rights reserved.



Website: https://adm.ct8.pl



Plugins: None

Modules: None



File Version: 1.6.1



Pawn Unsigned Long for 32 Bit language (precision 61-bit)

Available limit:

0 - 2 147 483 647 000 000 000

0 - 2 000 000 000 000 000 000



Functions:

IsValueContainLY(prefix,suffix,value);

GetLYString(prefix,suffix,string[],maxdest = sizeof(string));

LYStringToLY(&prefix,&suffix,const string[]); //Reverse to GetLYString

UpdateLY(&prefix,&suffix,value,limitprefix = DEFAULT_MAX_LY_PREFIX);

AddSeparatorLY(string[],const separator[]);

DeleteSeparatorLY(const string[],const separator[]);

CalculatePercentLY(&prefix,&suffix,Float:percent = 0.0,increase = true,limitprefix = DEFAULT_MAX_LY_PREFIX);

GetPercentLY(prefix,suffix,&o_prefix,&o_suffix,Float:percent = 0.0,limitprefix = DEFAULT_MAX_LY_PREFIX);



Operators:

IsLYEqual(prefix,suffix,from_prefix,from_suffix);

IsLYSmallerThan(prefix,suffix,from_prefix,from_suffix);

IsLYSmallerThanOrEqual(prefix,suffix,from_prefix,from_suffix);

IsLYBiggerThan(prefix,suffix,from_prefix,from_suffix);

IsLYBiggerThanOrEqual(prefix,suffix,from_prefix,from_suffix);



Example for bank system:

Code:
pVar[playerid][pMoney] - your variable suffix

pVar[playerid][pMoneyLY] - your variable prefix

//adding money to the bank

UpdateLY(pVar[playerid][pMoneyLY], pVar[playerid][pMoney], amount); //<-- set your amount

GivePlayerMoney(playerid,-amount);

//the payment from the bank

if(IsValueContainLY(pVar[playerid][pMoneyLY], pVar[playerid][pMoney], amount)){ //<-- set your amount

? ? UpdateLY(pVar[playerid][pMoneyLY], pVar[playerid][pMoney], -amount);

? ? GivePlayerMoney(playerid,amount);

} else {

? ? //you do not have enough money

}

//The amount of money in bank

new mymoney[LY_STRING_LEN], buffer[128];

GetLYString(pVar[playerid][pMoneyLY], pVar[playerid][pMoney], mymoney);

format(buffer,sizeof buffer,"You money in bank: %s",mymoney);

SendClientMessage(playerid,-1,buffer);?



Download:

LY.inc


  @mentiones
Posted by: AbyssMorgan - 2021-04-18, 08:02 AM - Forum: Libraries - Replies (4)

Include contain function for chat @mentiones system



Code:
mentiones.inc

Copyright ? 2021 Abyss Morgan. All rights reserved.

Contributors: None



Website: https://adm.ct8.pl



Plugins: SScanf

Modules: RGB, DataConvert



File Version: 1.3.1



Functions:

GetMentiones(playerid,text[],mention_color=0xCC0000FF,back_color=0xFFFFFFFF,max_len=sizeof(text));

GetAllowedMentions();

SetAllowedMentions(number);



Callbacks:

OnPlayerMentioned(playerid,targetid);



Example:

Code:
public OnPlayerMentioned(playerid,targetid){

    //create your own notice with TextDraw/sound

    return 1;

}



public OnPlayerText(playerid,text[]){

    new chat_text[2048], p_name[MAX_PLAYER_NAME];

    GetPlayerName(playerid,p_name,MAX_PLAYER_NAME);

    format(chat_text,sizeof(chat_text),"%s: %s",p_name,text);

    GetMentiones(playerid,chat_text,0xCC0000FF,0x00AA00FF,2048); //back_color the same as first chat color

    SendClientMessageToAll(0x00AA00FF,chat_text);

    return 0;

}

//Hi @Johny and @Alena how are you ?

//Two existing players got notice and nick color has been changed to 0xCC0000FF



Screenshot:

https://i.imgur.com/dhkbMWV.png



Download:

mentiones.inc

RGB.inc

DataConvert.inc