mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 09:40:21 +00:00
Add PAWN language
This commit is contained in:
@@ -1172,6 +1172,14 @@ Oxygene:
|
||||
color: "#5a63a3"
|
||||
primary_extension: .oxygene
|
||||
|
||||
PAWN:
|
||||
type: programming
|
||||
lexer: C++
|
||||
color: "#dbb284"
|
||||
primary_extension: .pwn
|
||||
extensions:
|
||||
- .inc
|
||||
|
||||
PHP:
|
||||
type: programming
|
||||
ace_mode: php
|
||||
|
||||
361
samples/PAWN/a_samp.inc
Normal file
361
samples/PAWN/a_samp.inc
Normal file
@@ -0,0 +1,361 @@
|
||||
/* SA-MP Functions
|
||||
*
|
||||
* (c) Copyright 2005-2012, 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_sampdb>
|
||||
|
||||
// Limits and internal constants
|
||||
#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 (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
|
||||
// --------------------------------------------------
|
||||
|
||||
// Utility
|
||||
native IsValidVehicle(vehicleid);
|
||||
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 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:asin(Float:value);
|
||||
native Float:acos(Float:value);
|
||||
native Float:atan(Float:value);
|
||||
native Float:atan2(Float:x, Float:y);
|
||||
|
||||
// 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);
|
||||
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 GetServerVarAsString(const varname[], buffer[], len);
|
||||
native GetServerVarAsInt(const varname[]);
|
||||
native GetServerVarAsBool(const varname[]);
|
||||
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
|
||||
|
||||
// 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
|
||||
|
||||
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);
|
||||
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 OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]);
|
||||
forward OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid);
|
||||
forward OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid);
|
||||
forward OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ);
|
||||
forward OnPlayerClickTextDraw(playerid, Text:clickedid);
|
||||
forward OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid);
|
||||
|
||||
#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);
|
||||
|
||||
// --------------------------------------------------
|
||||
520
samples/PAWN/grandlarc.pwn
Normal file
520
samples/PAWN/grandlarc.pwn
Normal file
@@ -0,0 +1,520 @@
|
||||
//----------------------------------------------------------
|
||||
//
|
||||
// GRAND LARCENY 1.0
|
||||
// A freeroam gamemode for SA-MP 0.3
|
||||
//
|
||||
//----------------------------------------------------------
|
||||
|
||||
#include <a_samp>
|
||||
#include <core>
|
||||
#include <float>
|
||||
#include "../include/gl_common.inc"
|
||||
#include "../include/gl_spawns.inc"
|
||||
|
||||
#pragma tabsize 0
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
#define COLOR_WHITE 0xFFFFFFFF
|
||||
#define COLOR_NORMAL_PLAYER 0xFFBB7777
|
||||
|
||||
#define CITY_LOS_SANTOS 0
|
||||
#define CITY_SAN_FIERRO 1
|
||||
#define CITY_LAS_VENTURAS 2
|
||||
|
||||
new total_vehicles_from_files=0;
|
||||
|
||||
// Class selection globals
|
||||
new gPlayerCitySelection[MAX_PLAYERS];
|
||||
new gPlayerHasCitySelected[MAX_PLAYERS];
|
||||
new gPlayerLastCitySelectionTick[MAX_PLAYERS];
|
||||
|
||||
new Text:txtClassSelHelper;
|
||||
new Text:txtLosSantos;
|
||||
new Text:txtSanFierro;
|
||||
new Text:txtLasVenturas;
|
||||
|
||||
new thisanimid=0;
|
||||
new lastanimid=0;
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
main()
|
||||
{
|
||||
print("\n---------------------------------------");
|
||||
print("Running Grand Larceny - by the SA-MP team\n");
|
||||
print("---------------------------------------\n");
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
public OnPlayerConnect(playerid)
|
||||
{
|
||||
GameTextForPlayer(playerid,"~w~Grand Larceny",3000,4);
|
||||
SendClientMessage(playerid,COLOR_WHITE,"Welcome to {88AA88}G{FFFFFF}rand {88AA88}L{FFFFFF}arceny");
|
||||
|
||||
// class selection init vars
|
||||
gPlayerCitySelection[playerid] = -1;
|
||||
gPlayerHasCitySelected[playerid] = 0;
|
||||
gPlayerLastCitySelectionTick[playerid] = GetTickCount();
|
||||
|
||||
//SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
|
||||
|
||||
//Kick(playerid);
|
||||
|
||||
/*
|
||||
Removes vending machines
|
||||
RemoveBuildingForPlayer(playerid, 1302, 0.0, 0.0, 0.0, 6000.0);
|
||||
RemoveBuildingForPlayer(playerid, 1209, 0.0, 0.0, 0.0, 6000.0);
|
||||
RemoveBuildingForPlayer(playerid, 955, 0.0, 0.0, 0.0, 6000.0);
|
||||
RemoveBuildingForPlayer(playerid, 1775, 0.0, 0.0, 0.0, 6000.0);
|
||||
RemoveBuildingForPlayer(playerid, 1776, 0.0, 0.0, 0.0, 6000.0);
|
||||
*/
|
||||
|
||||
/*
|
||||
new ClientVersion[32];
|
||||
GetPlayerVersion(playerid, ClientVersion, 32);
|
||||
printf("Player %d reports client version: %s", playerid, ClientVersion);*/
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
public OnPlayerSpawn(playerid)
|
||||
{
|
||||
if(IsPlayerNPC(playerid)) return 1;
|
||||
|
||||
new randSpawn = 0;
|
||||
|
||||
SetPlayerInterior(playerid,0);
|
||||
TogglePlayerClock(playerid,0);
|
||||
ResetPlayerMoney(playerid);
|
||||
GivePlayerMoney(playerid, 30000);
|
||||
|
||||
if(CITY_LOS_SANTOS == gPlayerCitySelection[playerid]) {
|
||||
randSpawn = random(sizeof(gRandomSpawns_LosSantos));
|
||||
SetPlayerPos(playerid,
|
||||
gRandomSpawns_LosSantos[randSpawn][0],
|
||||
gRandomSpawns_LosSantos[randSpawn][1],
|
||||
gRandomSpawns_LosSantos[randSpawn][2]);
|
||||
SetPlayerFacingAngle(playerid,gRandomSpawns_LosSantos[randSpawn][3]);
|
||||
}
|
||||
else if(CITY_SAN_FIERRO == gPlayerCitySelection[playerid]) {
|
||||
randSpawn = random(sizeof(gRandomSpawns_SanFierro));
|
||||
SetPlayerPos(playerid,
|
||||
gRandomSpawns_SanFierro[randSpawn][0],
|
||||
gRandomSpawns_SanFierro[randSpawn][1],
|
||||
gRandomSpawns_SanFierro[randSpawn][2]);
|
||||
SetPlayerFacingAngle(playerid,gRandomSpawns_SanFierro[randSpawn][3]);
|
||||
}
|
||||
else if(CITY_LAS_VENTURAS == gPlayerCitySelection[playerid]) {
|
||||
randSpawn = random(sizeof(gRandomSpawns_LasVenturas));
|
||||
SetPlayerPos(playerid,
|
||||
gRandomSpawns_LasVenturas[randSpawn][0],
|
||||
gRandomSpawns_LasVenturas[randSpawn][1],
|
||||
gRandomSpawns_LasVenturas[randSpawn][2]);
|
||||
SetPlayerFacingAngle(playerid,gRandomSpawns_LasVenturas[randSpawn][3]);
|
||||
}
|
||||
|
||||
//SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
|
||||
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL_SILENCED,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_DESERT_EAGLE,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_SHOTGUN,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_SPAS12_SHOTGUN,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_MP5,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_AK47,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_M4,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_SNIPERRIFLE,200);
|
||||
|
||||
GivePlayerWeapon(playerid,WEAPON_COLT45,100);
|
||||
//GivePlayerWeapon(playerid,WEAPON_MP5,100);
|
||||
TogglePlayerClock(playerid, 0);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
public OnPlayerDeath(playerid, killerid, reason)
|
||||
{
|
||||
new playercash;
|
||||
|
||||
// if they ever return to class selection make them city
|
||||
// select again first
|
||||
gPlayerHasCitySelected[playerid] = 0;
|
||||
|
||||
if(killerid == INVALID_PLAYER_ID) {
|
||||
ResetPlayerMoney(playerid);
|
||||
} else {
|
||||
playercash = GetPlayerMoney(playerid);
|
||||
if(playercash > 0) {
|
||||
GivePlayerMoney(killerid, playercash);
|
||||
ResetPlayerMoney(playerid);
|
||||
}
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
ClassSel_SetupCharSelection(playerid)
|
||||
{
|
||||
if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
|
||||
SetPlayerInterior(playerid,11);
|
||||
SetPlayerPos(playerid,508.7362,-87.4335,998.9609);
|
||||
SetPlayerFacingAngle(playerid,0.0);
|
||||
SetPlayerCameraPos(playerid,508.7362,-83.4335,998.9609);
|
||||
SetPlayerCameraLookAt(playerid,508.7362,-87.4335,998.9609);
|
||||
}
|
||||
else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
|
||||
SetPlayerInterior(playerid,3);
|
||||
SetPlayerPos(playerid,-2673.8381,1399.7424,918.3516);
|
||||
SetPlayerFacingAngle(playerid,181.0);
|
||||
SetPlayerCameraPos(playerid,-2673.2776,1394.3859,918.3516);
|
||||
SetPlayerCameraLookAt(playerid,-2673.8381,1399.7424,918.3516);
|
||||
}
|
||||
else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
|
||||
SetPlayerInterior(playerid,3);
|
||||
SetPlayerPos(playerid,349.0453,193.2271,1014.1797);
|
||||
SetPlayerFacingAngle(playerid,286.25);
|
||||
SetPlayerCameraPos(playerid,352.9164,194.5702,1014.1875);
|
||||
SetPlayerCameraLookAt(playerid,349.0453,193.2271,1014.1797);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
// Used to init textdraws of city names
|
||||
|
||||
ClassSel_InitCityNameText(Text:txtInit)
|
||||
{
|
||||
TextDrawUseBox(txtInit, 0);
|
||||
TextDrawLetterSize(txtInit,1.25,3.0);
|
||||
TextDrawFont(txtInit, 0);
|
||||
TextDrawSetShadow(txtInit,0);
|
||||
TextDrawSetOutline(txtInit,1);
|
||||
TextDrawColor(txtInit,0xEEEEEEFF);
|
||||
TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
ClassSel_InitTextDraws()
|
||||
{
|
||||
// Init our observer helper text display
|
||||
txtLosSantos = TextDrawCreate(10.0, 380.0, "Los Santos");
|
||||
ClassSel_InitCityNameText(txtLosSantos);
|
||||
txtSanFierro = TextDrawCreate(10.0, 380.0, "San Fierro");
|
||||
ClassSel_InitCityNameText(txtSanFierro);
|
||||
txtLasVenturas = TextDrawCreate(10.0, 380.0, "Las Venturas");
|
||||
ClassSel_InitCityNameText(txtLasVenturas);
|
||||
|
||||
// Init our observer helper text display
|
||||
txtClassSelHelper = TextDrawCreate(10.0, 415.0,
|
||||
" Press ~b~~k~~GO_LEFT~ ~w~or ~b~~k~~GO_RIGHT~ ~w~to switch cities.~n~ Press ~r~~k~~PED_FIREWEAPON~ ~w~to select.");
|
||||
TextDrawUseBox(txtClassSelHelper, 1);
|
||||
TextDrawBoxColor(txtClassSelHelper,0x222222BB);
|
||||
TextDrawLetterSize(txtClassSelHelper,0.3,1.0);
|
||||
TextDrawTextSize(txtClassSelHelper,400.0,40.0);
|
||||
TextDrawFont(txtClassSelHelper, 2);
|
||||
TextDrawSetShadow(txtClassSelHelper,0);
|
||||
TextDrawSetOutline(txtClassSelHelper,1);
|
||||
TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
|
||||
TextDrawColor(txtClassSelHelper,0xFFFFFFFF);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
ClassSel_SetupSelectedCity(playerid)
|
||||
{
|
||||
if(gPlayerCitySelection[playerid] == -1) {
|
||||
gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
|
||||
}
|
||||
|
||||
if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
|
||||
SetPlayerInterior(playerid,0);
|
||||
SetPlayerCameraPos(playerid,1630.6136,-2286.0298,110.0);
|
||||
SetPlayerCameraLookAt(playerid,1887.6034,-1682.1442,47.6167);
|
||||
|
||||
TextDrawShowForPlayer(playerid,txtLosSantos);
|
||||
TextDrawHideForPlayer(playerid,txtSanFierro);
|
||||
TextDrawHideForPlayer(playerid,txtLasVenturas);
|
||||
}
|
||||
else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
|
||||
SetPlayerInterior(playerid,0);
|
||||
SetPlayerCameraPos(playerid,-1300.8754,68.0546,129.4823);
|
||||
SetPlayerCameraLookAt(playerid,-1817.9412,769.3878,132.6589);
|
||||
|
||||
TextDrawHideForPlayer(playerid,txtLosSantos);
|
||||
TextDrawShowForPlayer(playerid,txtSanFierro);
|
||||
TextDrawHideForPlayer(playerid,txtLasVenturas);
|
||||
}
|
||||
else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
|
||||
SetPlayerInterior(playerid,0);
|
||||
SetPlayerCameraPos(playerid,1310.6155,1675.9182,110.7390);
|
||||
SetPlayerCameraLookAt(playerid,2285.2944,1919.3756,68.2275);
|
||||
|
||||
TextDrawHideForPlayer(playerid,txtLosSantos);
|
||||
TextDrawHideForPlayer(playerid,txtSanFierro);
|
||||
TextDrawShowForPlayer(playerid,txtLasVenturas);
|
||||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
ClassSel_SwitchToNextCity(playerid)
|
||||
{
|
||||
gPlayerCitySelection[playerid]++;
|
||||
if(gPlayerCitySelection[playerid] > CITY_LAS_VENTURAS) {
|
||||
gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
|
||||
}
|
||||
PlayerPlaySound(playerid,1052,0.0,0.0,0.0);
|
||||
gPlayerLastCitySelectionTick[playerid] = GetTickCount();
|
||||
ClassSel_SetupSelectedCity(playerid);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
ClassSel_SwitchToPreviousCity(playerid)
|
||||
{
|
||||
gPlayerCitySelection[playerid]--;
|
||||
if(gPlayerCitySelection[playerid] < CITY_LOS_SANTOS) {
|
||||
gPlayerCitySelection[playerid] = CITY_LAS_VENTURAS;
|
||||
}
|
||||
PlayerPlaySound(playerid,1053,0.0,0.0,0.0);
|
||||
gPlayerLastCitySelectionTick[playerid] = GetTickCount();
|
||||
ClassSel_SetupSelectedCity(playerid);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
ClassSel_HandleCitySelection(playerid)
|
||||
{
|
||||
new Keys,ud,lr;
|
||||
GetPlayerKeys(playerid,Keys,ud,lr);
|
||||
|
||||
if(gPlayerCitySelection[playerid] == -1) {
|
||||
ClassSel_SwitchToNextCity(playerid);
|
||||
return;
|
||||
}
|
||||
|
||||
// only allow new selection every ~500 ms
|
||||
if( (GetTickCount() - gPlayerLastCitySelectionTick[playerid]) < 500 ) return;
|
||||
|
||||
if(Keys & KEY_FIRE) {
|
||||
gPlayerHasCitySelected[playerid] = 1;
|
||||
TextDrawHideForPlayer(playerid,txtClassSelHelper);
|
||||
TextDrawHideForPlayer(playerid,txtLosSantos);
|
||||
TextDrawHideForPlayer(playerid,txtSanFierro);
|
||||
TextDrawHideForPlayer(playerid,txtLasVenturas);
|
||||
TogglePlayerSpectating(playerid,0);
|
||||
return;
|
||||
}
|
||||
|
||||
if(lr > 0) {
|
||||
ClassSel_SwitchToNextCity(playerid);
|
||||
}
|
||||
else if(lr < 0) {
|
||||
ClassSel_SwitchToPreviousCity(playerid);
|
||||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
public OnPlayerRequestClass(playerid, classid)
|
||||
{
|
||||
if(IsPlayerNPC(playerid)) return 1;
|
||||
|
||||
if(gPlayerHasCitySelected[playerid]) {
|
||||
ClassSel_SetupCharSelection(playerid);
|
||||
return 1;
|
||||
} else {
|
||||
if(GetPlayerState(playerid) != PLAYER_STATE_SPECTATING) {
|
||||
TogglePlayerSpectating(playerid,1);
|
||||
TextDrawShowForPlayer(playerid, txtClassSelHelper);
|
||||
gPlayerCitySelection[playerid] = -1;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
public OnGameModeInit()
|
||||
{
|
||||
SetGameModeText("Grand Larceny");
|
||||
ShowPlayerMarkers(PLAYER_MARKERS_MODE_GLOBAL);
|
||||
ShowNameTags(1);
|
||||
SetNameTagDrawDistance(40.0);
|
||||
EnableStuntBonusForAll(0);
|
||||
DisableInteriorEnterExits();
|
||||
SetWeather(2);
|
||||
SetWorldTime(11);
|
||||
|
||||
//UsePlayerPedAnims();
|
||||
//ManualVehicleEngineAndLights();
|
||||
//LimitGlobalChatRadius(300.0);
|
||||
|
||||
ClassSel_InitTextDraws();
|
||||
|
||||
// Player Class
|
||||
AddPlayerClass(281,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(282,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(283,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(284,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(285,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(286,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(287,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(288,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(289,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(265,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(266,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(267,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(268,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(269,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(270,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(1,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(2,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(3,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(4,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(5,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(6,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(8,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(42,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(65,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
//AddPlayerClass(74,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(86,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(119,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(149,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(208,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(273,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(289,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
|
||||
AddPlayerClass(47,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(48,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(49,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(50,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(51,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(52,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(53,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(54,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(55,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(56,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(57,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(58,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(68,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(69,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(70,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(71,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(72,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(73,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(75,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(76,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(78,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(79,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(80,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(81,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(82,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(83,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(84,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(85,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(87,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(88,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(89,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(91,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(92,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(93,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(95,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(96,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(97,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(98,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(99,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
|
||||
// SPECIAL
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/trains.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/pilots.txt");
|
||||
|
||||
// LAS VENTURAS
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_law.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_airport.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_gen.txt");
|
||||
|
||||
// SAN FIERRO
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_law.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_airport.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_gen.txt");
|
||||
|
||||
// LOS SANTOS
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_law.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_airport.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_inner.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_outer.txt");
|
||||
|
||||
// OTHER AREAS
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/whetstone.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/bone.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/flint.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/tierra.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/red_county.txt");
|
||||
|
||||
printf("Total vehicles from files: %d",total_vehicles_from_files);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
public OnPlayerUpdate(playerid)
|
||||
{
|
||||
if(!IsPlayerConnected(playerid)) return 0;
|
||||
if(IsPlayerNPC(playerid)) return 1;
|
||||
|
||||
// changing cities by inputs
|
||||
if( !gPlayerHasCitySelected[playerid] &&
|
||||
GetPlayerState(playerid) == PLAYER_STATE_SPECTATING ) {
|
||||
ClassSel_HandleCitySelection(playerid);
|
||||
return 1;
|
||||
}
|
||||
|
||||
// No weapons in interiors
|
||||
if(GetPlayerInterior(playerid) != 0 && GetPlayerWeapon(playerid) != 0) {
|
||||
SetPlayerArmedWeapon(playerid,0); // fists
|
||||
return 0; // no syncing until they change their weapon
|
||||
}
|
||||
|
||||
// Don't allow minigun
|
||||
if(GetPlayerWeapon(playerid) == WEAPON_MINIGUN) {
|
||||
Kick(playerid);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* No jetpacks allowed
|
||||
if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USEJETPACK) {
|
||||
Kick(playerid);
|
||||
return 0;
|
||||
}*/
|
||||
|
||||
/* For testing animations
|
||||
new msg[128+1];
|
||||
new animlib[32+1];
|
||||
new animname[32+1];
|
||||
|
||||
thisanimid = GetPlayerAnimationIndex(playerid);
|
||||
if(lastanimid != thisanimid)
|
||||
{
|
||||
GetAnimationName(thisanimid,animlib,32,animname,32);
|
||||
format(msg, 128, "anim(%d,%d): %s %s", lastanimid, thisanimid, animlib, animname);
|
||||
lastanimid = thisanimid;
|
||||
SendClientMessage(playerid, 0xFFFFFFFF, msg);
|
||||
}*/
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
Reference in New Issue
Block a user