rendered paste body#include <a_samp>
//#include <DUDB>
#include <core>
#include <float>
#define TEAM_Army 1
#define TEAM_Farmers 2
#define TEAM_Grove 3
#define TEAM_Ballas 4
#define TEAM_Vagos 5
#define TEAM_Aztecas 6
#define TEAM_Mafia 7
#define TEAM_GROOVE_COLOR 0x00FF00AA // Bright Green (in RGBA format)
#define TEAM_BALLAS_COLOR 0xFF00FFAA // Bright Purple
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_LIGHTGREEN 0x00FF00AA
#define COLOR_DARKGREEN 0x004400AA
#define COLOR_RED 0xAA3333AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_WHITE 0xFFFFFFAA
#define BBLUE 0x00BFFFAA
#define COLOR_LIGHTBLUE 0x1C86EEAA
#define COLOR_ORANGE 0xFF9900AA
#define COLOR_PINK 0xFF66FFAA
#define COLOR_BRIGHTRED 0xB22222
#define MAX_SCORE 20 //max score for when the round's over
#define OBJECTIVE_VEHICLE_BLUE 1
#define OBJECTIVE_COLOR 0xAA0000FF
#define cmd
#define string
#define SendMessageToAdmins
#define SendMessage
#define str
#define RED
#define spawn
#define playername
#define stockid
#define MAX_POINTS 100
#define CP_AMMU 2
new TEXT[255];
new Float:X1[MAX_PLAYERS];
new Float:Y1[MAX_PLAYERS];
new Float:Z1[MAX_PLAYERS];
static gHour;
static gMinute;
forward Timer_DayHeartbeat();
forward AutoReminder();
forward PayDay();
forward TimeFunction(playerid);
forward unsafe(Kzone);
forward OnPlayerUpdate(playerid);
forward checkpointUpdate();
forward post_winners(winnerid);
forward report(playerid);
new gObjectiveBluePlayer=(-1);
new gObjectiveReached=0;
new gTeam[MAX_PLAYERS];
new exp[MAX_PLAYERS];
new XP[MAX_PLAYERS];
new level[MAX_PLAYERS] = 1;
new Grove1;
new Grove2;
new Grove3;
new Army1;
new Army2;
new Army4;
new Army5;
new Mafia1;
new Mafia2;
new Mafia3;
new Mafia4;
new Ballas1;
new Ballas2;
new Ballas3;
new Ballas4;
new Vagos1;
new Vagos2;
new Vagos;
new Aztecas1;
new Aztecas2;
new Aztecas3;
new Aztecas4;
new Farmers1;
new Farmers;
new Farmers3;
new Niekeno;
new Visitors;
new ownedcar[MAX_PLAYERS];
new owner[MAX_PLAYERS];
#define MAX_GANGS 32
#define MAX_GANG_MEMBERS 6
#define MAX_GANG_NAME 16
new gangMembers[MAX_GANGS][MAX_GANG_MEMBERS];
new gangNames[MAX_GANGS][MAX_GANG_NAME];
new gangInfo[MAX_GANGS][3]; //0-created,1-members,2-color
new gangBank[MAX_GANGS];
new playerGang[MAX_PLAYERS];
new gangInvite[MAX_PLAYERS];
new playerColors[100] = {
0xFF8C13FF,0xC715FFFF,0x20B2AAFF,0xDC143CFF,0x6495EDFF,0xf0e68cFF,0x778899FF,0xFF1493FF,0xF4A460FF,0xEE82EEFF,0xFFD720FF,
0x8b4513FF,0x4949A0FF,0x148b8bFF,0x14ff7fFF,0x556b2fFF,0x0FD9FAFF,0x10DC29FF,0x534081FF,0x0495CDFF,0xEF6CE8FF,0xBD34DAFF,
0x247C1BFF,0x0C8E5DFF,0x635B03FF,0xCB7ED3FF,0x65ADEBFF,0x5C1ACCFF,0xF2F853FF,0x11F891FF,0x7B39AAFF,0x53EB10FF,0x54137DFF,
0x275222FF,0xF09F5BFF,0x3D0A4FFF,0x22F767FF,0xD63034FF,0x9A6980FF,0xDFB935FF,0x3793FAFF,0x90239DFF,0xE9AB2FFF,0xAF2FF3FF,
0x057F94FF,0xB98519FF,0x388EEAFF,0x028151FF,0xA55043FF,0x0DE018FF,0x93AB1CFF,0x95BAF0FF,0x369976FF,0x18F71FFF,0x4B8987FF,
0x491B9EFF,0x829DC7FF,0xBCE635FF,0xCEA6DFFF,0x20D4ADFF,0x2D74FDFF,0x3C1C0DFF,0x12D6D4FF,0x48C000FF,0x2A51E2FF,0xE3AC12FF,
0xFC42A8FF,0x2FC827FF,0x1A30BFFF,0xB740C2FF,0x42ACF5FF,0x2FD9DEFF,0xFAFB71FF,0x05D1CDFF,0xC471BDFF,0x94436EFF,0xC1F7ECFF,
0xCE79EEFF,0xBD1EF2FF,0x93B7E4FF,0x3214AAFF,0x184D3BFF,0xAE4B99FF,0x7E49D7FF,0x4C436EFF,0xFA24CCFF,0xCE76BEFF,0xA04E0AFF,
0x9F945CFF,0xDCDE3DFF,0x10C9C5FF,0x70524DFF,0x0BE472FF,0x8A2CD7FF,0x6152C2FF,0xCF72A9FF,0xE59338FF,0xEEDC2DFF,0xD8C762FF,
0x3FE65CFF
};
new Float:checkCoords[1][4] = {
{284.0546,-86.4384, 302.9315,-56.6674}
};
new checkpointType[MAX_POINTS] = {
CP_AMMU
};
#define MAX_WEAPONS 47
#define MAX_SPAWNWEAPONS 9
new weaponNames[MAX_WEAPONS][32] = {
"Unarmed",
"Brass Knuckles", //crash game
"Golf Club",
"Night Stick",
"Knife",
"Baseball Bat",
"Shovel",
"Pool Cue",
"Katana",
"Chainsaw",
"Purple Dildo",
"White Dildo",
"Long White Dildo",
"White Dildo 2",
"Flowers",
"Cane",
"Grenades", //crash game
"Tear Gas", //crash game
"Molotovs", //crash game
"UNKNOWN",
"UNKNOWN",
"UNKNOWN",
"Pistol",
"Silenced Pistol",
"Desert Eagle",
"Shotgun",
"Sawn Off Shotgun",
"Combat Shotgun",
"Micro Uzi (Mac 10)",
"MP5",
"AK47",
"M4",
"Tec9",
"Rifle",
"Sniper Rifle",
"RPG",
"Missile Launcher",
"Flame Thrower",
"Minigun",
"Sachel Charges", //crash game
"Detonator", //crash game
"Spray Paint",
"Fire Extinguisher",
"Camera",
"Nightvision Goggles", //crash game
"Thermal Goggles", //crash game
"Parachute"
};
new spawnWeapons[MAX_SPAWNWEAPONS][3] = {
{23,34,4000},
{25,15,7000},
{27,20,15000},
{28,120,7000},
{32,120,5000},
{29,120,15000},
{30,120,25000},
{31,120,30000},
{9,0,70000}
};
new playerWeapons[MAX_PLAYERS][MAX_SPAWNWEAPONS];
new savedWeapons[64][MAX_SPAWNWEAPONS];
new ZoneOwner[25]={3,3,3,1,1,1,1,7,7,7,7,4,4,4,4,5,5,5,6,6,6,6,2,2,2};
new UnderAttack[25];
new KillCount[7][25];
new Float:ZoneLocations[25][4]=
{
{1988.037, -1752.921, 2611.702, -1614.75},
{1607.753, -1452.893, 2056.488, -1026.537},
{2216.207, -2321.396, 2391.137, -1768.712},
{70.06725, 1786.715, 373.692, 2113.696},
{2349.306, -2747.752, 2866.492, -2309.553},
{1132.754, -221.8796, 1950.205, 490.4708},
{151.8124, -268.5911, 478.7929, 140.1345},
{1025.919, -2372.717, 1524.091, -1910.831},
{1067.75, -1587.116, 1368.174, -1156.812},
{2615.505, -1606.855, 2896.915, -1263.401},
{1322.54, -1748.974, 1995.642, -1622.646},
{2067.896, -1377.886, 2269.447, -1223.924},
{1710.43, -2210.859, 2181.981, -1752.921},
{2064.094, -1614.75, 2265.644, -1381.833},
{1543.105, -2388.508, 1721.838, -1764.764},
{2296.066, -1247.61, 2866.492, -927.8433},
{200.7038, -2076.636, 987.8908, -1752.921},
{2216.207, -1847.667, 2615.505, -1752.921},
{2398.743, -2159.539, 2790.435, -1855.563},
{193.0981, -1705.548, 664.6498, -1156.812},
{2288.461, -1598.959, 2547.053, -1263.401},
{1482.26, -1598.959, 2064.094, -1464.736},
{-303.6248, -175.1681, 105.1009, 163.4902},
{2611.702, -1855.563, 2866.492, -1606.855},
{2008.595, -221.8796, 2709.267, 291.9469}
};
main()
{
print("\n----------------------------------");
print(" LS Gang Wars");
print("----------------------------------\n");
}
IsInZone(playerid)
{
new i=0;
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid,X,Y,Z);
new NAME[40];
GetPlayerName(playerid,NAME,sizeof(NAME));
while (i<25)
{
if ((X>ZoneLocations[i][0])&&(X<ZoneLocations[i][2])&&(Y>ZoneLocations[i][1])&&(Y<ZoneLocations[i][3]))
{
return i;
}
i++;
}
return -1;
}
public unsafe(Kzone)
{
UnderAttack[Kzone]=0;
}
getColor(playerid)
{
if(gTeam[playerid] == TEAM_Army) return 0x8040008F;
else if(gTeam[playerid] == TEAM_Farmers) return 0x00000083;
else if(gTeam[playerid] == TEAM_Grove) return 0x00FF007D;
else if(gTeam[playerid] == TEAM_Ballas) return 0x80008070;
else if(gTeam[playerid] == TEAM_Vagos) return 0xFFFF007C;
else if(gTeam[playerid] == TEAM_Aztecas) return 0x00FFFF81;
else if(gTeam[playerid] == TEAM_Mafia) return 0x0000FF74;
return 0x0000FF74;
}
stock PlayerLeaveGang(playerid) {
new string[256];
new playername[MAX_PLAYER_NAME];
new gangnum = playerGang[playerid];
if(gangnum > 0) {
for(new i = 0; i < gangInfo[gangnum][1]; i++) {
if(gangMembers[gangnum][i]==playerid) {
//One less gang member
gangInfo[gangnum][1]--;
for(new j = i; j < gangInfo[gangnum][1]; j++) {
//Shift gang members
gangMembers[gangnum][j]=gangMembers[gangnum][j+1];
}
//Disband gang if no more members
if(gangInfo[gangnum][1]<1) {
gangInfo[gangnum][0]=0;
gangInfo[gangnum][1]=0;
gangBank[gangnum]=0;
}
//Notify other members
for(new j = 0; j < gangInfo[gangnum][1]; j++) {
GetPlayerName(playerid, playername, MAX_PLAYER_NAME);
format(string, sizeof(string),"%s has quit your gang.", playername);
SendClientMessage(gangMembers[gangnum][j], COLOR_ORANGE, string);
if(j==0) {
AutoLockCasinoVehicles(gangMembers[gangnum][j]);
}
}
format(string, sizeof(string),"You have quit the gang '%s' (id: %d)", gangNames[gangnum], gangnum);
SendClientMessage(playerid, COLOR_ORANGE, string);
playerGang[playerid]=0;
SetPlayerColor(playerid,playerColors[playerid]);
return;
}
}
} else {
SendClientMessage(playerid, COLOR_RED, "You are not in a gang.");
}
}
public OnGameModeInit()
{
SetGameModeText("LS-Gang Wars v0.1");
ShowNameTags(1);
ShowPlayerMarkers(1);
EnableTirePopping(1);
SetGravity(0.008);
SetWorldTime(12);
SetTeamCount(7);
AllowInteriorWeapons(0);
EnableZoneNames(1);
//AllowPlayerTeleport(0);YOU CAN'T USE THIS THIS WAY
//you can delete this now - SetTimer("TeamFix", 1000, 1);
UsePlayerPedAnims();
Grove1 = GangZoneCreate(1988.037, -1752.921, 2611.702, -1614.75);
Grove2 = GangZoneCreate(1607.753, -1452.893, 2056.488, -1026.537);
Grove3 = GangZoneCreate(2216.207, -2321.396, 2391.137, -1768.712);
Army1 = GangZoneCreate(70.06725, 1786.715, 373.692, 2113.696);
Army2 = GangZoneCreate(2349.306, -2747.752, 2866.492, -2309.553);
Army5 = GangZoneCreate(1132.754, -221.8796, 1950.205, 490.4708);
Army4 = GangZoneCreate(151.8124, -268.5911, 478.7929, 140.1345);
Mafia1 = GangZoneCreate(1025.919, -2372.717, 1524.091, -1910.831);
Mafia2 = GangZoneCreate(1067.75, -1587.116, 1368.174, -1156.812);
Mafia3 = GangZoneCreate(2615.505, -1606.855, 2896.915, -1263.401);
Mafia4 = GangZoneCreate(1322.54, -1748.974, 1995.642, -1622.646);
Ballas1 = GangZoneCreate(2067.896, -1377.886, 2269.447, -1223.924);
Ballas2 = GangZoneCreate(1710.43, -2210.859, 2181.981, -1752.921);
Ballas3 = GangZoneCreate(2064.094, -1614.75, 2265.644, -1381.833);
Ballas4 = GangZoneCreate(1543.105, -2388.508, 1721.838, -1764.764);
Vagos1 = GangZoneCreate(2296.066, -1247.61, 2866.492, -927.8433);
Vagos2 = GangZoneCreate(200.7038, -2076.636, 987.8908, -1752.921);
Vagos = GangZoneCreate(2216.207, -1847.667, 2615.505, -1752.921);
Aztecas1 = GangZoneCreate(2398.743, -2159.539, 2790.435, -1855.563);
Aztecas2 = GangZoneCreate(193.0981, -1705.548, 664.6498, -1156.812);
Aztecas3 = GangZoneCreate(2288.461, -1598.959, 2547.053, -1263.401);
Aztecas4 = GangZoneCreate(1482.26, -1598.959, 2064.094, -1464.736);
Farmers1 = GangZoneCreate(-303.6248, -175.1681, 105.1009, 163.4902);
Farmers = GangZoneCreate(2611.702, -1855.563, 2866.492, -1606.855);
Farmers3 = GangZoneCreate(2008.595, -221.8796, 2709.267, 291.9469);
Niekeno = GangZoneCreate(2166.77, -1231.819, 2258.038, -1129.178);
AddStaticPickup(1239,2,2512.560058,-1028.399414,70.085937);
AddStaticPickup(1239,2,2091.482177,-1279.688842,26.040601);
AddStaticPickup(1239,2,2486.651855,-1645.656005,14.070312);
AddStaticPickup(1239,2,2637.365234,-1992.147949,13.993547);
AddStaticPickup(1239,2,2638.354980,-2414.083496,13.632812);
AddStaticPickup(1239,2,1125.921142,-2037.342407,69.883468);
AddStaticPickup(1239,2,299.422546,-1155.912231,80.909896);
//Objects:
CreateObject(8210, -364.532867, -1354.596802, 23.185678, 0, 0, 250.9378);
CreateObject(8210, -382.132202, -1322.766724, 26.474600, 0, 6.0161, 348.75);
CreateObject(8210, -414.872131, -1344.778442, 27.228954, 0, 355.7028, 78.75);
CreateObject(987, -413.446106, -1381.667969, 22.538481, 0, 0, 123.7499);
CreateObject(987, -406.810028, -1391.459839, 22.498192, 0, 0, 123.7499);
CreateObject(987, -400.266357, -1401.260742, 22.492678, 0, 0, 123.7499);
CreateObject(979, -377.399353, -1383.588257, 22.458151, 0, 0, 213.75);
CreateObject(979, -387.136871, -1390.306763, 22.586538, 0, 359.1406, 213.75);
CreateObject(987, -383.766602, -1387.337036, 21.887968, 0, 0, 33.75);
CreateObject(987, -391.221344, -1392.400146, 21.892338, 0, 0, 33.75);
CreateObject(966, -397.467438, -1396.828735, 22.403381, 0, 0, 213.75);
CreateObject(968, -397.433044, -1396.804321, 23.290543, 0, 0, 33.75);
CreateObject(967, -397.958618, -1398.225098, 22.388947, 0, 0, 32.8906);
CreateObject(970, -398.624756, -1399.838257, 22.946869, 0, 0, 33.75);
CreateObject(970, -398.624237, -1399.845947, 24.004873, 0, 0, 33.75);
CreateObject(970, -398.591522, -1399.849609, 25.110973, 0, 0, 33.75);
CreateObject(3279, -362.633789, -1333.434937, 21.310383, 0, 0, 168.75);
CreateObject(3279, -379.475128, -1375.770874, 21.992777, 0, 0, 146.25);
CreateObject(3399, -406.027985, -1434.041016, 27.314953, 0, 0, 0);
CreateObject(8614, -372.305908, -1417.014893, 27.075842, 0, 4.2972, 270);
CreateObject(8614, -365.900513, -1414.699829, 30.864906, 0, 0, 180);
CreateObject(3279, -409.262695, -1343.191040, 24.378386, 0, 0, 348.75);
CreateObject(1458, -405.727112, -1327.119629, 25.949831, 0, 0, 0);
CreateObject(12921, -393.833313, -1395.790161, 25.587015, 0, 0, 33.75);
CreateObject(17324, -390.830566, -1340.374146, 23.964664, 4.2972, 1.7189, 349.6094);
CreateObject(3461, -390.298584, -1393.040649, 23.675467, 0, 0, 0);
CreateObject(3168, -410.485931, -1357.338867, 23.502028, 0, 0, 168.75);
CreateObject(4726, 332.120636, -1836.737549, 2.014965, 0, 0, 180);
CreateObject(3279, 302.548859, -1779.621338, 3.555548, 0, 0, 315);
CreateObject(3279, 300.057770, -1813.526978, 3.445765, 0, 0, 22.5);
CreateObject(16778, 335.582611, -1778.450073, 4.096195, 0, 0, 270);
CreateObject(1369, 313.124207, -1784.247314, 4.240703, 0, 0, 22.5);
//VEHICLES
AddStaticVehicle(497,2836.5798,-2530.6621,18.1278,281.8553,6,0); // maveric m1 getaway 1
AddStaticVehicle(482,-2444.4460,501.1308,29.7963,254.9694,1,1); // BURRITO sf getawy car 2
AddStaticVehicle(497,-1481.9639,144.6383,18.9529,133.6042,3,3); // maveric getaway 3
AddStaticVehicle(482,2194.4309,1444.0286,10.9392,0.9995,48,48); // burrito getaway 4
AddStaticVehicle(482,1713.2853,-1613.0427,13.6739,338.0,125,108); // BURRITO ls getaway car 5
AddStaticVehicle(572,1261.8896,303.3519,19.5877,155.0000,3,0); // lawnmower zombi 6
AddStaticVehicle(482,2103.3213,2079.2488,10.9461,270.0000,126,0); // burrito--7
AddStaticVehicle(560,2318.2593,6.4544,26.1897,90.0000,1,1); // SULTAN//bank robbry getawy car 8
AddStaticVehicle(482,-535.3323,-487.2228,25.7000,0.0000,126,0); // burrito sex shop 9
AddStaticVehicle(576,-1051.9135,-679.1596,32.0000,0.0000,0,0); // torando--mission car134 10
AddStaticVehicle(482,2585.8357,2780.8374,10.9404,270.0000,0,0); // burrito k.a.a.c fules--11
AddStaticVehicle(515,2260.0344,2763.9900,11.8394,90.0000,0,3); // roadtrain--108 tm 12
AddStaticVehicle(515,214.7370,-263.5162,2.5967,176.2460,3,0); // roadtrain--187 tm 13
AddStaticVehicle(515,-1988.3328,-2382.9001,31.6450,303.4193,3,0); // roadtrain tm 14
AddStaticVehicle(515,-1712.7483,14.3026,4.6194,292.0642,3,0); // roadtrain tm 15
AddStaticVehicle(515,1048.9388,2133.8923,11.8397,90.0000,0,3); // roadtrain--16 tm
AddStaticVehicle(515,2865.8965,932.6283,11.7964,116.8550,0,3); // roadtrain--17 tm
AddStaticVehicle(515,259.4977,1429.8959,11.8406,180.0000,0,3); // roadtrain--octane springs-18 tm
AddStaticVehicle(483,-1096.1134,-1621.6436,76.3596,271.1122,0,0); // camper weed farm-19
AddStaticVehicle(483,-1849.0,-1576.0,22.0,235.0,0,0); // camper moved to scrappers--20
AddStaticVehicle(592,1548.8715,1466.1749,12.0153,38.9954,1,1); // andromadajet 21
AddStaticVehicle(592,2110.9810,-2451.1707,14.7411,153.1628,1,1); // andromadajet 22
AddStaticVehicle(592,-1315.2804,-237.7538,15.3709,323.9496,1,1); // andromadajet 23
//Farmer
CreateVehicle(428, -391.341003, -1342.480713, 25.150469, 167, 3, 3, 3600); //Obj Vehicle
CreateVehicle(508, -375.027893, -1345.119263, 23.437363, 156, 86, 86, 60);
CreateVehicle(468, -414.041534, -1356.140015, 24.428274, 167, 86, 86, 60);
CreateVehicle(478, -384.486725, -1381.990845, 23.293976, 32, 86, 86, 60);
CreateVehicle(478, -391.276611, -1386.882690, 23.447811, 32, 86, 86, 60);
CreateVehicle(489, -405.874725, -1370.005615, 24.233240, 249, 86, 86, 60);
CreateVehicle(489, -408.009125, -1376.249512, 24.044243, 249, 86, 86, 60);
CreateVehicle(413, -374.806152, -1408.354248, 25.941299, 294, 86, 86, 60);
CreateVehicle(479, -374.717346, -1427.224121, 25.976353, 360, 86, 86, 60);
CreateVehicle(478, -381.140503, -1397.125000, 24.258635, 112, 86, 86, 60);
CreateVehicle(468, -380.236725, -1450.241699, 25.976353, 360, 86, 86, 60);
CreateVehicle(468, -376.970245, -1450.228394, 25.976353, 360, 86, 86, 60);
CreateVehicle(468, -373.098236, -1450.310059, 25.976353, 360, 86, 86, 60);
AddStaticVehicle(426,1230.4683,-1288.9296,13.2550,271.6072,7,7); //
AddStaticVehicle(426,1214.3450,-1357.6713,13.3009,182.4956,7,7); // miestas
AddStaticVehicle(513,1779.3787,-2462.8601,14.1143,274.3707,48,18); // airport
AddStaticVehicle(513,1784.8390,-2625.0532,14.1097,358.3885,48,18); // airport
AddStaticVehicle(487,1957.2919,-2325.0481,13.8603,215.2047,3,29); // airport
AddStaticVehicle(593,1926.2396,-2289.6250,14.0165,269.9998,58,8); // airport
AddStaticVehicle(494,1859.6465,-2291.9211,13.4417,341.5497,75,79); // miestas oro uostas
AddStaticVehicle(494,1862.6290,-2271.1470,13.4421,351.5345,75,79); // miestas oro uostas
AddStaticVehicle(494,1854.9243,-2314.6455,13.4421,8.5208,75,79); // miestas oro uostas
AddStaticVehicle(495,1870.7672,-2282.4336,13.8842,264.3502,123,124); // miestas oro uostas
AddStaticVehicle(522,1899.9260,-2290.0735,13.1100,262.6362,39,106); // miestas oro uostas
AddStaticVehicle(522,1899.3330,-2274.2212,13.1187,88.7357,39,106); // miestas oro uostas
AddStaticVehicle(522,1926.5498,-1943.0485,13.1223,91.4798,39,106); // miestas
AddStaticVehicle(507,1643.7715,-1542.1986,13.3926,88.4127,53,53); // miestas
AddStaticVehicle(438,1645.1755,-1538.0005,13.5727,84.8690,6,76); // miestas
AddStaticVehicle(507,1322.6228,-1453.8722,13.3186,181.3518,62,62); // miestas
AddStaticVehicle(416,1178.0424,-1338.0825,14.0472,268.6290,1,3); // miestas
AddStaticVehicle(507,1065.7319,-1257.0474,14.3820,359.9340,53,53); // miestas
AddStaticVehicle(477,1065.8159,-1210.8549,16.7755,359.7335,94,1); // miestas
AddStaticVehicle(556,897.4998,-1207.8750,17.3517,85.7812,1,1); // miestas
AddStaticVehicle(556,861.2751,-1240.7499,14.3954,179.9735,32,1); // miestas
AddStaticVehicle(556,866.7633,-1275.0134,14.9242,0.0268,1,1); // miestas
AddStaticVehicle(555,1093.3533,-1248.6372,15.5112,86.3734,2,1); // miestas
AddStaticVehicle(555,967.1003,-1001.2731,35.4154,353.4668,2,1); // miestas
AddStaticVehicle(545,960.9338,-937.8986,40.9879,5.3962,47,1); // miestas
AddStaticVehicle(545,832.8478,-862.7345,69.4624,19.6069,47,1); // miestas
AddStaticVehicle(541,636.4888,-1123.0079,44.1654,225.1233,13,8); // miestas
AddStaticVehicle(541,298.0974,-1163.4821,80.5343,46.6227,13,8); // miestas
AddStaticVehicle(541,347.8271,-1785.7319,4.8748,165.2322,13,8); // miestas
AddStaticVehicle(412,343.8723,-1809.5167,4.2798,359.9962,30,1); // miestas
AddStaticVehicle(412,327.9856,-1788.8767,4.6836,181.4097,27,1); // miestas
AddStaticVehicle(412,314.6223,-1809.5172,4.2329,359.9959,29,8); // miestas
AddStaticVehicle(568,276.6577,-1794.5470,4.2176,100.9650,21,1); // miestas
AddStaticVehicle(571,363.1149,-2017.4093,7.1197,0.0607,51,53); // miestas
AddStaticVehicle(571,367.1703,-2019.2720,6.9562,348.2882,51,53); // miestas
AddStaticVehicle(571,373.0449,-2013.6974,6.9558,0.5550,51,53); // miestas
AddStaticVehicle(571,372.4642,-1909.4205,6.9558,355.4822,51,53); // miestas
AddStaticVehicle(559,441.6615,-1667.5107,25.2414,260.3622,2,1); // miestas
AddStaticVehicle(559,720.8406,-1666.9359,10.3503,275.2278,2,1); // miestas
AddStaticVehicle(446,719.8927,-1629.9324,-0.4947,358.8751,1,35); // miestas
AddStaticVehicle(446,719.3188,-1656.3949,-0.4465,358.2444,1,35); // miestas
AddStaticVehicle(446,719.7050,-1704.1200,-0.4879,1.4996,1,35); // miestas
AddStaticVehicle(451,878.2673,-1779.3433,13.4674,266.0204,18,18); // miestas
AddStaticVehicle(451,1163.0090,-1835.8018,13.3248,324.5280,18,18); // miestas
AddStaticVehicle(456,1278.6592,-1812.0192,13.5581,334.3910,110,93); // miestas
AddStaticVehicle(467,1396.3688,-1388.9160,13.2946,277.8080,13,8); // miestas
AddStaticVehicle(506,2407.1306,105.3144,26.7747,3.9739,76,76); // kaimas
AddStaticVehicle(489,2243.2805,98.6942,26.6274,117.6578,13,118); // kaimas
AddStaticVehicle(489,2285.8428,-66.4560,26.2277,152.9942,119,113); // kaimas
AddStaticVehicle(463,2300.8828,-0.6276,26.0253,355.9543,79,79); // kaimas
AddStaticVehicle(463,2123.0571,40.1793,25.8704,84.8902,79,79); // kaimas
AddStaticVehicle(506,1310.6508,247.5432,19.2591,65.9071,7,7); // kaimas
AddStaticVehicle(505,1253.1930,250.1906,19.6937,140.0936,84,110); // kaimas
AddStaticVehicle(505,1204.4664,276.7628,19.8892,149.4244,84,110); // kaimas
AddStaticVehicle(505,802.9595,-604.8544,16.4824,107.5420,84,110); // kaimas
AddStaticVehicle(507,687.6349,-581.2748,16.0828,180.8927,37,37); // kaimas
AddStaticVehicle(507,228.3199,-181.5295,1.3272,4.4912,37,37); // kaimas
AddStaticVehicle(507,155.4336,-64.7758,1.4030,85.7393,37,37); // kaimas
AddStaticVehicle(515,-198.0833,-285.9992,2.5044,237.7226,42,76); // kaimas
AddStaticVehicle(515,-176.2373,-283.3733,2.6218,270.5177,42,76); // kaimas
AddStaticVehicle(496,494.3649,-1471.7657,18.3888,341.1295,9,14); // miestas
AddStaticVehicle(496,779.8545,-1412.3055,13.2531,242.9471,9,14); // miestas
AddStaticVehicle(468,764.5584,-1833.6329,8.2680,279.3487,6,6); // miestas
AddStaticVehicle(434,641.6187,-1805.0868,8.9737,57.1892,4,4); // miestas
AddStaticVehicle(429,884.9052,-1758.0636,13.2270,286.4933,1,2); // miestas
AddStaticVehicle(401,1279.7577,-1800.8429,13.1804,90.1300,74,74); // miestas
AddStaticVehicle(429,1762.5740,-1700.0878,13.1198,277.8399,1,2); // miestas
AddStaticVehicle(412,2173.4976,-1806.7474,13.1350,178.5932,37,8); // miestas
AddStaticVehicle(429,2757.9893,-1495.3981,29.2655,265.4453,1,2); // miestas
AddStaticVehicle(419,2850.4585,-1619.0272,10.8905,162.9594,59,75); // miestas
AddStaticVehicle(419,2841.2478,-2073.6858,10.8558,179.4317,59,75); // miestas
AddStaticVehicle(520,2766.5525,-2433.9844,14.3486,0.0804,0,0); // miestas
AddStaticVehicle(433,2787.7314,-2418.3950,14.0701,269.0348,43,0); // miestas
AddStaticVehicle(470,2777.6382,-2463.2849,13.6303,176.8448,43,0); // miestas
AddStaticVehicle(470,2778.3989,-2449.4800,13.6311,176.8433,43,0); // miestas
AddStaticVehicle(451, 972.6795, -1879.249, 15, 0, -1, -1);
AddStaticVehicle(451, 2463.391, -2605.633, 15, 0, -1, -1);
AddStaticVehicle(419, 2432.969, -1334.461, 15, 0, -1, -1);
AddStaticVehicle(571, 2147.756, -1002.85, 15, 0, -1, -1);
AddStaticVehicle(522, 2204.798, -1393.677, 15, 0, -1, -1);
AddStaticVehicle(495, 1402.4, -2258.232, 15, 0, -1, -1);
AddStaticVehicle(419, 1695.218, -2384.56, 15, 0, -1, -1);
AddStaticVehicle(522, 1402.4, -856.7839, 15, 0, -1, -1);
AddStaticVehicle(571, 330.0002, -864.6794, 15, 0, -1, -1);
AddStaticVehicle(451, -2271.077, 1300.21, 15, 0, -1, -1);
AddStaticVehicle(419, -1583.519, -415.8491, 15, 0, -1, -1);
AddStaticVehicle(495, -1529.441, -455.2987, 15, 0, -1, -1);
AddStaticVehicle(522, -2692.109, -179.1512, 15, 0, -1, -1);
AddStaticVehicle(522, -2135.883, 313.9693, 15, 0, -1, -1);
AddStaticVehicle(451, -2518.289, 732.1356, 15, 0, -1, -1);
AddStaticVehicle(419, -1896.396, 751.8604, 15, 0, -1, -1);
AddStaticVehicle(495, -1726.438, 743.9704, 15, 0, -1, -1);
AddStaticVehicle(571, -1587.381, 424.4283, 15, 0, -1, -1);
AddStaticVehicle(522, -2047.041, 1359.385, 15, 0, -1, -1);
AddStaticVehicle(419, -2062.492, 1091.127, 15, 0, -1, -1);
AddStaticVehicle(451, -2383.094, 1039.843, 15, 0, -1, -1);
AddStaticVehicle(495, -2807.99, 688.7409, 15, 0, -1, -1);
AddStaticVehicle(522, -1985.238, -656.4919, 15, 0, -1, -1);
AddStaticVehicle(419, 2021.171, 1334.004, 15, 0, -1, -1);
AddStaticVehicle(522, 2056.314, 954.9333, 15, 0, -1, -1);
AddStaticVehicle(451, 2060.219, 1612.505, 15, 0, -1, -1);
AddStaticVehicle(419, 2091.458, 1945.158, 15, 0, -1, -1);
AddStaticVehicle(495, 1689.259, 1453.914, 15, 0, -1, -1);
AddStaticVehicle(571, 1220.677, 1569.956, 15, 0, -1, -1);
AddStaticVehicle(571, 2528.801, 1655.053, 15, 0, -1, -1);
AddStaticVehicle(495, 2337.463, 2037.992, 15, 0, -1, -1);
AddStaticVehicle(451, 2130.506, 695.7729, 15, 0, -1, -1);
AddStaticVehicle(419, 1673.639, 2730.376, 15, 0, -1, -1);
AddStaticVehicle(522, 884.86, 2196.583, 15, 0, -1, -1);
AddStaticVehicle(522, 2509.276, 1121.26, 15, 0, -1, -1);
AddStaticVehicle(571, 1369.061, 2030.256, 15, 0, -1, -1);
AddStaticVehicle(419, -1798.393, -2113.696, 15, 0, -1, -1);
AddStaticVehicle(451, -630.6053, -2358.931, 15, 0, -1, -1);
AddStaticVehicle(571, 1564.835, -595.5717, 15, 0, -1, -1);
AddStaticVehicle(571, 1167.788, 35.03363, 15, 0, -1, -1);
AddStaticVehicle(495, 2487.387, -735.7062, 15, 0, -1, -1);
AddStaticVehicle(451, -2347.253, -1634.903, 15, 0, -1, -1);
AddStaticVehicle(419, -2090.34, -2382.287, 15, 0, -1, -1);
AddStaticVehicle(571, -2510.743, -2720.945, 15, 0, -1, -1);
AddStaticVehicle(522, -268.5911, 1471.412, 15, 0, -1, -1);
AddStaticVehicle(495, -233.5575, 2347.253, 15, 0, -1, -1);
AddStaticVehicle(451, -1786.715, 2580.811, 15, 0, -1, -1);
AddStaticVehicle(419, -2779.334, 2487.387, 15, 0, -1, -1);
AddStaticVehicle(419, -1132.754, -817.4513, 15, 0, -1, -1);
AddStaticVehicle(451, 326.9805, 1377.989, 15, 0, -1, -1);
AddStaticVehicle(451, 560.538, 2720.945, 15, 0, -1, -1);
AddStaticVehicle(492,2508.1248,-1666.3868,13.1491,15.4853,86,86); // Grove
AddStaticVehicle(412,2490.4434,-1682.3845,13.1860,96.4607,86,86); // Voodoo Grove
AddStaticVehicle(412,2498.6667,-1682.2102,13.2041,94.9152,86,86); // vodoo grove
AddStaticVehicle(491,2486.1169,-1656.2588,13.0990,84.4212,86,86); // vrgo grove
AddStaticVehicle(600,2473.5251,-1690.1067,13.1864,359.1675,86,86); // picador grove
AddStaticVehicle(487,2531.5366,-1676.1827,20.1086,97.8435,86,86); // maverick grove
AddStaticVehicle(567,2493.1396,-1655.8577,13.2352,271.2886,86,86); // savana grove
AddStaticVehicle(517,2095.1924,-1288.3097,24.2722,357.6156,5,5); // majestic ballas
AddStaticVehicle(517,2102.2903,-1287.4292,24.2952,359.2334,5,5); // majestic ballas
AddStaticVehicle(517,2112.5071,-1293.7686,23.8302,267.2820,5,5); // majestic ballas
AddStaticVehicle(534,2096.1626,-1313.2544,23.9960,178.9042,5,5); // remington ballas
AddStaticVehicle(534,2085.9944,-1293.2449,23.6962,89.5374,5,5); // remington ballas
AddStaticVehicle(481,2479.9304,-1663.4099,12.8466,175.8721,86,86); // groove bmx
AddStaticVehicle(481,2484.1589,-1665.1245,12.8582,357.8141,86,86); // groove bmx
AddStaticVehicle(531,-131.4942,-65.0988,3.0818,114.1802,0,0); // farmers traltorius
AddStaticVehicle(505,-115.6592,-54.1333,3.2532,219.2878,0,0); // farmers rancher
AddStaticVehicle(505,-87.9612,-57.9575,3.2600,335.7502,0,0); // farmers rancher
AddStaticVehicle(478,-111.0202,-42.3410,3.1053,338.1434,0,0); // farmers walton
AddStaticVehicle(478,-104.5622,-24.6443,3.1090,340.5026,0,0); // farmers walton
AddStaticVehicle(512,-131.8605,-28.2895,3.3975,339.5149,0,0); // farmers lektuvas
AddStaticVehicle(489,937.7028,-1235.5299,16.7341,180.0803,120,123); // miestas
AddStaticVehicle(463,1050.5000,-1357.9991,12.9019,178.5938,19,19); // miestas
AddStaticVehicle(540,1275.4535,-2010.7208,58.8389,267.6081,1,1); // Mafia vincent
AddStaticVehicle(540,1275.3818,-2018.5950,58.8430,270.7665,1,1); // mafia vincent
AddStaticVehicle(540,1276.2601,-2028.3301,58.8489,271.1149,1,1); // mafia vincent
AddStaticVehicle(560,1247.6035,-2024.0850,59.4836,269.9649,1,1); // mafia sultan
AddStaticVehicle(560,1246.9521,-2043.0773,59.5033,88.0027,1,1); // mafia sultan
AddStaticVehicle(409,1260.8840,-2007.7701,59.2925,91.5267,1,1); // mafia limuzinas
AddStaticVehicle(487,1118.0510,-2052.8110,74.6033,359.0276,1,1); // mafia maverick
AddStaticVehicle(487,1117.4603,-2020.3920,74.6054,177.4089,1,1); // mafia maverick
AddStaticVehicle(561,2078.2407,-1177.2708,23.6474,356.1435,54,38); // miestas
AddStaticVehicle(576,2497.3071,-1058.9734,69.2863,175.6956,6,6); // vagos tornado
AddStaticVehicle(576,2502.9937,-1030.9281,69.4980,355.5020,6,6); // vagos tornado
AddStaticVehicle(576,2518.1006,-1034.9027,69.1581,88.2335,6,6); // vagos tornado
AddStaticVehicle(549,2490.2346,-1053.2371,67.9128,248.0749,6,6); // vagos tampa
AddStaticVehicle(549,2477.3135,-1055.9729,66.3357,345.2494,6,6); // vagos tampa
AddStaticVehicle(474,2645.8445,-1988.7544,13.3150,358.0437,93,93); // Aztecas
AddStaticVehicle(474,2659.4619,-2010.4716,13.3172,87.1972,93,93); // aztecas
AddStaticVehicle(474,2651.8950,-1996.7585,13.3173,269.5836,93,93); // aztecas
AddStaticVehicle(536,2655.8152,-2007.9550,13.1205,88.4698,93,93); // aztecas
AddStaticVehicle(536,2662.2800,-1987.8608,13.2896,2.6622,93,93); // aztecas
AddStaticVehicle(432,277.4998,1989.2408,17.6715,268.5227,43,0); // army tank
AddStaticVehicle(432,281.1252,2022.2577,17.6759,268.6625,43,0); // army tank
AddStaticVehicle(433,301.7500,1863.8750,18.1161,360.0000,43,0); // barracks army
AddStaticVehicle(470,304.7514,1839.3782,17.6000,336.0914,43,0); // patriot army
AddStaticVehicle(548,296.0880,1925.9004,19.3103,236.2530,1,1); // cargobob army
AddStaticVehicle(520,307.2206,1990.2145,18.3639,319.3066,0,0); // hydra army
AddStaticVehicle(520,307.4964,2031.6863,18.3639,328.3982,0,0); // hydra army
//-------------------Classes----------------------
/*
AddPlayerClassEx ... the first number is the team number
however the sa-mp fuckers didnt allow the anti-TK just to simply work
with just this ... so when a player spawns you have to set their
team number using SetPlayerTeam and then it shall work...
*/
AddPlayerClassEx(1 ,287,316.1606,1974.3752,17.6406,98.8389,1,0,30,300,28,200); // army skin
AddPlayerClassEx(2 ,159,-47.8757,30.3243,6.4844,338.9877,6,0,25,100,28 ,200); // fermeris
AddPlayerClassEx(2 ,161,-47.8757,30.3243,6.4844,338.9877,6,0,25,100,28 ,200); // fermeris
AddPlayerClassEx(2 ,158,-47.8757,30.3243,6.4844,338.9877,6,0,25,100,28 ,200); // fermeris
AddPlayerClassEx(3 ,105,2495.4573,-1688.0197,13.5447,5.8084,4,0,31,200,28,200); // Grove
AddPlayerClassEx(3 ,106,2495.4573,-1688.0197,13.5447,5.8084,4,0,31,200,28,200); // Grove
AddPlayerClassEx(3 ,107,2495.4573,-1688.0197,13.5447,5.8084,4,0,31,200,28,200); // Grove
AddPlayerClassEx(4 ,102,2101.2529,-1290.6940,24.0159,189.4488,5,0,30,200,28,200); // Ballas
AddPlayerClassEx(4 ,103,2101.2529,-1290.6940,24.0159,189.4488,5,0,30,200,28,200); // Ballas
AddPlayerClassEx(4 ,104,2101.2529,-1290.6940,24.0159,189.4488,5,0,30,200,28,200); // Ballas
AddPlayerClassEx(5 ,108,2510.6824,-1041.7144,69.4176,174.1049,24,50,30,200,28,200); // Vagos
AddPlayerClassEx(5 ,109,2510.6824,-1041.7144,69.4176,174.1049,24,50,30,200,28,200); // Vagos
AddPlayerClassEx(5 ,110,2510.6824,-1041.7144,69.4176,174.1049,24,50,30,200,28,200); // Vagos
AddPlayerClassEx(6 ,114,2637.7361,-1992.5823,13.9935,228.2397,18,10,27,100,28,200); // Aztecas
AddPlayerClassEx(6 ,115,2637.7361,-1992.5823,13.9935,228.2397,18,10,27,100,28,200); // Aztecas
AddPlayerClassEx(6 ,116,2637.7361,-1992.5823,13.9935,228.2397,18,10,27,100,28,200); // Aztecas
AddPlayerClassEx(7 ,120,1128.7726,-2037.4619,69.4292,264.8338,23,100,34,15,28,200); // mafia
AddPlayerClassEx(7 ,117,1128.7726,-2037.4619,69.4292,264.8338,23,100,34,15,28,200); // mafia
AddPlayerClassEx(7 ,113,1128.7726,-2037.4619,69.4292,264.8338,23,100,34,15,28,200); // mafia
//--------------------------------------------
AddStaticPickup(342,2,2505.9458,-1695.2386,17.9575);
AddStaticPickup(1240,2,2494.5295,-1695.2653,1014.7422);
AddStaticPickup(1242,2,2493.9739,-1701.5532,1014.7458);
AddStaticPickup(359,2,2316.9731,-1639.5173,18.5078);
AddStaticPickup(1240,2,1549.4856,-1366.2548,326.2109); // auksciausias pastatas gyvybes
AddStaticPickup(1240,2,1549.4856,-1366.2548,326.2109); // auksciausias pastatas gyvybes
AddStaticPickup(1242,2,1546.7368,-1366.5299,326.2109); // auksciausias pastatas armoras
AddStaticPickup(356,2,1533.6681,-1357.9662,329.4533); // auksciausias pastatas m4a1
AddStaticPickup(356,2,1557.3652,-1355.9114,329.4609); // auksciausias pastatas givybes
AddStaticPickup(356,2,1545.4326,-1343.9384,329.4632); // auksciausias pastatas m4a1
AddStaticPickup(1240,2,1126.7008,-2034.1008,69.8850); // Mafia givybes
AddStaticPickup(1242,2,1127.0662,-2040.3567,69.8820); // Mafia armoras
AddStaticPickup(356,2,1125.7281,-2060.7253,69.0078); // Mafia m4a1
AddStaticPickup(1240,2,2090.5693,-1282.7156,25.5014); // givybes ballas
AddStaticPickup(1242,2,2087.8813,-1283.0499,25.4972); // armoras ballas
AddStaticPickup(361,2,2108.1511,-1287.7510,25.4922); // flamethroweris ballas
AddStaticPickup(1240,2,2506.9856,-1027.4879,70.0859); // vagos givybes
AddStaticPickup(1242,2,2510.6489,-1027.9952,70.0859); // vagos armoras
AddStaticPickup(344,2,2511.3401,-1023.2661,73.5667); // vagos ginklas
AddStaticPickup(351,2,2228.5842,-1183.7975,33.5313); // dm1 stogas
AddStaticPickup(1242,2,2220.3279,-1190.2911,33.5313); // dm1 stogas armoras
AddStaticPickup(1240,2,2220.3279,-1190.2911,33.5313); // dm1 stogas givybes
AddStaticPickup(351,2,2196.2957,-1176.4150,33.5313); // dm1 stogas ginklas
AddStaticPickup(1240,2,2190.0752,-1168.1716,33.5313); // dm1 stogas givybes
AddStaticPickup(1242,2,2190.0752,-1168.1716,33.5313); // dm1 stogas armoras
AddStaticPickup(351,2,2204.0681,-1142.0187,33.5313); // dm1 stogas ginklas
AddStaticPickup(351,2,2196.3342,-1181.3402,33.5313); // dm1 stogas ginklas
AddStaticPickup(1240,2,2636.0781,-1995.1969,13.9935); // aztecas givybes
AddStaticPickup(1242,2,2639.5115,-1990.8138,13.9935); // aztecas armoras
AddStaticPickup(358,2,2652.8621,-1987.6575,18.4694); // aztecas ginklas
AddStaticPickup(370,2,2494.7593,-1829.5382,8.3312); // miestas ginklas
AddStaticPickup(358,2,2838.5469,-2370.4751,31.0078); // laivas ginklas sniperis
AddStaticPickup(1240,2,2850.9214,-2370.0310,28.6817); // laivas givybes
AddStaticPickup(1242,2,2850.9214,-2370.0310,28.6817); // laivas armoras
AddStaticPickup(356,2,2830.0928,-2353.2981,19.2058); // laivas m4a1
AddStaticPickup(355,2,2830.9749,-2386.2952,20.4104); // laivas kalasas
AddStaticPickup(1240,2,2836.6616,-2412.7239,15.7122); // laivas givybes
AddStaticPickup(1241,2,2834.1538,-2412.9116,15.7122); // laivas armoras
AddStaticPickup(356,2,2830.6516,-2508.8989,17.5051); // laivas m4a1
AddStaticPickup(346,2,2844.9409,-2510.6187,20.4104); // laivas pistol
AddStaticPickup(1240,2,2837.6047,-2518.8623,21.2115); // laivas givybes
AddStaticPickup(1242,2,2837.6047,-2518.8623,21.2115); // laivas armoras
AddStaticPickup(1240,2,-36.8787,51.7989,6.4844); // kaimas givybes
AddStaticPickup(1242,2,-42.1977,54.1125,6.4844); // kaimas armoras
AddStaticPickup(343,2,-40.6906,52.2078,3.1172); // kaimas ginklas
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerInterior(playerid,11);
SetPlayerPos(playerid,508.7362,-87.4335,998.9609);
SetPlayerCameraPos(playerid,508.7362,-83.4335,998.9609);
SetPlayerCameraLookAt(playerid,508.7362,-87.4335,998.9609);
SetPlayerFacingAngle(playerid,0.0);
if(classid == 0){
gTeam[playerid] = TEAM_Army;
GameTextForPlayer(playerid, "~b~Army", 1000, 6);}
else if(classid == 1 || classid == 2 || classid == 3){
gTeam[playerid] = TEAM_Farmers;
GameTextForPlayer(playerid, "~w~Farmers", 1000, 6);}
else if(classid == 4 || classid == 5 || classid == 6){
gTeam[playerid] = TEAM_Grove;
GameTextForPlayer(playerid, "~n~Grove", 1000, 6);}
else if(classid == 7 || classid == 8 || classid == 9){
gTeam[playerid] = TEAM_Ballas;
GameTextForPlayer(playerid, "~r~Ballas", 1000, 6);}
else if(classid == 10 || classid == 11 || classid == 12){
gTeam[playerid] = TEAM_Vagos;
GameTextForPlayer(playerid, "~g~Vagos", 1000, 6);}
else if(classid == 13 || classid == 14 || classid == 15){
gTeam[playerid] = TEAM_Aztecas;
GameTextForPlayer(playerid, "~p~Aztecas", 1000, 6);}
else if(classid == 16 || classid == 17 || classid == 18){
gTeam[playerid] = TEAM_Mafia;
GameTextForPlayer(playerid, "~y~Mafia", 1000, 6);}
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
SetPlayerInterior(playerid,0);
if(gTeam[playerid] == TEAM_Army)
SetPlayerColor(playerid, 0x804000FF);
else if(gTeam[playerid] == TEAM_Farmers)
SetPlayerColor(playerid, 0x000000DD);
else if(gTeam[playerid] == TEAM_Grove)
SetPlayerColor(playerid, 0x00FF00FF);
else if(gTeam[playerid] == TEAM_Ballas)
SetPlayerColor(playerid, 0xF200F2FF);
else if(gTeam[playerid] == TEAM_Vagos)
SetPlayerColor(playerid, 0xFFFF00AA);
else if(gTeam[playerid] == TEAM_Aztecas)
SetPlayerColor(playerid, 0x00FFFFFF);
else if(gTeam[playerid] == TEAM_Mafia)
SetPlayerColor(playerid, 0x0000FFFF);
return 1;
}
public OnPlayerConnect(playerid)
{
// Text Draw
AllowPlayerTeleport(playerid,0);
new Text: gText;
gText = TextDrawCreate(5.0, 431.0, "~y~Use /report id and reason if you see a cheater or rule breaker.");
TextDrawUseBox(gText, true);
TextDrawShowForPlayer(playerid, gText);
Visitors ++;
new tmp[255],player[24];
GetPlayerName(playerid,player,sizeof(player));
format(tmp,sizeof(tmp),"%s (%d) Connected The Server.",player,playerid);SendClientMessageToAll(COLOR_GREY,tmp);
printf("OnPlayerConnect(%d)", playerid);
SendClientMessage(playerid, COLOR_LIGHTBLUE, "**Welcome to Los Santos Gang Wars [TDM] Server! ");
SendClientMessage(playerid, COLOR_YELLOW, "**New to the server? Please /register an account. ");
SendClientMessage(playerid, COLOR_YELLOW, "**Already registered? Please /login.");
SendClientMessage(playerid, COLOR_YELLOW, "**Type /rules for list of rules.");
SendClientMessage(playerid, COLOR_LIGHTBLUE, "**Now recruiting, visit www.uvhclan.com ");
GameTextForPlayer(playerid,"~G~Los Santos Gang War!",3000,5);
//gang zones
GangZoneShowForPlayer(playerid, Grove1, 0x00FF0072);
GangZoneShowForPlayer(playerid, Army2, 0x8040008F);
GangZoneShowForPlayer(playerid, Mafia1, 0x0000FF74);
GangZoneShowForPlayer(playerid, Ballas1, 0xCE16E976);
GangZoneShowForPlayer(playerid, Vagos1, 0xFFFF0076);
GangZoneShowForPlayer(playerid, Aztecas1, 0x00FFFF7C);
GangZoneShowForPlayer(playerid, Vagos2, 0xFFFF0078);
GangZoneShowForPlayer(playerid, Army1, 0x8040008F);
GangZoneShowForPlayer(playerid, Grove2, 0x00FF007D);
GangZoneShowForPlayer(playerid, Mafia2, 0x0000FF74);
GangZoneShowForPlayer(playerid, Ballas2, 0x80008073);
GangZoneShowForPlayer(playerid, Aztecas2, 0x00FFFF78);
GangZoneShowForPlayer(playerid, Farmers1, 0x00000083);
GangZoneShowForPlayer(playerid, Aztecas3, 0x00FFFF7D);
GangZoneShowForPlayer(playerid, Mafia3, 0x0000FF74);
GangZoneShowForPlayer(playerid, Farmers, 0x0000008B);
GangZoneShowForPlayer(playerid, Vagos, 0xFFFF007C);
GangZoneShowForPlayer(playerid, Ballas3, 0x80008070);
GangZoneShowForPlayer(playerid, Grove3, 0x00FF007D);
GangZoneShowForPlayer(playerid, Mafia4, 0x0000FF7C);
GangZoneShowForPlayer(playerid, Aztecas4, 0x00FFFF81);
GangZoneShowForPlayer(playerid, Ballas4, 0x80008070);
GangZoneShowForPlayer(playerid, Army4, 0x80400096);
GangZoneShowForPlayer(playerid, Farmers3, 0x00000083);
GangZoneShowForPlayer(playerid, Army5, 0x8040008F);
GangZoneShowForPlayer(playerid, Niekeno, 0xFFFFFF91);
GameTextForPlayer(playerid,"~y~Los Santos ~r~Gang Wars",2500,5);
GivePlayerMoney(playerid, 10000);
SetPlayerColor(playerid, COLOR_GREY); // Set the player's color to inactive
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new pname[MAX_PLAYER_NAME],pmsg[256];
GetPlayerName(playerid, pname, MAX_PLAYER_NAME);
format(pmsg,256,"%s left server",pname);
for(new j=0;j<MAX_PLAYERS;j++){
if(j!=playerid){
SendClientMessage(j,COLOR_WHITE,pmsg);
}
}
for(new i = 0; i < MAX_SPAWNWEAPONS;i++) playerWeapons[playerid][i]=0;
return 1;
}
public OnPlayerSpawn(playerid)
{
//newly added for anti-TK
SetPlayerTeam(playerid, GetPlayerTeam(playerid));
if(gTeam[playerid] == TEAM_Farmers) {
SetVehicleParamsForPlayer(OBJECTIVE_VEHICLE_BLUE,playerid,1,1); // objective; locked
GameTextForPlayer(playerid,
"Defend ~g~FARMERS ~w~Teams's ~r~Money Truck",
6000,5);
}
else if(gTeam[playerid] == TEAM_Mafia) {
SetVehicleParamsForPlayer(OBJECTIVE_VEHICLE_BLUE,playerid,1,0); // objective; unlocked
SetPlayerCheckpoint(playerid,834.8496,-2053.5127,15,10.0);
GameTextForPlayer(playerid,
"Catch ~g~FARMERS ~w~Teams's ~r~Money Truck",
6000,5);
}
if(X1[playerid] == 0) {}
else
{
SetPlayerPos(playerid,X1[playerid],Y1[playerid],Z1[playerid]);
}
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
if(GetPlayerState(killerid))
{
new name[24],name1[24];
new string1[150];
GetPlayerName(killerid,name,24);
GetPlayerName(playerid,name1,24);
SetPlayerHealth(killerid,0);
format(string1,sizeof(string1), "%s drivebyed %s",name,name1);
for(new i=0; i<MAX_PLAYERS; i++) if(IsPlayerAdmin(i))
{
SendClientMessage(i,COLOR_PINK,string1);
return 0;
}
GetPlayerPos(playerid,X1[playerid],Y1[playerid],Z1[playerid]);
}
else
{
X1[playerid] = 0;
Y1[playerid] = 0;
Z1[playerid] = 0;
}
if (killerid == INVALID_PLAYER_ID)
{
}
else
{
if (gTeam[killerid] != gTeam[playerid])
{
// Valid kill
GivePlayerMoney(killerid, 10000);
exp[killerid] ++;
SetPlayerScore(killerid, exp[killerid]);
new Kzone = IsInZone(killerid);
new Vzone = IsInZone(playerid);
if ((Kzone!=-1)&&(Kzone==Vzone)&&(gTeam[killerid]!=ZoneOwner[Kzone])&&(UnderAttack[Kzone]==0))
{
UnderAttack[Kzone]=gTeam[killerid];
for (new i=0;i<MAX_PLAYERS;i++)
{
if (gTeam[i]==gTeam[killerid])
{
GameTextForPlayer(i,"ATACK!",5000,5);
SendClientMessage(i,COLOR_BRIGHTRED,"FIRST GANG WHICH WILL KILL 10 ENEMIES IN AREA.WILL WIN!");
GangZoneFlashForPlayer(i,Kzone,COLOR_BRIGHTRED);
}
if (gTeam[i]==ZoneOwner[Kzone])
{
GameTextForPlayer(i,"YOU ARE ATACKED!",5000,5);
SendClientMessage(i,COLOR_BRIGHTRED,"FIRST GANG WHICH WILL KILL 10 ENEMIES IN AREA.WILL WIN!");
GangZoneFlashForPlayer(i,Kzone,COLOR_BRIGHTRED);
}
}
}
if (UnderAttack[Kzone]>0)
{
if ((UnderAttack[Kzone]==gTeam[killerid])||(gTeam[playerid]==ZoneOwner[Kzone]))
{
KillCount[gTeam[killerid]][Kzone]++;
if (KillCount[gTeam[killerid]][Kzone]==10)
{
UnderAttack[Kzone]=-1;
SetTimerEx("unsafe",300000,0,"d",Kzone);
KillCount[gTeam[killerid]][Kzone]=0;
KillCount[gTeam[playerid]][Kzone]=0;
new color=getColor(killerid);
GangZoneShowForAll(Kzone,color);
for (new i=0;i<MAX_PLAYERS;i++)
{
if (gTeam[i]==gTeam[killerid])
{
GameTextForPlayer(i,"WE TOOK THAT SHIT!",5000,5);
SendClientMessage(i,COLOR_BRIGHTRED,"ZONE WILL BE SAFE FOR 5 MINUTES.");
GangZoneStopFlashForPlayer(i,Kzone);
}
if (gTeam[i]==ZoneOwner[Kzone])
{
GameTextForPlayer(i,"WE LOST OUR HOOD!",5000,5);
SendClientMessage(i,COLOR_BRIGHTRED,"YOU HAVE TO WAIT FOR 5 MINUTES BEFORE ATTACKING.");
GangZoneStopFlashForPlayer(i,Kzone);
}
}
}
else
{
new kill =10 - KillCount[gTeam[killerid]][Kzone];
format(TEXT,sizeof(TEXT),"We still have to kill %d enemies",kill);
SendClientMessage(killerid,COLOR_BRIGHTRED,TEXT);
}
}
}
}
else
{
//Team Killer!
new warning[256];
format(warning, sizeof(warning), "You just team killed HAUR!");
SendClientMessage(killerid, 0xFFFF00AA, warning);
GivePlayerMoney(killerid, -10000);
SetPlayerScore(killerid, GetPlayerScore(killerid) - 1);
}
}
return 1;
}
public OnVehicleSpawn(vehicleid)
{
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}
public OnPlayerText(playerid, text[])
{
if(strcmp(text[0],"@",true) == 0)
{
if(IsPlayerAdmin(playerid))
{
for(new i=0; i<MAX_PLAYERS; i++) if(IsPlayerAdmin(i))
{
new string1[150];
new name[24];
GetPlayerName(playerid,name,24);
format(string1,sizeof(string1), "[AChat]%s: %s",name,text[1]);
SendClientMessage(i,COLOR_PINK,string1);
return 0;
}
}
}
return 1;
}
public OnPlayerPrivmsg(playerid, recieverid, text[])
{
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
new cmd[256];
new weaponid;
new idx;
cmd = strtok(cmdtext, idx);
if (strcmp(cmdtext, "/rules", true)==0)
{
SendClientMessage(playerid, COLOR_LIGHTBLUE, "--------------------------------Server Commands--------------------------------");
SendClientMessage(playerid, COLOR_ORANGE, "**/admins | Beta stages please report any bugs you might see.");
SendClientMessage(playerid, COLOR_LIGHTBLUE, "--------------------------------Server Rules--------------------------------");
SendClientMessage(playerid, COLOR_BRIGHTRED, "**Two shot is allowed.");
SendClientMessage(playerid, COLOR_ORANGE, "**No drive by shooting.");
SendClientMessage(playerid, COLOR_ORANGE, "**No mods allowed. It can effect gameplay.");
SendClientMessage(playerid, COLOR_ORANGE, "**No hacks/cheats allowed. Instant Ban!");
SendClientMessage(playerid, COLOR_BRIGHTRED, "** Have fun on the server!");
return 1;
}
if(strcmp(cmd, "/buyweapon", true) == 0) {
new tmp[256];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /buyweapon [weapon number]");
return 1;
}
weaponid = strval(tmp);
if(IsPlayerInCheckpoint(playerid)==0 || playerCheckpoint[playerid]!=CP_AMMU) {
SendClientMessage(playerid, COLOR_YELLOW, "You need to be in an Ammunation to purchase weapons.");
return 1;
}
if(GetPlayerMoney(playerid) < spawnWeapons[weaponid][2]) {
SendClientMessage(playerid, COLOR_RED, "You don't have enough money!");
return 1;
}
if(weaponid < 0 || weaponid > MAX_SPAWNWEAPONS-1){
SendClientMessage(playerid, COLOR_RED, "Invalid weapon number.");
return 1;
}
format (string, sizeof(string), "You purchased 1 %s for when you spawn.",weaponNames[spawnWeapons[weaponid][0]]);
SendClientMessage(playerid, COLOR_GREEN, string);
GivePlayerWeapon(playerid, spawnWeapons[weaponid][0], spawnWeapons[weaponid][1]);
playerWeapons[playerid][weaponid]++;
GivePlayerMoney(playerid, 0-spawnWeapons[weaponid][2]);
return 1;
}
//--------------------------------------------
new visitorstr[256];
if (strcmp(cmdtext, "/users", true)==1)
{
format(visitorstr, sizeof(visitorstr), "This server today had %d users until last restart", Visitors);
SendClientMessage(playerid, COLOR_GREEN, visitorstr);
return 1;
}
if (strcmp(cmdtext, "/resetvisitors", true) == 0) {
if(IsPlayerAdmin(playerid) == 1) {
Visitors = 0;
}
else {
SendClientMessage(playerid, COLOR_RED, "You are not permitted to reset the visitors counter");
}
eturn 1;
}
if(strcmp(cmd, "/gang", true) == 0) {
new tmp[256];
new gangcmd, gangnum;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /gang [create/join/invite/quit] [name/number]");
return 1;
}
giveplayerid = strval(tmp);
if(strcmp(tmp, "create", true)==0)
gangcmd = 1;
else if(strcmp(tmp, "invite", true)==0)
gangcmd = 2;
else if(strcmp(tmp, "join", true)==0)
gangcmd = 3;
else if(strcmp(tmp, "quit", true)==0)
gangcmd = 4;
tmp = strtok(cmdtext, idx);
if(gangcmd < 3 && !strlen(tmp)) {
if(gangcmd==0)
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /gang [create/join/invite/quit] [name/number]");
else if(gangcmd==1)
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /gang [create] [name]");
else if(gangcmd==2)
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /gang [invite] [playerID]");
return 1;
}
//Create Gang//
if(gangcmd==1) {
if(playerGang[playerid]>0) {
SendClientMessage(playerid, COLOR_RED, "You are already in a gang!");
return 1;
}
for(new i = 1; i < MAX_GANGS; i++) {
if(gangInfo[i][0]==0) {
//name gang
format(gangNames[i], MAX_GANG_NAME, "%s", tmp);
//Gang exists
gangInfo[i][0]=1;
//There is one member
gangInfo[i][1]=1;
//Gang color is player's color
gangInfo[i][2]=playerColors[playerid];
//Player is the first gang member
gangMembers[i][0] = playerid;
format(string, sizeof(string),"You have created the gang '%s' (id: %d)", gangNames[i], i);
SendClientMessage(playerid, COLOR_GREEN, string);
playerGang[playerid]=i;
return 1;
}
}
return 1;
//Join Gang//
} else if (gangcmd==3) {
gangnum = gangInvite[playerid];
if(playerGang[playerid]>0) {
SendClientMessage(playerid, COLOR_RED, "You are already in a gang!");
return 1;
}
if(gangInvite[playerid]==0) {
SendClientMessage(playerid, COLOR_RED, "You have not been invited to a gang.");
return 1;
}
if(gangInfo[gangnum][0]==0) {
SendClientMessage(playerid, COLOR_RED, "That gang does not exist!");
return 1;
}
if(gangInfo[gangnum][1] < MAX_GANG_MEMBERS) {
new i = gangInfo[gangnum][1];
gangInvite[playerid]=0;
gangMembers[gangnum][i] = playerid;
GetPlayerName(playerid, sendername, MAX_PLAYER_NAME);
for(new j = 0; j < gangInfo[gangnum][1]; j++) {
format(string, sizeof(string),"%s has joined your gang.", sendername);
SendClientMessage(gangMembers[gangnum][j], COLOR_ORANGE, string);
}
gangInfo[gangnum][1]++;
playerGang[playerid] = gangnum;
SetPlayerColor(playerid,gangInfo[gangnum][2]);
format(string, sizeof(string),"You have joined the gang '%s' (id: %d)", gangNames[gangnum], gangnum);
SendClientMessage(playerid, COLOR_GREEN, string);
return 1;
}
SendClientMessage(playerid, COLOR_RED, "That gang is full.");
return 1;
//Invite to Gang//
} else if (gangcmd==2) {
giveplayerid = strval(tmp);
if(playerGang[playerid]==0) {
SendClientMessage(playerid, COLOR_RED, "You are not in a gang!");
return 1;
}
if(IsPlayerConnected(giveplayerid)) {
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string),"You have sent a gang invite to %s.", giveplayer);
SendClientMessage(playerid, COLOR_GREEN, string);
format(string, sizeof(string),"You have recieved a gang invite from %s to '%s' (id: %d)", sendername, gangNames[playerGang[playerid]],playerGang[playerid]);
SendClientMessage(giveplayerid, COLOR_GREEN, string);
gangInvite[giveplayerid]=playerGang[playerid];
} else
SendClientMessage(playerid, COLOR_RED, "No such player exists!");
} else if (gangcmd==4) {
PlayerLeaveGang(playerid);
}
return 1;
}
//------------------- /ganginfo
if(strcmp(cmd, "/ganginfo", true) == 0) {
new tmp[256];
new gangnum;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp) && playerGang[playerid]==0) {
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /ganginfo [number]");
return 1;
} else if (!strlen(tmp))
gangnum = playerGang[playerid];
else
gangnum = strval(tmp);
if(gangInfo[gangnum][0]==0) {
SendClientMessage(playerid, COLOR_RED, "No such gang exists!");
return 1;
}
format(string, sizeof(string),"'%s' Gang Members (id: %d)", gangNames[gangnum], gangnum);
SendClientMessage(playerid, COLOR_GREEN, string);
for(new i = 0; i < gangInfo[gangnum][1]; i++) {
GetPlayerName(gangMembers[gangnum][i], giveplayer, sizeof(giveplayer));
format(string, sizeof(string),"%s (%d)", giveplayer, gangMembers[gangnum][i]);
SendClientMessage(playerid, COLOR_YELLOW, string);
}
return 1;
}
//------------------- /gangs
if(strcmp(cmd, "/gangs", true) == 0)
{
new x;
SendClientMessage(playerid, COLOR_GREEN, "Current Gangs:");
for(new i=0; i < MAX_GANGS; i++) {
if(gangInfo[i][0]==1) {
format(string, sizeof(string), "%s%s(%d) - %d members", string,gangNames[i],i,gangInfo[i][1]);
x++;
if(x > 2) {
SendClientMessage(playerid, COLOR_YELLOW, string);
x = 0;
format(string, sizeof(string), "");
} else {
format(string, sizeof(string), "%s, ", string);
}
}
}
if(x <= 2 && x > 0) {
string[strlen(string)-2] = '.';
SendClientMessage(playerid, COLOR_YELLOW, string);
}
return 1;
}
if(strcmp(cmdtext, "/report", true) == 0) {
new string[150],name[24];
GetPlayerName(playerid,name,24);
if(strlen(cmdtext) < 8) return SendClientMessage(playerid,COLOR_GREY,"Sintax: /report [report to send]");
format(string,sizeof(string),"[Report] %s - (%s)",name,cmdtext[8]);
for(new i=0; i<MAX_PLAYERSl i++) if(IsPlayerAdmin(i)) {
SendClientMessage(i,COLOR_RED,string);
return 1;
}
SendClientMessage(playerid,COLOR_RED,"Report sent to online admins!");
return 1;
}
if(strcmp(cmd, "/drop", true) == 0 && IsPlayerAdmin(playerid) == 1)
{
new Float:x2,Float:y2,Float:z2,string[80],name[24];
cmd = strtok(cmdtext,idx);
if(!strlen(cmd)) return SendClientMessage(playerid,COLOR_GREY,"Sintax: /drop [id]");
if(!IsNumeric(cmd)) return SendClientMessage(playerid,COLOR_RED,"Enter numbers only please!");
GetPlayerPos(strval(cmd),x2,y2,z2);
SetPlayerPos(strval(cmd),x2,y2,z2+10);
GetPlayerName(strval(cmd),name,24);
format(string,sizeof(string),"You dropped %s from 10 feet.",name);
SendClientMessage(playerid,COLOR_GREEN,string);
return 1;
}
new string[256];
if (strcmp(cmdtext, "/buylevel", true) == 0) {
if(level[playerid] >= 1) {
if(XP[playerid] == 4) {
GivePlayerMoney(playerid, -50000);
level[playerid] ++;
XP[playerid] = 0;
GameTextForPlayer(playerid, "~g~You leveled up!", 5000, 5);
}
}
if(level[playerid] == 1) {
if(XP[playerid] < 4) {
format(string, sizeof(string), "you need 4 XP, you currently have %d", XP[playerid]);
SendClientMessage(playerid, COLOR_RED, string);
}
}
if(level[playerid] == 2) {
if(XP[playerid] >= 7) {
GivePlayerMoney(playerid, -75000);
level[playerid] ++;
XP[playerid] = 0;
GameTextForPlayer(playerid, "~g~You leveled up!", 5000, 5);
}
}
if(level[playerid] == 2) {
if(XP[playerid] < 7) {
format(string, sizeof(string), "you need 7 XP, you currently have %d", XP[playerid]);
SendClientMessage(playerid, COLOR_RED, string);
}
}
return 1;
}
if (strcmp(cmdtext, "/morexp", true) == 0) {
XP[playerid] ++;
format(string, sizeof(string), "you gained XP, your XP is now %d", XP[playerid]);
SendClientMessage(playerid, COLOR_GREY, string);
return 1;
}
//---------------------------
if (strcmp(cmdtext, "/level", true) == 0)
{
format(string, sizeof(string), "Level: %d, XP: %d", level[playerid], XP[playerid]);
SendClientMessage(playerid, COLOR_GREY, string);
return 1;
}
//----------------------------------------
if (strcmp(cmdtext, "/lock", true)==0)
{
if (IsPlayerInAnyVehicle(playerid))
{
new State=GetPlayerState(playerid);
if (State!=PLAYER_STATE_DRIVER)
{
SendClientMessage(playerid,0xFFFF00AA,"You can Lock car Only While In Car.");
return 1;
}
new i;
for (i=0;i<MAX_PLAYERS;i++)
{
if(i != playerid)
{
SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),i, 0, 1);
}
}
SendClientMessage(playerid, 0xFFFF00AA, "Car Locked!");
new Float:pX, Float:pY, Float:pZ;
GetPlayerPos(playerid,pX,pY,pZ);
PlayerPlaySound(playerid,1056,pX,pY,pZ);
}
else
{
SendClientMessage(playerid, 0xFFFF00AA, "You Are Not In Car!");
}
return 1;
}
if (strcmp(cmdtext,"/zwh",true)==0)
GameTextForAll(
"z e r u e l w a s h e r e",10000,5);
if (strcmp(cmdtext, "/unlock", true)==0)
{
if (IsPlayerInAnyVehicle(playerid))
{
new State=GetPlayerState(playerid);
if (State!=PLAYER_STATE_DRIVER)
{
SendClientMessage(playerid,0xFFFF00AA,"You Can Unlock Door While Being Only An Driver.");
return 1;
}
new i;
for (i=0;i<MAX_PLAYERS;i++)
{
SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),i, 0, 0);
}
SendClientMessage(playerid, 0xFFFF00AA, "Car Locked!");
new Float:pX, Float:pY, Float:pZ;
GetPlayerPos(playerid,pX,pY,pZ);
PlayerPlaySound(playerid,1057,pX,pY,pZ);
}
else
{
SendClientMessage(playerid, 0xFFFF00AA, "You Are Not In Car!");
}
return 1;
}
if (strcmp(cmdtext, "/purchase", true)==0) // to set the vehicle that you register to be teleported
{
if (GetPlayerMoney(playerid) < 5000)
{
SendClientMessage(playerid,COLOR_YELLOW,"You dont have cash to buy an car.");
}
else
{
if (IsPlayerInAnyVehicle(playerid) == 1)
{
SetVehicleToRespawn(ownedcar[playerid]);
ownedcar[playerid] = GetPlayerVehicleID(playerid);
owner[ownedcar[playerid]] = playerid;
SendClientMessage(playerid,COLOR_YELLOW,"Congratulations.You Have New Car.");
GivePlayerMoney(playerid,-15000);
}
else
{
SendClientMessage(playerid,COLOR_YELLOW,"You Have To Be In Car To Buy It.");
}
}
return 1;
}
if (strcmp(cmdtext, "/callmycar", true)==0)
{
if (ownedcar[playerid] != 0)
{
if (GetPlayerMoney(playerid) < 500)
{
SendClientMessage(playerid,COLOR_RED,"You Dont Have Cash For It .You Need 500$.");
}
else
{
new Float:playerpos[4];
GetPlayerPos(playerid,playerpos[0],playerpos[1],playerpos[2]);
GetPlayerFacingAngle(playerid,playerpos[3]);
SetVehicleZAngle(ownedcar[playerid],playerpos[3]+90.0);
SetVehiclePos(ownedcar[playerid],playerpos[0]+3.0*floatsin(playerpos[3],degrees),playerpos[1]+3.0*floatcos(playerpos[3],degrees),playerpos[2]+0.5); // This one is cool that I am using trigo functions to set the vehicle just before you. //Z E R U E L A N G E L!
SendClientMessage(playerid,COLOR_GREEN,"Heres Your Car.");
GivePlayerMoney(playerid,-500);
}
}
return 1;
}
return 0;
}
public OnPlayerInfoChange(playerid)
{
return 1;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
new vehicleid;
if(newstate == PLAYER_STATE_DRIVER)
{
vehicleid = GetPlayerVehicleID(playerid);
if(gTeam[playerid] == TEAM_Mafia && vehicleid == OBJECTIVE_VEHICLE_BLUE)
{ // It's the objective vehicle
SetPlayerColor(playerid,OBJECTIVE_COLOR);
GameTextForPlayer(playerid,"~w~Take The ~r~Money Truck ~w~back To Place!",3000,5);
gObjectiveBluePlayer = playerid;
}
}
else if(newstate == PLAYER_STATE_ONFOOT)
{
if(playerid == gObjectiveBluePlayer) {
gObjectiveBluePlayer = (-1);
}
}
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
new playervehicleid = GetPlayerVehicleID(playerid);
if(gObjectiveReached) return;
if(playervehicleid == OBJECTIVE_VEHICLE_BLUE && gTeam[playerid] == TEAM_Mafia)
{ // Blue OBJECTIVE REACHED.
GameTextForAll("~b~Mafia ~w~wins!",3000,5);
gObjectiveReached = 3;
SetPlayerScore(playerid,GetPlayerScore(playerid)+5);
SetTimer("ExitTheGameMode", 4000, 0); // Set up a timer to exit this mode.
return;
}
}
public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}
public OnRconCommand(cmd[])
{
return 1;
}
public OnObjectMoved(objectid)
{
return 1;
}
public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
return 1;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}
public OnPlayerExitedMenu(playerid)
{
return 1;
}
GetRandomWeather(weather, ...) {
new random_weather = weather, count = 0, len = numargs() - 1;
if(len > 0) {
do {
random_weather = getarg(random(len*1000)/1000);
count++;
} while(random_weather == weather && count < 10); // try up to 10 times to get a random weather
}
return random_weather;
}
GetSequencedWeather(hour) {
static weather = 10;
switch(weather) { // only normal weather changes are possible, eg clouds before rain and no sandstorm after rain
case 0 .. 7, 10: { // blue skies/clouds
switch(hour) {
case 11 .. 14: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,10,11,17,18,20,27,28,29,35,36,37,38,39);
case 17 .. 23: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,10,20);
default: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,10,12,13,14,15,20,27,28,29);
}
}
case 8: { // stormy
weather = GetRandomWeather(weather,8,9,16,20,21,22,30,31,32,33);
}
case 9: { // cloudy and foggy
switch(hour) {
case 17 .. 23: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,20);
default: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,20,27,28,29,30,31,32,33);
}
}
case 11, 17, 18: { // scorching hot/bright
switch(hour) {
case 11 .. 14: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,10,11,17,18,20,27,28,29,35,26,37,38,39);
default: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,10,20);
}
}
case 12 .. 15: { // very dull, colorless, hazy
switch(hour) {
case 16 .. 19: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,12,13,14,15,16,20,21,22,33,35);
default: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,12,13,14,15,16,20);
}
}
case 16: { // dull, cloudy, rainy
weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,12,13,14,15,16,20,33,35);
}
case 19: { // sandstorm
weather = GetRandomWeather(weather,8,16);
}
case 20: { // foggy/greenish
weather = GetRandomWeather(weather,9,16,20,21,22);
}
case 21, 22: { // very dark, gradiented skyline, purple/green
weather = GetRandomWeather(weather,8,16,20,21,22);
}
case 23 .. 26: { // variations of pale orange
switch(hour) {
case 7 .. 11, 16 .. 20: GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,12,13,14,15,20,23,24,25,26,27,28,29,35,36,37,38);
default: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,12,13,14,15,20);
}
}
case 27 .. 29: { // variations of fresh blue
switch(hour) {
case 11 .. 14: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,10,11,17,18,20,27,28,29,35,36,37,38,39);
case 17 .. 23: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,10,20);
default: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,10,12,13,14,15,20);
}
}
case 30 .. 32: { // variations of dark, cloudy, teal
weather = GetRandomWeather(weather,8,9,16,20,21,22);
}
case 33: { // dark, cloudy, brown
switch(hour) {
case 17 .. 23: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,16,20);
default: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,16,20);
}
}
case 34: { // blue/purple, regular
weather = GetRandomWeather(weather,16,20,21,22);
}
case 35: { // dull brown
switch(hour) {
case 11 .. 14: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,11,17,18,35,36,37,38);
case 17 .. 23: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,23,24);
default: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,12,13,14,15);
}
}
case 36 .. 38: { // bright, foggy, orange
switch(hour) {
case 11 .. 14: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,11,17,18);
case 17 .. 23: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,23,24);
default: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9);
}
}
case 39: { // extremely bright
switch(hour) {
case 11 .. 14: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,10,11,17,18,27,28,29,39);
case 17 .. 23: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,10);
default: weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,10);
}
}
case 40 .. 42: { // blue/purple cloudy
weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,16,20);
}
case 43: { // dark toxic clouds
weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7);
}
case 44: { // black/white sky
weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,10,12,13,14,15);
}
case 45: { // black/purple sky
weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,10,12,13,14,15);
}
default: {
weather = GetRandomWeather(weather,0,1,2,3,4,5,6,7,9,10,12,13,14,15);
}
}
return weather;
}
public Timer_DayHeartbeat() {
static hour = 0;
SetWorldTime(hour);
if(!(hour % 3)) SetWeather(GetSequencedWeather(hour));
hour++, hour %= 24;
}
public PayDay()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
GameTextForPlayer(i, "~w~PAY~y~DAY ~n~ ~n~ ~b~200 $", 1000, 1);
GivePlayerMoney(i, 200);
}
}
}
public TimeFunction(playerid)
{
if(gHour < 24) {
if(gMinute < 60) {
gMinute ++;
if(gMinute == 60) {
gMinute = 0;
gHour ++;
if(gHour == 17) {
XP[playerid] ++;
}
}
}
}
else if(gHour == 24) {
gHour = 0;
}
SetWorldTime(gHour);
return 1;
}
public post_winners(winnerid)
{
new i;
//paralize all
for(i = 0; i < MAX_PLAYERS ; i++)
if(IsPlayerConnected(i) && !IsPlayerAdmin(i))
TogglePlayerControllable(i,0);
new string[256];
new winners[3]; //3 first players' ids
winners[0] = winnerid; //first place
winners[1] = 255; //second place
winners[2] = 255; //third place
printf("1. %d 2. %d 3. %d", winners[0], winners[1], winners[2]);
new winames[3][MAX_PLAYER_NAME]; //names of the winners
GetPlayerName(winners[0], winames[0], MAX_PLAYER_NAME); //winner name
new x = -100;
for(i = 0; i < MAX_PLAYERS ; i++) //finding 2nd place.
{
if (IsPlayerConnected(i) && GetPlayerScore(i) > x && i != winners[0])
{
x = GetPlayerScore(i);
winners[1] = i;
}
}
if(winners[1] != 255) GetPlayerName(winners[1], winames[1], MAX_PLAYER_NAME); //if found 2nd place, get his name
else winames[1] = "---"; //if not, just write ---
x = -100;
for(i = 0; i < MAX_PLAYERS ; i++) //finding 3rd place.
{
if (IsPlayerConnected(i) && GetPlayerScore(i) > x && i != winners[0] && i != winners[1])
{
x = GetPlayerScore(i);
winners[2] = i;
}
}
if(winners[2] != 255) GetPlayerName(winners[2], winames[2], MAX_PLAYER_NAME); //if found 3rd place, get his name
else winames[2] = "---"; //if not, just write ---
format(string, sizeof(string),"~w~1. ~b~%s ~y~(%d)~n~~w~2. ~b~%s ~y~(%d)~n~~w~3. ~b~%s ~y~(%d)~n~", winames[0], GetPlayerScore(winners[0]), winames[1], GetPlayerScore(winners[1]), winames[2],GetPlayerScore(winners[2]));
GameTextForAll(string,16000,3);
SetTimer("GameModeExitFunc", 15000, 0);
}
IsNumeric(const string[])
{
for (new i = 0, j = strlen(string); i < j; i++)
{
if (string[i] > '9' || string[i] < '0') return 0;
}
return 1;
}
public checkpointUpdate()
{
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i)) {
for(new j=0; j < MAX_POINTS; j++) {
if(isPlayerInArea(i, checkCoords[j])) {
if(playerCheckpoint[i]!=j) {
DisablePlayerCheckpoint(i);
SetPlayerCheckpoint(i, checkpoints[j][0],checkpoints[j][1],checkpoints[j][2],2);
playerCheckpoint[i] = j;
}
} else {
if(playerCheckpoint[i]==j) {
DisablePlayerCheckpoint(i);
playerCheckpoint[i] = 999;
}
}
}
}
}
}
stock getCheckpointType(playerID) return checkpointType[playerCheckpoint[playerID]];
stock isPlayerInArea(playerID, Float:data[4])
{
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerID, X, Y, Z);
if(X >= data[0] && X <= data[2] && Y >= data[1] && Y <= data[3]) {
return 1;
}
return 0;
}
stock strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}
new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}