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

Username
  

Password
  





Search Forums



(Advanced Search)

Forum Statistics
» Members: 7,925
» Latest member: mrg18755
» Forum threads: 2,405
» Forum posts: 12,321

Full Statistics

Online Users
There are currently 282 online users.
» 0 Member(s) | 278 Guest(s)
Bing, Yandex, Baidu, Google

Latest Threads
(PC/Mobil) PrimeTurk CnR ...
Forum: Advertisements
Last Post: Shacous
2026-02-12, 04:08 PM
» Replies: 0
» Views: 39
(PC/Mobil) PrimeTurk CnR ...
Forum: Turkish
Last Post: Shacous
2026-02-12, 04:04 PM
» Replies: 0
» Views: 31
Consulta warning mismatch...
Forum: Programaci?n
Last Post: bttwsky
2026-02-12, 03:46 PM
» Replies: 0
» Views: 38
problem dialog clan membe...
Forum: Pawn Scripting
Last Post: sanmartinjorquerapablo
2026-02-12, 02:15 AM
» Replies: 3
» Views: 183
Hobby War Server (Open to...
Forum: Advertisements
Last Post: blackwolf4278
2026-02-11, 12:22 AM
» Replies: 0
» Views: 45
PROJECT: LOS ANGELES — TH...
Forum: Advertisements
Last Post: DevonH
2026-02-08, 05:53 PM
» Replies: 12
» Views: 1,440
open.mp ready DayZ gamemo...
Forum: Gamemodes
Last Post: Bombo
2026-02-08, 07:50 AM
» Replies: 0
» Views: 135
samp-essentials
Forum: Libraries
Last Post: 1NS
2026-02-07, 12:51 PM
» Replies: 0
» Views: 112
Unban
Forum: Chat
Last Post: stryzo125
2026-02-06, 11:59 PM
» Replies: 2
» Views: 309
It has been a while
Forum: Chat
Last Post: Mauzen
2026-02-06, 08:36 PM
» Replies: 0
» Views: 102

 
  StreamerFunction
Posted by: AbyssMorgan - 2021-04-18, 07:34 AM - Forum: Libraries - Replies (2)

Include contain additional functions for Incognito Streamer Plugin



Code:
StreamerFunction.inc

Copyright ? 2021 Abyss Morgan. All rights reserved.

Contributors: Katarina Calzaghe



Website: https://adm.ct8.pl



Plugins: Streamer

Modules: None



File Version: 3.0.0

Streamer Version: 2.9.4



Compiler Options:

DISABLE_STREAMER_SPEC_CHECK? //Turn off check streamer version

ENABLE_BULLET_DYNAMIC_OBJECT //Turn on call OnPlayerWeaponShot when we shoot in a dynamic object

DISABLE_STREAMER_SPEC_FIXES? //Turn off fixes (not recommended)



Objects Functions:

GetDynamicObjectModel(objectid);

SetDynamicObjectModel(objectid,modelid);

GetDynamicObjectVW(objectid);

SetDynamicObjectVW(objectid,worldid);

GetDynamicObjectINT(objectid);

SetDynamicObjectINT(objectid,interiorid);

GetDynamicObjectSD(objectid,&Float:streamdistance);

SetDynamicObjectSD(objectid,Float:streamdistance);

GetDynamicObjectDD(objectid,&Float:drawdistance);

SetDynamicObjectDD(objectid,Float:drawdistance);

GetDynamicObjectPosAndRot(objectid,&Float:x,&Float:y,&Float:z,&Float:rx,&Float:ry,&Float:rz);

SetDynamicObjectPosAndRot(objectid,Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz);

GetDynamicObjectMoveSpeed(objectid,&Float:speed);

SetDynamicObjectMoveSpeed(objectid,Float:speed);

GetDynamicObjectMovePos(objectid,&Float:x,&Float:y,&Float:z);

GetDynamicObjectMoveRot(objectid,&Float:rx,&Float:ry,&Float:rz);

GetDynamicObjectMoveTime(objectid,&objstate,&rtime=0);

SetDynamicObjectAttachSync(objectid,syncrotation);

RemoveDynamicObjectMaterial(objectid,materialindex);

RemoveDynamicObjectMaterialAll(objectid);

DeattachObjectDynamicObject(objectid);

DeattachDynamicObjectComponent(objectid,type);

DestroyDynamicObjectComponent(objectid,type);

GetDynamicObjectArea(objectid);

SetDynamicObjectArea(objectid,areaid);

GetDynamicObjectPriority(objectid);

SetDynamicObjectPriority(objectid,priority);

GetDynamicObjectDatagram(objectid,data[]);

SetDynamicObjectDatagram(objectid,data[]);

RemoveDynamicObjectDatagram(objectid);

bool:IsSetDynamicObjectDatagram(objectid);

GetDynamicObjectInvertArea(objectid);

SetDynamicObjectInvertArea(objectid,toggle);



SAMP Functions:

GetObjectPosAndRot(objectid,&Float:x,&Float:y,&Float:z,&Float:rx,&Float:ry,&Float:rz);

SetObjectPosAndRot(objectid,Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz);

CountObjects();

CountPlayerObjects(playerid,bool:streamer = false);

DestroyObjects();

DestroyPlayerObjects(playerid,bool:streamer = false);

GangZoneDestroyAll();



Vehicle Functions:

CountVehicles();

DestroyVehicles();

DestroyVehicleDynamicObject(vehicleid);

DeattachVehicleDynamicObject(vehicleid);

GetVehicleDatagram(vehicleid,data[]);

SetVehicleDatagram(vehicleid,data[]);

RemoveVehicleDatagram(vehicleid);

IsSetVehicleDatagram(vehicleid);



Check Point Functions:

GetDynamicCPPos(checkpointid,&Float:x,&Float:y,&Float:z);

SetDynamicCPPos(checkpointid,Float:x,Float:y,Float:z);

GetDynamicCPSize(checkpointid,&Float:size);

SetDynamicCPSize(checkpointid,Float:size);

GetDynamicCPVW(checkpointid);

SetDynamicCPVW(checkpointid,worldid);

GetDynamicCPINT(checkpointid);

SetDynamicCPINT(checkpointid,interiorid);

GetDynamicCPSD(checkpointid,&Float:streamdistance);

SetDynamicCPSD(checkpointid,Float:streamdistance);

GetDynamicCPArea(checkpointid);

SetDynamicCPArea(checkpointid,areaid);

GetDynamicCPPriority(checkpointid);

SetDynamicCPPriority(checkpointid,priority);

GetDynamicCPDatagram(checkpointid,data[]);

SetDynamicCPDatagram(checkpointid,data[]);

RemoveDynamicCPDatagram(checkpointid);

bool:IsSetDynamicCPDatagram(checkpointid);

GetDynamicCPInvertArea(checkpointid);

SetDynamicCPInvertArea(checkpointid,toggle);



Race Check Point Functions:

GetDynamicRaceCPPos(checkpointid,&Float:x,&Float:y,&Float:z);

SetDynamicRaceCPPos(checkpointid,Float:x,Float:y,Float:z);

GetDynamicRaceCPNext(checkpointid,&Float:nextx,&Float:nexty,&Float:nextz);

SetDynamicRaceCPNext(checkpointid,Float:nextx,Float:nexty,Float:nextz);

GetDynamicRaceCPType(checkpointid);

SetDynamicRaceCPType(checkpointid,type);

GetDynamicRaceCPSize(checkpointid,&Float:size);

SetDynamicRaceCPSize(checkpointid,Float:size);

GetDynamicRaceCPVW(checkpointid);

SetDynamicRaceCPVW(checkpointid,worldid);

GetDynamicRaceCPINT(checkpointid);

SetDynamicRaceCPINT(checkpointid,interiorid);

GetDynamicRaceCPSD(checkpointid,&Float:streamdistance);

SetDynamicRaceCPSD(checkpointid,Float:streamdistance);

GetDynamicRaceCPArea(checkpointid);

SetDynamicRaceCPArea(checkpointid,areaid);

GetDynamicRaceCPPriority(checkpointid);

SetDynamicRaceCPPriority(checkpointid,priority);

GetDynamicRaceCPDatagram(checkpointid,data[]);

SetDynamicRaceCPDatagram(checkpointid,data[]);

RemoveDynamicRaceCPDatagram(checkpointid);

bool:IsSetDynamicRaceCPDatagram(checkpointid);

GetDynamicRaceCPInvertArea(checkpointid);

SetDynamicRaceCPInvertArea(checkpointid,toggle);



Player Functions:

DestroyPlayerDynamicObject(playerid);

DeattachPlayerDynamicObject(playerid);



MapIcon Functions:

GetDynamicMapIconPos(iconid,&Float:x,&Float:y,&Float:z);

SetDynamicMapIconPos(iconid,Float:x,Float:y,Float:z);

GetDynamicMapIconType(iconid);

SetDynamicMapIconType(iconid,type);

GetDynamicMapIconStyle(iconid);

SetDynamicMapIconStyle(iconid,style);

GetDynamicMapIconVW(iconid);

SetDynamicMapIconVW(iconid,worldid);

GetDynamicMapIconINT(iconid);

SetDynamicMapIconINT(iconid,interiorid);

GetDynamicMapIconSD(iconid,&Float:streamdistance);

SetDynamicMapIconSD(iconid,Float:streamdistance);

SetDynamicMapIconColor(iconid,color);

GetDynamicMapIconColor(iconid);

GetDynamicMapIconArea(iconid);

SetDynamicMapIconArea(iconid,areaid);

GetDynamicMapIconPriority(iconid);

SetDynamicMapIconPriority(iconid,priority);

GetDynamicMapIconDatagram(iconid,data[]);

SetDynamicMapIconDatagram(iconid,data[]);

RemoveDynamicMapIconDatagram(iconid);

bool:IsSetDynamicMapIconDatagram(iconid);

GetDynamicMapIconInvertArea(iconid);

SetDynamicMapIconInvertArea(iconid,toggle);



Pickup Functions:

GetDynamicPickupPos(pickupid,&Float:x,&Float:y,&Float:z);

SetDynamicPickupPos(pickupid,Float:x,Float:y,Float:z);

GetDynamicPickupModel(pickupid);

SetDynamicPickupModel(pickupid,modelid);

GetDynamicPickupVW(pickupid);

SetDynamicPickupVW(pickupid,worldid);

GetDynamicPickupINT(pickupid);

SetDynamicPickupINT(pickupid,interiorid);

GetDynamicPickupSD(pickupid,&Float:streamdistance);

SetDynamicPickupSD(pickupid,Float:streamdistance);

GetDynamicPickupType(pickupid);

SetDynamicPickupType(pickupid,type);

GetDynamicPickupArea(pickupid);

SetDynamicPickupArea(pickupid,areaid);

GetDynamicPickupPriority(pickupid);

SetDynamicPickupPriority(pickupid,priority);

GetDynamicPickupDatagram(pickupid,data[]);

SetDynamicPickupDatagram(pickupid,data[]);

RemoveDynamicPickupDatagram(pickupid);

bool:IsSetDynamicPickupDatagram(pickupid);

GetDynamicPickupInvertArea(pickupid);

SetDynamicPickupInvertArea(pickupid,toggle);



3DText Functions:

GetDynamic3DTextPos(id,&Float:x,&Float:y,&Float:z);

SetDynamic3DTextPos(id,Float:x,Float:y,Float:z);

GetDynamic3DTextDD(id,Float:drawdistance);

SetDynamic3DTextDD(id,Float:drawdistance);

GetDynamic3DTextSD(id,&Float:streamdistance);

SetDynamic3DTextSD(id,Float:streamdistance);

GetDynamic3DTextVW(id);

SetDynamic3DTextVW(id,worldid);

GetDynamic3DTextINT(id);

SetDynamic3DTextINT(id,interiorid);

GetDynamic3DTextColor(id);

SetDynamic3DTextColor(id,color);

GetDynamic3DTextArea(id);

SetDynamic3DTextArea(id,areaid);

GetDynamic3DTextPriority(id);

SetDynamic3DTextPriority(id,priority);

SetDynamic3DTextTestLos(id,testlos);

AttachDynamic3DTextToPlayer(id,attachedplayer);

AttachDynamic3DTextToVehicle(id,attachedvehicle);

GetDynamic3DTextDatagram(id,data[]);

SetDynamic3DTextDatagram(id,data[]);

RemoveDynamic3DTextDatagram(id);

bool:IsSetDynamic3DTextDatagram(id);

GetDynamic3DTextInvertArea(id);

SetDynamic3DTextInvertArea(id,toggle);



Area Functions:

GetDynamicCirclePos(areaid,&Float:x,&Float:y);

SetDynamicCirclePos(areaid,Float:x,Float:y);

GetDynamicCylinderPos(areaid,&Float:x,&Float:y,&Float:minz,&Float:maxz);

SetDynamicCylinderPos(areaid,Float:x,Float:y,Float:minz,Float:maxz);

GetDynamicSpherePos(areaid,&Float:x,&Float:y,&Float:z);

SetDynamicSpherePos(areaid,Float:x,Float:y,Float:z);

GetDynamicRectanglePos(areaid,&Float:minx,&Float:miny,&Float:maxx,&Float:maxy);

SetDynamicRectanglePos(areaid,Float:minx,Float:miny,Float:maxx,Float:maxy);

GetDynamicCubePos(areaid,&Float:minx,&Float:miny,&Float:minz,&Float:maxx,&Float:maxy,&Float:maxz);

SetDynamicCubePos(areaid,Float:minx,Float:miny,Float:minz,Float:maxx,Float:maxy,Float:maxz);

GetDynamicCuboidPos(areaid,&Float:minx,&Float:miny,&Float:minz,&Float:maxx,&Float:maxy,&Float:maxz);

SetDynamicCuboidPos(areaid,Float:minx,Float:miny,Float:minz,Float:maxx,Float:maxy,Float:maxz);

GetDynamicAreaVW(areaid);

SetDynamicAreaVW(areaid,worldid);

GetDynamicAreaINT(areaid);

SetDynamicAreaINT(areaid,interiorid);

GetDynamicAreaSize(areaid,Float:size);

SetDynamicAreaSize(areaid,Float:size);

GetDynamicAreaDatagram(areaid,data[]);

SetDynamicAreaDatagram(areaid,data[]);

RemoveDynamicAreaDatagram(areaid);

bool:IsSetDynamicAreaDatagram(areaid);



Actor Functions:

GetDynamicActorModel(actorid);

SetDynamicActorModel(actorid,modelid);

GetDynamicActorArea(actorid);

SetDynamicActorArea(actorid,areaid);

GetDynamicActorPriority(actorid);

SetDynamicActorPriority(actorid,priority);

GetDynamicActorSD(actorid,&Float:streamdistance);

SetDynamicActorSD(actorid,Float:streamdistance);

GetDynamicActorDatagram(actorid,data[]);

SetDynamicActorDatagram(actorid,data[]);

RemoveDynamicActorDatagram(actorid);

IsSetDynamicActorDatagram(actorid);

GetDynamicActorInterior(actorid);

SetDynamicActorInterior(actorid,interiorid);

DestroyAllDynamicActors();

CountDynamicActors();

GetDynamicActorInvertArea(actorid);

SetDynamicActorInvertArea(actorid,toggle);



Dynamic Vehicle Functions:

SetDynamicVehicleModel(vehicleid,modelid);

GetDynamicVehicleSiren(vehicleid);

SetDynamicVehicleSiren(vehicleid,siren);

GetDynamicVehicleRespawnTime(vehicleid);

SetDynamicVehicleRespawnTime(vehicleid,respawndelay);

GetDynamicVehicleArea(vehicleid);

SetDynamicVehicleArea(vehicleid,areaid);

GetDynamicVehiclePriority(vehicleid);

SetDynamicVehiclePriority(vehicleid,priority);

GetDynamicVehicleSD(vehicleid,&Float:streamdistance);

SetDynamicVehicleSD(vehicleid,Float:streamdistance);

GetDynamicVehicleInvertArea(vehicleid);

SetDynamicVehicleInvertArea(vehicleid,toggle);

GetDynamicVehicleDatagram(vehicleid,data[]);

SetDynamicVehicleDatagram(vehicleid,data[]);

RemoveDynamicVehicleDatagram(vehicleid);

IsSetDynamicVehicleDatagram(vehicleid);

DestroyAllDynamicVehicles();

CountDynamicVehicles();



Anti Area Functions:

IsPointInAntiArea(areaid,Float:x,Float:y,Float:z);

IsPlayerInAntiArea(playerid,areaid,recheck = 0);

IsPlayerInAnyAntiArea(playerid,recheck = 0);

IsAnyPlayerInAntiArea(areaid,recheck = 0);

IsAnyPlayerInAnyAntiArea(recheck = 0);



Anti Area Callbacks:

OnPlayerEnterAntiArea(playerid,areaid);

OnPlayerLeaveAntiArea(playerid,areaid);



Pool Size Functions:

GetDynamicObjectPoolSize();

GetDynamicPickupPoolSize();

GetDynamicCPPoolSize();

GetDynamicRaceCPPoolSize();

GetDynamicMapIconPoolSize();

GetDynamic3DTextPoolSize();

GetDynamicAreaPoolSize();

GetDynamicActorPoolSize();

GetDynamicVehiclePoolSize();



Update Functions:

UpdateAllDynamicItem(type);

UpdateAllDynamicElements();

UpdateAllDynamicObjects();

UpdateAllDynamicPickups();

UpdateAllDynamicCPs();

UpdateAllDynamicRaceCPs();

UpdateAllDynamicMapIcons();

UpdateAllDynamic3DTextLabels();

UpdateAllDynamicAreas();

UpdateAllDynamicActors();

UpdateAllDynamicVehicles();



Foreach Functions:

ForDynamicObjects(variable);

ForDynamicPickups(variable);

ForDynamicCPs(variable);

ForDynamicRaceCPs(variable);

ForDynamicMapIcons(variable);

ForDynamic3DTextLabels(variable);

ForDynamicAreas(variable);

ForDynamicActors(variable);

ForDynamicVehicles(variable);



Nearest Item Functions:

GetNearestVisibleItem(playerid,type);

GetNearestVisibleObject(playerid);

GetNearestVisiblePickup(playerid);

GetNearestVisibleCP(playerid);

GetNearestVisibleRaceCP(playerid);

GetNearestVisibleMapIcon(playerid);

GetNearestVisible3DText(playerid);

GetNearestVisibleArea(playerid);

GetNearestVisibleActor(playerid);

GetNearestVisibleVehicle(playerid);



Extended Functions:

bool:IsValidStreamer(version);

GetStreamerVersion();

GetValidStreamerVersion();

GetStreamerVersionName(name[], value = GET_STREAMER_VERSION, maxdest = sizeof name);

CheckStreamerVersion();

GetStreamerDatagram(type,itemid,data[]);

SetStreamerDatagram(type,itemid,data[]);

RemoveStreamDatagram(type,itemid);

bool:IsSetStreamerDatagram(type,itemid);

GetStreamerSpecActiveCount();



Definitions:

DEFAULT_VISIBLE_OBJECT

DEFAULT_VISIBLE_PICKUP

DEFAULT_VISIBLE_MAP_ICON

DEFAULT_VISIBLE_3D_TEXT

DEFAULT_VISIBLE_ACTOR

INVALID_DYNAMIC_OBJECT_ID

INVALID_DYNAMIC_PICKUP_ID

INVALID_DYNAMIC_CP_ID

INVALID_DYNAMIC_RACE_CP_ID

INVALID_DYNAMIC_MAP_ICON_ID

INVALID_DYNAMIC_3D_TEXT_ID

INVALID_DYNAMIC_AREA_ID

INVALID_DYNAMIC_ACTOR_ID

INVALID_DYNAMIC_VEHICLE_ID

INVALID_PICKUP_ID

INVALID_STREAMER_COMPONENT

MAX_STREAM_SIZE



Fixes:

DestroyDynamicObject? ? ? ? -> Resets the variable after the destruction of the DynamicObject.

DestroyDynamicPickup? ? ? ? -> Resets the variable after the destruction of the DynamicPickup.

DestroyDynamicCP? ? ? ? ? ? -> Resets the variable after the destruction of the DynamicCP.

DestroyDynamicRaceCP? ? ? ? -> Resets the variable after the destruction of the DynamicRaceCP.

DestroyDynamicMapIcon? ? ? ? -> Resets the variable after the destruction of the DynamicMapIcon.

DestroyDynamic3DTextLabel? ? -> Resets the variable after the destruction of the Dynamic3DTextLabel.

DestroyDynamicArea? ? ? ? ? -> Resets the variable after the destruction of the DynamicArea.

DestroyDynamicActor? ? ? ? ? -> Resets the variable after the destruction of the DynamicActor.

DestroyDynamicVehicle? ? ? ? -> Resets the variable after the destruction of the DynamicVehicle.

DestroyObject? ? ? ? ? ? ? ? -> Resets the variable after the destruction of the Object.

DestroyPlayerObject? ? ? ? ? -> Resets the variable after the destruction of the PlayerObject.

DestroyPickup? ? ? ? ? ? ? ? -> Resets the variable after the destruction of the Pickup.

Delete3DTextLabel? ? ? ? ? ? -> Resets the variable after the destruction of the 3DTextLabel.

DeletePlayer3DTextLabel? ? ? -> Resets the variable after the destruction of the Player3DTextLabel.

AttachDynamicObjectToObject? -> Changes the priority of the parent to be greater than the priority of sub-objects.



Download:

StreamerFunction.inc



Available for:

Code:
SA:MP 0.3.7

SA:MP 0.3 DL


  3DTryg
Posted by: AbyssMorgan - 2021-04-18, 07:24 AM - Forum: Libraries - Replies (11)

Include contain professional functions for manipulating (coordinates / rotations / vectors / arc / areas / offset) supported (2D / 3D)



Videos:

- Knife Shoot

- EngineV6

- EngineX

- Missile Launch

- Vehicle Missile Launch (ColAndreas Version)

- GetGroundRotation

- GetPlayerCollisionFlags (ColAndreas)

- Marica Mortar V1

- Heavy Marica Mortar

- Acid Renia (FCNPC)

- Beta Interceptor (FCNPC)

- GoToPlayerOnGroundCol (FCNPC)

- IsElementOnPlayerScreen (ColAndreas)

- Arc Points

- Missile Launcher Aim Player

- GetRandomPointOnSphericalSector

- Vehicle Missile Congreve Rocket

- Magic Wand

- Vehicle Parachute

- Portal Gun #1

- Portal Gun #2

- Marica Mortar V2

- Stingers (Cops and Robbers)

- NPC Driver Eye

- PET SAR v1.0

- Vehicle Speed Control

- Prototype Grenade Detection



Code:
3DTryg.inc

Copyright ? 2021 Abyss Morgan. All rights reserved.

Contributors: Crayder, IllidanS4, Nero_3D, RyDeR, Zoutdaxv, hesambia, Neil Lamoureux, Ivan_Ino, Ralfie, Unrea1, Katarina Calzaghe, $continue$

Mr.Reus



Website: https://adm.ct8.pl



Plugins: ColAndreas, YSF, Streamer, FCNPC, VehicleStreamer

Internal Modules: Actor, VehicleCollision, PlayerCollision, ActorCollision, Draw3D, CatchItems, GrenadeDetection



File Version: 5.3.0

ColAndreas Version: 1.5.0

YSF Version: R19 (kurta999)

Streamer Version: 2.9.5

VehicleStreamer Version: 2.9.4

FCNPC Version: 2.0.0



Foreach Types:

1. FoxForeach

2. StandaloneForeach

3. YSI Foreach

4. GetPlayerPoolSize



Compiler Options:

DISABLE_3D_TRYG_INIT            //Use before 3DTryg.inc for disable ColAndreas Auto Init

DISABLE_3D_TRYG_ACTOR           //Use before 3DTryg.inc for disable Actors Module

DISABLE_3D_TRYG_FOREACH_FOX     //Use before 3DTryg.inc for disable FoxForeach Module

DISABLE_3D_TRYG_FOREACH_STAND   //Use before 3DTryg.inc for disable StandaloneForeach Module

DISABLE_3D_TRYG_FOREACH_YSI     //Use before 3DTryg.inc for disable YSI Foreach Module

DISABLE_3D_TRYG_COLANDREAS      //Use before 3DTryg.inc for disable ColAndreas Module

DISABLE_3D_TRYG_YSF             //Use before 3DTryg.inc for disable YSF Module

DISABLE_3D_TRYG_STREAMER        //Use before 3DTryg.inc for disable Streamer Module

DISABLE_3D_TRYG_FCNPC           //Use before 3DTryg.inc for disable FCNPC Module

DISABLE_3D_TRYG_VEHSTREAMER     //Use before 3DTryg.inc for disable VehicleStreamer Module

ENABLE_3D_TRYG_YSI_SUPPORT      //Use before 3DTryg.inc for enable YSI Support (use only when 3DTryg say error for this)

ENABLE_3D_TRYG_DRAW3D           //Use before 3DTryg.inc for enable Draw3D Module

ENABLE_3D_TRYG_CATCH_ITEMS      //Use before 3DTryg.inc for enable CatchItems Module

ENABLE_3D_TRYG_GRENADEDETECTION //Use before 3DTryg.inc for enable GrenadeDetection Module

ENABLE_3D_TRYG_VEHICLECOL       //Use before 3DTryg.inc for enable VehicleCollision Module

ENABLE_3D_TRYG_PLAYERCOL        //Use before 3DTryg.inc for enable PlayerCollision Module

ENABLE_3D_TRYG_ACTORCOL         //Use before 3DTryg.inc for enable ActorCollision Module



Complementary Functions:

Float:sqrtN(Float:value,Float:exponent);

abs(value);

Float:fabs(Float:value);

power(value,Float:exponent);

IsEven(value);

Float:Tryg3D::RandomFloat(Float:min,Float:max,accuracy=4);



Internal Functions:

single_clock(max,id); //For Random::PointOnClock parameter rz

even_clock(max,id); //For Random::PointOnClock parameter rz

uneven_clock(max,id); //For Random::PointOnClock parameter rz

NLTZ(value); //NotLessThanZero

NMTZ(value); //NotMoreThanZero

NLTZF(Float:value); //NotLessThanZeroFloat

NMTZF(Float:value); //NotMoreThanZeroFloat

NLTV(value,min); //NotLessThanValue

NMTV(value,max); //NotMoreThanValue

NLTVF(Float:value,Float:min); //NotLessThanValueFloat

NMTVF(Float:value,Float:max); //NotMoreThanValueFloat

Tryg3D::CompressRotation(Float:rotation);

Tryg3D::DeCompressRotation(Float:rotation);

Tryg3D::IsRotationTest(Float:rotation,Float:r_min,Float:r_max);

Tryg3D::GivePlayerDamage(targetid,Float:amount,playerid,weaponid,bodypart);

Tryg3D::GetWeaponDamage(weaponid);

Tryg3D::SwapInt(variable1,variable2);

Tryg3D::IsPlayerSpawned(playerid);

Tryg3D::GetActiveTime();



General Functions:

CountPlayers(bool:isplayer=true,bool:isnpc=true);

CountActors();

CountVisibleActors(playerid);

CountVisibleVehicles(playerid);

CountVisiblePlayers(playerid,bool:isplayer=true,bool:isnpc=true);

RecoilFloat(Float:value,Float:recoil);

RecoilVector(&Float:vx,&Float:vy,&Float:vz,Float:sx,Float:sy,Float:sz);

Float:ShiftDegreeToRadian(Float:deg);

Float:ShiftDegreeToRadianEx(Float:deg);

Float:ShiftDegreeToGrades(Float:deg);

Float:ShiftRadianToDegree(Float:rad);

Float:ShiftRadianToDegreeEx(Float:rad);

Float:ShiftRadianToGrades(Float:rad);

Float:ShiftGradesToDegree(Float:grad);

Float:ShiftGradesToRadian(Float:grad);

GetRandomHit(Float:x,Float:y,Float:z,range,&Float:tx,&Float:ty,&Float:tz);

Float:GetDistanceBetweenPoints1D(Float:x1,Float:x2);

Float:GetDistanceBetweenPoints2D(Float:x1,Float:y1,Float:x2,Float:y2);

Float:GetDistanceBetweenPoints3D(Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2);

GetPointInFront2D(Float:x,Float:y,Float:rz,Float:radius,&Float:tx,&Float:ty);

GetPointInFront3D(Float:x,Float:y,Float:z,Float:rx,Float:rz,Float:radius,&Float:tx,&Float:ty,&Float:tz);

GetPointInFront3DEx(Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz,Float:radius,&Float:tx,&Float:ty,&Float:tz);

Float:GetPointInFrontOfPlayer(playerid,&Float:tx,&Float:ty,Float:radius);

Float:GetPointInFrontOfCamera2D(playerid,&Float:tx,&Float:ty,Float:radius);

GetPointInFrontOfCamera3D(playerid,&Float:tx,&Float:ty,&Float:tz,Float:radius,&Float:rx=0.0,&Float:rz=0.0);

GetRotationFor2Point2D(Float:x,Float:y,Float:tx,Float:ty,&Float:rz);

GetRotationFor2Point3D(Float:x,Float:y,Float:z,Float:tx,Float:ty,Float:tz,&Float:rx,&Float:rz);

GetMoveTime(Float:x,Float:y,Float:z,Float:tx,Float:ty,Float:tz,Float:speed,&rtime=0);

GetSpeedForMoveTime(Float:x,Float:y,Float:z,Float:tx,Float:ty,Float:tz,&Float:speed,rtime);

GetVehicleRotation(vehicleid,&Float:rx,&Float:ry,&Float:rz);

Float:GetPointInFrontOfVehicle2D(vehicleid,&Float:tx,&Float:ty,Float:radius);

GetPointInFrontOfVehicle3D(vehicleid,&Float:tx,&Float:ty,&Float:tz,Float:radius,&Float:rx=0.0,&Float:rz=0.0);

GetPlayerCameraRotation(playerid,&Float:rx,&Float:rz);

Float:GetPlayerCameraZAngle(playerid,&Float:rz=0.0);

GetPointFor2Point2D(Float:x1,Float:y1,Float:x2,Float:y2,Float:percent_size,&Float:tx,&Float:ty);

GetPointFor2Point3D(Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2,Float:percent_size,&Float:tx,&Float:ty,&Float:tz);

GetPointFor2Point2DEx(Float:x1,Float:y1,Float:x2,Float:y2,Float:distance,&Float:tx,&Float:ty);

GetPointFor2Point3DEx(Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2,Float:distance,&Float:tx,&Float:ty,&Float:tz);

ShiftVectorToRotation(Float:vx,Float:vy,Float:vz,&Float:rx,&Float:rz);

ShiftRotationToVector(Float:rx,Float:rz,&Float:vx,&Float:vy,&Float:vz);

GetPointToPointVector(Float:x,Float:y,Float:z,Float:tx,Float:ty,Float:tz,&Float:vx,&Float:vy,&Float:vz);

IsPointBetween2Points2D(Float:px,Float:py,Float:xA,Float:yA,Float:xB,Float:yB);

IsPointBetween2Points3D(Float:px,Float:py,Float:pz,Float:xA,Float:yA,Float:zA,Float:xB,Float:yB,Float:zB);

IsProbable(chance);

IsProbableEx(chance,poolsize); //by default IsProbable using 100

Float:CalculatePercent(Float:value,Float:maxvalue);

Float:GetPlayerTargetAngle(playerid,Float:x,Float:y,&Float:rz=0.0);

Float:SetPlayerTargetAngle(playerid,Float:x,Float:y,&Float:rz=0.0);

Float:GetPlayerTargetPlayerAngle(playerid,targetid,&Float:rz=0.0);

Float:SetPlayerTargetPlayerAngle(playerid,targetid,&Float:rz=0.0);

Float:GetVehicleSpeed(vehicleid);

SetVehicleSpeed(vehicleid,Float:speed);

Float:GetPlayerSpeed(playerid);

GetVehicleFlags(vehicleid);

GetVehicleDefaultFlagsByModel(modelid);

GetVehicleFlagsByModel(modelid);

SetVehicleFlagsByModel(modelid,value);

ToggleVehicleModelFlag(modelid,flag,bool:toggle);

IsVehicleFlag(value,flag);

GetWeaponShotPos(playerid,hittype,&Float:fx,&Float:fy,&Float:fz);

GetPlayerCameraLookAt(playerid,&Float:x,&Float:y,&Float:z);

IsPlayerLookAtSky(playerid);

GetQuatUpVector(Float:qw,Float:qx,Float:qy,Float:qz,&Float:vx,&Float:vy,&Float:vz);

Float:GetLineSize2D(Float:points[][2],maxpoints=sizeof(points));

Float:GetLineSize3D(Float:points[][3],maxpoints=sizeof(points));

IsVehicleInRangeOfPoint(vehicleid,Float:range,Float:x,Float:y,Float:z);

IsActorInRangeOfPoint(actorid,Float:range,Float:x,Float:y,Float:z);

ShiftLineRotation(Float:sX,Float:sY,Float:sZ,Float:eX,Float:eY,Float:eZ,Float:rx,Float:ry,Float:rz,&Float:nX,&Float:nY,&Float:nZ);

ShiftLineRotationVector(Float:sX,Float:sY,Float:sZ,Float:eX,Float:eY,Float:eZ,Float:rx,Float:ry,Float:rz,&Float:nX,&Float:nY,&Float:nZ);

Float:GetEllipseRadius(Float:x,Float:y,Float:angle);

GetArcPoints3D(Float:x,Float:y,Float:z,Float:tx,Float:ty,Float:tz,Float:ry,Float:height,Float:points[][3],max_points=sizeof(points));

Float:GetDistanceFromPointToLine(Float:px,Float:py,Float:pz,Float:sX,Float:sY,Float:sZ,Float:eX,Float:eY,Float:eZ,&Float:iX=0.0,&Float:iY=0.0,&Float:iZ=0.0);

Float:GetDistanceFromPointToLineEx(Float:px,Float:py,Float:pz,Float:sX,Float:sY,Float:sZ,Float:eX,Float:eY,Float:eZ,&Float:iX=0.0,&Float:iY=0.0,&Float:iZ=0.0);

GetNearest2DPointOnPolygon(const Float:polygon_points[],Float:x,Float:y,&Float:tx,&Float:ty,maxpoints = sizeof(polygon_points));

ShiftOffsetToPosition(Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz,Float:offset_x,Float:offset_y,Float:offset_z,&Float:tx,&Float:ty,&Float:tz);

ShiftPositionToOffset(Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz,&Float:offset_x,&Float:offset_y,&Float:offset_z,Float:tx,Float:ty,Float:tz);

Tryg3D::EulerToQuat(Float:rx,Float:ry,Float:rz,&Float:qw,&Float:qx,&Float:qy,&Float:qz);

Tryg3D::QuatToEuler(&Float:rx,&Float:ry,&Float:rz,Float:qw,Float:qx,Float:qy,Float:qz);

ShiftVectorRotation(Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz,&Float:tx,&Float:ty,&Float:tz);

GetCube3DPoint(OrientationCube3D:orientation,Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz,Float:size_x,Float:size_y,Float:size_z,&Float:tx,&Float:ty,&Float:tz);

IsPlayerFakeSpectating(playerid,bool:force_disable=true);

GenerateGangZone(Float:x,Float:y,Float:radius,&Float:minx,&Float:miny,&Float:maxx,&Float:maxy);

Float:GetCameraTargetDistance(Float:CamX,Float:CamY,Float:CamZ,Float:ObjX,Float:ObjY,Float:ObjZ,Float:FrX,Float:FrY,Float:FrZ);

IsPlayerAimingAt(playerid,Float:x,Float:y,Float:z,Float:radius);

IPL_CreateObject(modelid,Float:x,Float:y,Float:z,Float:qx,Float:qy,Float:qz,Float:qw,Float:drawdistance=0.0);

bool:IsPolygonClosed(const Float:points[],maxpoints = sizeof(points));

bool:IsValidPolygon(const Float:points[],maxpoints = sizeof(points));

Tryg3D::GetOrientation(Float:angle);

Tryg3D::GetOrientationName(orientation_name[],Float:angle,bool:as_compass=false,maxdest = sizeof(orientation_name));



Cast3D functions:

Cast3D::Explosion(Float:x,Float:y,Float:z,type,Float:radius,worldid=-1,interiorid=-1,playerid=-1,Float:distance=200.0);

Cast3D::ExplosionDMG(Float:x,Float:y,Float:z,type,Float:radius,worldid=-1,interiorid=-1,playerid=-1,Float:distance=200.0,Float:damage=82.5,Float:vehicle_damage=82.5,byplayerid=INVALID_PLAYER_ID,ignore_vehicle = INVALID_VEHICLE_ID,ignore_actor = INVALID_ACTOR_ID,collision_flags = TRYG3D_COLLISION_FLAG_NONE);

Cast3D::ExplosionRangeDMG(Float:x,Float:y,Float:z,type,Float:radius,worldid = -1,interiorid = -1,playerid = -1,Float:distance = 200.0,Float:min_damage=10.0,Float:max_damage=82.5,Float:min_vehicle_damage=50.0,Float:max_vehicle_damage=250.0,byplayerid=INVALID_PLAYER_ID,ignore_vehicle = INVALID_VEHICLE_ID,ignore_actor = INVALID_ACTOR_ID,collision_flags = TRYG3D_COLLISION_FLAG_NONE);

Cast3D::Damage(weaponid,bodypart,Float:damage,Float:vehicle_damage,Float:x,Float:y,Float:z,Float:radius,worldid=-1,interiorid=-1,playerid=-1,byplayerid=INVALID_PLAYER_ID);

Cast3D::Gravity(Float:x,Float:y,Float:z,Float:radius,Float:power = 1.0,worldid = -1,interiorid = -1,playerid = -1,byplayerid = INVALID_PLAYER_ID);



Area check functions:

Area::PointInCircle(Float:px,Float:py,Float:x,Float:y,Float:radius);

Area::PointInCylinder2D(Float:px,Float:py,Float:pz,Float:x,Float:y,Float:minz,Float:maxz,Float:radius);

Area::PointInCylinder3D(Float:px,Float:py,Float:pz,Float:xA,Float:yA,Float:zA,Float:xB,Float:yB,Float:zB,Float:radius);

Area::PointInSphere(Float:px,Float:py,Float:pz,Float:x,Float:y,Float:z,Float:radius);

Area::PointInRectangle(Float:x,Float:y,Float:minx,Float:miny,Float:maxx,Float:maxy);

Area::PointInCube(Float:x,Float:y,Float:z,Float:minx,Float:miny,Float:minz,Float:maxx,Float:maxy,Float:maxz);

Area::PointInPolygon(Float:x,Float:y,Float:points[],maxpoints=sizeof(points));

Area::PointInCircularSector(Float:px,Float:py,Float:x,Float:y,Float:rz,Float:radius,Float:view_angle);

Area::PointInSphericalSector(Float:px,Float:py,Float:pz,Float:x,Float:y,Float:z,Float:rx,Float:rz,Float:radius,Float:vrx,Float:vrz);

Area::PointInCone2D(Float:px,Float:py,Float:pz,Float:x,Float:y,Float:minz,Float:maxz,Float:radius_a,Float:radius_b);

Area::PointInCone3D(Float:px,Float:py,Float:pz,Float:xA,Float:yA,Float:zA,Float:xB,Float:yB,Float:zB,Float:radius_a,Float:radius_b);

Area::PointInCube3D(Float:px,Float:py,Float:pz,Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz,Float:size_x,Float:size_y,Float:size_z);

Area::PointInEllipse(Float:px,Float:py,Float:cx,Float:cy,Float:size_x,Float:size_y);

Area::PointInEllipticalCylinder(Float:px,Float:py,Float:pz,Float:cx,Float:cy,Float:minz,Float:maxz,Float:size_x,Float:size_y);

Area::PointInSphericalSectorEx(Float:px,Float:py,Float:pz,Float:x,Float:y,Float:z,Float:rx,Float:rz,Float:radius,Float:vrx,Float:vrz,ignore_vehicle = INVALID_VEHICLE_ID,ignore_player = INVALID_PLAYER_ID,ignore_actor = INVALID_ACTOR_ID,collision_flags = TRYG3D_COLLISION_FLAG_OBJECT);



Area get random point functions (IN)

Random::PointInCircle(Float:x,Float:y,Float:radius,&Float:tx,&Float:ty);

Random::PointInCylinder2D(Float:x,Float:y,Float:minz,Float:maxz,Float:radius,&Float:tx,&Float:ty,&Float:tz);

Random::PointInCylinder3D(Float:xA,Float:yA,Float:zA,Float:xB,Float:yB,Float:zB,Float:radius,&Float:tx,&Float:ty,&Float:tz);

Random::PointInSphere(Float:x,Float:y,Float:z,Float:radius,&Float:tx,&Float:ty,&Float:tz);

Random::PointInRectangle(Float:minx,Float:miny,Float:maxx,Float:maxy,&Float:tx,&Float:ty);

Random::PointInCube(Float:minx,Float:miny,Float:minz,Float:maxx,Float:maxy,Float:maxz,&Float:tx,&Float:ty,&Float:tz);

Random::PointInPolygon(Float:points[],&Float:tx,&Float:ty,maxpoints = sizeof(points), max_iterations = 10000);

Random::PointInCircularSector(Float:x,Float:y,Float:rz,Float:radius,Float:view_angle,&Float:tx,&Float:ty);

Random::PointInSphericalSector(Float:x,Float:y,Float:z,Float:rx,Float:rz,Float:radius,Float:vrx,Float:vrz,&Float:tx,&Float:ty,&Float:tz);

Random::PointInCone2D(Float:x,Float:y,Float:minz,Float:maxz,Float:radius_a,Float:radius_b,&Float:tx,&Float:ty,&Float:tz)

Random::PointInCone3D(Float:xA,Float:yA,Float:zA,Float:xB,Float:yB,Float:zB,Float:radius_a,Float:radius_b,&Float:tx,&Float:ty,&Float:tz);

Random::PointInCube3D(Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz,Float:size_x,Float:size_y,Float:size_z,&Float:tx,&Float:ty,&Float:tz);

Random::PointInEllipse(Float:cx,Float:cy,Float:size_x,Float:size_y,&Float:tx,&Float:ty);

Random::PointInEllipticalCyl2D(Float:cx,Float:cy,Float:minz,Float:maxz,Float:size_x,Float:size_y,&Float:tx,&Float:ty,&Float:tz);



Area get random point functions (ON)

Random::PointOnCircle(Float:x,Float:y,Float:radius,&Float:tx,&Float:ty);

Random::PointOnCylinder2D(Float:x,Float:y,Float:minz,Float:maxz,Float:radius,&Float:tx,&Float:ty,&Float:tz);

Random::PointOnCylinder3D(Float:xA,Float:yA,Float:zA,Float:xB,Float:yB,Float:zB,Float:radius,&Float:tx,&Float:ty,&Float:tz);

Random::PointOnSphere(Float:x,Float:y,Float:z,Float:radius,&Float:tx,&Float:ty,&Float:tz);

Random::PointOnRectangle(Float:minx,Float:miny,Float:maxx,Float:maxy,&Float:tx,&Float:ty);

Random::PointOnCube(Float:minx,Float:miny,Float:minz,Float:maxx,Float:maxy,Float:maxz,&Float:tx,&Float:ty,&Float:tz);

Random::PointOnCircularSector(Float:x,Float:y,Float:rz,Float:radius,Float:view_angle,&Float:tx,&Float:ty);

Random::PointOnSphericalSector(Float:x,Float:y,Float:z,Float:rx,Float:rz,Float:radius,Float:vrx,Float:vrz,&Float:tx,&Float:ty,&Float:tz);

Random::PointOnCone3D(Float:xA,Float:yA,Float:zA,Float:xB,Float:yB,Float:zB,Float:radius_a,Float:radius_b,&Float:tx,&Float:ty,&Float:tz);

Random::PointOnCube3D(Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz,Float:size_x,Float:size_y,Float:size_z,&Float:tx,&Float:ty,&Float:tz);

Random::PointOnEllipse(Float:cx,Float:cy,Float:size_x,Float:size_y,&Float:tx,&Float:ty);

Random::PointOnEllipticalCyl2D(Float:cx,Float:cy,Float:minz,Float:maxz,Float:size_x,Float:size_y,&Float:tx,&Float:ty,&Float:tz);

Random::PointOnClock(Float:x,Float:y,Float:radius,&Float:tx,&Float:ty,&Float:trz,Float:rz=INVALID_ROTATION);



Universal Functions:

Item::GetInvalidID(Item3D_Type:item_type);

Item::GetPos(elementid,Item3D_Type:element_type,&Float:x,&Float:y,&Float:z);

Item::GetVirtualWorld(elementid,Item3D_Type:element_type);

Item::GetInterior(elementid,Item3D_Type:element_type);

Item::GetRotationQuat(elementid,Item3D_Type:element_type,&Float:qw,&Float:qx,&Float:qy,&Float:qz);

Item::GetUpVector(elementid,Item3D_Type:element_type,&Float:vx,&Float:vy,&Float:vz);

Item::GetUpPos(elementid,Item3D_Type:element_type,Float:radius,&Float:x,&Float:y,&Float:z,bool:reverse=false);

Item::GetDistance(elementid,Item3D_Type:element_type,targetid,Item3D_Type:target_type);

Item::GetDistanceFromPoint(elementid,Item3D_Type:element_type,Float:x,Float:y,Float:z);

Item::GetToPointVector(elementid,Item3D_Type:element_type,Float:tx,Float:ty,Float:tz,&Float:vx,&Float:vy,&Float:vz);

Item::GetRotatedVector(elementid,Item3D_Type:element_type,Float:tx,Float:ty,Float:tz,&Float:vx,&Float:vy,&Float:vz,bool:return_vector=true,Float:rx=0.0,Float:ry=0.0,Float:rz=0.0);

Item::GetOrientationPos(elementid,Item3D_Type:element_type,element_orientation:orientation,Float:distance,&Float:tx,&Float:ty,&Float:tz);

Item::OnPlayerScreen(playerid,targetid,Item3D_Type:target_type=item_player,element_orientation:orientation=o_front,Float:rx=INVALID_ROTATION,Float:rz=INVALID_ROTATION,Float:vrx=VERTICAL_CAMERA_RADIUS,Float:vrz=HORIZONTAL_CAMERA_RADIUS,bool:testVW=true,ignore_vehicle = INVALID_VEHICLE_ID,ignore_player = INVALID_PLAYER_ID,ignore_actor = INVALID_ACTOR_ID,collision_flags = TRYG3D_COLLISION_FLAG_OBJECT);

Item::OnFakeScreen(Float:x,Float:y,Float:z,targetid,Item3D_Type:target_type,Float:rx,Float:rz,Float:vrx=VERTICAL_CAMERA_RADIUS,Float:vrz=HORIZONTAL_CAMERA_RADIUS,ignore_vehicle = INVALID_VEHICLE_ID,ignore_player = INVALID_PLAYER_ID,ignore_actor = INVALID_ACTOR_ID,collision_flags = TRYG3D_COLLISION_FLAG_OBJECT);

Item::InCircle(elementid,Item3D_Type:element_type,Float:x,Float:y,Float:radius);

Item::InCylinder3D(elementid,Item3D_Type:element_type,Float:xA,Float:yA,Float:zA,Float:xB,Float:yB,Float:zB,Float:radius);

Item::InCylinder2D(elementid,Item3D_Type:element_type,Float:x,Float:y,Float:minz,Float:maxz,Float:radius);

Item::InSphere(elementid,Item3D_Type:element_type,Float:x,Float:y,Float:z,Float:radius);

Item::InRectangle(elementid,Item3D_Type:element_type,Float:minx,Float:miny,Float:maxx,Float:maxy);

Item::InCube(elementid,Item3D_Type:element_type,Float:minx,Float:miny,Float:minz,Float:maxx,Float:maxy,Float:maxz);

Item::InPolygon(elementid,Item3D_Type:element_type,Float:points[],maxpoints=sizeof(points));

Item::InCircularSector(elementid,Item3D_Type:element_type,Float:x,Float:y,Float:rz,Float:radius,Float:view_angle);

Item::InSphericalSector(elementid,Item3D_Type:element_type,Float:x,Float:y,Float:z,Float:rx,Float:rz,Float:radius,Float:vrx,Float:vrz);

Item::InCone2D(elementid,Item3D_Type:element_type,Float:x,Float:y,Float:minz,Float:maxz,Float:radius_a,Float:radius_b);

Item::InCone3D(elementid,Item3D_Type:element_type,Float:xA,Float:yA,Float:zA,Float:xB,Float:yB,Float:zB,Float:radius_a,Float:radius_b);

Item::InCube3D(elementid,Item3D_Type:element_type,Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz,Float:size_x,Float:size_y,Float:size_z);

Item::InEllipse(elementid,Item3D_Type:element_type,Float:cx,Float:cy,Float:size_x,Float:size_y);

Item::InEllipticalCylinder2D(elementid,Item3D_Type:element_type,Float:cx,Float:cy,Float:minz,Float:maxz,Float:size_x,Float:size_y);

Item::InRangeOfPoint(Float:x,Float:y,Float:z,Float:range,targetid,Item3D_Type:target_type=item_player,ignore_vehicle = INVALID_VEHICLE_ID,ignore_player = INVALID_PLAYER_ID,ignore_actor = INVALID_ACTOR_ID,collision_flags = TRYG3D_COLLISION_FLAG_NONE);

Item::IsPlayerInRange(playerid,Float:range,targetid,Item3D_Type:target_type=item_player,ignore_vehicle = INVALID_VEHICLE_ID,ignore_player = INVALID_PLAYER_ID,ignore_actor = INVALID_ACTOR_ID,collision_flags = TRYG3D_COLLISION_FLAG_NONE);

Item::InRangeOfItem(elementid,Item3D_Type:element_type,Float:range,targetid,Item3D_Type:target_type=item_player,ignore_vehicle = INVALID_VEHICLE_ID,ignore_player = INVALID_PLAYER_ID,ignore_actor = INVALID_ACTOR_ID,collision_flags = TRYG3D_COLLISION_FLAG_NONE);



Universal Functions (ColAndreas):

Item::ToItemIsWall(elementid,Item3D_Type:element_type,targetid,Item3D_Type:target_type);

Item::ToPointIsWall(Float:x,Float:y,Float:z,targetid,Item3D_Type:target_type);

Item::GetCollisionFlags(elementid,Item3D_Type:element_type);

Item::GetOrientationPosCol(elementid,Item3D_Type:element_type,element_orientation:orientation,Float:distance,&Float:tx,&Float:ty,&Float:tz);

Item::IsPointInWaterOrient(elementid,Item3D_Type:element_type,Float:radius,element_orientation:orientation=o_front);

Item::CollisionToPoint(Float:x,Float:y,Float:z,targetid,Item3D_Type:target_type,ignore_vehicle = INVALID_VEHICLE_ID,ignore_player = INVALID_PLAYER_ID,ignore_actor = INVALID_ACTOR_ID,collision_flags = TRYG3D_COLLISION_FLAG_ALL);

Item::CollisionToItem(elementid,Item3D_Type:element_type,targetid,Item3D_Type:target_type,ignore_vehicle = INVALID_VEHICLE_ID,ignore_player = INVALID_PLAYER_ID,ignore_actor = INVALID_ACTOR_ID,collision_flags = TRYG3D_COLLISION_FLAG_ALL);





Universal Functions (Streamer):

Item::InDynamicArea(elementid,Item3D_Type:element_type,STREAMER_TAG_AREA:areaid);

Item::GetInDynamicArea(STREAMER_TAG_AREA:areaid,Item3D_Type:element_type,element_list[],max_element=sizeof(element_list));



Draw3D Module functions:

Draw3D::Circle3D(Float:x,Float:y,Float:z,Float:radius,Float:points[][3],max_sector = 36,Float:rx = 90.0,Float:ry = 0.0,max_points = sizeof(points));

Draw3D::Cylinder3D(Float:xA,Float:yA,Float:zA,Float:xB,Float:yB,Float:zB,Float:radius,Float:points[][3],max_sector = 36,max_circles = 5,max_points = sizeof(points));

Draw3D::Sphere(Float:x,Float:y,Float:z,Float:radius,Float:points[][3],max_sector = 36,max_circles = 5,max_points = sizeof(points));

Draw3D::Cone3D(Float:xA,Float:yA,Float:zA,Float:xB,Float:yB,Float:zB,Float:radius,Float:points[][3],max_sector = 36,max_circles = 5,max_points = sizeof(points));

Draw3D::Rectangle2D(Float:minx,Float:miny,Float:maxx,Float:maxy,Float:points[][2],points_per_wall = 36,max_points = sizeof(points));

Draw3D::Cube2D(Float:minx,Float:miny,Float:minz,Float:maxx,Float:maxy,Float:maxz,Float:points[][3],points_per_wall = 36,max_points = sizeof(points));

Draw3D::Polygon2D(const Float:polygon_points[],Float:points[][2],points_per_line = 36,max_polygon_points = sizeof(polygon_points),max_points = sizeof(points));



Catch Module functions:

CatchItems::Circle(Float:x,Float:y,Float:radius,Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::Cylinder2D(Float:x,Float:y,Float:minz,Float:maxz,Float:radius,Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::Cylinder3D(Float:xA,Float:yA,Float:zA,Float:xB,Float:yB,Float:zB,Float:radius,Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::Sphere(Float:x,Float:y,Float:z,Float:radius,Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::Rectangle(Float:minx,Float:miny,Float:maxx,Float:maxy,Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::StreamCube(Float:minx,Float:miny,Float:minz,Float:maxx,Float:maxy,Float:maxz,Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::Polygon(const Float:points[],Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list),maxpoints = sizeof(points));

CatchItems::CircularSector(Float:x,Float:y,Float:rz,Float:radius,Float:view_angle,Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::SphericalSector(Float:x,Float:y,Float:z,Float:rx,Float:rz,Float:radius,Float:vrx,Float:vrz,Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::Cone2D(Float:x,Float:y,Float:minz,Float:maxz,Float:radius_a,Float:radius_b,Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::Cone3D(Float:xA,Float:yA,Float:zA,Float:xB,Float:yB,Float:zB,Float:pointA_radius,Float:pointB_radius,Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::Cube3D(Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz,Float:size_x,Float:size_y,Float:size_z,Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::Ellipse(Float:cx,Float:cy,Float:size_x,Float:size_y,Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::EllipticalCylinder2D(Float:cx,Float:cy,Float:minz,Float:maxz,Float:size_x,Float:size_y,Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::SphericalSectorEx(Float:x,Float:y,Float:z,Float:rx,Float:rz,Float:radius,Float:vrx,Float:vrz,Item3D_Type:element_type,element_list[],ignore_vehicle = INVALID_VEHICLE_ID,ignore_player = INVALID_PLAYER_ID,ignore_actor = INVALID_ACTOR_ID,collision_flags = TRYG3D_COLLISION_FLAG_OBJECT,worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::PointInStream(Float:x,Float:y,Float:z,const Stream:AreaData[Stream3D]);

CatchItems::InStream(TRYG3D_ELEMENT_TAG:elementid,Item3D_Type:element_type,const Stream:AreaData[Stream3D],worldid = -1,interiorid = -1);

CatchItems::GetInStream(const Stream:AreaData[Stream3D],Item3D_Type:element_type,element_list[],worldid = -1,interiorid = -1,max_element=sizeof(element_list));

CatchItems::GetStreamType(Stream:data);

CatchItems::IsValidStream(Stream:data);



ScreenToWorld Functions:

ScreenToWorld(playerid,Float:screenX,Float:screenY,&Float:vX,&Float:vY,&Float:vZ);

WorldToScreen(playerid,Float:x,Float:y,Float:z,&Float:screenX,&Float:screenY);

ScreenToWorldCol(playerid,Float:distance,Float:screenX,Float:screenY,&Float:vX,&Float:vY,&Float:vZ);

Tryg3D::NormCrossProduct(&Float:x,&Float:y,&Float:z,Float:v1x,Float:v1y,Float:v1z,Float:v2x,Float:v2y,Float:v2z);



Nero_3D Rotations Functions:

Tryg3D::GetRotationMatrixEuler(Float:matrix[][],Float:rx,Float:ry,Float:rz);

Tryg3D::GetRotationMatrixEulerEx(Float:matrix[][],Float:rx,Float:ry,Float:rz,T3D:eulermode:mode=T3D:euler_default);

Tryg3D::MatrixRotate(Float:matrix[][],Float:oX,Float:oY,Float:oZ,&Float:x,&Float:y,&Float:z);

Tryg3D::QuatRotate(Float:qw,Float:qx,Float:qy,Float:qz,Float:oX,Float:oY,Float:oZ,&Float:tx,&Float:ty,&Float:tz);

Tryg3D::GetQuatFromEuler(Float:rx,Float:ry,Float:rz,&Float:qw,&Float:qx,&Float:qy,&Float:qz,T3D:eulermode:mode=T3D:euler_default);

Tryg3D::EulerRotate(Float:rX,Float:rY,Float:rZ,Float:oX,Float:oY,Float:oZ,&Float:tx,&Float:ty,&Float:tz);

Tryg3D::EulerRotateEx(Float:rX,Float:rY,Float:rZ,Float:oX,Float:oY,Float:oZ,&Float:tx,&Float:ty,&Float:tz,T3D:eulermode:mode=T3D:euler_default);



VehiclePartPosition Functions:

GetVehiclePartPos(vehicleid,partid,&Float:tx,&Float:ty,&Float:tz,Float:offset_x=0.0,Float:offset_y=0.0,Float:offset_z=0.0);

GetDynamicVehiclePartPos(vehicleid,partid,&Float:tx,&Float:ty,&Float:tz,Float:offset_x=0.0,Float:offset_y=0.0,Float:offset_z=0.0);



VehicleCollision Functions:

IsVehicleCollisionEnabled();

Tryg3D::InitVehicleCollision(); //OnGameModeInit / OnFilterScriptInit

Tryg3D::ExitVehicleCollision();

Tryg3D::SyncVehicleCollision(vehicleid); //EVF -> OnVehicleCreated

IsToggledVehicleCollision(vehicleid);

ToggleVehicleCollision(vehicleid,bool:toggle);



PlayerCollision Functions:

IsPlayerCollisionEnabled();

Tryg3D::InitPlayerCollision(); //OnGameModeInit / OnFilterScriptInit

Tryg3D::ExitPlayerCollision();

Tryg3D::SyncPlayerCollision(playerid); //auto called after player spawn

IsToggledPlayerCollision(playerid);

TogglePlayerCollision(playerid,bool:toggle);



ActorCollision Functions:

IsActorCollisionEnabled();

Tryg3D::InitActorCollision(); //OnGameModeInit / OnFilterScriptInit

Tryg3D::ExitActorCollision();

Tryg3D::SyncActorCollision(actorid); //After create/change actor position

IsToggledActorCollision(actorid);

ToggleActorCollision(actorid,bool:toggle);



Extended Functions:

randomex(min,max);

Tryg3D::GetErrorCount();

Tryg3D::ResetErrorCount();

Tryg3D::SetStreamDistance(Float:streamdistance); //default 300.0

Tryg3D::GetStreamDistance();

Tryg3D::GetActiveCount();

Tryg3D::GetVersion(value);

Tryg3D::KeyPressed(key);

Tryg3D::KeyReleased(key);

Tryg3D::KeyHolding(key);

Tryg3D::SecToTimeDay(second);      //Use: %d:%02d:%02d:%02d

Tryg3D::MSToTimeDay(millisecond);  //Use: %d:%02d:%02d:%02d

Tryg3D::SecToTime(second);         //Use: %02d:%02d:%02d

Tryg3D::MSToTime(millisecond);     //Use: %02d:%02d:%02d

Tryg3D::SecToTimeMini(second);     //Use: %02d:%02d

Tryg3D::MSToTimeMini(millisecond); //Use: %02d:%02d



Animation Functions:

Animation::IsPlayerSkydiving(playerid);

Animation::IsPlayerUsingParachute(playerid);

Animation::IsPlayerAiming(playerid);

Animation::IsPlayerStay(playerid);

Animation::IsPlayerRunning(playerid);

Animation::IsPlayerSwim(playerid);

Animation::IsPlayerJump(playerid);

Animation::IsPlayerParaFall(playerid);

Animation::IsPlayerParaGlide(playerid);

Animation::IsPlayerFall(playerid);



Streamer Functions:

SetPlayerAbsolutePosition(playerid,Float:x,Float:y,Float:z,Float:angle,worldid=-1,interiorid=-1,compensatedtime=-1,freezeplayer=1);

SetPlayerAbsolutePositionVeh(playerid,Float:x,Float:y,Float:z,Float:angle,worldid=-1,interiorid=-1,compensatedtime=-1,freezeplayer=1);

IsDynamicActorInRangeOfPoint(actorid,Float:range,Float:x,Float:y,Float:z);

IsVehicleFullyInDynamicArea(vehicleid,areaid);

Random::PointInDynamicArea(STREAMER_TAG_AREA:areaid,&Float:tx,&Float:ty,&Float:tz);

IPL_CreateDynamicObject(modelid,Float:x,Float:y,Float:z,Float:qx,Float:qy,Float:qz,Float:qw,worldid=-1,interiorid=-1,playerid=-1,Float:streamdistance=STREAMER_OBJECT_SD,Float:drawdistance=STREAMER_OBJECT_DD,STREAMER_TAG_AREA:areaid=STREAMER_TAG_AREA:-1,priority=0);



ColAndreas Functions:

MovePointCol(Float:StartX,Float:StartY,Float:StartZ,Float:EndX,Float:EndY,Float:EndZ,&Float:x,&Float:y,&Float:z);

MovePointColCutLine(Float:sX,Float:sY,Float:sZ,Float:eX,Float:eY,Float:eZ,&Float:x,&Float:y,&Float:z,Float:cut_size=0.0);

MovePointColCutLineEx(Float:sX,Float:sY,Float:sZ,Float:eX,Float:eY,Float:eZ,&Float:x,&Float:y,&Float:z,Float:cut_size=0.0);

GetPointInFront3DCol(Float:x,Float:y,Float:z,Float:rx,Float:rz,Float:radius,&Float:tx,&Float:ty,&Float:tz);

GetPointInFront3DColEx(Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz,Float:radius,&Float:tx,&Float:ty,&Float:tz);

Float:GetPointInFrontOfPlayerCol(playerid,&Float:tx,&Float:ty,Float:radius);

Float:GetPointInFrontOfCamera2DCol(playerid,&Float:tx,&Float:ty,Float:radius);

GetPointInFrontOfCamera3DCol(playerid,&Float:tx,&Float:ty,&Float:tz,Float:radius,&Float:rx=0.0,&Float:rz=0.0);

Float:GetPointInFrontOfVehicle2DCol(vehicleid,&Float:tx,&Float:ty,Float:radius);

GetPointInFrontOfVehicle3DCol(vehicleid,&Float:tx,&Float:ty,&Float:tz,Float:radius,&Float:rx=0.0,&Float:rz=0.0);

GetGroundRotation(Float:x,Float:y,Float:size,&Float:rx,&Float:ry);

GetPointCollisionFlags(Float:x,Float:y,Float:z,interiorid=0);

IsCollisionFlag(value,flag);

UndergroundFindZ(Float:x,Float:y,&Float:z);

InteriorFindZ(Float:px,Float:py,Float:pz,Float:size=2.0,&Float:z=0.0);

IsPointInWater(Float:x,Float:y,Float:z=0.0);

IsPointInUnderwater(Float:x,Float:y,Float:z);

IsPointInUnderground(Float:x,Float:y,Float:z);

IsPointInAir(Float:x,Float:y,Float:z,bool:interior=false,Float:max_distance=2.2);

IsPointInGround(Float:x,Float:y,Float:z,bool:interior=false,Float:max_distance=2.2);

IsBetweenPlayersIsWall(playerid,targetid);

IsBetweenPlayerToPointIsWall(playerid,Float:x,Float:y,Float:z);

GetPointInWallForPoint(Float:x,Float:y,Float:z,Float:radius,&Float:tx,&Float:ty,&Float:tz,Float:sector=90.0);

SetPlayerCameraDirectionLookAt(playerid,Float:x,Float:y,Float:z,Float:distance = 5.0,Float:rx=20.0,Float:sector=90.0);

GetWallRotation(Float:sx,Float:sy,Float:sz,Float:ex,Float:ey,Float:ez,&Float:rx,&Float:rz,&Float:px=0.0,&Float:py=0.0,&Float:pz=0.0,Float:size=1.0,Float:cut_size=0.0);

ColAndreas::FindGroundZ(Float:x,Float:y,Float:z,&Float:gZ);

Tryg3D::CollisionCheck(Float:StartX,Float:StartY,Float:StartZ,Float:EndX,Float:EndY,Float:EndZ,&Float:x,&Float:y,&Float:z,&Item3D_Type:item_type=Item3D_Type:0,&element_id=0,Float:cut_size=0.0,ignore_vehicle = INVALID_VEHICLE_ID,ignore_player = INVALID_PLAYER_ID,ignore_actor = INVALID_ACTOR_ID,collision_flags = TRYG3D_COLLISION_FLAG_ALL);



ColAndreas Extended Functions:

Tryg3D::IsColAndreasInit();

Tryg3D::SafeColAndreasInit();



ColAndreas Callbacks:

OnColAndreasRemoveBuilding();



Grenade Detection Callbacks (ColAndreas):

OnPlayerDroppingGrenade(playerid,weaponid,Float:x,Float:y,Float:z);



YSF Functions:

Float:GetPlayerHydraReactorRX(playerid);

IsPlayerHydraReactorBoost(playerid);

GetPlayerRotation(playerid,&Float:rx,&Float:ry,&Float:rz);

CountTextDraw();

CountPlayerTextDraw(playerid);

CountVisibleTextDraw(playerid);

CountVisiblePlayerTextDraw(playerid);

CountGangZone();

CountVisibleGangZone(playerid);

CountPlayerGangZone(playerid);

CountVisiblePlayerGangZone(playerid);

IsVehicleOnSpawn(vehicleid,Float:check_radius=1.0);

IsPlayerOnSpawn(playerid,Float:check_radius=1.0);

Random::PointInGangZone(zoneid,&Float:tx,&Float:ty);

Random::PointInPlayerGangZone(playerid,zoneid,&Float:tx,&Float:ty);



FCNPC Functions:

FCNPC::GetPointInFront(npcid,&Float:tx,&Float:ty,Float:radius);

FCNPC::InRangeOfPoint(npcid,Float:range,Float:x,Float:y,Float:z);

FCNPC::GetTargetAngle(npcid,Float:x,Float:y,&Float:rz=0.0);

FCNPC::SetTargetAngle(npcid,Float:x,Float:y,&Float:rz=0.0);

FCNPC::SetVehicleRotation(npcid,Float:rx,Float:ry,Float:rz);

FCNPC::SetVehicleTargetRotation(npcid,Float:tx,Float:ty,Float:tz,Float:ry=0.0);

FCNPC::GoToAir(npcid,Float:x,Float:y,Float:z,type=FCNPC_MOVE_TYPE_AUTO,Float:speed=FCNPC_MOVE_SPEED_AUTO,Float:min_distance=0.0,stopdelay=250);



FCNPC Functions (ColAndreas):

FCNPC::GetPointInFrontCol(npcid,&Float:tx,&Float:ty,Float:radius);

FCNPC::GoToCol(npcid,Float:x,Float:y,Float:z,type=FCNPC_MOVE_TYPE_AUTO,Float:speed=FCNPC_MOVE_SPEED_AUTO,mode = FCNPC_MOVE_MODE_AUTO,Float:cut_size=0.0,bool:set_angle=true,Float:min_distance=0.0,stopdelay=250);

FCNPC::GoToPlayerCol(npcid,playerid,type=FCNPC_MOVE_TYPE_AUTO,Float:speed=FCNPC_MOVE_SPEED_AUTO,mode = FCNPC_MOVE_MODE_AUTO,Float:cut_size=0.0,bool:set_angle=true,Float:min_distance=0.0,stopdelay=250);

FCNPC::GoToPlayerOnGroundCol(npcid,playerid,type=FCNPC_MOVE_TYPE_AUTO,Float:speed=FCNPC_MOVE_SPEED_AUTO,mode = FCNPC_MOVE_MODE_AUTO,Float:cut_size=1.0,Float:climbing=2.0,bool:set_angle=true,Float:min_distance=0.0,stopdelay=250);

FCNPC::GoToPlayerOnGroundColVeh(npcid,playerid,type=FCNPC_MOVE_TYPE_AUTO,Float:speed=FCNPC_MOVE_SPEED_AUTO,mode = FCNPC_MOVE_MODE_AUTO,Float:cut_size=1.0,Float:climbing=2.0,bool:set_angle=true,Float:min_distance=0.0,stopdelay=250);

FCNPC::GoToAirCol(npcid,Float:x,Float:y,Float:z,type=FCNPC_MOVE_TYPE_AUTO,Float:speed=FCNPC_MOVE_SPEED_AUTO,Float:cut_size=0.0,Float:min_distance=0.0,stopdelay=250);

FCNPC::RandomMoveInDynamicArea(npcid,STREAMER_TAG_AREA:areaid,Float:climbing=2.0,type=FCNPC_MOVE_TYPE_AUTO,Float:speed=FCNPC_MOVE_SPEED_AUTO,mode = FCNPC_MOVE_MODE_AUTO,bool:set_angle=true,Float:min_distance=0.0,stopdelay=250);

FCNPC::SetAbsolutePosition(npcid,Float:x,Float:y,Float:z,Float:angle,worldid=-1,interiorid=-1,compensatedtime=-1,freezeplayer=1);

FCNPC::SetFloorPos(npcid);



VehicleStreamer Functions:

GetDynamicVehicleFlags(vehicleid);

Float:GetDynamicVehicleSpeed(vehicleid);

Float:GetPointInFrontOfDynVeh2D(vehicleid,&Float:tx,&Float:ty,Float:radius);

GetPointInFrontOfDynVeh3D(vehicleid,&Float:tx,&Float:ty,&Float:tz,Float:radius,&Float:rx=0.0,&Float:rz=0.0);

IsDynVehInRangeOfPoint(vehicleid,Float:range,Float:x,Float:y,Float:z);

IsDynVehFullyInDynamicArea(vehicleid,areaid);

Float:GetPointInFrontOfDynVeh2DCol(vehicleid,&Float:tx,&Float:ty,Float:radius);

GetPointInFrontOfDynVeh3DCol(vehicleid,&Float:tx,&Float:ty,&Float:tz,Float:radius,&Float:rx=0.0,&Float:rz=0.0);

IsDynamicVehicleOnSpawn(vehicleid,Float:check_radius=1.0);

GetDynamicVehicleRotation(vehicleid,&Float:rx,&Float:ry,&Float:rz);



Deprecated Functions:

GetDistanceBetweenPoints       -> GetDistanceBetweenPoints3D

GetPlayersDistance             -> Item::GetDistance

GetVehiclesDistance            -> Item::GetDistance

GetObjectsDistance             -> Item::GetDistance

GetActorDistanceFromPoint      -> Item::GetDistanceFromPoint

GetDistanceBetweenPlayers      -> Item::GetDistance

GetDistanceBetweenVehicles     -> Item::GetDistance

GetDistanceBetweenObjects      -> Item::GetDistance

GetPlayerActorDistance         -> Item::GetDistance

GetPlayerVehicleDistance       -> Item::GetDistance

GetPlayerObjectDistance        -> Item::GetDistance

IsPlayerInCircle               -> Item::In...

IsPlayerInSphere               -> Item::In...

IsPlayerInRectangle            -> Item::In...

IsPlayerInCube                 -> Item::In...

IsPlayerInPolygon              -> Item::In...

GetPlayerCollisionFlags        -> Item::GetCollisionFlags

GetVehicleCollisionFlags       -> Item::GetCollisionFlags

IsPointInWaterFrontOfPlayer    -> Item::IsPointInWaterOrient

MovePointColWithVehicle        -> Tryg3D::CollisionCheck

MovePointColWithVehicleCut     -> Tryg3D::CollisionCheck

Item::ToPointIsVeh             -> Item::CollisionToPoint

Item::ToItemIsVeh              -> Item::CollisionToItem



Symbols:

FLOAT_PI                       - pi constant value

FLOAT_EULER                    - Euler number

FLOAT_NAN                      - Float NaN

FLOAT_DEFECT                   - Float defect (Arc Test)

FLOAT_INFINITY                 - Float Infinity

VBTP                           - Value Bigger Than Possible

VLTP                           - Value Lower Than Possible



Definitions:                  

VERTICAL_CAMERA_RADIUS         - (modifiable)

HORIZONTAL_CAMERA_RADIUS       - (modifiable)

INVALID_ROTATION               - (modifiable)

MAX_POLYGON_POINTS             - (modifiable)

VEHICLE_SPEED_MULTIPLIER       - (modifiable)

PLAYER_SPEED_MULTIPLIER        - (modifiable)

INVALID_MOVE_TIME              - (modifiable)

INVALID_MOVE_SPEED             - (modifiable)

INVALID_VIRTUAL_WORLD          - (modifiable)

CHARACTER_GROUND_Z_DIFF        - (modifiable)

TRYG3D_MAX_AREA_CHECK          - Define area check limit when using Vehicle/Player/Actor collision system (modifiable)

TRYG3D_RANDOM_MAX_ANGLE

WEAPON_DYNAMIC_EXPLOSION_DMG   - deatch reason by using Cast3D::ExplosionDMG

WEAPON_DYNAMIC_EXPLOSION_RANGE - deatch reason by using Cast3D::ExplosionRangeDMG



Position Flags:

POSITION_FLAG_WORLD

POSITION_FLAG_INTERIOR

POSITION_FLAG_AIR

POSITION_FLAG_GROUND

POSITION_FLAG_WATER

POSITION_FLAG_UNDERWATER

POSITION_FLAG_UNDERGROUND



Tryg3D::CollisionCheck Flags:

TRYG3D_COLLISION_FLAG_NONE

TRYG3D_COLLISION_FLAG_OBJECT

TRYG3D_COLLISION_FLAG_VEHICLE

TRYG3D_COLLISION_FLAG_PLAYER

TRYG3D_COLLISION_FLAG_ACTOR

TRYG3D_COLLISION_FLAG_ALL



Vehicle Flags:

VF_STREET        VF_AIRBORNE      VF_NATATORIAL    VF_MILITARY      VF_TRAIN         VF_RC            VF_CARRIAGE

VF_AIRPLANE      VF_HELICOPTER    VF_BIKES         VF_TRAILER       VF_TOWABLE       VF_POLICE



Vehicle Parts:

VEHICLE_PART_RFTIRE         - Right Front tire

VEHICLE_PART_LFTIRE         - Left Front tire

VEHICLE_PART_RRTIRE         - Right Rear tire

VEHICLE_PART_LRTIRE         - Left Rear tire

VEHICLE_PART_HOOD           - In Front

VEHICLE_PART_TRUNK          - Behind

VEHICLE_PART_ROOF           - Roof

VEHICLE_PART_CHASSIS        - Chassis

VEHICLE_PART_PETROLCAP      - Petrolcap



enum 'element_orientation'

# o_left                    - Orientation Left

# o_right                   - Orientation Right

# o_up                      - Orientation Up

# o_down                    - Orientation Down

# o_front                   - Orientation Front

# o_back                    - Orientation Back

# o_front_left              - Orientation Front left (diagonal)

# o_front_right             - Orientation Front right (diagonal)

# o_back_left               - Orientation Back left (diagonal)

# o_back_right              - Orientation Back right (diagonal)



enum 'Item3D_Type'

# item_player

# item_npc

# item_actor

# item_object

# item_vehicle

# item_dynamic_object

# item_dynamic_pickup

# item_dynamic_cp

# item_dynamic_racecp

# item_dynamic_mapicon

# item_dynamic_3dtext

# item_dynamic_actor

# item_dynamic_vehicle

# item_fcnpc



enum 'StreamType'

# s_invalid

# s_circle

# s_cylinder2d

# s_cylinder3d

# s_sphere

# s_rectangle

# s_cube2d

# s_cube3d

# s_polygon

# s_circularsector

# s_sphericalsector

# s_cone2d

# s_cone3d

# s_ellipse

# s_ellipticalcyl2d

# a_sphericalsectorex



enum 'Vectors3D'

# Float: T3D:X             - Position X

# Float: T3D:Y             - Position Y

# Float: T3D:Z             - Position Z

# Float: T3D:A             - Angle



enum 'Float3D'

# Float: T3D:X             - Position X

# Float: T3D:Y             - Position Y

# Float: T3D:Z             - Position Z

# Float: T3D:rX            - Rotation X

# Float: T3D:rY            - Rotation Y

# Float: T3D:rZ            - Rotation Z

# Float: T3D:tX            - Target Position X

# Float: T3D:tY            - Target Position Y

# Float: T3D:tZ            - Target Position Z

#        T3D:VW            - Virtual World ID

#        T3D:INT           - Interior ID

# Float: T3D:SPEED         - Speed



enum 'LongFloat3D'

# Float: T3D:X             - Position X

# Float: T3D:Y             - Position Y

# Float: T3D:Z             - Position Z

# Float: T3D:rX            - Rotation X

# Float: T3D:rY            - Rotation Y

# Float: T3D:rZ            - Rotation Z

# Float: T3D:tX            - Target Position X

# Float: T3D:tY            - Target Position Y

# Float: T3D:tZ            - Target Position Z

# Float: T3D:trX           - Target Rotation X

# Float: T3D:trY           - Target Rotation Y

# Float: T3D:trZ           - Target Rotation Z

# Float: T3D:VecX          - Vector Position X

# Float: T3D:VecY          - Vector Position Y

# Float: T3D:VecZ          - Vector Position Z

#        T3D:VW            - Virtual World ID

#        T3D:INT           - Interior ID

# Float: T3D:SPEED         - Speed



enum 'OrientationCube3D'

# o_left_back_down

# o_right_back_down

# o_right_front_down

# o_left_front_down

# o_left_back_up

# o_right_back_up

# o_right_front_up

# o_left_front_up



enum 'T3D:eulermode'

# T3D:euler_xzx - Proper / Classic Euler angles

# T3D:euler_xyx - Proper / Classic Euler angles

# T3D:euler_yxy - Proper / Classic Euler angles

# T3D:euler_yzy - Proper / Classic Euler angles

# T3D:euler_zyz - Proper / Classic Euler angles

# T3D:euler_zxz - Proper / Classic Euler angles

# T3D:euler_xzy - Tait-Bryan angles

# T3D:euler_xyz - Tait-Bryan angles

# T3D:euler_yxz - Tait-Bryan angles

# T3D:euler_yzx - Tait-Bryan angles

# T3D:euler_zyx - pitch roll yaw

# T3D:euler_zxy - sa-mp



Download:

3DTryg.inc



More functions available with plugins:

ColAndreas (Recommended 1GB RAM for server by using this plugin)

YSF

Streamer

FCNPC

VehicleStreamer



Compatibility includes:

rotation.inc by Nero_3D

i_quat.inc by IllidanS4

YSI Libraries (with #define ENABLE_3D_TRYG_YSI_SUPPORT if you got error)



Supported elements:

1. Character Elements:

- Player's

- NPC's

- Actor's

- FCNPC's



2. Static Elements:

- Object's

- Vehicle's

- GangZone's



3. Dynamic Elements:

- DynamicObject's

- DynamicPickup's

- DynamicCP's

- DynamicRaceCP's

- DynamicMapIcon's

- Dynamic3DText's

- DynamicActor's

- DynamicVehicles's



4. Areas 2D / 3D:

a) Geometric Figures:

- Circle

- Rectangle

- Polygon

- CircularSector

- Ellipse

- Cone2D



b) Chunk:

- Cylinder2D

- Sphere

- Cube

- EllipticalCylinder2D



c) Rotated Chunk:

- Cylinder3D

- SphericalSector

- Cube3D

- Cone3D


  Help! How hidden the skin select button when the player will spawn ?
Posted by: PutuSuhartawan - 2021-04-18, 04:52 AM - Forum: Pawn Scripting - Replies (1)

i have problem with this function



Code:
public OnPlayerRequestSpawn(playerid)

{

if(IsPlayerNPC(playerid)) return 1;

? SEM(playerid, "OnPlayerRequestSpawn");



if(!IsPlayerNPC(playerid))

{

? ? TogglePlayerSpectating(playerid, 1);

//return cmd_spawn(playerid);

SendClientMessage(playerid, -1, "You are detect was not an NPC sir");

if(!PLAYER_STATE_SPAWNED)

{

SpawnPlayer(playerid);

return cmd_rumahsakit(playerid);

}

return cmd_rumahsakit(playerid);

}



}







Code:
public OnPlayerRequestClass(playerid, classid)

{

? StatusBaruLogin[playerid] = 1;

if(IsPlayerNPC(playerid)) return 1;

? TogglePlayerSpectating(playerid, 1);

? SpawnPlayer(playerid);

? /*

? SetSpawnInfo(0, 0, 0, 0.0, 0.0, 0.0, 0.0, 0, 0, 0, 0, 0, 0);

? SetPlayerCameraPos(playerid, Float:1494.7446, Float:-2293.4832, Float:18.2991);

? SetPlayerCameraLookAt(playerid, Float:1494.7446, Float:-3763.4832, Float:12.29911557, CAMERA_MOVE);

? */

?

?

? cmd_rumahsakit(playerid);

? SEM(playerid, "OnPlayerRequestClass");

if(!PLAYER_STATE_SPAWNED)

{



? ?

SpawnPlayer(playerid);

return 1;

}







How to remove select player class or skin system on player will spawn?


  [SOLVED] How users can fishing anywhere as long as there is water everywhere.
Posted by: PutuSuhartawan - 2021-04-18, 04:43 AM - Forum: Pawn Scripting - Replies (11)

SOLUTION with?Radical?Pinch?AbyssMorgan?arber:

?

Code:
#include <progress2>

[/font][/size][/color]





#include <foreach>// color with string







#include <3DTryg>



#include <colandreas>







// the variabel meaning of water object







#define? ? ? ? FISH_THRESHOLD? ? ? ? ? ? 3.0



#define? ? ? ? WATER_CHECK_RADIUS? ? ? ? 15.0











IsPlayerNearWater(playerid)







{







? ? new







Float:x,







Float:y,







Float:z,







Float:cx,







Float:cy,







Float:cz,







Float:angle;















? ? GetPlayerPos(playerid, x, y, z);















? ? // Will not work near the dam







? ? if(z > 0.0 && z < FISH_THRESHOLD)







? ? {







? ? ? ? for(new i = 0; i < 4; i)







? ? ? ? {







? ? ? ? ? ? cx = x  (WATER_CHECK_RADIUS * floatsin(-angle, degrees));







? ? ? ? ? ? cy = y  (WATER_CHECK_RADIUS * floatcos(-angle, degrees));







? ? ? ? ? ? angle = 90.0;















? ? ? ? ? ? CA_FindZ_For2DCoord(cx, cy, cz);















? ? ? ? ? ? // Doesn't work under bridges







? ? ? ? ? ? if(cz == 0.0) return 1;







? ? ? ? }







? ? }







? ? return 0;



}











CMD:fish(playerid, params[])







{







if (IsPlayerNearWater(playerid))







//if(IsPlayerInRangeOfPoint(playerid, 100.0, 1062.4270,-2567.9729,-0.5079)) // lokasi mancing







{







? ? ? ? if(WormAttached[playerid] < 1) return SendClientMessage(playerid, COLOR_LIGHTRED, ""COL_LIGHTBLUE"FISH: "COL_WHITE"Sir sorry you need to have a bait worm attached to the fishing rod to fish with"COL_YELLOW"'/attachworm'");







? ? ? ? if(FishingEquipped[playerid] == 0) return SendClientMessage(playerid, COLOR_LIGHTRED, "You need to have your fishing rod equipped.");







? ? ? ? if(Fishing[playerid] == true) return SendClientMessage(playerid, COLOR_LIGHTRED, "You are already fishing.");







? ? ? ? if(pInfo[playerid][pFishes] > 5)







? ? {







? ? SendClientMessage(playerid, COLOR_LGREEN, ""COL_LIGHTBLUE"FISH: "COL_WHITE"Please the fish the on sale first with "COL_YELLOW"'/sellfish'");







? ? cmd_fishingrod(playerid);







? ? ApplyAnimation(playerid, "PED", "idle_taxi", 4.0, 0, 1, 1, 1, -1, 1);







? ? return 1;







? ? }







? new string[140];







format(string, sizeof(string), "* %s begins to fish with his fishing rod.", GetRPName(playerid));







LocalMessage(ACTION_DISTANCE, playerid, ACTION_COLOR, string);







? fish[playerid] = 2; //change it with the timer time























? new Float:BBCoord[4];







? ? GetPlayerPos(playerid, BBCoord[0], BBCoord[1], BBCoord[2]);







? ? GetPlayerFacingAngle(playerid, BBCoord[3]);























EfekPancingan[playerid] = SpawnObject_InfrontOfPlayer(playerid, 18717);







//CreateDynamicObject(18717, BBCoord[0], BBCoord[1], BBCoord[2]-2.4, 0.0, 0.0, 0.0, 0,? 0);























? ? TimerFish[playerid] = SetTimerEx("timerFish", 1000, 1, "i", playerid);







? ? TogglePlayerControllable(playerid, 0);







? ? WormAttached[playerid] = 0;







? ? ApplyAnimation(playerid, "ped", "ARRESTgun", 4.0, 0, 1, 1, 1, -1, 1);







? ? Fishing[playerid] = true;







?







?







}







else return SendClientMessage(playerid, COLOR_RED, "You can't sir fishing here with out river .");







? return 1;



}











THE PROBLEM:



Code:
i just know IsPlayerInRangeOfPoint,







if (IsPlayerInRangeOfPoint(playerid, 7.0, 2695.6880, -1704.6300, 11.8438))



? ? {



? ? ? ? SendClientMessage(playerid,0xFFFFFFFF,"Need around water area to fishing");



? ? }

[color=#333333][size=small][font=Tahoma, Verdana, Arial, sans-serif][color=#333333][size=small][font=Tahoma, Verdana, Arial, sans-serif]
[/font][/size][/color]


  hammering animation?
Posted by: Boxi - 2021-04-17, 10:38 PM - Forum: Pawn Scripting - Replies (2)

well, I would like to know the name for the animation of using a hammer, thanks!


  [SOLVED] How to make a textdraw object that looks circle? replace box which is usuall
Posted by: PutuSuhartawan - 2021-04-17, 06:46 AM - Forum: Pawn Scripting - Replies (2)

Solution:

Code:
[color=#333333][size=small][font=Roboto]Create a sprite textdraw.[/font][/size][/color]

[color=#333333][size=small][font=Roboto]Circle:[/font][/size][/color]

[color=#333333][size=small][font=Roboto]LD_BEAT:chit[/font][/size][/color]





List of all sprites:?https://open.mp/docs/scripting/resources...rawsprites



Problem:

I don't know a circle?object that can replace a box in textdraw. I can't even find the big round object in the textdraw


  Getting online players of specific team
Posted by: Turk54721 - 2021-04-17, 06:09 AM - Forum: Pawn Scripting - Replies (2)

Hello, how can I get online players of specific team?


Tongue How unprocessed queries looks like
Posted by: kalEd - 2021-04-17, 06:07 AM - Forum: Pawn Scripting - Replies (4)

How a unprocessed query?should it look like?

What this mean?


  Server economy ideas?
Posted by: Snow - 2021-04-16, 11:06 PM - Forum: General Discussions - Replies (2)

So I am running a freeroam server and I'm pretty much stuck at server economy. There are not much uses of money atm. Right now, money can be used for buying houses, adding objects in the house, attaching objects on the skin and buying weapons. Not to forget a little amount that gets deducted on death. I think its not much for a freeroam server but then again, its freeroam so limiting things such as vehicles to money will be bad for server aswell. So what are your suggestions?


  Sending message to all owner of key (from SQL)
Posted by: Axitz - 2021-04-16, 10:46 PM - Forum: Pawn Scripting - Replies (1)

Hi,



How do I make something like sending message to all key's holder from sql function?



example like :



PHP Code:
mysql_format(sqldatapQuerysizeof pQuery"SELECT doorkey FROM `bizkeys` WHERE bizid = %d;"bizid);

new 
Cache:result mysql_query(sqldatapQuery);



then?



sendclientmsg to all holder of "doorkey" from bizid = %d



or something.