mirror of
https://github.com/dashr9230/SA-MP.git
synced 2025-07-18 09:28:07 +08:00
Add pawno
This commit is contained in:
34
pawno/include/a_actor.inc
Normal file
34
pawno/include/a_actor.inc
Normal file
@ -0,0 +1,34 @@
|
||||
/* SA-MP Actor Functions
|
||||
*
|
||||
* (c) Copyright 2015, SA-MP Team
|
||||
*
|
||||
*/
|
||||
|
||||
#if defined _actor_included
|
||||
#endinput
|
||||
#endif
|
||||
#define _actor_included
|
||||
#pragma library actors
|
||||
|
||||
native CreateActor(modelid, Float:X, Float:Y, Float:Z, Float:Rotation);
|
||||
native DestroyActor(actorid);
|
||||
|
||||
native IsActorStreamedIn(actorid, forplayerid);
|
||||
|
||||
native SetActorVirtualWorld(actorid, vworld);
|
||||
native GetActorVirtualWorld(actorid);
|
||||
|
||||
native ApplyActorAnimation(actorid, animlib[], animname[], Float:fDelta, loop, lockx, locky, freeze, time);
|
||||
native ClearActorAnimations(actorid);
|
||||
|
||||
native SetActorPos(actorid, Float:X, Float:Y, Float:Z);
|
||||
native GetActorPos(actorid, &Float:X, &Float:Y, &Float:Z);
|
||||
native SetActorFacingAngle(actorid, Float:ang);
|
||||
native GetActorFacingAngle(actorid, &Float:ang);
|
||||
|
||||
native SetActorHealth(actorid, Float:health);
|
||||
native GetActorHealth(actorid, &Float:health);
|
||||
native SetActorInvulnerable(actorid, invulnerable = true);
|
||||
native IsActorInvulnerable(actorid);
|
||||
|
||||
native IsValidActor(actorid);
|
24
pawno/include/a_http.inc
Normal file
24
pawno/include/a_http.inc
Normal file
@ -0,0 +1,24 @@
|
||||
/* SA-MP threaded HTTP/1.0 client for pawn
|
||||
*
|
||||
* (c) Copyright 2010, SA-MP Team
|
||||
*
|
||||
*/
|
||||
|
||||
// HTTP requests
|
||||
#define HTTP_GET 1
|
||||
#define HTTP_POST 2
|
||||
#define HTTP_HEAD 3
|
||||
|
||||
// HTTP error response codes
|
||||
// These codes compliment ordinary HTTP response codes returned in 'response_code'
|
||||
// (10x) (20x OK) (30x Moved) (40x Unauthorised) (50x Server Error)
|
||||
#define HTTP_ERROR_BAD_HOST 1
|
||||
#define HTTP_ERROR_NO_SOCKET 2
|
||||
#define HTTP_ERROR_CANT_CONNECT 3
|
||||
#define HTTP_ERROR_CANT_WRITE 4
|
||||
#define HTTP_ERROR_CONTENT_TOO_BIG 5
|
||||
#define HTTP_ERROR_MALFORMED_RESPONSE 6
|
||||
|
||||
native HTTP(index, type, url[], data[], callback[]);
|
||||
|
||||
// example HTTP callback: public MyHttpResponse(index, response_code, data[]) { ... }
|
190
pawno/include/a_npc.inc
Normal file
190
pawno/include/a_npc.inc
Normal file
@ -0,0 +1,190 @@
|
||||
/* SA-MP NPC Functions
|
||||
*
|
||||
* (c) Copyright 2009, SA-MP Team
|
||||
*
|
||||
*/
|
||||
|
||||
#if defined _samp_included
|
||||
#endinput
|
||||
#endif
|
||||
#define _samp_included
|
||||
#pragma library samp
|
||||
|
||||
#pragma tabsize 4
|
||||
|
||||
#include <core>
|
||||
#include <float>
|
||||
#include <string>
|
||||
#include <file>
|
||||
#include <time>
|
||||
#include <datagram>
|
||||
|
||||
// --------------------------------------------------
|
||||
// Natives
|
||||
// --------------------------------------------------
|
||||
|
||||
// Util
|
||||
native print(const string[]);
|
||||
native printf(const format[], {Float,_}:...);
|
||||
native format(output[], len, const format[], {Float,_}:...);
|
||||
native SetTimer(funcname[], interval, repeating);
|
||||
native KillTimer(timerid);
|
||||
native GetTickCount();
|
||||
native Float:asin(Float:value);
|
||||
native Float:acos(Float:value);
|
||||
native Float:atan(Float:value);
|
||||
native Float:atan2(Float:x, Float:y);
|
||||
|
||||
native SendChat(msg[]);
|
||||
native SendCommand(commandtext[]);
|
||||
|
||||
native GetPlayerState(playerid);
|
||||
native GetPlayerPos(playerid, &Float:x, &Float:y, &Float:z);
|
||||
native GetPlayerVehicleID(playerid);
|
||||
native GetPlayerArmedWeapon(playerid);
|
||||
native GetPlayerHealth(playerid);
|
||||
native GetPlayerArmour(playerid);
|
||||
native GetPlayerSpecialAction(playerid);
|
||||
native IsPlayerStreamedIn(playerid);
|
||||
native IsVehicleStreamedIn(vehicleid);
|
||||
native GetPlayerKeys(playerid, &keys, &updown, &leftright);
|
||||
native GetPlayerFacingAngle(playerid, &Float:ang);
|
||||
native GetMyPos(&Float:x, &Float:y, &Float:z);
|
||||
native SetMyPos(Float:x, Float:y, Float:z);
|
||||
native GetMyFacingAngle(&Float:ang);
|
||||
native SetMyFacingAngle(Float:ang);
|
||||
|
||||
native GetDistanceFromMeToPoint(Float:X, Float:Y, Float:Z, &Float:Distance);
|
||||
native IsPlayerInRangeOfPoint(playerid, Float:range, Float:X, Float:Y, Float:Z);
|
||||
|
||||
native GetPlayerName(playerid, const name[], len);
|
||||
native IsPlayerConnected(playerid);
|
||||
|
||||
#define PLAYER_RECORDING_TYPE_NONE 0
|
||||
#define PLAYER_RECORDING_TYPE_DRIVER 1
|
||||
#define PLAYER_RECORDING_TYPE_ONFOOT 2
|
||||
|
||||
native StartRecordingPlayback(playbacktype, recordname[]);
|
||||
native StopRecordingPlayback();
|
||||
native PauseRecordingPlayback();
|
||||
native ResumeRecordingPlayback();
|
||||
|
||||
// --------------------------------------------------
|
||||
// Defines
|
||||
// --------------------------------------------------
|
||||
|
||||
// States
|
||||
#define PLAYER_STATE_NONE (0)
|
||||
#define PLAYER_STATE_ONFOOT (1)
|
||||
#define PLAYER_STATE_DRIVER (2)
|
||||
#define PLAYER_STATE_PASSENGER (3)
|
||||
#define PLAYER_STATE_WASTED (7)
|
||||
#define PLAYER_STATE_SPAWNED (8)
|
||||
#define PLAYER_STATE_SPECTATING (9)
|
||||
|
||||
// Misc
|
||||
#define MAX_PLAYER_NAME (24)
|
||||
#define MAX_PLAYERS (500)
|
||||
#define MAX_VEHICLES (2000)
|
||||
#define INVALID_PLAYER_ID (0xFFFF)
|
||||
#define INVALID_VEHICLE_ID (0xFFFF)
|
||||
#define NO_TEAM (255)
|
||||
#define MAX_OBJECTS (150)
|
||||
#define INVALID_OBJECT_ID (255)
|
||||
#define MAX_GANG_ZONES (1024)
|
||||
#define MAX_TEXT_DRAWS (1024)
|
||||
#define MAX_MENUS (128)
|
||||
#define INVALID_MENU (0xFF)
|
||||
#define INVALID_TEXT_DRAW (0xFFFF)
|
||||
#define INVALID_GANG_ZONE (-1)
|
||||
|
||||
// Weapons
|
||||
#define WEAPON_BRASSKNUCKLE (1)
|
||||
#define WEAPON_GOLFCLUB (2)
|
||||
#define WEAPON_NITESTICK (3)
|
||||
#define WEAPON_KNIFE (4)
|
||||
#define WEAPON_BAT (5)
|
||||
#define WEAPON_SHOVEL (6)
|
||||
#define WEAPON_POOLSTICK (7)
|
||||
#define WEAPON_KATANA (8)
|
||||
#define WEAPON_CHAINSAW (9)
|
||||
#define WEAPON_DILDO (10)
|
||||
#define WEAPON_DILDO2 (11)
|
||||
#define WEAPON_VIBRATOR (12)
|
||||
#define WEAPON_VIBRATOR2 (13)
|
||||
#define WEAPON_FLOWER (14)
|
||||
#define WEAPON_CANE (15)
|
||||
#define WEAPON_GRENADE (16)
|
||||
#define WEAPON_TEARGAS (17)
|
||||
#define WEAPON_MOLTOV (18)
|
||||
#define WEAPON_COLT45 (22)
|
||||
#define WEAPON_SILENCED (23)
|
||||
#define WEAPON_DEAGLE (24)
|
||||
#define WEAPON_SHOTGUN (25)
|
||||
#define WEAPON_SAWEDOFF (26)
|
||||
#define WEAPON_SHOTGSPA (27)
|
||||
#define WEAPON_UZI (28)
|
||||
#define WEAPON_MP5 (29)
|
||||
#define WEAPON_AK47 (30)
|
||||
#define WEAPON_M4 (31)
|
||||
#define WEAPON_TEC9 (32)
|
||||
#define WEAPON_RIFLE (33)
|
||||
#define WEAPON_SNIPER (34)
|
||||
#define WEAPON_ROCKETLAUNCHER (35)
|
||||
#define WEAPON_HEATSEEKER (36)
|
||||
#define WEAPON_FLAMETHROWER (37)
|
||||
#define WEAPON_MINIGUN (38)
|
||||
#define WEAPON_SATCHEL (39)
|
||||
#define WEAPON_BOMB (40)
|
||||
#define WEAPON_SPRAYCAN (41)
|
||||
#define WEAPON_FIREEXTINGUISHER (42)
|
||||
#define WEAPON_CAMERA (43)
|
||||
#define WEAPON_PARACHUTE (46)
|
||||
#define WEAPON_VEHICLE (49)
|
||||
#define WEAPON_DROWN (53)
|
||||
#define WEAPON_COLLISION (54)
|
||||
|
||||
// Keys
|
||||
#define KEY_ACTION (1)
|
||||
#define KEY_CROUCH (2)
|
||||
#define KEY_FIRE (4)
|
||||
#define KEY_SPRINT (8)
|
||||
#define KEY_SECONDARY_ATTACK (16)
|
||||
#define KEY_JUMP (32)
|
||||
#define KEY_LOOK_RIGHT (64)
|
||||
#define KEY_HANDBRAKE (128)
|
||||
#define KEY_LOOK_LEFT (256)
|
||||
#define KEY_SUBMISSION (512)
|
||||
#define KEY_LOOK_BEHIND (512)
|
||||
#define KEY_WALK (1024)
|
||||
#define KEY_ANALOG_UP (2048)
|
||||
#define KEY_ANALOG_DOWN (4096)
|
||||
#define KEY_ANALOG_RIGHT (16384)
|
||||
#define KEY_ANALOG_LEFT (8192)
|
||||
|
||||
#define KEY_UP (-128)
|
||||
#define KEY_DOWN (128)
|
||||
#define KEY_LEFT (-128)
|
||||
#define KEY_RIGHT (128)
|
||||
|
||||
// --------------------------------------------------
|
||||
// Forwards (Callback declarations)
|
||||
// --------------------------------------------------
|
||||
|
||||
forward OnNPCModeInit();
|
||||
forward OnNPCModeExit();
|
||||
forward OnNPCConnect(myplayerid);
|
||||
forward OnNPCDisconnect(reason[]);
|
||||
forward OnNPCSpawn();
|
||||
forward OnNPCEnterVehicle(vehicleid, seatid);
|
||||
forward OnNPCExitVehicle();
|
||||
forward OnClientMessage(color, text[]);
|
||||
forward OnPlayerDeath(playerid);
|
||||
forward OnPlayerText(playerid, text[]);
|
||||
forward OnPlayerStreamIn(playerid);
|
||||
forward OnPlayerStreamOut(playerid);
|
||||
forward OnVehicleStreamIn(vehicleid);
|
||||
forward OnVehicleStreamOut(vehicleid);
|
||||
forward OnRecordingPlaybackEnd();
|
||||
|
||||
// --------------------------------------------------
|
74
pawno/include/a_objects.inc
Normal file
74
pawno/include/a_objects.inc
Normal file
@ -0,0 +1,74 @@
|
||||
/* SA-MP Object Functions
|
||||
*
|
||||
* (c) Copyright 2005-2015, SA-MP Team
|
||||
*
|
||||
*/
|
||||
|
||||
#if defined _objects_included
|
||||
#endinput
|
||||
#endif
|
||||
#define _objects_included
|
||||
#pragma library objects
|
||||
|
||||
// Objects
|
||||
|
||||
native CreateObject(modelid, Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ, Float:DrawDistance = 0.0);
|
||||
native AttachObjectToVehicle(objectid, vehicleid, Float:OffsetX, Float:OffsetY, Float:OffsetZ, Float:RotX, Float:RotY, Float:RotZ);
|
||||
native AttachObjectToObject(objectid, attachtoid, Float:OffsetX, Float:OffsetY, Float:OffsetZ, Float:RotX, Float:RotY, Float:RotZ, SyncRotation = 1);
|
||||
native AttachObjectToPlayer(objectid, playerid, Float:OffsetX, Float:OffsetY, Float:OffsetZ, Float:RotX, Float:RotY, Float:RotZ);
|
||||
native SetObjectPos(objectid, Float:X, Float:Y, Float:Z);
|
||||
native GetObjectPos(objectid, &Float:X, &Float:Y, &Float:Z);
|
||||
native SetObjectRot(objectid, Float:RotX, Float:RotY, Float:RotZ);
|
||||
native GetObjectRot(objectid, &Float:RotX, &Float:RotY, &Float:RotZ);
|
||||
native GetObjectModel(objectid);
|
||||
native SetObjectNoCameraCol(objectid);
|
||||
native IsValidObject(objectid);
|
||||
native DestroyObject(objectid);
|
||||
native MoveObject(objectid, Float:X, Float:Y, Float:Z, Float:Speed, Float:RotX = -1000.0, Float:RotY = -1000.0, Float:RotZ = -1000.0);
|
||||
native StopObject(objectid);
|
||||
native IsObjectMoving(objectid);
|
||||
native EditObject(playerid, objectid);
|
||||
native EditPlayerObject(playerid, objectid);
|
||||
native SelectObject(playerid);
|
||||
native CancelEdit(playerid);
|
||||
native CreatePlayerObject(playerid, modelid, Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ, Float:DrawDistance = 0.0);
|
||||
native AttachPlayerObjectToVehicle(playerid, objectid, vehicleid, Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ, Float:fRotX, Float:fRotY, Float:RotZ);
|
||||
native SetPlayerObjectPos(playerid, objectid, Float:X, Float:Y, Float:Z);
|
||||
native GetPlayerObjectPos(playerid, objectid, &Float:X, &Float:Y, &Float:Z);
|
||||
native SetPlayerObjectRot(playerid, objectid, Float:RotX, Float:RotY, Float:RotZ);
|
||||
native GetPlayerObjectRot(playerid, objectid, &Float:RotX, &Float:RotY, &Float:RotZ);
|
||||
native GetPlayerObjectModel(playerid, objectid);
|
||||
native SetPlayerObjectNoCameraCol(playerid, objectid);
|
||||
native IsValidPlayerObject(playerid, objectid);
|
||||
native DestroyPlayerObject(playerid, objectid);
|
||||
native MovePlayerObject(playerid, objectid, Float:X, Float:Y, Float:Z, Float:Speed, Float:RotX = -1000.0, Float:RotY = -1000.0, Float:RotZ = -1000.0);
|
||||
native StopPlayerObject(playerid, objectid);
|
||||
native IsPlayerObjectMoving(playerid, objectid);
|
||||
native AttachPlayerObjectToPlayer(objectplayer, objectid, attachplayer, Float:OffsetX, Float:OffsetY, Float:OffsetZ, Float:rX, Float:rY, Float:rZ);
|
||||
|
||||
#define OBJECT_MATERIAL_SIZE_32x32 10
|
||||
#define OBJECT_MATERIAL_SIZE_64x32 20
|
||||
#define OBJECT_MATERIAL_SIZE_64x64 30
|
||||
#define OBJECT_MATERIAL_SIZE_128x32 40
|
||||
#define OBJECT_MATERIAL_SIZE_128x64 50
|
||||
#define OBJECT_MATERIAL_SIZE_128x128 60
|
||||
#define OBJECT_MATERIAL_SIZE_256x32 70
|
||||
#define OBJECT_MATERIAL_SIZE_256x64 80
|
||||
#define OBJECT_MATERIAL_SIZE_256x128 90
|
||||
#define OBJECT_MATERIAL_SIZE_256x256 100
|
||||
#define OBJECT_MATERIAL_SIZE_512x64 110
|
||||
#define OBJECT_MATERIAL_SIZE_512x128 120
|
||||
#define OBJECT_MATERIAL_SIZE_512x256 130
|
||||
#define OBJECT_MATERIAL_SIZE_512x512 140
|
||||
|
||||
#define OBJECT_MATERIAL_TEXT_ALIGN_LEFT 0
|
||||
#define OBJECT_MATERIAL_TEXT_ALIGN_CENTER 1
|
||||
#define OBJECT_MATERIAL_TEXT_ALIGN_RIGHT 2
|
||||
|
||||
native SetObjectMaterial(objectid, materialindex, modelid, txdname[], texturename[], materialcolor=0);
|
||||
native SetPlayerObjectMaterial(playerid, objectid, materialindex, modelid, txdname[], texturename[], materialcolor=0);
|
||||
|
||||
native SetObjectMaterialText(objectid, text[], materialindex = 0, materialsize = OBJECT_MATERIAL_SIZE_256x128, fontface[] = "Arial", fontsize = 24, bold = 1, fontcolor = 0xFFFFFFFF, backcolor = 0, textalignment = 0);
|
||||
native SetPlayerObjectMaterialText(playerid, objectid, text[], materialindex = 0, materialsize = OBJECT_MATERIAL_SIZE_256x128, fontface[] = "Arial", fontsize = 24, bold = 1, fontcolor = 0xFFFFFFFF, backcolor = 0, textalignment = 0);
|
||||
|
||||
native SetObjectsDefaultCameraCol(disable);
|
273
pawno/include/a_players.inc
Normal file
273
pawno/include/a_players.inc
Normal file
@ -0,0 +1,273 @@
|
||||
/* SA-MP Player Functions
|
||||
*
|
||||
* (c) Copyright 2005-2015, SA-MP Team
|
||||
*
|
||||
*/
|
||||
|
||||
#if defined _players_included
|
||||
#endinput
|
||||
#endif
|
||||
#define _players_included
|
||||
#pragma library players
|
||||
|
||||
#define SPECIAL_ACTION_NONE 0
|
||||
#define SPECIAL_ACTION_DUCK 1
|
||||
#define SPECIAL_ACTION_USEJETPACK 2
|
||||
#define SPECIAL_ACTION_ENTER_VEHICLE 3
|
||||
#define SPECIAL_ACTION_EXIT_VEHICLE 4
|
||||
#define SPECIAL_ACTION_DANCE1 5
|
||||
#define SPECIAL_ACTION_DANCE2 6
|
||||
#define SPECIAL_ACTION_DANCE3 7
|
||||
#define SPECIAL_ACTION_DANCE4 8
|
||||
#define SPECIAL_ACTION_HANDSUP 10
|
||||
#define SPECIAL_ACTION_USECELLPHONE 11
|
||||
#define SPECIAL_ACTION_SITTING 12
|
||||
#define SPECIAL_ACTION_STOPUSECELLPHONE 13
|
||||
#define SPECIAL_ACTION_DRINK_BEER 20
|
||||
#define SPECIAL_ACTION_SMOKE_CIGGY 21
|
||||
#define SPECIAL_ACTION_DRINK_WINE 22
|
||||
#define SPECIAL_ACTION_DRINK_SPRUNK 23
|
||||
#define SPECIAL_ACTION_CUFFED 24
|
||||
#define SPECIAL_ACTION_CARRY 25
|
||||
|
||||
#define FIGHT_STYLE_NORMAL 4
|
||||
#define FIGHT_STYLE_BOXING 5
|
||||
#define FIGHT_STYLE_KUNGFU 6
|
||||
#define FIGHT_STYLE_KNEEHEAD 7
|
||||
#define FIGHT_STYLE_GRABKICK 15
|
||||
#define FIGHT_STYLE_ELBOW 16
|
||||
|
||||
#define WEAPONSKILL_PISTOL 0
|
||||
#define WEAPONSKILL_PISTOL_SILENCED 1
|
||||
#define WEAPONSKILL_DESERT_EAGLE 2
|
||||
#define WEAPONSKILL_SHOTGUN 3
|
||||
#define WEAPONSKILL_SAWNOFF_SHOTGUN 4
|
||||
#define WEAPONSKILL_SPAS12_SHOTGUN 5
|
||||
#define WEAPONSKILL_MICRO_UZI 6
|
||||
#define WEAPONSKILL_MP5 7
|
||||
#define WEAPONSKILL_AK47 8
|
||||
#define WEAPONSKILL_M4 9
|
||||
#define WEAPONSKILL_SNIPERRIFLE 10
|
||||
|
||||
#define WEAPONSTATE_UNKNOWN -1
|
||||
#define WEAPONSTATE_NO_BULLETS 0
|
||||
#define WEAPONSTATE_LAST_BULLET 1
|
||||
#define WEAPONSTATE_MORE_BULLETS 2
|
||||
#define WEAPONSTATE_RELOADING 3
|
||||
|
||||
// Player
|
||||
native SetSpawnInfo(playerid, team, skin, Float:x, Float:y, Float:z, Float:rotation, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo);
|
||||
native SpawnPlayer(playerid);
|
||||
|
||||
// Player info
|
||||
native SetPlayerPos(playerid, Float:x, Float:y, Float:z);
|
||||
native SetPlayerPosFindZ(playerid, Float:x, Float:y, Float:z);
|
||||
native GetPlayerPos(playerid, &Float:x, &Float:y, &Float:z);
|
||||
native SetPlayerFacingAngle(playerid,Float:ang);
|
||||
native GetPlayerFacingAngle(playerid,&Float:ang);
|
||||
native IsPlayerInRangeOfPoint(playerid, Float:range, Float:x, Float:y, Float:z);
|
||||
native Float:GetPlayerDistanceFromPoint(playerid, Float:X, Float:Y, Float:Z);
|
||||
native IsPlayerStreamedIn(playerid, forplayerid);
|
||||
native SetPlayerInterior(playerid,interiorid);
|
||||
native GetPlayerInterior(playerid);
|
||||
native SetPlayerHealth(playerid, Float:health);
|
||||
native GetPlayerHealth(playerid, &Float:health);
|
||||
native SetPlayerArmour(playerid, Float:armour);
|
||||
native GetPlayerArmour(playerid, &Float:armour);
|
||||
native SetPlayerAmmo(playerid, weaponslot, ammo);
|
||||
native GetPlayerAmmo(playerid);
|
||||
native GetPlayerWeaponState(playerid);
|
||||
native GetPlayerTargetPlayer(playerid);
|
||||
native GetPlayerTargetActor(playerid);
|
||||
native SetPlayerTeam(playerid, teamid);
|
||||
native GetPlayerTeam(playerid);
|
||||
native SetPlayerScore(playerid,score);
|
||||
native GetPlayerScore(playerid);
|
||||
native GetPlayerDrunkLevel(playerid);
|
||||
native SetPlayerDrunkLevel(playerid, level);
|
||||
native SetPlayerColor(playerid,color);
|
||||
native GetPlayerColor(playerid);
|
||||
native SetPlayerSkin(playerid, skinid);
|
||||
native GetPlayerSkin(playerid);
|
||||
native GivePlayerWeapon(playerid, weaponid, ammo);
|
||||
native ResetPlayerWeapons(playerid);
|
||||
native SetPlayerArmedWeapon(playerid, weaponid);
|
||||
native GetPlayerWeaponData(playerid, slot, &weapons, &ammo);
|
||||
native GivePlayerMoney(playerid,money);
|
||||
native ResetPlayerMoney(playerid);
|
||||
native SetPlayerName(playerid, const name[]);
|
||||
native GetPlayerMoney(playerid);
|
||||
native GetPlayerState(playerid);
|
||||
native GetPlayerIp(playerid, name[], len);
|
||||
native GetPlayerPing(playerid);
|
||||
native GetPlayerWeapon(playerid);
|
||||
native GetPlayerKeys(playerid, &keys, &updown, &leftright);
|
||||
native GetPlayerName(playerid, const name[], len);
|
||||
native SetPlayerTime(playerid, hour, minute);
|
||||
native GetPlayerTime(playerid, &hour, &minute);
|
||||
native TogglePlayerClock(playerid, toggle);
|
||||
native SetPlayerWeather(playerid, weather);
|
||||
native ForceClassSelection(playerid);
|
||||
native SetPlayerWantedLevel(playerid, level);
|
||||
native GetPlayerWantedLevel(playerid);
|
||||
native SetPlayerFightingStyle(playerid, style);
|
||||
native GetPlayerFightingStyle(playerid);
|
||||
native SetPlayerVelocity(playerid, Float:X, Float:Y, Float:Z);
|
||||
native GetPlayerVelocity( playerid, &Float:X, &Float:Y, &Float:Z );
|
||||
native PlayCrimeReportForPlayer(playerid, suspectid, crime);
|
||||
native PlayAudioStreamForPlayer(playerid, url[], Float:posX = 0.0, Float:posY = 0.0, Float:posZ = 0.0, Float:distance = 50.0, usepos = 0);
|
||||
native StopAudioStreamForPlayer(playerid);
|
||||
native SetPlayerShopName(playerid, shopname[]);
|
||||
native SetPlayerSkillLevel(playerid, skill, level);
|
||||
native GetPlayerSurfingVehicleID(playerid);
|
||||
native GetPlayerSurfingObjectID(playerid);
|
||||
native RemoveBuildingForPlayer(playerid, modelid, Float:fX, Float:fY, Float:fZ, Float:fRadius);
|
||||
native GetPlayerLastShotVectors(playerid, &Float:fOriginX, &Float:fOriginY, &Float:fOriginZ, &Float:fHitPosX, &Float:fHitPosY, &Float:fHitPosZ);
|
||||
|
||||
// Attached to bone objects
|
||||
|
||||
#define MAX_PLAYER_ATTACHED_OBJECTS 10 // This is the number of attached indexes available ie 10 = 0-9
|
||||
|
||||
native SetPlayerAttachedObject(playerid, index, modelid, bone, Float:fOffsetX = 0.0, Float:fOffsetY = 0.0, Float:fOffsetZ = 0.0, Float:fRotX = 0.0, Float:fRotY = 0.0, Float:fRotZ = 0.0, Float:fScaleX = 1.0, Float:fScaleY = 1.0, Float:fScaleZ = 1.0, materialcolor1 = 0, materialcolor2 = 0);
|
||||
native RemovePlayerAttachedObject(playerid, index);
|
||||
native IsPlayerAttachedObjectSlotUsed(playerid, index);
|
||||
native EditAttachedObject(playerid, index);
|
||||
|
||||
// Per-player TextDraws
|
||||
native PlayerText:CreatePlayerTextDraw(playerid, Float:x, Float:y, text[]);
|
||||
native PlayerTextDrawDestroy(playerid, PlayerText:text);
|
||||
native PlayerTextDrawLetterSize(playerid, PlayerText:text, Float:x, Float:y);
|
||||
native PlayerTextDrawTextSize(playerid, PlayerText:text, Float:x, Float:y);
|
||||
native PlayerTextDrawAlignment(playerid, PlayerText:text, alignment);
|
||||
native PlayerTextDrawColor(playerid, PlayerText:text, color);
|
||||
native PlayerTextDrawUseBox(playerid, PlayerText:text, use);
|
||||
native PlayerTextDrawBoxColor(playerid, PlayerText:text, color);
|
||||
native PlayerTextDrawSetShadow(playerid, PlayerText:text, size);
|
||||
native PlayerTextDrawSetOutline(playerid, PlayerText:text, size);
|
||||
native PlayerTextDrawBackgroundColor(playerid, PlayerText:text, color);
|
||||
native PlayerTextDrawFont(playerid, PlayerText:text, font);
|
||||
native PlayerTextDrawSetProportional(playerid, PlayerText:text, set);
|
||||
native PlayerTextDrawSetSelectable(playerid, PlayerText:text, set);
|
||||
native PlayerTextDrawShow(playerid, PlayerText:text);
|
||||
native PlayerTextDrawHide(playerid, PlayerText:text);
|
||||
native PlayerTextDrawSetString(playerid, PlayerText:text, string[]);
|
||||
native PlayerTextDrawSetPreviewModel(playerid, PlayerText:text, modelindex);
|
||||
native PlayerTextDrawSetPreviewRot(playerid, PlayerText:text, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fZoom = 1.0);
|
||||
native PlayerTextDrawSetPreviewVehCol(playerid, PlayerText:text, color1, color2);
|
||||
|
||||
// Per-player variable system (PVars)
|
||||
native SetPVarInt(playerid, varname[], int_value);
|
||||
native GetPVarInt(playerid, varname[]);
|
||||
native SetPVarString(playerid, varname[], string_value[]);
|
||||
native GetPVarString(playerid, varname[], string_return[], len);
|
||||
native SetPVarFloat(playerid, varname[], Float:float_value);
|
||||
native Float:GetPVarFloat(playerid, varname[]);
|
||||
native DeletePVar(playerid, varname[]);
|
||||
|
||||
// PVar enumeration
|
||||
#define PLAYER_VARTYPE_NONE 0
|
||||
#define PLAYER_VARTYPE_INT 1
|
||||
#define PLAYER_VARTYPE_STRING 2
|
||||
#define PLAYER_VARTYPE_FLOAT 3
|
||||
|
||||
native GetPVarsUpperIndex(playerid);
|
||||
native GetPVarNameAtIndex(playerid, index, ret_varname[], ret_len);
|
||||
native GetPVarType(playerid, varname[]);
|
||||
|
||||
#define MAX_CHATBUBBLE_LENGTH 144
|
||||
native SetPlayerChatBubble(playerid, text[], color, Float:drawdistance, expiretime);
|
||||
|
||||
// Player control
|
||||
native PutPlayerInVehicle(playerid, vehicleid, seatid);
|
||||
native GetPlayerVehicleID(playerid);
|
||||
native GetPlayerVehicleSeat(playerid);
|
||||
native RemovePlayerFromVehicle(playerid);
|
||||
native TogglePlayerControllable(playerid, toggle);
|
||||
native PlayerPlaySound(playerid, soundid, Float:x, Float:y, Float:z);
|
||||
native ApplyAnimation(playerid, animlib[], animname[], Float:fDelta, loop, lockx, locky, freeze, time, forcesync = 0);
|
||||
native ClearAnimations(playerid, forcesync = 0);
|
||||
native GetPlayerAnimationIndex(playerid); // return the index of any running applied animations (0 if none are running)
|
||||
native GetAnimationName(index, animlib[], len1, animname[], len2); // get the animation lib/name for the index
|
||||
native GetPlayerSpecialAction(playerid);
|
||||
native SetPlayerSpecialAction(playerid,actionid);
|
||||
native DisableRemoteVehicleCollisions(playerid, disable);
|
||||
|
||||
// Player world/map related
|
||||
native SetPlayerCheckpoint(playerid, Float:x, Float:y, Float:z, Float:size);
|
||||
native DisablePlayerCheckpoint(playerid);
|
||||
native SetPlayerRaceCheckpoint(playerid, type, Float:x, Float:y, Float:z, Float:nextx, Float:nexty, Float:nextz, Float:size);
|
||||
native DisablePlayerRaceCheckpoint(playerid);
|
||||
native SetPlayerWorldBounds(playerid,Float:x_max,Float:x_min,Float:y_max,Float:y_min);
|
||||
native SetPlayerMarkerForPlayer(playerid, showplayerid, color);
|
||||
native ShowPlayerNameTagForPlayer(playerid, showplayerid, show);
|
||||
|
||||
#define MAPICON_LOCAL 0 // displays in the player's local are
|
||||
#define MAPICON_GLOBAL 1 // displays always
|
||||
#define MAPICON_LOCAL_CHECKPOINT 2 // displays in the player's local area and has a checkpoint marker
|
||||
#define MAPICON_GLOBAL_CHECKPOINT 3 // displays always and has a checkpoint marker
|
||||
|
||||
native SetPlayerMapIcon(playerid, iconid, Float:x, Float:y, Float:z, markertype, color, style = MAPICON_LOCAL);
|
||||
native RemovePlayerMapIcon(playerid, iconid);
|
||||
|
||||
native AllowPlayerTeleport(playerid, allow);
|
||||
|
||||
// Player camera
|
||||
native SetPlayerCameraPos(playerid,Float:x, Float:y, Float:z);
|
||||
|
||||
#define CAMERA_CUT 2
|
||||
#define CAMERA_MOVE 1
|
||||
|
||||
native SetPlayerCameraLookAt(playerid, Float:x, Float:y, Float:z, cut = CAMERA_CUT);
|
||||
native SetCameraBehindPlayer(playerid);
|
||||
native GetPlayerCameraPos(playerid, &Float:x, &Float:y, &Float:z);
|
||||
native GetPlayerCameraFrontVector(playerid, &Float:x, &Float:y, &Float:z);
|
||||
native GetPlayerCameraMode(playerid);
|
||||
native EnablePlayerCameraTarget(playerid, enable);
|
||||
native GetPlayerCameraTargetObject(playerid);
|
||||
native GetPlayerCameraTargetVehicle(playerid);
|
||||
native GetPlayerCameraTargetPlayer(playerid);
|
||||
native GetPlayerCameraTargetActor(playerid);
|
||||
native Float:GetPlayerCameraAspectRatio(playerid);
|
||||
native Float:GetPlayerCameraZoom(playerid);
|
||||
native AttachCameraToObject(playerid, objectid);
|
||||
native AttachCameraToPlayerObject(playerid, playerobjectid);
|
||||
native InterpolateCameraPos(playerid, Float:FromX, Float:FromY, Float:FromZ, Float:ToX, Float:ToY, Float:ToZ, time, cut = CAMERA_CUT);
|
||||
native InterpolateCameraLookAt(playerid, Float:FromX, Float:FromY, Float:FromZ, Float:ToX, Float:ToY, Float:ToZ, time, cut = CAMERA_CUT);
|
||||
|
||||
// Player conditionals
|
||||
native IsPlayerConnected(playerid);
|
||||
native IsPlayerInVehicle(playerid, vehicleid);
|
||||
native IsPlayerInAnyVehicle(playerid);
|
||||
native IsPlayerInCheckpoint(playerid);
|
||||
native IsPlayerInRaceCheckpoint(playerid);
|
||||
|
||||
// Virtual Worlds
|
||||
native SetPlayerVirtualWorld(playerid, worldid);
|
||||
native GetPlayerVirtualWorld(playerid);
|
||||
|
||||
// Insane Stunts
|
||||
native EnableStuntBonusForPlayer(playerid, enable);
|
||||
native EnableStuntBonusForAll(enable);
|
||||
|
||||
// Spectating
|
||||
#define SPECTATE_MODE_NORMAL 1
|
||||
#define SPECTATE_MODE_FIXED 2
|
||||
#define SPECTATE_MODE_SIDE 3
|
||||
|
||||
native TogglePlayerSpectating(playerid, toggle);
|
||||
native PlayerSpectatePlayer(playerid, targetplayerid, mode = SPECTATE_MODE_NORMAL);
|
||||
native PlayerSpectateVehicle(playerid, targetvehicleid, mode = SPECTATE_MODE_NORMAL);
|
||||
|
||||
// Recording for NPC playback
|
||||
#define PLAYER_RECORDING_TYPE_NONE 0
|
||||
#define PLAYER_RECORDING_TYPE_DRIVER 1
|
||||
#define PLAYER_RECORDING_TYPE_ONFOOT 2
|
||||
|
||||
native StartRecordingPlayerData(playerid, recordtype, recordname[]);
|
||||
native StopRecordingPlayerData(playerid);
|
||||
|
||||
native SelectTextDraw(playerid, hovercolor); // enables the mouse so the player can select a textdraw
|
||||
native CancelSelectTextDraw(playerid); // cancel textdraw selection with the mouse
|
||||
|
||||
// Explosion
|
||||
native CreateExplosionForPlayer(playerid, Float:X, Float:Y, Float:Z, type, Float:Radius);
|
426
pawno/include/a_samp.inc
Normal file
426
pawno/include/a_samp.inc
Normal file
@ -0,0 +1,426 @@
|
||||
/* SA-MP Functions
|
||||
*
|
||||
* (c) Copyright 2005-2015, SA-MP Team
|
||||
*
|
||||
*/
|
||||
|
||||
#if defined _samp_included
|
||||
#endinput
|
||||
#endif
|
||||
#define _samp_included
|
||||
#pragma library samp
|
||||
|
||||
#pragma tabsize 4
|
||||
// Ignores warning 217 for properly indented PAWNO code
|
||||
// It's tab size is 4 and often uses 4 spaces instead, PAWNCC's is 8
|
||||
|
||||
#include <core>
|
||||
#include <float>
|
||||
#include <string>
|
||||
#include <file>
|
||||
#include <time>
|
||||
#include <datagram>
|
||||
#include <a_players>
|
||||
#include <a_vehicles>
|
||||
#include <a_objects>
|
||||
#include <a_actor>
|
||||
#include <a_sampdb>
|
||||
|
||||
// Limits and internal constants
|
||||
#define MAX_PLAYER_NAME (24)
|
||||
#define MAX_PLAYERS (1000)
|
||||
#define MAX_VEHICLES (2000)
|
||||
#define MAX_ACTORS (1000)
|
||||
#define INVALID_PLAYER_ID (0xFFFF)
|
||||
#define INVALID_VEHICLE_ID (0xFFFF)
|
||||
#define INVALID_ACTOR_ID (0xFFFF)
|
||||
#define NO_TEAM (255)
|
||||
#define MAX_OBJECTS (1000)
|
||||
#define INVALID_OBJECT_ID (0xFFFF)
|
||||
#define MAX_GANG_ZONES (1024)
|
||||
#define MAX_TEXT_DRAWS (2048)
|
||||
#define MAX_PLAYER_TEXT_DRAWS (256)
|
||||
#define MAX_MENUS (128)
|
||||
#define MAX_3DTEXT_GLOBAL (1024)
|
||||
#define MAX_3DTEXT_PLAYER (1024)
|
||||
#define MAX_PICKUPS (4096)
|
||||
#define INVALID_MENU (0xFF)
|
||||
#define INVALID_TEXT_DRAW (0xFFFF)
|
||||
#define INVALID_GANG_ZONE (-1)
|
||||
#define INVALID_3DTEXT_ID (0xFFFF)
|
||||
|
||||
// --------------------------------------------------
|
||||
// Natives
|
||||
// --------------------------------------------------
|
||||
|
||||
// Util
|
||||
native print(const string[]);
|
||||
native printf(const format[], {Float,_}:...);
|
||||
native format(output[], len, const format[], {Float,_}:...);
|
||||
native SendClientMessage(playerid, color, const message[]);
|
||||
native SendClientMessageToAll(color, const message[]);
|
||||
native SendPlayerMessageToPlayer(playerid, senderid, const message[]);
|
||||
native SendPlayerMessageToAll(senderid, const message[]);
|
||||
native SendDeathMessage(killer, killee, weapon);
|
||||
native SendDeathMessageToPlayer(playerid, killer, killee, weapon);
|
||||
native GameTextForAll(const string[],time,style);
|
||||
native GameTextForPlayer(playerid,const string[],time,style);
|
||||
native SetTimer(funcname[], interval, repeating);
|
||||
native SetTimerEx(funcname[], interval, repeating, const format[], {Float,_}:...);
|
||||
native KillTimer(timerid);
|
||||
native GetTickCount();
|
||||
native GetMaxPlayers();
|
||||
native CallRemoteFunction(const function[], const format[], {Float,_}:...);
|
||||
native CallLocalFunction(const function[], const format[], {Float,_}:...);
|
||||
native Float:VectorSize(Float:x, Float:y, Float:z);
|
||||
native Float:asin(Float:value);
|
||||
native Float:acos(Float:value);
|
||||
native Float:atan(Float:value);
|
||||
native Float:atan2(Float:x, Float:y);
|
||||
native GetPlayerPoolSize();
|
||||
native GetVehiclePoolSize();
|
||||
native GetActorPoolSize();
|
||||
|
||||
// Hash
|
||||
native SHA256_PassHash(password[], salt[], ret_hash[], ret_hash_len); // SHA256 for password hashing
|
||||
|
||||
// Server wide persistent variable system (SVars)
|
||||
native SetSVarInt(varname[], int_value);
|
||||
native GetSVarInt(varname[]);
|
||||
native SetSVarString(varname[], string_value[]);
|
||||
native GetSVarString(varname[], string_return[], len);
|
||||
native SetSVarFloat(varname[], Float:float_value);
|
||||
native Float:GetSVarFloat(varname[]);
|
||||
native DeleteSVar(varname[]);
|
||||
|
||||
// SVar enumeration
|
||||
#define SERVER_VARTYPE_NONE 0
|
||||
#define SERVER_VARTYPE_INT 1
|
||||
#define SERVER_VARTYPE_STRING 2
|
||||
#define SERVER_VARTYPE_FLOAT 3
|
||||
|
||||
native GetSVarsUpperIndex();
|
||||
native GetSVarNameAtIndex(index, ret_varname[], ret_len);
|
||||
native GetSVarType(varname[]);
|
||||
|
||||
// Game
|
||||
native SetGameModeText(const string[]);
|
||||
native SetTeamCount(count);
|
||||
native AddPlayerClass(modelid, Float:spawn_x, Float:spawn_y, Float:spawn_z, Float:z_angle, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo);
|
||||
native AddPlayerClassEx(teamid, modelid, Float:spawn_x, Float:spawn_y, Float:spawn_z, Float:z_angle, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo);
|
||||
native AddStaticVehicle(modelid, Float:spawn_x, Float:spawn_y, Float:spawn_z, Float:z_angle, color1, color2);
|
||||
native AddStaticVehicleEx(modelid, Float:spawn_x, Float:spawn_y, Float:spawn_z, Float:z_angle, color1, color2, respawn_delay, addsiren=0);
|
||||
native AddStaticPickup(model, type, Float:X, Float:Y, Float:Z, virtualworld = 0);
|
||||
native CreatePickup(model, type, Float:X, Float:Y, Float:Z, virtualworld = 0);
|
||||
native DestroyPickup(pickup);
|
||||
native ShowNameTags(show);
|
||||
native ShowPlayerMarkers(mode);
|
||||
native GameModeExit();
|
||||
native SetWorldTime(hour);
|
||||
native GetWeaponName(weaponid, const weapon[], len);
|
||||
native EnableTirePopping(enable); // deprecated function
|
||||
native EnableVehicleFriendlyFire();
|
||||
native AllowInteriorWeapons(allow);
|
||||
native SetWeather(weatherid);
|
||||
native SetGravity(Float:gravity);
|
||||
native AllowAdminTeleport(allow);
|
||||
native SetDeathDropAmount(amount);
|
||||
native CreateExplosion(Float:X, Float:Y, Float:Z, type, Float:Radius);
|
||||
native EnableZoneNames(enable);
|
||||
native UsePlayerPedAnims(); // Will cause the players to use CJ running/walking animations
|
||||
native DisableInteriorEnterExits(); // will disable all interior enter/exits in the game.
|
||||
native SetNameTagDrawDistance(Float:distance); // Distance at which nametags will start rendering on the client.
|
||||
native DisableNameTagLOS(); // Disables the nametag Line-Of-Sight checking
|
||||
native LimitGlobalChatRadius(Float:chat_radius);
|
||||
native LimitPlayerMarkerRadius(Float:marker_radius);
|
||||
|
||||
// Npc
|
||||
native ConnectNPC(name[], script[]);
|
||||
native IsPlayerNPC(playerid);
|
||||
|
||||
// Admin
|
||||
native IsPlayerAdmin(playerid);
|
||||
native Kick(playerid);
|
||||
native Ban(playerid);
|
||||
native BanEx(playerid, const reason[]);
|
||||
native SendRconCommand(command[]);
|
||||
native GetPlayerNetworkStats(playerid, retstr[], retstr_size);
|
||||
native GetNetworkStats(retstr[], retstr_size);
|
||||
native GetPlayerVersion(playerid, const version[], len); // Returns the SA-MP client revision as reported by the player
|
||||
native BlockIpAddress(ip_address[], timems);
|
||||
native UnBlockIpAddress(ip_address[]);
|
||||
|
||||
// Deprecated:
|
||||
native GetServerVarAsString(const varname[], buffer[], len);
|
||||
native GetServerVarAsInt(const varname[]);
|
||||
native GetServerVarAsBool(const varname[]);
|
||||
// These are the same 3 functions as above although they avoid the name ambiguity/conflict with the SVar system.
|
||||
native GetConsoleVarAsString(const varname[], buffer[], len);
|
||||
native GetConsoleVarAsInt(const varname[]);
|
||||
native GetConsoleVarAsBool(const varname[]);
|
||||
|
||||
// Extended admin network stats
|
||||
native GetServerTickRate();
|
||||
native NetStats_GetConnectedTime(playerid);
|
||||
native NetStats_MessagesReceived(playerid);
|
||||
native NetStats_BytesReceived(playerid);
|
||||
native NetStats_MessagesSent(playerid);
|
||||
native NetStats_BytesSent(playerid);
|
||||
native NetStats_MessagesRecvPerSecond(playerid);
|
||||
native Float:NetStats_PacketLossPercent(playerid);
|
||||
native NetStats_ConnectionStatus(playerid);
|
||||
native NetStats_GetIpPort(playerid, ip_port[], ip_port_len);
|
||||
|
||||
// Menu
|
||||
native Menu:CreateMenu(const title[], columns, Float:x, Float:y, Float:col1width, Float:col2width = 0.0);
|
||||
native DestroyMenu(Menu:menuid);
|
||||
native AddMenuItem(Menu:menuid, column, const menutext[]);
|
||||
native SetMenuColumnHeader(Menu:menuid, column, const columnheader[]);
|
||||
native ShowMenuForPlayer(Menu:menuid, playerid);
|
||||
native HideMenuForPlayer(Menu:menuid, playerid);
|
||||
native IsValidMenu(Menu:menuid);
|
||||
native DisableMenu(Menu:menuid);
|
||||
native DisableMenuRow(Menu:menuid, row);
|
||||
native Menu:GetPlayerMenu(playerid);
|
||||
|
||||
// Text Draw
|
||||
#define TEXT_DRAW_FONT_SPRITE_DRAW 4
|
||||
#define TEXT_DRAW_FONT_MODEL_PREVIEW 5
|
||||
|
||||
native Text:TextDrawCreate(Float:x, Float:y, text[]);
|
||||
native TextDrawDestroy(Text:text);
|
||||
native TextDrawLetterSize(Text:text, Float:x, Float:y);
|
||||
native TextDrawTextSize(Text:text, Float:x, Float:y);
|
||||
native TextDrawAlignment(Text:text, alignment);
|
||||
native TextDrawColor(Text:text, color);
|
||||
native TextDrawUseBox(Text:text, use);
|
||||
native TextDrawBoxColor(Text:text, color);
|
||||
native TextDrawSetShadow(Text:text, size);
|
||||
native TextDrawSetOutline(Text:text, size);
|
||||
native TextDrawBackgroundColor(Text:text, color);
|
||||
native TextDrawFont(Text:text, font);
|
||||
native TextDrawSetProportional(Text:text, set);
|
||||
native TextDrawSetSelectable(Text:text, set);
|
||||
native TextDrawShowForPlayer(playerid, Text:text);
|
||||
native TextDrawHideForPlayer(playerid, Text:text);
|
||||
native TextDrawShowForAll(Text:text);
|
||||
native TextDrawHideForAll(Text:text);
|
||||
native TextDrawSetString(Text:text, string[]);
|
||||
native TextDrawSetPreviewModel(Text:text, modelindex);
|
||||
native TextDrawSetPreviewRot(Text:text, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fZoom = 1.0);
|
||||
native TextDrawSetPreviewVehCol(Text:text, color1, color2);
|
||||
|
||||
// Gang Zones
|
||||
native GangZoneCreate(Float:minx, Float:miny, Float:maxx, Float:maxy);
|
||||
native GangZoneDestroy(zone);
|
||||
native GangZoneShowForPlayer(playerid, zone, color);
|
||||
native GangZoneShowForAll(zone, color);
|
||||
native GangZoneHideForPlayer(playerid, zone);
|
||||
native GangZoneHideForAll(zone);
|
||||
native GangZoneFlashForPlayer(playerid, zone, flashcolor);
|
||||
native GangZoneFlashForAll(zone, flashcolor);
|
||||
native GangZoneStopFlashForPlayer(playerid, zone);
|
||||
native GangZoneStopFlashForAll(zone);
|
||||
|
||||
// Global 3D Text Labels
|
||||
native Text3D:Create3DTextLabel(text[], color, Float:X, Float:Y, Float:Z, Float:DrawDistance, virtualworld, testLOS=0);
|
||||
native Delete3DTextLabel(Text3D:id);
|
||||
native Attach3DTextLabelToPlayer(Text3D:id, playerid, Float:OffsetX, Float:OffsetY, Float:OffsetZ);
|
||||
native Attach3DTextLabelToVehicle(Text3D:id, vehicleid, Float:OffsetX, Float:OffsetY, Float:OffsetZ);
|
||||
native Update3DTextLabelText(Text3D:id, color, text[]);
|
||||
|
||||
// Per-player 3D Text Labels
|
||||
native PlayerText3D:CreatePlayer3DTextLabel(playerid, text[], color, Float:X, Float:Y, Float:Z, Float:DrawDistance, attachedplayer=INVALID_PLAYER_ID, attachedvehicle=INVALID_VEHICLE_ID, testLOS=0);
|
||||
native DeletePlayer3DTextLabel(playerid, PlayerText3D:id);
|
||||
native UpdatePlayer3DTextLabelText(playerid, PlayerText3D:id, color, text[]);
|
||||
|
||||
// Player GUI Dialog
|
||||
#define DIALOG_STYLE_MSGBOX 0
|
||||
#define DIALOG_STYLE_INPUT 1
|
||||
#define DIALOG_STYLE_LIST 2
|
||||
#define DIALOG_STYLE_PASSWORD 3
|
||||
#define DIALOG_STYLE_TABLIST 4
|
||||
#define DIALOG_STYLE_TABLIST_HEADERS 5
|
||||
|
||||
native ShowPlayerDialog(playerid, dialogid, style, caption[], info[], button1[], button2[]);
|
||||
|
||||
// --------------------------------------------------
|
||||
// Defines
|
||||
// --------------------------------------------------
|
||||
|
||||
// States
|
||||
#define PLAYER_STATE_NONE (0)
|
||||
#define PLAYER_STATE_ONFOOT (1)
|
||||
#define PLAYER_STATE_DRIVER (2)
|
||||
#define PLAYER_STATE_PASSENGER (3)
|
||||
#define PLAYER_STATE_EXIT_VEHICLE (4) // (used internally)
|
||||
#define PLAYER_STATE_ENTER_VEHICLE_DRIVER (5) // (used internally)
|
||||
#define PLAYER_STATE_ENTER_VEHICLE_PASSENGER (6) // (used internally)
|
||||
#define PLAYER_STATE_WASTED (7)
|
||||
#define PLAYER_STATE_SPAWNED (8)
|
||||
#define PLAYER_STATE_SPECTATING (9)
|
||||
|
||||
// Marker modes used by ShowPlayerMarkers()
|
||||
#define PLAYER_MARKERS_MODE_OFF (0)
|
||||
#define PLAYER_MARKERS_MODE_GLOBAL (1)
|
||||
#define PLAYER_MARKERS_MODE_STREAMED (2)
|
||||
|
||||
// Weapons
|
||||
#define WEAPON_BRASSKNUCKLE (1)
|
||||
#define WEAPON_GOLFCLUB (2)
|
||||
#define WEAPON_NITESTICK (3)
|
||||
#define WEAPON_KNIFE (4)
|
||||
#define WEAPON_BAT (5)
|
||||
#define WEAPON_SHOVEL (6)
|
||||
#define WEAPON_POOLSTICK (7)
|
||||
#define WEAPON_KATANA (8)
|
||||
#define WEAPON_CHAINSAW (9)
|
||||
#define WEAPON_DILDO (10)
|
||||
#define WEAPON_DILDO2 (11)
|
||||
#define WEAPON_VIBRATOR (12)
|
||||
#define WEAPON_VIBRATOR2 (13)
|
||||
#define WEAPON_FLOWER (14)
|
||||
#define WEAPON_CANE (15)
|
||||
#define WEAPON_GRENADE (16)
|
||||
#define WEAPON_TEARGAS (17)
|
||||
#define WEAPON_MOLTOV (18)
|
||||
#define WEAPON_COLT45 (22)
|
||||
#define WEAPON_SILENCED (23)
|
||||
#define WEAPON_DEAGLE (24)
|
||||
#define WEAPON_SHOTGUN (25)
|
||||
#define WEAPON_SAWEDOFF (26)
|
||||
#define WEAPON_SHOTGSPA (27)
|
||||
#define WEAPON_UZI (28)
|
||||
#define WEAPON_MP5 (29)
|
||||
#define WEAPON_AK47 (30)
|
||||
#define WEAPON_M4 (31)
|
||||
#define WEAPON_TEC9 (32)
|
||||
#define WEAPON_RIFLE (33)
|
||||
#define WEAPON_SNIPER (34)
|
||||
#define WEAPON_ROCKETLAUNCHER (35)
|
||||
#define WEAPON_HEATSEEKER (36)
|
||||
#define WEAPON_FLAMETHROWER (37)
|
||||
#define WEAPON_MINIGUN (38)
|
||||
#define WEAPON_SATCHEL (39)
|
||||
#define WEAPON_BOMB (40)
|
||||
#define WEAPON_SPRAYCAN (41)
|
||||
#define WEAPON_FIREEXTINGUISHER (42)
|
||||
#define WEAPON_CAMERA (43)
|
||||
#define WEAPON_PARACHUTE (46)
|
||||
#define WEAPON_VEHICLE (49)
|
||||
#define WEAPON_DROWN (53)
|
||||
#define WEAPON_COLLISION (54)
|
||||
|
||||
// Keys
|
||||
#define KEY_ACTION (1)
|
||||
#define KEY_CROUCH (2)
|
||||
#define KEY_FIRE (4)
|
||||
#define KEY_SPRINT (8)
|
||||
#define KEY_SECONDARY_ATTACK (16)
|
||||
#define KEY_JUMP (32)
|
||||
#define KEY_LOOK_RIGHT (64)
|
||||
#define KEY_HANDBRAKE (128)
|
||||
#define KEY_LOOK_LEFT (256)
|
||||
#define KEY_SUBMISSION (512)
|
||||
#define KEY_LOOK_BEHIND (512)
|
||||
#define KEY_WALK (1024)
|
||||
#define KEY_ANALOG_UP (2048)
|
||||
#define KEY_ANALOG_DOWN (4096)
|
||||
#define KEY_ANALOG_LEFT (8192)
|
||||
#define KEY_ANALOG_RIGHT (16384)
|
||||
#define KEY_YES (65536)
|
||||
#define KEY_NO (131072)
|
||||
#define KEY_CTRL_BACK (262144)
|
||||
|
||||
#define KEY_UP (-128)
|
||||
#define KEY_DOWN (128)
|
||||
#define KEY_LEFT (-128)
|
||||
#define KEY_RIGHT (128)
|
||||
|
||||
// --------------------------------------------------
|
||||
// Forwards (Callback declarations)
|
||||
// --------------------------------------------------
|
||||
|
||||
forward OnGameModeInit();
|
||||
forward OnGameModeExit();
|
||||
forward OnFilterScriptInit();
|
||||
forward OnFilterScriptExit();
|
||||
forward OnPlayerConnect(playerid);
|
||||
forward OnPlayerDisconnect(playerid, reason);
|
||||
forward OnPlayerSpawn(playerid);
|
||||
forward OnPlayerDeath(playerid, killerid, reason);
|
||||
forward OnVehicleSpawn(vehicleid);
|
||||
forward OnVehicleDeath(vehicleid, killerid);
|
||||
forward OnPlayerText(playerid, text[]);
|
||||
forward OnPlayerCommandText(playerid, cmdtext[]);
|
||||
forward OnPlayerRequestClass(playerid, classid);
|
||||
forward OnPlayerEnterVehicle(playerid, vehicleid, ispassenger);
|
||||
forward OnPlayerExitVehicle(playerid, vehicleid);
|
||||
forward OnPlayerStateChange(playerid, newstate, oldstate);
|
||||
forward OnPlayerEnterCheckpoint(playerid);
|
||||
forward OnPlayerLeaveCheckpoint(playerid);
|
||||
forward OnPlayerEnterRaceCheckpoint(playerid);
|
||||
forward OnPlayerLeaveRaceCheckpoint(playerid);
|
||||
forward OnRconCommand(cmd[]);
|
||||
forward OnPlayerRequestSpawn(playerid);
|
||||
forward OnObjectMoved(objectid);
|
||||
forward OnPlayerObjectMoved(playerid, objectid);
|
||||
forward OnPlayerPickUpPickup(playerid, pickupid);
|
||||
forward OnVehicleMod(playerid, vehicleid, componentid);
|
||||
forward OnEnterExitModShop(playerid, enterexit, interiorid);
|
||||
forward OnVehiclePaintjob(playerid, vehicleid, paintjobid);
|
||||
forward OnVehicleRespray(playerid, vehicleid, color1, color2);
|
||||
forward OnVehicleDamageStatusUpdate(vehicleid, playerid);
|
||||
forward OnUnoccupiedVehicleUpdate(vehicleid, playerid, passenger_seat, Float:new_x, Float:new_y, Float:new_z, Float:vel_x, Float:vel_y, Float:vel_z);
|
||||
forward OnPlayerSelectedMenuRow(playerid, row);
|
||||
forward OnPlayerExitedMenu(playerid);
|
||||
forward OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid);
|
||||
forward OnPlayerKeyStateChange(playerid, newkeys, oldkeys);
|
||||
forward OnRconLoginAttempt( ip[], password[], success );
|
||||
forward OnPlayerUpdate(playerid);
|
||||
forward OnPlayerStreamIn(playerid, forplayerid);
|
||||
forward OnPlayerStreamOut(playerid, forplayerid);
|
||||
forward OnVehicleStreamIn(vehicleid, forplayerid);
|
||||
forward OnVehicleStreamOut(vehicleid, forplayerid);
|
||||
forward OnActorStreamIn(actorid, forplayerid);
|
||||
forward OnActorStreamOut(actorid, forplayerid);
|
||||
forward OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]);
|
||||
forward OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart);
|
||||
forward OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid, bodypart);
|
||||
forward OnPlayerGiveDamageActor(playerid, damaged_actorid, Float:amount, weaponid, bodypart);
|
||||
forward OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ);
|
||||
forward OnPlayerClickTextDraw(playerid, Text:clickedid);
|
||||
forward OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid);
|
||||
forward OnIncomingConnection(playerid, ip_address[], port);
|
||||
forward OnTrailerUpdate(playerid, vehicleid);
|
||||
forward OnVehicleSirenStateChange(playerid, vehicleid, newstate);
|
||||
|
||||
#define CLICK_SOURCE_SCOREBOARD 0
|
||||
forward OnPlayerClickPlayer(playerid, clickedplayerid, source);
|
||||
|
||||
#define EDIT_RESPONSE_CANCEL 0
|
||||
#define EDIT_RESPONSE_FINAL 1
|
||||
#define EDIT_RESPONSE_UPDATE 2
|
||||
|
||||
forward OnPlayerEditObject( playerid, playerobject, objectid, response,
|
||||
Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ );
|
||||
|
||||
forward OnPlayerEditAttachedObject( playerid, response, index, modelid, boneid,
|
||||
Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ,
|
||||
Float:fRotX, Float:fRotY, Float:fRotZ,
|
||||
Float:fScaleX, Float:fScaleY, Float:fScaleZ );
|
||||
|
||||
#define SELECT_OBJECT_GLOBAL_OBJECT 1
|
||||
#define SELECT_OBJECT_PLAYER_OBJECT 2
|
||||
|
||||
forward OnPlayerSelectObject(playerid, type, objectid, modelid, Float:fX, Float:fY, Float:fZ);
|
||||
|
||||
#define BULLET_HIT_TYPE_NONE 0
|
||||
#define BULLET_HIT_TYPE_PLAYER 1
|
||||
#define BULLET_HIT_TYPE_VEHICLE 2
|
||||
#define BULLET_HIT_TYPE_OBJECT 3
|
||||
#define BULLET_HIT_TYPE_PLAYER_OBJECT 4
|
||||
|
||||
forward OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ);
|
||||
|
||||
// --------------------------------------------------
|
30
pawno/include/a_sampdb.inc
Normal file
30
pawno/include/a_sampdb.inc
Normal file
@ -0,0 +1,30 @@
|
||||
// SA-MP Native SQLite Database Functions
|
||||
//
|
||||
// (c) Copyright 2015, SA-MP Team
|
||||
//
|
||||
|
||||
#if defined _sampdb_included
|
||||
#endinput
|
||||
#endif
|
||||
#define _sampdb_included
|
||||
#pragma library sampdb
|
||||
|
||||
native DB:db_open(name[]);
|
||||
native db_close(DB:db);
|
||||
native DBResult:db_query(DB:db, query[]);
|
||||
native db_free_result(DBResult:dbresult);
|
||||
native db_num_rows(DBResult:dbresult);
|
||||
native db_next_row(DBResult:dbresult);
|
||||
native db_num_fields(DBResult:dbresult);
|
||||
native db_field_name(DBResult:dbresult, field, result[], maxlength);
|
||||
native db_get_field(DBResult:dbresult, field, result[], maxlength);
|
||||
native db_get_field_int(DBResult:result, field = 0);
|
||||
native Float:db_get_field_float(DBResult:result, field = 0);
|
||||
native db_get_field_assoc(DBResult:dbresult, const field[], result[], maxlength);
|
||||
native db_get_field_assoc_int(DBResult:result, const field[]);
|
||||
native Float:db_get_field_assoc_float(DBResult:result, const field[]);
|
||||
native db_get_mem_handle(DB:db);
|
||||
native db_get_result_mem_handle(DBResult:result);
|
||||
|
||||
native db_debug_openfiles();
|
||||
native db_debug_openresults();
|
88
pawno/include/a_vehicles.inc
Normal file
88
pawno/include/a_vehicles.inc
Normal file
@ -0,0 +1,88 @@
|
||||
/* SA-MP Vehicle Functions
|
||||
*
|
||||
* (c) Copyright 2005-2012, SA-MP Team
|
||||
*
|
||||
*/
|
||||
|
||||
#if defined _vehicles_included
|
||||
#endinput
|
||||
#endif
|
||||
#define _vehicles_included
|
||||
#pragma library vehicles
|
||||
|
||||
#define CARMODTYPE_SPOILER 0
|
||||
#define CARMODTYPE_HOOD 1
|
||||
#define CARMODTYPE_ROOF 2
|
||||
#define CARMODTYPE_SIDESKIRT 3
|
||||
#define CARMODTYPE_LAMPS 4
|
||||
#define CARMODTYPE_NITRO 5
|
||||
#define CARMODTYPE_EXHAUST 6
|
||||
#define CARMODTYPE_WHEELS 7
|
||||
#define CARMODTYPE_STEREO 8
|
||||
#define CARMODTYPE_HYDRAULICS 9
|
||||
#define CARMODTYPE_FRONT_BUMPER 10
|
||||
#define CARMODTYPE_REAR_BUMPER 11
|
||||
#define CARMODTYPE_VENT_RIGHT 12
|
||||
#define CARMODTYPE_VENT_LEFT 13
|
||||
|
||||
#define VEHICLE_PARAMS_UNSET -1
|
||||
#define VEHICLE_PARAMS_OFF 0
|
||||
#define VEHICLE_PARAMS_ON 1
|
||||
|
||||
// Vehicle
|
||||
native CreateVehicle(vehicletype, Float:x, Float:y, Float:z, Float:rotation, color1, color2, respawn_delay, addsiren=0);
|
||||
native DestroyVehicle(vehicleid);
|
||||
native IsVehicleStreamedIn(vehicleid, forplayerid);
|
||||
native GetVehiclePos(vehicleid, &Float:x, &Float:y, &Float:z);
|
||||
native SetVehiclePos(vehicleid, Float:x, Float:y, Float:z);
|
||||
native GetVehicleZAngle(vehicleid, &Float:z_angle);
|
||||
native GetVehicleRotationQuat(vehicleid, &Float:w, &Float:x, &Float:y, &Float:z);
|
||||
native Float:GetVehicleDistanceFromPoint(vehicleid, Float:X, Float:Y, Float:Z);
|
||||
native SetVehicleZAngle(vehicleid, Float:z_angle);
|
||||
native SetVehicleParamsForPlayer(vehicleid,playerid,objective,doorslocked);
|
||||
native ManualVehicleEngineAndLights();
|
||||
native SetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
|
||||
native GetVehicleParamsEx(vehicleid, &engine, &lights, &alarm, &doors, &bonnet, &boot, &objective);
|
||||
native GetVehicleParamsSirenState(vehicleid);
|
||||
native SetVehicleParamsCarDoors(vehicleid, driver, passenger, backleft, backright);
|
||||
native GetVehicleParamsCarDoors(vehicleid, &driver, &passenger, &backleft, &backright);
|
||||
native SetVehicleParamsCarWindows(vehicleid, driver, passenger, backleft, backright);
|
||||
native GetVehicleParamsCarWindows(vehicleid, &driver, &passenger, &backleft, &backright);
|
||||
native SetVehicleToRespawn(vehicleid);
|
||||
native LinkVehicleToInterior(vehicleid, interiorid);
|
||||
native AddVehicleComponent(vehicleid, componentid);
|
||||
native RemoveVehicleComponent(vehicleid, componentid);
|
||||
native ChangeVehicleColor(vehicleid, color1, color2);
|
||||
native ChangeVehiclePaintjob(vehicleid, paintjobid);
|
||||
native SetVehicleHealth(vehicleid, Float:health);
|
||||
native GetVehicleHealth(vehicleid, &Float:health);
|
||||
native AttachTrailerToVehicle(trailerid, vehicleid);
|
||||
native DetachTrailerFromVehicle(vehicleid);
|
||||
native IsTrailerAttachedToVehicle(vehicleid);
|
||||
native GetVehicleTrailer(vehicleid);
|
||||
native SetVehicleNumberPlate(vehicleid, numberplate[]);
|
||||
native GetVehicleModel(vehicleid);
|
||||
native GetVehicleComponentInSlot(vehicleid, slot); // There is 1 slot for each CARMODTYPE_*
|
||||
native GetVehicleComponentType(component); // Find CARMODTYPE_* for component id
|
||||
native RepairVehicle(vehicleid); // Repairs the damage model and resets the health
|
||||
native GetVehicleVelocity(vehicleid, &Float:X, &Float:Y, &Float:Z);
|
||||
native SetVehicleVelocity(vehicleid, Float:X, Float:Y, Float:Z);
|
||||
native SetVehicleAngularVelocity(vehicleid, Float:X, Float:Y, Float:Z);
|
||||
native GetVehicleDamageStatus(vehicleid, &panels, &doors, &lights, &tires);
|
||||
native UpdateVehicleDamageStatus(vehicleid, panels, doors, lights, tires);
|
||||
|
||||
#define VEHICLE_MODEL_INFO_SIZE 1
|
||||
#define VEHICLE_MODEL_INFO_FRONTSEAT 2
|
||||
#define VEHICLE_MODEL_INFO_REARSEAT 3
|
||||
#define VEHICLE_MODEL_INFO_PETROLCAP 4
|
||||
#define VEHICLE_MODEL_INFO_WHEELSFRONT 5
|
||||
#define VEHICLE_MODEL_INFO_WHEELSREAR 6
|
||||
#define VEHICLE_MODEL_INFO_WHEELSMID 7
|
||||
#define VEHICLE_MODEL_INFO_FRONT_BUMPER_Z 8
|
||||
#define VEHICLE_MODEL_INFO_REAR_BUMPER_Z 9
|
||||
|
||||
native GetVehicleModelInfo(vehiclemodel, infotype, &Float:X, &Float:Y, &Float:Z);
|
||||
|
||||
// Virtual Worlds
|
||||
native SetVehicleVirtualWorld(vehicleid, worldid);
|
||||
native GetVehicleVirtualWorld(vehicleid);
|
34
pawno/include/core.inc
Normal file
34
pawno/include/core.inc
Normal file
@ -0,0 +1,34 @@
|
||||
/* Core functions
|
||||
*
|
||||
* (c) Copyright 1998-2005, ITB CompuPhase
|
||||
* This file is provided as is (no warranties).
|
||||
*/
|
||||
#if defined _core_included
|
||||
#endinput
|
||||
#endif
|
||||
#define _core_included
|
||||
#pragma library Core
|
||||
|
||||
native heapspace();
|
||||
|
||||
native funcidx(const name[]);
|
||||
|
||||
native numargs();
|
||||
native getarg(arg, index=0);
|
||||
native setarg(arg, index=0, value);
|
||||
|
||||
native tolower(c);
|
||||
native toupper(c);
|
||||
native swapchars(c);
|
||||
|
||||
native random(max);
|
||||
|
||||
native min(value1, value2);
|
||||
native max(value1, value2);
|
||||
native clamp(value, min=cellmin, max=cellmax);
|
||||
|
||||
native getproperty(id=0, const name[]="", value=cellmin, string[]="");
|
||||
native setproperty(id=0, const name[]="", value=cellmin, const string[]="");
|
||||
native deleteproperty(id=0, const name[]="", value=cellmin);
|
||||
native existproperty(id=0, const name[]="", value=cellmin);
|
||||
|
18
pawno/include/datagram.inc
Normal file
18
pawno/include/datagram.inc
Normal file
@ -0,0 +1,18 @@
|
||||
/* Datagram sending/receiving
|
||||
*
|
||||
* (c) Copyright 2005, ITB CompuPhase
|
||||
* This file is provided as is (no warranties).
|
||||
*/
|
||||
#if defined _datagram_included
|
||||
#endinput
|
||||
#endif
|
||||
#define _datagram_included
|
||||
#pragma library DGram
|
||||
|
||||
native sendstring(const message[], const destination[]="");
|
||||
native sendpacket(const packet[], size, const destination[]="");
|
||||
|
||||
native listenport(port);
|
||||
|
||||
forward @receivestring(const message[], const source[]);
|
||||
forward @receivepacket(const packet[], size, const source[]);
|
44
pawno/include/file.inc
Normal file
44
pawno/include/file.inc
Normal file
@ -0,0 +1,44 @@
|
||||
/* File input/output functions
|
||||
*
|
||||
* (c) Copyright 2004-2005, ITB CompuPhase
|
||||
* This file is provided as is (no warranties).
|
||||
*/
|
||||
#if defined _file_included
|
||||
#endinput
|
||||
#endif
|
||||
#define _file_included
|
||||
#pragma library File
|
||||
|
||||
enum filemode
|
||||
{
|
||||
io_read, /* file must exist */
|
||||
io_write, /* creates a new file */
|
||||
io_readwrite, /* opens an existing file, or creates a new file */
|
||||
io_append, /* appends to file (write-only) */
|
||||
}
|
||||
|
||||
enum seek_whence
|
||||
{
|
||||
seek_start,
|
||||
seek_current,
|
||||
seek_end,
|
||||
}
|
||||
|
||||
const EOF = -1;
|
||||
|
||||
native File:fopen(const name[], filemode: mode = io_readwrite);
|
||||
native bool:fclose(File: handle);
|
||||
native File:ftemp();
|
||||
native bool:fremove(const name[]);
|
||||
|
||||
native fwrite(File: handle, const string[]);
|
||||
native fread(File: handle, string[], size = sizeof string, bool: pack = false);
|
||||
native bool:fputchar(File: handle, value, bool: utf8 = true);
|
||||
native fgetchar(File: handle, value, bool: utf8 = true);
|
||||
native fblockwrite(File: handle, const buffer[], size = sizeof buffer);
|
||||
native fblockread(File: handle, buffer[], size = sizeof buffer);
|
||||
|
||||
native fseek(File: handle, position = 0, seek_whence: whence = seek_start);
|
||||
native flength(File: handle);
|
||||
native fexist(const pattern[]);
|
||||
native bool:fmatch(name[], const pattern[], index = 0, size = sizeof name);
|
184
pawno/include/float.inc
Normal file
184
pawno/include/float.inc
Normal file
@ -0,0 +1,184 @@
|
||||
/* Float arithmetic
|
||||
*
|
||||
* (c) Copyright 1999, Artran, Inc.
|
||||
* Written by Greg Garner (gmg@artran.com)
|
||||
* Modified in March 2001 to include user defined
|
||||
* operators for the floating point functions.
|
||||
*
|
||||
* This file is provided as is (no warranties).
|
||||
*/
|
||||
#if defined _Float_included
|
||||
#endinput
|
||||
#endif
|
||||
#define _Float_included
|
||||
#pragma library Float
|
||||
|
||||
/* Different methods of rounding */
|
||||
enum floatround_method {
|
||||
floatround_round,
|
||||
floatround_floor,
|
||||
floatround_ceil,
|
||||
floatround_tozero,
|
||||
floatround_unbiased
|
||||
}
|
||||
enum anglemode {
|
||||
radian,
|
||||
degrees,
|
||||
grades
|
||||
}
|
||||
|
||||
/**************************************************/
|
||||
/* Convert an integer into a floating point value */
|
||||
native Float:float(value);
|
||||
|
||||
/**************************************************/
|
||||
/* Convert a string into a floating point value */
|
||||
native Float:floatstr(const string[]);
|
||||
|
||||
/**************************************************/
|
||||
/* Multiple two floats together */
|
||||
native Float:floatmul(Float:oper1, Float:oper2);
|
||||
|
||||
/**************************************************/
|
||||
/* Divide the dividend float by the divisor float */
|
||||
native Float:floatdiv(Float:dividend, Float:divisor);
|
||||
|
||||
/**************************************************/
|
||||
/* Add two floats together */
|
||||
native Float:floatadd(Float:oper1, Float:oper2);
|
||||
|
||||
/**************************************************/
|
||||
/* Subtract oper2 float from oper1 float */
|
||||
native Float:floatsub(Float:oper1, Float:oper2);
|
||||
|
||||
/**************************************************/
|
||||
/* Return the fractional part of a float */
|
||||
native Float:floatfract(Float:value);
|
||||
|
||||
/**************************************************/
|
||||
/* Round a float into a integer value */
|
||||
native floatround(Float:value, floatround_method:method=floatround_round);
|
||||
|
||||
/**************************************************/
|
||||
/* Compare two integers. If the two elements are equal, return 0.
|
||||
If the first argument is greater than the second argument, return 1,
|
||||
If the first argument is less than the second argument, return -1. */
|
||||
native floatcmp(Float:oper1, Float:oper2);
|
||||
|
||||
/**************************************************/
|
||||
/* Return the square root of the input value, same as floatpower(value, 0.5) */
|
||||
native Float:floatsqroot(Float:value);
|
||||
|
||||
/**************************************************/
|
||||
/* Return the value raised to the power of the exponent */
|
||||
native Float:floatpower(Float:value, Float:exponent);
|
||||
|
||||
/**************************************************/
|
||||
/* Return the logarithm */
|
||||
native Float:floatlog(Float:value, Float:base=10.0);
|
||||
|
||||
/**************************************************/
|
||||
/* Return the sine, cosine or tangent. The input angle may be in radian,
|
||||
degrees or grades. */
|
||||
native Float:floatsin(Float:value, anglemode:mode=radian);
|
||||
native Float:floatcos(Float:value, anglemode:mode=radian);
|
||||
native Float:floattan(Float:value, anglemode:mode=radian);
|
||||
|
||||
/**************************************************/
|
||||
/* Return the absolute value */
|
||||
native Float:floatabs(Float:value);
|
||||
|
||||
|
||||
/**************************************************/
|
||||
#pragma rational Float
|
||||
|
||||
/* user defined operators */
|
||||
native Float:operator*(Float:oper1, Float:oper2) = floatmul;
|
||||
native Float:operator/(Float:oper1, Float:oper2) = floatdiv;
|
||||
native Float:operator+(Float:oper1, Float:oper2) = floatadd;
|
||||
native Float:operator-(Float:oper1, Float:oper2) = floatsub;
|
||||
native Float:operator=(oper) = float;
|
||||
|
||||
stock Float:operator++(Float:oper)
|
||||
return oper+1.0;
|
||||
|
||||
stock Float:operator--(Float:oper)
|
||||
return oper-1.0;
|
||||
|
||||
stock Float:operator-(Float:oper)
|
||||
return oper^Float:cellmin; /* IEEE values are sign/magnitude */
|
||||
|
||||
stock Float:operator*(Float:oper1, oper2)
|
||||
return floatmul(oper1, float(oper2)); /* "*" is commutative */
|
||||
|
||||
stock Float:operator/(Float:oper1, oper2)
|
||||
return floatdiv(oper1, float(oper2));
|
||||
|
||||
stock Float:operator/(oper1, Float:oper2)
|
||||
return floatdiv(float(oper1), oper2);
|
||||
|
||||
stock Float:operator+(Float:oper1, oper2)
|
||||
return floatadd(oper1, float(oper2)); /* "+" is commutative */
|
||||
|
||||
stock Float:operator-(Float:oper1, oper2)
|
||||
return floatsub(oper1, float(oper2));
|
||||
|
||||
stock Float:operator-(oper1, Float:oper2)
|
||||
return floatsub(float(oper1), oper2);
|
||||
|
||||
stock bool:operator==(Float:oper1, Float:oper2)
|
||||
return floatcmp(oper1, oper2) == 0;
|
||||
|
||||
stock bool:operator==(Float:oper1, oper2)
|
||||
return floatcmp(oper1, float(oper2)) == 0; /* "==" is commutative */
|
||||
|
||||
stock bool:operator!=(Float:oper1, Float:oper2)
|
||||
return floatcmp(oper1, oper2) != 0;
|
||||
|
||||
stock bool:operator!=(Float:oper1, oper2)
|
||||
return floatcmp(oper1, float(oper2)) != 0; /* "!=" is commutative */
|
||||
|
||||
stock bool:operator>(Float:oper1, Float:oper2)
|
||||
return floatcmp(oper1, oper2) > 0;
|
||||
|
||||
stock bool:operator>(Float:oper1, oper2)
|
||||
return floatcmp(oper1, float(oper2)) > 0;
|
||||
|
||||
stock bool:operator>(oper1, Float:oper2)
|
||||
return floatcmp(float(oper1), oper2) > 0;
|
||||
|
||||
stock bool:operator>=(Float:oper1, Float:oper2)
|
||||
return floatcmp(oper1, oper2) >= 0;
|
||||
|
||||
stock bool:operator>=(Float:oper1, oper2)
|
||||
return floatcmp(oper1, float(oper2)) >= 0;
|
||||
|
||||
stock bool:operator>=(oper1, Float:oper2)
|
||||
return floatcmp(float(oper1), oper2) >= 0;
|
||||
|
||||
stock bool:operator<(Float:oper1, Float:oper2)
|
||||
return floatcmp(oper1, oper2) < 0;
|
||||
|
||||
stock bool:operator<(Float:oper1, oper2)
|
||||
return floatcmp(oper1, float(oper2)) < 0;
|
||||
|
||||
stock bool:operator<(oper1, Float:oper2)
|
||||
return floatcmp(float(oper1), oper2) < 0;
|
||||
|
||||
stock bool:operator<=(Float:oper1, Float:oper2)
|
||||
return floatcmp(oper1, oper2) <= 0;
|
||||
|
||||
stock bool:operator<=(Float:oper1, oper2)
|
||||
return floatcmp(oper1, float(oper2)) <= 0;
|
||||
|
||||
stock bool:operator<=(oper1, Float:oper2)
|
||||
return floatcmp(float(oper1), oper2) <= 0;
|
||||
|
||||
stock bool:operator!(Float:oper)
|
||||
return (_:oper & cellmax) == 0;
|
||||
|
||||
/* forbidden operations */
|
||||
forward operator%(Float:oper1, Float:oper2);
|
||||
forward operator%(Float:oper1, oper2);
|
||||
forward operator%(oper1, Float:oper2);
|
||||
|
30
pawno/include/string.inc
Normal file
30
pawno/include/string.inc
Normal file
@ -0,0 +1,30 @@
|
||||
/* String functions
|
||||
*
|
||||
* (c) Copyright 2005, ITB CompuPhase
|
||||
* This file is provided as is (no warranties).
|
||||
*/
|
||||
#if defined _string_included
|
||||
#endinput
|
||||
#endif
|
||||
#define _string_included
|
||||
#pragma library String
|
||||
|
||||
native strlen(const string[]);
|
||||
native strpack(dest[], const source[], maxlength=sizeof dest);
|
||||
native strunpack(dest[], const source[], maxlength=sizeof dest);
|
||||
native strcat(dest[], const source[], maxlength=sizeof dest);
|
||||
|
||||
native strmid(dest[], const source[], start, end, maxlength=sizeof dest);
|
||||
native bool: strins(string[], const substr[], pos, maxlength=sizeof string);
|
||||
native bool: strdel(string[], start, end);
|
||||
|
||||
native strcmp(const string1[], const string2[], bool:ignorecase=false, length=cellmax);
|
||||
native strfind(const string[], const sub[], bool:ignorecase=false, pos=0);
|
||||
|
||||
native strval(const string[]);
|
||||
native valstr(dest[], value, bool:pack=false);
|
||||
native bool: ispacked(const string[]);
|
||||
|
||||
native uudecode(dest[], const source[], maxlength=sizeof dest);
|
||||
native uuencode(dest[], const source[], numbytes, maxlength=sizeof dest);
|
||||
native memcpy(dest[], const source[], index=0, numbytes, maxlength=sizeof dest);
|
14
pawno/include/time.inc
Normal file
14
pawno/include/time.inc
Normal file
@ -0,0 +1,14 @@
|
||||
/* Date/time functions
|
||||
*
|
||||
* (c) Copyright 2001-2005, ITB CompuPhase
|
||||
* This file is provided as is (no warranties).
|
||||
*/
|
||||
#if defined _time_included
|
||||
#endinput
|
||||
#endif
|
||||
#define _time_included
|
||||
#pragma library Time
|
||||
|
||||
native gettime(&hour=0, &minute=0, &second=0);
|
||||
native getdate(&year=0, &month=0, &day=0);
|
||||
native tickcount(&granularity=0);
|
BIN
pawno/libpawnc.dll
Normal file
BIN
pawno/libpawnc.dll
Normal file
Binary file not shown.
232
pawno/new.pwn
Normal file
232
pawno/new.pwn
Normal file
@ -0,0 +1,232 @@
|
||||
// This is a comment
|
||||
// uncomment the line below if you want to write a filterscript
|
||||
//#define FILTERSCRIPT
|
||||
|
||||
#include <a_samp>
|
||||
|
||||
#if defined FILTERSCRIPT
|
||||
|
||||
public OnFilterScriptInit()
|
||||
{
|
||||
print("\n--------------------------------------");
|
||||
print(" Blank Filterscript by your name here");
|
||||
print("--------------------------------------\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnFilterScriptExit()
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
main()
|
||||
{
|
||||
print("\n----------------------------------");
|
||||
print(" Blank Gamemode by your name here");
|
||||
print("----------------------------------\n");
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
public OnGameModeInit()
|
||||
{
|
||||
// Don't use these lines if it's a filterscript
|
||||
SetGameModeText("Blank Script");
|
||||
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnGameModeExit()
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerRequestClass(playerid, classid)
|
||||
{
|
||||
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
|
||||
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
|
||||
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerConnect(playerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerDisconnect(playerid, reason)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerSpawn(playerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerDeath(playerid, killerid, reason)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnVehicleSpawn(vehicleid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnVehicleDeath(vehicleid, killerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerText(playerid, text[])
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerCommandText(playerid, cmdtext[])
|
||||
{
|
||||
if (strcmp("/mycommand", cmdtext, true, 10) == 0)
|
||||
{
|
||||
// Do something here
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerExitVehicle(playerid, vehicleid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerStateChange(playerid, newstate, oldstate)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerEnterCheckpoint(playerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerLeaveCheckpoint(playerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerEnterRaceCheckpoint(playerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerLeaveRaceCheckpoint(playerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnRconCommand(cmd[])
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerRequestSpawn(playerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnObjectMoved(objectid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerObjectMoved(playerid, objectid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerPickUpPickup(playerid, pickupid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnVehicleMod(playerid, vehicleid, componentid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnVehicleRespray(playerid, vehicleid, color1, color2)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerSelectedMenuRow(playerid, row)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerExitedMenu(playerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnRconLoginAttempt(ip[], password[], success)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerUpdate(playerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerStreamIn(playerid, forplayerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerStreamOut(playerid, forplayerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnVehicleStreamIn(vehicleid, forplayerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnVehicleStreamOut(vehicleid, forplayerid)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
|
||||
{
|
||||
return 1;
|
||||
}
|
BIN
pawno/pawn-lang.pdf
Normal file
BIN
pawno/pawn-lang.pdf
Normal file
Binary file not shown.
BIN
pawno/pawn.ico
Normal file
BIN
pawno/pawn.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 8.3 KiB |
BIN
pawno/pawnc.dll
Normal file
BIN
pawno/pawnc.dll
Normal file
Binary file not shown.
BIN
pawno/pawncc.exe
Normal file
BIN
pawno/pawncc.exe
Normal file
Binary file not shown.
BIN
pawno/pawno.exe
Normal file
BIN
pawno/pawno.exe
Normal file
Binary file not shown.
17
pawno/settings.ini
Normal file
17
pawno/settings.ini
Normal file
@ -0,0 +1,17 @@
|
||||
[General]
|
||||
FileAssoc=1
|
||||
[Display]
|
||||
WindowMax=1
|
||||
WindowX=556
|
||||
WindowY=261
|
||||
WindowW=790
|
||||
WindowH=485
|
||||
Splitter=339
|
||||
Font_Name=Courier New
|
||||
Font_Size=10
|
||||
ShowFuncList=1
|
||||
[RunOpts]
|
||||
CopyDir=\
|
||||
ExeFile=pawncc.exe
|
||||
Params=-r -w 203
|
||||
|
Reference in New Issue
Block a user