rendered paste body//------------------------------------------------------------------------------
//
// Los Santos TDM. A Team Deathmtach script for SA-MP 0.1b
//
//------------------------------------------------------------------------------
#include <a_samp>
#include <core>
#include <float>
#include <time>
#include <file>
#include <string>
#include <danticheat>
//Global stuff and defines
static gTeam[MAX_PLAYERS];
new gPlayerClass[MAX_PLAYERS];
new gPlayerName[MAX_PLAYERS];
//how many random respawns?
new numcars=40; //number of cars
new numpickups=15; //number of pickups
//Color Defines
#define COLOR_RED 0xAA3333AA
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_PINK 0xFF66FFAA
#define COLOR_BLUE 0x0000BBAA
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_CYAN 0x00BFF3AA
#define COLOR_BLACK 0x000000AA
#define COLOR_WHITE 0xFFFFFFAA
//team colors
#define COLOR_TEAM_0 0x008000AA
#define COLOR_TEAM_1 0x8B008BAA
#define COLOR_TEAM_2 0xFFD700AA
#define COLOR_TEAM_3 0x00CED3AA
#define COLOR_TEAM_4 0x6A5ACDAA
//other colors
#define COLOR_ERROR 0xed1c24AA
#define COLOR_COMMAND 0x8c6239AA
//Team Defines
#define TEAM_GROVE 0
#define TEAM_BALLAS 1
#define TEAM_VAGOS 2
#define TEAM_AZTECAS 3
#define TEAM_COPS 4
#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 playerGang[MAX_PLAYERS];
new gangInvite[MAX_PLAYERS];
#define COLOR_ORANGE 0xFF9900AA
// Round duration
new gRoundTime = 3600000; // 60 mins
//new gRoundTime = 1800000; // 30 mins
//new gRoundTime = 600000; //10 mins
//new gRoundTime = 300000; // 5 mins
//new gRoundTime = 120000; // 2 mins
//new gRoundTime = 60000; // 1 min
new startgame = 0;
//for stat
static points[MAX_PLAYERS];
static frags[MAX_PLAYERS];
static frags2[MAX_PLAYERS];
static frags3[MAX_PLAYERS];
static deaths[MAX_PLAYERS];
static suicides[MAX_PLAYERS];
static teamkills[MAX_PLAYERS];
static lastkill[MAX_PLAYERS];
static tknow[MAX_PLAYERS];
// others variables
new firstblood = 0;
//Vehicle id's for locked doors
new Vehicle1;
new Vehicle2;
new Vehicle3;
new Vehicle4;
new Vehicle5;
new Vehicle6;
new Vehicle7;
new Vehicle8;
new Vehicle9;
new Vehicle10;
new Vehicle11;
new Vehicle12;
new Vehicle13;
new Vehicle14;
new Vehicle15;
new Vehicle16;
new Vehicle17;
//------------------------------------------------------------------------------
main()
{
// new i;
print("\n");
printf("\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432");
print("\432 LSDM by oTTo [W]est[S]ide TeaM Yuklendi. Iyi Oyunlar! \1 \432");
printf("\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432\432");
print("\n");
// new rand;
//// for (new i=0;i<100;i++) {
// rand=random(10);
// if (rand == 10 || rand == 0) print("asdasdasdasdasdasdasdasdasdasdasd");
/// // printf("random=%d",rand);
// }
// for (i=0;i<100;i++) {
// printf("%d = %c | %d = %c | %d = %c | %d = %c | %d = %c",i,i,i+100,i+100,i+200,i+200,i+300,i+300,i+400,i+400);
// }
}
//------------------------------------------------------------------------------
//Get the distance to a car function
public Float:GetDistanceToCar(playerid,carid) {
new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
if (!IsPlayerConnected(playerid)) {
return -1.00;
}
GetPlayerPos(playerid,x1,y1,z1);
GetVehiclePos(carid,x2,y2,z2);
return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
}
//Game start
public OnGameModeInit()
{
SetGameModeText("LSTDM WeSTSiDe GanG WaR");
SetTeamCount(5);
ShowNameTags(1);
ShowPlayerMarkers(1);
SetWorldTime(0);
//players
AddPlayerClass(107,2512.6606,-1689.3367,13.5515,48.7638,22,68,29,60,27,28); // Grove
AddPlayerClass(106,2523.2505,-1659.1217,15.4935,106.4177,22,68,29,60,27,28); // Grove
AddPlayerClass(105,2497.8171,-1646.1243,13.5398,180.6784,22,68,29,60,27,28); // Grove
AddPlayerClass(293,2483.9624,-1651.5681,13.4633,182.8717,22,68,29,60,27,28); // Grove
AddPlayerClass(176,2470.9353,-1681.0172,13.4274,314.7864,22,68,29,60,27,28); // Grove
AddPlayerClass(0,2495.1145,-1686.8292,13.5141,1.1602,22,68,29,60,27,28); // Grove
AddPlayerClass(102,1872.6663,-1269.6407,13.5506,16.5641,23,58,30,90,26,8); // Ballas 1
AddPlayerClass(103,1899.6895,-1202.5249,19.9033,169.1588,23,58,30,90,26,8); // Ballas 2
AddPlayerClass(104,1836.6270,-1241.1743,15.0258,249.0596,23,58,30,90,26,8); // Ballas 3
AddPlayerClass(7,1875.0950,-1253.0256,13.5468,179.8123,23,58,30,90,26,8); // Ballas 4
AddPlayerClass(297,1883.0964,-1253.2370,13.5468,177.6189,23,58,30,90,26,8); // Ballas 5
AddPlayerClass(21,1892.9754,-1253.4842,13.5559,178.8722,23,58,30,90,26,8); // Ballas 6
AddPlayerClass(110,2682.4373,-1408.3500,30.4882,134.1774,28,90,31,100,4,0); // Vagos
AddPlayerClass(109,2662.4937,-1439.7015,30.5021,332.8092,28,90,31,100,4,0); // Vagos
AddPlayerClass(108,2686.6614,-1445.6199,30.5312,33.2831,28,90,31,100,4,0); // Vagos
AddPlayerClass(30,2685.8874,-1429.7032,30.5117,96.8903,28,90,31,100,4,0); // Vagos
AddPlayerClass(47,2663.8518,-1424.6518,30.4857,84.6702,28,90,31,100,4,0); // Vagos
AddPlayerClass(179,2635.2043,-1407.9141,30.4034,274.2153,28,90,31,100,4,0); // Vagos
AddPlayerClass(114,1798.4735,-1935.1747,13.4589,356.6592,32,60,25,45,9,0); // Aztecas
AddPlayerClass(115,1767.8877,-1888.0836,13.5536,187.5536,32,60,25,45,9,0); // Aztecas
AddPlayerClass(116,1802.1482,-1883.7207,13.5775,167.5000,32,60,25,45,9,0); // Aztecas
AddPlayerClass(174,1782.3575,-1937.8620,13.5515,356.6592,32,60,25,45,9,0); // Aztecas
AddPlayerClass(175,1772.2945,-1924.4899,13.5531,270.4917,32,60,25,45,9,0); // Aztecas
AddPlayerClass(292,1771.7467,-1905.9449,13.5542,262.0316,32,60,25,45,9,0); // Aztecas
AddPlayerClass(280,1551.1449,-1676.3922,15.7248,75.5556,24,21,31,100,25,45); // cops
AddPlayerClass(284,1600.1106,-1675.2036,5.8906,105.9259,24,21,31,100,25,45); // cops
AddPlayerClass(285,1579.8029,-1634.5599,13.5623,44.2219,24,21,31,100,25,45); // cops
AddPlayerClass(281,1560.7862,-1635.2308,13.5580,5.0314,24,21,31,100,25,45); // Cops
AddPlayerClass(286,1557.2742,-1606.8721,13.3828,183.9231,24,21,31,100,25,45); // Cops
AddPlayerClass(282,1550.2827,-1654.3714,13.5594,95.2488,24,21,31,100,25,45); // Cops
//############################ cars ############################
new rand, randid, randpos, randcol1, randcol2;
new usedposI=0,fl,i,j;
new Float:VehiclePos[116][4] = {
{2403.6218,-1647.4016,13.5468,184.2198},
{2235.5219,-1639.1542,15.5608,163.1983},
{2124.5163,-1637.1197,13.4568,348.2605},
{1989.9266,-1610.3903,13.5204,320.9385},
{2019.5689,-1649.3551,13.5546,83.8590},
{1937.7445,-1772.5880,13.3828,3.8780},
{1948.1787,-1882.8950,13.5467,92.3034},
{2065.3571,-1903.1011,13.5468,177.7543},
{1719.2401,-1704.1693,13.5000,355.5477},
{1711.3402,-1615.9056,13.5546,346.9055},
{1695.5527,-1360.9783,17.4435,356.3208},
{1730.5225,-1274.1777,13.5476,126.6447},
{1955.5150,-1165.3322,20.6422,55.9877},
{2409.7265,-1389.3155,24.3022,84.6583},
{2138.2385,-1286.7852,24.4422,175.1966},
{2095.6799,-1315.3432,24.5170,181.4013},
{2329.5063,-1409.7474,23.9925,179.3094},
{2416.7709,-1539.6947,24.0000,3.8815},
{2409.3581,-1539.6464,24.0000,1.7445},
{2398.5324,-1539.5236,24.0000,1.7445},
{2414.3596,-1486.2451,23.8281,88.6709},
{2660.0292,-1634.6035,10.8428,101.3106},
{2658.2836,-1640.8853,10.8550,85.5661},
{2059.6833,-1902.9057,13.5468,180.671768},
{1863.8914,-1602.2917,13.5416,357.791046},
{1925.3468,-1698.3691,13.5468,177.069442},
{2119.3735,-1784.4771,13.3872,3.1367},
{2106.2858,-1784.3941,13.3873,354.6037},
{2121.3293,-1775.3820,13.3917,4.3131},
{2163.9531,-1694.3243,15.0859,351.1560},
{2111.2246,-1558.1876,13.3577,246.9459},
{1865.2639,-1364.5895,13.4991,1.3056},
{1813.4522,-1378.9407,14.4218,92.9392},
{1587.0170,-1647.7772,19.8791,1.5224},
{1588.6503,-1655.5338,19.8791,270.6549},
{1589.5090,-1679.1193,19.8791,270.9682},
{1590.3823,-1699.9207,19.8791,268.4615},
{1813.8669,-1703.1979,13.5468,178.5432},
{1813.8220,-1789.5566,13.5468,184.5082},
{1920.3693,-1925.1796,13.5468,267.7719},
{2511.1865,-1776.3419,13.5468,273.0138},
{2083.7233,-1587.7169,13.4665,267.3307},
{2054.6149,-1694.7956,13.5546,265.7559},
{2066.1772,-1694.8430,13.5468,266.6959},
{2106.5898,-1774.6695,13.3920,355.6584},
{2167.3889,-1921.5549,13.5216,265.8391},
{2230.9101,-1786.0122,13.5613,87.1065},
{2306.6879,-1672.4636,14.2006,354.3420},
{2390.6262,-1503.9531,23.8348,274.6387},
{2397.6350,-1917.8693,13.3828,268.9465},
{2396.9152,-1891.8035,13.3828,261.3193},
{2380.1230,-1891.6842,13.3891,262.2594},
{2304.2685,-1785.5694,13.5591,93.2203},
{2253.0661,-1796.1761,13.5468,267.9696},
{1865.0435,-1858.4916,13.5807,346.8889},
{2286.4494,-1854.7136,-0.1344,267.6148},
{2253.0661,-1796.1761,13.5468,267.9696},
{1900.8970,-1482.5451,10.8207,88.4129},
{2004.3499,-1443.8055,13.5623,137.6643},
{2031.7061,-1418.3122,16.9921,124.5041},
{2167.8776,-1507.9443,23.9210,354.6188},
{2069.5539,-1655.1284,13.5468,275.8742},
{2059.5888,-1553.8944,13.4598,73.9251},
{2290.7553,-1528.4270,26.8750,178.6236},
{2443.6306,-1376.2871,24.0000,179.0048},
{2474.5751,-1279.9097,34.8470,1.3899},
{2408.2458,-1238.9432,23.8125,180.2815},
{2436.4738,-1238.8551,24.6582,90.6674},
{2436.8901,-1303.4694,24.6001,264.8590},
{1484.2366,-1246.0893,14.5625,95.1819},
{1462.2597,-1277.2749,13.5519,177.5893},
{1476.2437,-1419.8007,11.8828,174.7693},
{1525.2764,-1461.8355,9.5000,176.6259},
{1512.7551,-1462.1845,9.5000,181.9526},
{1639.4781,-1459.6680,13.5468,354.8909},
{1672.5500,-1493.9165,18.5468,81.9750},
{1669.6322,-1530.9979,18.5468,179.1092},
{2481.7348,-1748.4934,13.5468,345.2579},
{2496.1210,-1751.8996,13.4668,357.4153},
{2628.7309,-1755.6080,11.1288,265.4027},
{2629.3361,-1644.2540,11.6322,265.6391},
{2768.1511,-1605.1949,10.9218,265.1781},
{2768.8022,-1615.4958,10.9218,279.9049},
{2262.8371,-1249.7912,23.9765,175.1634},
{2208.7321,-1284.5915,24.5304,184.2858},
{2214.8239,-1368.5058,23.9901,181.8923},
{2230.6933,-1358.9364,23.9878,182.2057},
{2186.1079,-1465.7233,25.5390,276.5018},
{2194.1870,-1453.4197,25.5390,178.1142},
{2526.7644,-1357.6702,29.1423,93.1154},
{2578.5327,-1404.3482,26.1704,359.7457},
{1355.0338,-630.4597,108.8411,15.8993},
{2052.7651,-1904.0513,13.2740,180.6526},
{599.0422,-1873.4364,4.6746,168.4479},
{555.8792,-1911.7756,0.3477,183.1009},
{567.0980,-1911.4384,0.2580,173.4404},
{371.4564,-2044.3452,7.6398,88.7252},
{319.4981,-1809.9900,4.1701,358.5054},
{328.1766,-1809.1205,4.1120,0.0799},
{344.2243,-1810.1364,4.2700,0.9710},
{156.3121,-1977.0475,1.6561,177.1444},
{185.8977,-1873.2195,3.0445,354.2627},
{213.2383,-1422.8496,13.0227,225.9205},
{716.8338,-1245.0641,13.9230,274.8734},
{708.4464,-1424.0962,13.2147,0.1223},
{477.4511,-1526.2524,19.7820,352.8512},
{1218.3623,-877.8999,42.8045,94.7515},
{2029.6174,-960.8205,40.5820,206.9758},
{2271.8445,-1041.2769,50.2807,141.7058},
{2761.5588,-1177.2522,69.1200,84.1676},
{2794.1851,-1428.2480,19.9236,188.6449},
{2796.9985,-1434.4459,23.8490,183.6681},
{2908.0706,-1629.3085,10.5677,150.7781},
{2311.5298,-1996.6154,14.1978,0.9217},
{2117.6843,-1919.5791,12.7307,143.8210},
{2117.7429,-1826.3710,13.1545,5.2556}
};
new VehicleIDs[41] = {
//2 doors (19)
602, 496, 401, 518, 527, 589, 419, 533, 526, 474, 545, 517, 410, 600, 436, 580, 439, 549, 491,
//bikes (12)
581, 509, 481, 462, 521, 463, 510, 522, 461, 448, 468, 586,
//Light Trucks & Vans (10)
459, 422, 482, 605, 530, 418, 572, 582, 413, 440
};
new UsedPos[200] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
};
if (numcars > sizeof(VehiclePos)) numcars=sizeof(VehiclePos)-1;
for (i=0;i<numcars;i++) {
randid=VehicleIDs[random(sizeof(VehicleIDs))];
fl=0;
while(fl==0) {
fl=1;
rand=random(sizeof(VehiclePos));
for (j=0;j<usedposI;j++) {
if (UsedPos[j]==rand) {fl=0;break;}
}
if (fl==1) {
randpos = rand;
UsedPos[usedposI]=rand;
usedposI++;
break;
}
}
randcol1=random(127); randcol2=random(127);
AddStaticVehicle(randid,VehiclePos[randpos][0],VehiclePos[randpos][1],VehiclePos[randpos][2],VehiclePos[randpos][3],randcol1,randcol2);
}
//for test
//##################################################################################
//############################ PickUPs ############################
new usedpickupI=0;
new Float:PickUPPos[46][3] = {
{2355.4655,-1634.5524,13.4712},
{2377.5837,-1684.4559,13.6144},
{2152.3005,-1597.1105,14.3447},
{2112.1027,-1498.0804,10.4218},
{1879.5561,-1429.2154,10.3593},
{1911.9077,-1384.6624,10.3593},
{1988.0382,-1641.4335,15.9612},
{1987.1959,-1666.2346,15.9690},
{2034.5400,-1642.0423,13.5546},
{485.6536,-23.3642,1003.1093},
{475.3234,-12.2139,1003.6953},
{506.1972,-6.4034,1000.6718},
{1434.4266,-1454.2852,125.3671},
{2152.3005,-1597.1105,14.3447},
{2112.1027,-1498.0804,10.4218},
{2414.5468,-1827.1435,9.2734},
{2654.6074,-1306.9321,58.9453},
{1541.9826,-1365.7584,326.2109},
{1714.2120,-1912.1910,13.5667},
{2617.7302,-1221.3946,61.7827},
{2749.3869,-1195.7609,69.2156},
{2480.7326,-1362.2326,28.8322},
{2064.5725,-1395.2630,23.9202},
{1715.0196,-1673.5644,20.2187},
{1733.9782,-1640.6091,23.7543},
{1709.4952,-1659.5869,23.7013},
{1512.1176,-1478.7342,9.5000},
{1721.9354,-1562.1843,13.5471},
{1727.2017,-1540.1932,13.4963},
{1741.6466,-1562.1593,14.1623},
{1869.8686,-1362.9899,19.1406},
{1863.3071,-1352.3021,13.4881},
{2670.3090,-1541.7824,24.6355},
{2682.1206,-1540.9321,25.8348},
{2777.3593,-1580.3133,17.0382},
{2467.6120,-1754.2009,13.5468},
{2779.2263,-1515.3684,24.2106},
{2537.5544,-1400.2620,34.6484},
{2534.2070,-1393.3039,39.0298},
{2463.8793,-1327.4499,26.5089},
{2437.6213,-1320.8336,24.5399},
{2399.0285,-1227.2932,25.0337},
{2244.6208,-1369.1885,41.2922},
{2244.5290,-1325.9138,41.4256},
{2171.5156,-1520.3137,23.5625},
{2518.0251,-1233.1883,45.3446}
};
new PickUPIDs[2] = {
//health adrenaline pillarmor
1240, 1241
};
new UsedPickUp[100] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
};
if (numpickups > sizeof(PickUPPos)) numpickups=sizeof(PickUPPos);
for (i=0;i<numpickups;i++) {
randid=PickUPIDs[random(sizeof(PickUPIDs))];
fl=0;
while(fl==0) {
fl=1;
rand=random(sizeof(PickUPPos));
for (j=0;j<usedpickupI;j++) {
if (UsedPickUp[j]==rand) {fl=0;break;}
}
if (fl==1) {
randpos = rand;
UsedPickUp[usedpickupI]=rand;
usedpickupI++;
break;
}
}
AddStaticPickup(randid,3,PickUPPos[randpos][0],PickUPPos[randpos][1],PickUPPos[randpos][2]);
}
//non random
/*AddStaticPickup(1240,15,1209.1538,-1282.6701,63.5066);//na krane id
AddStaticPickup(1240,15,1564.5225,-1675.6745,61.8762);//kynol mentov
AddStaticPickup(1240,15,1491.5371,-1265.2104,113.7795);//krisha1
AddStaticPickup(1240,15,1484.0250,-1206.9689,108.3357);//krisha2/1
AddStaticPickup(1240,15,1481.6129,-1170.7115,99.6732);//krisha2/2
AddStaticPickup(1240,15,1678.3546,-1256.5126,129.3648);//KLEVOE MESTO*/
AddStaticPickup(363,15,1464.3415,-1227.8062,99.6562);//krisha2/3
AddStaticPickup(363,15,1514.7111,-1356.1918,190.8000);//krisha0
AddStaticPickup(363,15,1799.5933,-1721.7868,25.7923);//grysha:)
AddStaticPickup(371,15,1408.2049,-1486.9174,125.3678);//napashyt
AddStaticPickup(371,15,1244.4196,-1253.1408,63.0422);//narashyt(na krane)
AddStaticPickup(371,15,1499.4918,-1199.4739,99.6567);//parashyt (krisha2)
//war's
//Pickups
AddStaticPickup(321,2,261.5758,71.1758,1003.2422); // dildoo
AddStaticPickup(334,2,215.5700,75.4520,1005.0391); // nitestick
AddStaticPickup(348,2,215.6942,80.3350,1005.0391); // deagle
AddStaticPickup(323,2,263.0155,83.1653,1001.0391); // big vibrator
AddStaticPickup(371,2,1555.8761,-1349.4685,329.4609); // parashut
AddStaticPickup(338,2,491.1993,-81.7832,998.7578); //kiy
AddStaticPickup(324,2,2285.1851,-1133.7953,1050.8984); //vibro4
AddStaticPickup(336,2,2331.6721,-1184.1545,1031.9766); //bat
AddStaticPickup(365,2,2495.4417,-1704.3696,1018.3438); //spray can
AddStaticPickup(356,3,1119.1102,-829.1891,107.4688); //m4
AddStaticPickup(341,2,2193.4851,-1225.7588,1049.0234); //chainsaw
AddStaticPickup(325,2,2194.1440,-1200.6184,1049.0234); //flowers
AddStaticPickup(326,2,2278.5007,-1134.6949,1050.8984); //cane
AddStaticPickup(337,2,872.9695,-1115.4866,24.1018); //shovel
AddStaticPickup(333,2,731.1327,-1276.4025,17.6484); //klushka
AddStaticPickup(353,3,648.4689,-1384.2911,22.7225); //mp5
AddStaticPickup(355,3,2144.4534,-1039.6595,70.9141); // ak-47
AddStaticPickup(1242,3,2860.6865,-1428.4222,29.2188); //bronnik
//Grove Vehicles
AddStaticVehicle(492,2484.6628,-1655.9478,13.0530,90.5136,86,86); //
AddStaticVehicle(492,2477.1872,-1656.4765,13.3201,94.3659,86,86); //
AddStaticVehicle(492,2492.6806,-1655.9713,13.3713,83.4118,86,86); //
AddStaticVehicle(412,2475.7773,-1681.8276,13.1203,339.3870,86,86); //
AddStaticVehicle(412,2480.0095,-1683.2073,13.3293,346.1543,86,86); //
AddStaticVehicle(475,2505.1086,-1695.0637,13.3612,2.7333,86,86); //
AddStaticVehicle(461,2509.3687,-1677.6377,13.1314,67.1459,86,86); //
AddStaticVehicle(481,2469.2573,-1678.5652,13.0234,39.4958,86,86); //
AddStaticVehicle(567,2506.9902,-1663.9484,13.2748,45.5117,86,86); //
AddStaticVehicle(567,2507.6835,-1671.2508,13.3778,346.0497,86,86); //
// Vagos cars
AddStaticVehicle(474,2662.2056,-1435.9623,30.2591,88.6047,81,1); //
AddStaticVehicle(467,2662.9900,-1427.8962,30.2280,88.6401,58,8); //
AddStaticVehicle(576,2662.1431,-1419.6113,30.0828,92.1153,68,96); //
AddStaticVehicle(575,2638.1819,-1403.4094,29.9302,179.0165,19,96); //
AddStaticVehicle(462,2653.3303,-1382.8475,30.0290,199.6677,13,13); //
AddStaticVehicle(521,2682.7803,-1394.8186,30.2497,96.1270,75,13); //
// cop cas
AddStaticVehicle(596,1554.0859,-1608.3030,13.1040,180.9425,0,1); //
AddStaticVehicle(596,1560.4459,-1608.2982,13.1019,179.9717,0,1); //
AddStaticVehicle(528,1593.5459,-1610.5184,13.5328,88.8995,0,1); //
AddStaticVehicle(601,1530.8094,-1685.0070,5.6508,272.8328,1,1); //
AddStaticVehicle(596,1531.0225,-1644.4117,5.6119,177.7084,0,1); //
AddStaticVehicle(523,1586.2479,-1674.8734,5.4633,277.2755,0,0); //
AddStaticVehicle(523,1583.1127,-1681.0920,5.4673,271.0948,0,0); //
AddStaticVehicle(596,1544.7028,-1653.0553,13.2778,93.0430,0,1); //
//Ballas cars
AddStaticVehicle(566,1875.9742,-1249.5018,13.4280,98.5057,30,8); //
AddStaticVehicle(566,1883.1483,-1248.7847,13.4382,270.7162,30,8); //
AddStaticVehicle(412,1859.8281,-1237.8130,15.4851,182.8141,10,8); //
AddStaticVehicle(581,1893.7911,-1229.6036,15.1557,93.5403,66,1); //
AddStaticVehicle(471,1894.6156,-1225.6929,15.6744,134.3081,103,111); //
AddStaticVehicle(471,1901.3557,-1231.7278,15.3377,154.7738,120,114); //
AddStaticVehicle(517,1899.0067,-1268.3265,13.2930,90.2993,26,96); //
AddStaticVehicle(517,1888.7485,-1268.3692,13.2845,270.7162,26,26); //
//Aztecas cars
AddStaticVehicle(536,1758.3960,-1890.3652,13.2929,179.9916,12,1); //
AddStaticVehicle(575,1804.1582,-1915.7855,13.1576,355.3434,28,1); //
AddStaticVehicle(575,1804.0769,-1922.6032,13.9943,179.8759,28,1); //
AddStaticVehicle(474,1794.8895,-1886.1208,13.2752,94.4029,24,1); //
AddStaticVehicle(474,1802.6372,-1885.7761,13.1685,11.5957,24,1); //
AddStaticVehicle(466,1787.2330,-1929.7397,13.5030,356.1396,48,48); //
AddStaticVehicle(466,1790.6472,-1930.0122,13.9905,355.3433,48,48); //
AddStaticVehicle(466,1794.2281,-1929.9079,13.0999,356.4666,48,48); //
//SF car showroom spawns
Vehicle1 = AddStaticVehicle(560,-1951.9344,301.2165,40.9174,178.3483,13,23); //Sultan
Vehicle2 = AddStaticVehicle(411,-1957.2834,301.9644,40.9152,180.4329,92,93); //Infernus
Vehicle3 = AddStaticVehicle(415,-1945.4662,257.4331,40.9166,359.6798,79,79); //Cheetah
Vehicle4 = AddStaticVehicle(429,-1950.9156,257.7579,40.9170,359.8694,1,2); //Banshee
Vehicle5 = AddStaticVehicle(475,-1955.9065,257.6106,40.9135,1.0206,3,3); //Sabre
Vehicle6 = AddStaticVehicle(477,-1945.3999,273.2839,35.3427,88.8040,41,9); //Zr350
Vehicle7 = AddStaticVehicle(506,-1945.3353,269.3972,35.3407,90.6095,16,1); //Supergt
Vehicle8 = AddStaticVehicle(535,-1945.6040,265.0452,35.3413,90.3844,6,6); //Slamvan
Vehicle9 = AddStaticVehicle(541,-1945.4299,260.8985,35.3356,89.2809,0,11); //Bullet
Vehicle10 = AddStaticVehicle(559,-1945.8987,255.0587,35.3371,89.3658,87,36); //Jester
Vehicle11 = AddStaticVehicle(405,-1955.0566,305.0432,35.3371,90.6156,102,106); // Sentinel
Vehicle12 = AddStaticVehicle(411,-1954.1021,299.8945,35.3351,90.2938,32,97); // Infernus
Vehicle13 = AddStaticVehicle(415,-1954.1477,294.9549,35.3353,89.7457,2,0); // Cheetah
Vehicle14 = AddStaticVehicle(429,-1954.0110,290.7222,35.3387,88.9322,3,1); // Banshee
Vehicle15 = AddStaticVehicle(475,-1957.1311,285.7732,35.3396,90.4374,14,3); // Sabre
Vehicle16 = AddStaticVehicle(477,-1955.6929,281.8165,35.3370,89.7357,78,5); // Zr350
Vehicle17 = AddStaticVehicle(506,-1955.8882,277.1920,35.3350,89.9642,112,73); // Supergt
//non random
AddStaticVehicle(539,1661.5609,-1244.4250,232.7351,0.0000,79,74); //vortex
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
//AddStaticPickup(370,15,2494.6306,-1670.5992,13.3359);//
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
SetTimer("GameModeShowWinTeam", gRoundTime-7000, 0);
SetTimer("GameModeExitFunc", gRoundTime, 0);
startgame=GetTickCount();
return 1;
}
//------------------------------------------------------------------------------
public OnPlayerConnect(playerid)
{
// print("onconnect");
GameTextForPlayer(playerid,"Los Santos: ~g~TDM HoSGeLDiNiZ",2500,5);
SendClientMessage(playerid,COLOR_GREEN, "LSTDM by oTTo. Mod Bilgi icin /modbilgi yaziniz veya yardim icin /modyardim yaziniz. Iyi Oyunlar!");
GameTextForPlayer(playerid, "~g~Yaratici by ~r~oTTo ~g~Los Santos GanG WaR", 10000, 1);
GivePlayerMoney(playerid, 10000);
// print("onconnect1");
points[playerid]=0;
frags[playerid]=0;
frags2[playerid]=0;
frags3[playerid]=0;
deaths[playerid]=0;
suicides[playerid]=0;
lastkill[playerid]=0;
tknow[playerid]=0;
SetPlayerColor(playerid, COLOR_GREY); // Set the player's color to inactive
GetPlayerName(playerid, gPlayerName[playerid], MAX_PLAYER_NAME);
// print("onconnectend");
return 1;
}
//------------------------------------------------------------------------------
public OnPlayerDisconnect(playerid)
{
// print("ondisconnect");
gPlayerName[playerid] = 0;
return 1;
}
//------------------------------------------------------------------------------
public OnPlayerSpawn(playerid)
{
// print("onspawn");
// SetPlayerInterior(playerid,0);
switch (gTeam[playerid]) {
case 0: {SetPlayerColor(playerid,COLOR_TEAM_0);}
case 1: {SetPlayerColor(playerid,COLOR_TEAM_1);}
case 2: {SetPlayerColor(playerid,COLOR_TEAM_2);}
case 3: {SetPlayerColor(playerid,COLOR_TEAM_3);}
case 4: {SetPlayerColor(playerid,COLOR_TEAM_4);}
}
SetVehicleParamsForPlayer(Vehicle1,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle2,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle3,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle4,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle5,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle6,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle7,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle8,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle9,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle10,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle11,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle12,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle13,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle14,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle15,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle16,playerid,0,1);
SetVehicleParamsForPlayer(Vehicle17,playerid,0,1);
SetPlayerCheckpoint(playerid,1291.0771,-788.2956,96.4609,10);
return 1;
}
//------------------------------------------------------------------------------
public OnPlayerDeath(playerid, killerid, reason)
{
new name[MAX_PLAYER_NAME];
new warning[256];
new tempstring[256];
new string[256];
new deathreason[20];
new Float: phealth;
new killyes=0,bon1yes=0;
new killer[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
GetWeaponName(reason, deathreason, 20);
SendDeathMessage(killerid,playerid,reason);
if (killerid == INVALID_PLAYER_ID) {
/* switch (reason) {
case WEAPON_DROWN:
format(string, sizeof(string), "*** %s drowned.", name);
default:
{
if (strlen(deathreason) > 0) {
format(string, sizeof(string), "*** %s died. (%s)", name, deathreason);
} else {
format(string, sizeof(string), "*** %s died.", name);
}
}
}
*/
suicides[playerid]++;
frags2[playerid]=0;
frags3[playerid]=0;
}
else {
if (GetPlayerState(killerid) == 2 && reason != '1') {
SetPlayerHealth(killerid,0);
SendClientMessage(killerid,0xAA3333AA, "THAT IS NOT ALLOWED!!!");
// SendDeathMessage(killerid,playerid,reason);
return 1;
}
GetPlayerName(killerid, killer, sizeof(killer));
if (gTeam[playerid] == gTeam[killerid]) {
/* if (strlen(deathreason) > 0) {
format(string, sizeof(string), "*** %s killed team-mate %s. (%s)", killer, name, deathreason);
} else {
format(string, sizeof(string), "*** %s killed team-mate %s.", killer, name);
}
SetPlayerScore(killerid, GetPlayerScore(killerid) - 1);
*/ GivePlayerMoney(killerid, -1000);
if (teamkills[killerid] == 0) {
format(warning, sizeof(warning), "Kendi Cetendeki Adami Oldurdun %s.", name);
SendClientMessage(killerid, 0xFFFF00AA, warning);
} else if (teamkills[killerid] == 1) {
SetPlayerInterior(killerid,6);
SetPlayerPos(killerid,264.6296,77.1372,1001.0390);
ResetPlayerWeapons(killerid);
SendClientMessage(killerid, 0xFFFF00AA, "2 dakika icinde kacirilabilirsin...");
SendClientMessage(killerid, 0xFFFF00AA, "Kacmak icin /kacis yazarak kacabilirsin. (price: $5.000) veya /kill yazarak kendini oldurebilirsin.");
SetTimer("RescueTK", 120000, 1);
//SetTimer("RescueTK", 15000, 1);
tknow[killerid]=1;
} else {
SendClientMessage(killerid, 0xFFFF00AA, "Kick for you. Teamkill - bad.");
Kick(killerid);
}
teamkills[killerid]++;
points[killerid]--;
frags2[playerid]=0;
frags3[playerid]=0;
} else {
killyes=1;
/* if (strlen(deathreason) > 0) {
format(string, sizeof(string), "*** %s killed %s. (%s)", killer, name, deathreason);
} else {
format(string, sizeof(string), "*** %s killed %s.", killer, name);
}
SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);
*/GivePlayerMoney(killerid, 2000);
frags[killerid]++;
frags2[killerid]++;
frags3[killerid]++;
points[killerid]++;
frags2[playerid]=0;
frags3[playerid]=0;
if (GetTickCount() - lastkill[killerid] < 15000) {
bon1yes=1;
} else {
frags3[killerid]=1;
}
}
}
points[playerid]--;
deaths[playerid]++;
// SendClientMessageToAll(COLOR_RED, string);
//format(string, sizeof(string), "(debug)LAST kill %d, raznica=%d, bonus-%d",lastkill[killerid],(tickcount()-lastkill[killerid])/1000,bon1yes);
// SendClientMessageToAll(COLOR_GREY, string);
SetPlayerColor(playerid,COLOR_GREY);
if (killyes) {
if (!firstblood) {
firstblood++;
format(string, sizeof(string), "First Blood! (+5000) (%s)",killer);
SendClientMessageToAll(COLOR_LIGHTBLUE, string);
GivePlayerMoney(killerid, 5000);
}
if (bon1yes==1) {
switch (frags3[killerid]) {
case 2: {
format(string, sizeof(string), "DOUBLE KILL! (+2000) (%s)",killer);
SendClientMessageToAll(COLOR_PINK, string);
GivePlayerMoney(killerid, 2000);
}
case 3: {
format(string, sizeof(string), "TRIPLE KILL! (+3000) (%s)",killer);
SendClientMessageToAll(COLOR_PINK, string);
GivePlayerMoney(killerid, 3000);
}
case 4: {
format(string, sizeof(string), "Tquadruple KILL! (+4000) (%s)",killer);
SendClientMessageToAll(COLOR_PINK, string);
GivePlayerMoney(killerid, 4000);
}
case 5: {
format(string, sizeof(string), "Quintuple KILL! (+5000) (%s)",killer);
SendClientMessageToAll(COLOR_PINK, string);
GivePlayerMoney(killerid, 5000);
}
case 6..100: {
format(string, sizeof(string), "Inconceivable KILL! (+10000) (%s)",killer);
SendClientMessageToAll(COLOR_PINK, string);
GivePlayerMoney(killerid, 10000);
}
}
}
GetPlayerHealth(killerid, phealth);
format(tempstring, sizeof(tempstring), "*** %s have %2.f hp.", killer, phealth);
SendClientMessage(playerid,COLOR_GREY, tempstring);
switch (frags2[killerid]) {
case 3: {
format(string, sizeof(string), "KILLING SPREE! (+1000) (%s)",killer);
SendClientMessageToAll(COLOR_LIGHTBLUE, string);
GivePlayerMoney(killerid, 1000);
}
case 4: {
format(string, sizeof(string), "DOMINATING! (+2000) (%s)",killer);
SendClientMessageToAll(COLOR_LIGHTBLUE, string);
GivePlayerMoney(killerid, 2000);
}
case 5: {
format(string, sizeof(string), "MEGA KILL! (+3000) (%s)",killer);
SendClientMessageToAll(COLOR_LIGHTBLUE, string);
GivePlayerMoney(killerid, 2000);
}
case 6: {
format(string, sizeof(string), "UNSTOPPABLE! (+4000) (%s)",killer);
SendClientMessageToAll(COLOR_LIGHTBLUE, string);
GivePlayerMoney(killerid, 2000);
}
case 7: {
format(string, sizeof(string), "WICKED SICK! (+5000) (%s)",killer);
SendClientMessageToAll(COLOR_LIGHTBLUE, string);
GivePlayerMoney(killerid, 2000);
}
case 8: {
format(string, sizeof(string), "MOSNTER KILL! (+6000) (%s)",killer);
SendClientMessageToAll(COLOR_LIGHTBLUE, string);
GivePlayerMoney(killerid, 2000);
}
case 9..100: {
format(string, sizeof(string), "GODLIKE! (+10000) (%s)",killer);
SendClientMessageToAll(COLOR_LIGHTBLUE, string);
GivePlayerMoney(killerid, 10000);
}
}
lastkill[killerid]=GetTickCount();
}
SetPlayerScore(playerid,points[playerid]);
// points[playerid]=100;
SetPlayerScore(killerid,points[killerid]);
return 1;
}
//------------------------------------------------------------------------------
public SetupPlayerForClassSelection(playerid)
{
// SetPlayerInterior(playerid,10);
SetPlayerPos(playerid,2489.2221,-1656.2525,13.3606);
SetPlayerFacingAngle(playerid, 180.0);
SetPlayerCameraPos(playerid,2489.3806,-1661.4866,13.3359);
SetPlayerCameraLookAt(playerid,2489.2221,-1656.2525,13.3606);
}
//------------------------------------------------------------------------------
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerClass(playerid, classid);
SetupPlayerForClassSelection(playerid);
gPlayerClass[playerid] = classid;
switch (classid) {
case 0..5: {
SetPlayerFacingAngle(playerid, 180.0);
SetPlayerPos(playerid,2489.2221,-1656.2525,13.3606);
SetPlayerCameraPos(playerid,2489.3806,-1661.4866,13.3359);
SetPlayerCameraLookAt(playerid,2489.2221,-1656.2525,13.3606);
GameTextForPlayer(playerid, "~g~Grove", 1000, 3);
}
case 6..11: {
SetPlayerFacingAngle(playerid, 180.0);
SetPlayerPos(playerid,1881.9139,-1255.8211,13.5468);
SetPlayerCameraPos(playerid,1879.5007,-1260.9143,13.3906);
SetPlayerCameraLookAt(playerid,1881.9139,-1255.8211,13.5468);
GameTextForPlayer(playerid, "~p~Ballas", 1000, 4);
}
case 12..17: {
SetPlayerFacingAngle(playerid, 180.0);
SetPlayerPos(playerid,2638.7700,-1414.4694,30.2867);
SetPlayerCameraPos(playerid,2638.6892,-1419.2049,30.2878);
SetPlayerCameraLookAt(playerid,2638.7700,-1414.4694,30.2867);
GameTextForPlayer(playerid, "~y~Vagos", 1000, 5);
}
case 18..23: {
SetPlayerFacingAngle(playerid, 180.0);
SetPlayerPos(playerid,1775.1835,-1901.3182,13.3857);
SetPlayerCameraPos(playerid,1775.6403,-1907.9654,13.3861);
SetPlayerCameraLookAt(playerid,1775.1835,-1901.3182,13.3857);
GameTextForPlayer(playerid, "~ñ~Aztecas", 1000, 3);
}
case 24..29: {
SetPlayerFacingAngle(playerid, 90.0);
SetPlayerPos(playerid,1523.9155,-1668.9237,13.5468);
SetPlayerCameraPos(playerid,1518.6901,-1669.5471,13.5468);
SetPlayerCameraLookAt(playerid,1523.9155,-1668.9237,13.5468);
GameTextForPlayer(playerid, "~b~Cops", 1000, 6);
}
}
return 1;
}
//------------------------------------------------------------------------------
public GameModeExitFunc()
{
GameModeExit();
return 1;
}
//------------------------------------------------------------------------------
public GameModeShowWinTeam()
{
new summpoints[5];
new i,j,maxi,fl,Float: phealth;
summpoints[0]=summpoints[1]=summpoints[2]=summpoints[3]=summpoints[4]=0;
for (i=j = 0; i < MAX_PLAYERS; i++) {
if ((IsPlayerConnected(i))) {
GetPlayerHealth(i,phealth);
if (phealth <= 0.0) continue;
ResetPlayerWeapons(i);
j++;
SetPlayerInterior(i,0);
SetPlayerPos(i,2739.4345,-1765.2652,450.5814+j*10.0);
switch(gTeam[i]) {
case 0: summpoints[0]+=points[i];
case 1: summpoints[1]+=points[i];
case 2: summpoints[2]+=points[i];
case 3: summpoints[3]+=points[i];
case 4: summpoints[4]+=points[i];
}
}
}
// new tempstring[512];
// format(tempstring, sizeof(tempstring), "--- stat0=%d,stat1=%d,stat2=%d,stat3=%d,stat4=%d",summpoints[0],summpoints[1],summpoints[2],summpoints[3],summpoints[4]);
// SendClientMessageToAll(COLOR_COMMAND, tempstring);
maxi=0,fl=0;
for (i=0;i<5;i++) {
if (summpoints[i] > summpoints[maxi]) {maxi = i;}
}
for (i=0;i<5;i++) {
if (summpoints[i] == summpoints[maxi] && i != maxi) {fl=1;}
}
if (fl==1) maxi=-1;
switch (maxi) {
case -1: {
GameTextForAll("~r~No winners",7000,5);
SendClientMessageToAll(COLOR_TEAM_0,"No winners");
}
case 0: {
GameTextForAll("~g~Grove Street 4 life",7000,5);
SendClientMessageToAll(COLOR_TEAM_0,"Grove Street 4 life");
}
case 1: {
GameTextForAll("~p~Ballas da rule",7000,5);
SendClientMessageToAll(COLOR_TEAM_1,"Ballas da rule");
}
case 2: {
GameTextForAll("~c~Vagos win",7000,5);
SendClientMessageToAll(COLOR_TEAM_3,"Vagos win");
}
case 3: {
GameTextForAll("~y~Aztecas in da house",7000,5);
SendClientMessageToAll(COLOR_TEAM_2,"Aztecas in da house");
}
case 4: {
GameTextForAll("~b~Cops win",7000,5);
SendClientMessageToAll(COLOR_TEAM_4,"Cops win");
}
}
return 1;
}
//------------------------------------------------------------------------------
SetPlayerClass(playerid, classid) {
switch (classid) {
case 0..5: {gTeam[playerid] = TEAM_GROVE;}
case 6..11: {gTeam[playerid] = TEAM_BALLAS;}
case 12..17: {gTeam[playerid] = TEAM_VAGOS;}
case 18..23: {gTeam[playerid] = TEAM_AZTECAS;}
case 24..29: {gTeam[playerid] = TEAM_COPS;}
}
}
//------------------------------------------------------------------------------
StrToInt(text[]) {
new number=0;
switch (strlen(text)) {
case 1: {number=(text[0]-48);}
case 2: {number=10*(text[0]-48)+(text[1]-48);}
case 3: {number=100*(text[0]-48)+(10*(text[1]-48))+(text[2]-48);}
case 4: {number=1000*(text[0]-48)+(100*(text[1]-48))+(10*(text[2]-48))+(text[3]-48);}
case 5: {number=10000*(text[0]-48)+1000*(text[1]-48)+100*(text[2]-48)+10*(text[3]-48)+(text[4]-48);}
case 6: {number=100000*(text[0]-48)+10000*(text[1]-48)+1000*(text[2]-48)+100*(text[3]-48)+10*(text[4]-48)+(text[5]-48);}
case 7..20: {number=1000000;}
}
return number;
}
//------------------------------------------------------------------------------
public OnVehicleSpawn(vehicleid)
{
printf("OnVehicleSpawn(%d)", vehicleid);
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
printf("OnVehicleDeath(%d, %d)", vehicleid, killerid);
return 1;
}
//------------------------------------------------------------------------------
public OnPlayerCommandText(playerid, cmdtext[])
{
new tempstring[256];
new giveplayerid,idx;
new cmd[256];
cmd = strtok(cmdtext, idx);
new string[256];
new sendername[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
// strmid(string,cmdtext,0,strlen(cmdtext));
// format(tempstring, sizeof(tempstring), "--- strcmp(time)=%d,strfind(time)=%d. strcmp(time )=%d,strfind(time )=%d", strcmp(cmdtext, "/time"),strfind(cmdtext,"/time",true,0),strcmp(cmdtext, "/time "),strfind(cmdtext,"/time ",true,0));
// SendClientMessage(playerid, COLOR_GREY, tempstring);
// format(tempstring, sizeof(tempstring), "Your admin status=%d", IsPlayerAdmin(playerid));
// SendClientMessage(playerid, COLOR_GREY, tempstring);
if(strcmp(cmd, "/gangcommands", true) == 0) {
SendClientMessage(playerid, COLOR_GREEN,"Gang commands:");
SendClientMessage(playerid, COLOR_YELLOW,"/gang create [isim]");
SendClientMessage(playerid, COLOR_YELLOW,"/gang join [Gang ID]");
SendClientMessage(playerid, COLOR_YELLOW,"/gang invite [Player ID]");
SendClientMessage(playerid, COLOR_YELLOW,"/gang quit");
SendClientMessage(playerid, COLOR_YELLOW,"/ganginfo [Gang ID] (ID siniz yazdiginiz gang in bilgisini gosterir.)");
return 1;
}
//Car showroom code
if(strcmp(cmd, "/Buycar", true) == 0)
{
if(GetPlayerMoney(playerid) < 5000)
{
SendClientMessage(playerid, COLOR_RED, "You don't have enough money to buy a car");
SendClientMessage(playerid, COLOR_RED, "It costs $5000 to buy one");
}
else
{
GivePlayerMoney(playerid, -5000);
SendClientMessage(playerid, COLOR_RED, "You bought a car, you can get in now");
if(GetDistanceToCar(playerid,Vehicle1) < 2)
{
SetVehicleParamsForPlayer(Vehicle1, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle2) < 2)
{
SetVehicleParamsForPlayer(Vehicle2, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle3) < 2)
{
SetVehicleParamsForPlayer(Vehicle3, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle4) < 2)
{
SetVehicleParamsForPlayer(Vehicle4, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle5) < 2)
{
SetVehicleParamsForPlayer(Vehicle5, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle6) < 2)
{
SetVehicleParamsForPlayer(Vehicle6, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle7) < 2)
{
SetVehicleParamsForPlayer(Vehicle7, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle8) < 2)
{
SetVehicleParamsForPlayer(Vehicle8, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle9) < 2)
{
SetVehicleParamsForPlayer(Vehicle9, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle10) < 2)
{
SetVehicleParamsForPlayer(Vehicle10, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle11) < 2)
{
SetVehicleParamsForPlayer(Vehicle11, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle12) < 2)
{
SetVehicleParamsForPlayer(Vehicle12, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle13) < 2)
{
SetVehicleParamsForPlayer(Vehicle13, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle14) < 2)
{
SetVehicleParamsForPlayer(Vehicle14, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle15) < 2)
{
SetVehicleParamsForPlayer(Vehicle15, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle16) < 2)
{
SetVehicleParamsForPlayer(Vehicle16, playerid, 0, 0);
}
if(GetDistanceToCar(playerid,Vehicle17) < 2)
{
SetVehicleParamsForPlayer(Vehicle17, playerid, 0, 0);
}
}
return 1;
}
//Lock your car door
if (strcmp(cmdtext, "/lock", true)==0)
{
if(IsPlayerInAnyVehicle(playerid))
{
new i;
for(i=0;i<MAX_PLAYERS;i++)
{
if(i != playerid)
{
SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),i, 0, 1);
}
}
SendClientMessage(playerid,COLOR_YELLOW,"Vehicle Locked");
}
else
{
SendClientMessage(playerid,COLOR_YELLOW,"You're not in a vehicle!");
}
return 1;
}
//Unlock your car door
if (strcmp(cmdtext, "/unlock", true)==0)
{
if(IsPlayerInAnyVehicle(playerid))
{
new i;
for(i=0;i<MAX_PLAYERS;i++)
{
SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),i, 0, 0);
}
SendClientMessage(playerid,COLOR_YELLOW,"Vehicle Unlocked");
}
else
{
SendClientMessage(playerid,COLOR_YELLOW,"You're not in a vehicle!");
}
return 1;
}
if (strfind(cmdtext,"/modbilgi",true,0) == 0) {
SendClientMessage(playerid,COLOR_GREEN, "LSTDM by oTTo ver. 1 (06.07.2006).");
SendClientMessage(playerid,COLOR_GREEN, "Butun sorular icin www.senoyna.com.");
return 1;
} else if (strfind(cmdtext,"/modyardim",true,0) == 0) {
SendClientMessage(playerid,COLOR_GREEN, "Yardim: /modbilgi , /modyardim ");
SendClientMessage(playerid,COLOR_GREEN, "Yardim: /saglik (Saglinizi gosterir.), /bilgi (bilgilerinizi gosterir), /bilgi ID(Id yazdiniz kisiyi gosterir.) (suanlik calismiyor)...");
SendClientMessage(playerid,COLOR_GREEN, "Yardim: /saat (Saat'i Gosterir), /kalansure (Round zamanini gosterir), /give ID(veya nick) yazarak baska kisiye para gonderirsiniz. ");
SendClientMessage(playerid,COLOR_GREEN, "Yardim: /gangcommands yazdiginizda gang komutlarini gosterir");
return 1;
} else if (strfind(cmdtext,"/saglik",true,0) == 0) {
new Float: phealth;
GetPlayerHealth(playerid, phealth);
format(tempstring, sizeof(tempstring), "--- Sagligin %2.f hp.", phealth);
SendClientMessage(playerid, COLOR_GREEN, tempstring);
return 1;
} else if (strfind(cmdtext,"/bilgi",true,0) == 0 && strfind(cmdtext,"/bilgi ",true,0) != 0) {
format(tempstring, sizeof(tempstring), "--- Durumun: puan =%3.d, oldurdun =%3.d, oldun =%3.d, kendini oldurdun =%3.d, takim oldurdun =%3.d.", points[playerid],frags[playerid],deaths[playerid],suicides[playerid],teamkills[playerid]);
SendClientMessage(playerid, COLOR_GREEN, tempstring);
return 1;
} else if (strfind(cmdtext,"/bilgi ",true,0) == 0) {
if (strlen(cmdtext) < 7) {
SendClientMessage(playerid, COLOR_ERROR, "--- Format command: /bilgi ID(veya nick)");
return 1;
}
new targetid;
new tmp[10];
strmid(tmp,cmdtext,6,strlen(cmdtext),sizeof(tmp));
if (IsNumeric(tmp)) {
targetid=StrToInt(tmp);
} else {
targetid=GetPlayerId(tmp);
}
// if (targetid < 0 || targetid > 99) {
// SendClientMessage(playerid, COLOR_ERROR, "--- Player ID must be between 0 and 99.");
// return 1;
// }
if (!IsPlayerConnected(targetid)) {
format(tempstring, sizeof(tempstring), "--- Player #%d not connected.",targetid);
SendClientMessage(playerid, COLOR_ERROR, tempstring);
return 1;
}
new target[MAX_PLAYER_NAME];
GetPlayerName(targetid,target,MAX_PLAYER_NAME);
format(tempstring, sizeof(tempstring), "--- %s stat: puan =%3.d, oldurdun =%3.d, oldun =%3.d, kendini oldurdun =%3.d, takim oldurdun =%3.d.",target,points[targetid],frags[targetid],deaths[targetid],suicides[targetid],teamkills[targetid]);
SendClientMessage(playerid, COLOR_GREEN, tempstring);
return 1;
} else if (strfind(cmdtext,"/kordinat",true,0) == 0) {
new Float: x; new Float: y; new Float: z; new Float: z2;
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid,z2);
format(tempstring, sizeof(tempstring), "--- Pozisyonun: %f,%f,%f,%f",x,y,z,z2);
SendClientMessage(playerid, COLOR_GREEN, tempstring);
return 1;
} else if (strfind(cmdtext,"/saat",true,0) == 0 && strfind(cmdtext,"/kalansure",true,0) != 0) {
new hour,minute,second;
gettime(hour,minute,second);
format(tempstring, sizeof(tempstring), "--- Suan Saat: %d:%d:%d.",hour,minute,second);
SendClientMessage(playerid, COLOR_GREEN, tempstring);
return 1;
} else if (strfind(cmdtext,"/kalansure",true,0) == 0) {
if ((gRoundTime-(GetTickCount()-startgame))/60000 < 0) {
SendClientMessage(playerid, COLOR_GREEN, "--- Oyun Bitti.");
return 1;
}
new ttime=(gRoundTime-(GetTickCount()-startgame))/1000;
format(tempstring, sizeof(tempstring), "--- Kalan sure: %d minutes and %d seconds",ttime/60,ttime%60);
SendClientMessage(playerid, COLOR_GREEN, tempstring);
return 1;
} else if (strfind(cmdtext,"/give",true,0) == 0 && strfind(cmdtext,"/givemoney",true,0) != 0) {
// SendClientMessage(playerid, COLOR_RED, "--- transfer money closed");
// return 1;
if (strlen(cmdtext) < 8) {
SendClientMessage(playerid, COLOR_ERROR, "--- Format command: /give ID(veya nick) MONEY");
return 1;
}
// if (cmdtext[7] != ' ' && cmdtext[8] != ' ') {
// SendClientMessage(playerid, COLOR_ERROR, "--- Player ID must be between 0 and 99.");
// return 1;
// }
new name[MAX_PLAYER_NAME], target[MAX_PLAYER_NAME];
new havemoney=0, transfmoney=0, targetid=0;
targetid=0;
transfmoney=1;
new pos=-1;
new tmp[10];
for (new i=0;i<strlen(cmdtext);i++) {
if (cmdtext[i]==' ') {pos=i;}
}
if (pos<0) {
SendClientMessage(playerid, COLOR_ERROR, "--- Format command: /give ID(or nick) PARA.");
return 1;
}
strmid(tmp,cmdtext,6,pos,sizeof(tmp));
if (IsNumeric(tmp)) {
targetid=StrToInt(tmp);
} else {
targetid=GetPlayerId(tmp);
}
strmid(tmp,cmdtext,pos+1,strlen(cmdtext),sizeof(tmp));
// format(tempstring, sizeof(tempstring), "--- Money=%s.",tmp);
// SendClientMessage(playerid, COLOR_ERROR, tempstring);
if (!IsNumeric(tmp)) {
SendClientMessage(playerid, COLOR_ERROR, "--- Summ must be beetween 1 and 1.000.000.");
return 1;
}
transfmoney=StrToInt(tmp);
if (!IsPlayerConnected(targetid)) {
format(tempstring, sizeof(tempstring), "--- Player #%d oyunda deil.",targetid);
SendClientMessage(playerid, COLOR_ERROR, tempstring);
return 1;
}
if (targetid==playerid) {
SendClientMessage(playerid, COLOR_ERROR, "You can't transfer to yourself.");
return 1;
}
havemoney=GetPlayerMoney(playerid);
if (transfmoney < 1 || havemoney < 1 || havemoney < transfmoney) {
SendClientMessage(playerid, COLOR_ERROR, "--- You have not enough lack of money.");
return 1;
}
GetPlayerName(targetid,target,MAX_PLAYER_NAME);
format(tempstring, sizeof(tempstring), "--- You gave %s $%d.",target,transfmoney);
GivePlayerMoney(playerid,-transfmoney);
SendClientMessage(playerid, COLOR_GREEN, tempstring);
GetPlayerName(playerid,name,MAX_PLAYER_NAME);
format(tempstring, sizeof(tempstring), "--- %s gave you $%d.",name,transfmoney);
GivePlayerMoney(targetid,transfmoney);
SendClientMessage(targetid, COLOR_GREEN, tempstring);
} else if (strfind(cmdtext,"/saatayarla",true,0) == 0 && IsPlayerAdmin(playerid) == 1) {
if (strlen(cmdtext) < 18) {
SendClientMessage(playerid, COLOR_ERROR, "--- Format command: /saatayarla HOUR");
return 1;
}
if (strlen(cmdtext) > 19) {
SendClientMessage(playerid, COLOR_ERROR, "--- Hour must be between 0 and 24.");
return 1;
}
new tmp[10];
strmid(tmp,cmdtext,17,strlen(cmdtext),sizeof(tmp));
new hour=StrToInt(tmp);
if (hour < 0 || hour > 23) {
SendClientMessage(playerid, COLOR_ERROR, "--- Hour must be between 0 and 24.");
return 1;
}
SetWorldTime(hour);
format(tempstring, sizeof(tempstring), "The time has been changed!");
SendClientMessage(playerid, COLOR_GREEN, tempstring);
return 1;
} else if (strfind(cmdtext,"/teleport",true,0) == 0 && IsPlayerAdmin(playerid) == 1) {
new Float:ListPos[5][3] = {
{2489.3806,-1661.4866,13.3359},
{1879.5007,-1260.9143,13.3906},
{2638.6892,-1419.2049,30.2878},
{1775.6403,-1907.9654,13.3861},
{1518.6901,-1669.5471,13.5468}
};
new tmp[10];
strmid(tmp,cmdtext,10,strlen(cmdtext),sizeof(tmp));
new pos=StrToInt(tmp)-1;
if (pos < 0 || pos > sizeof(ListPos)) {
SendClientMessage(playerid, COLOR_ERROR, "--- You will be teleported in the random place.");
pos=random(sizeof(ListPos));
}
SetPlayerInterior(playerid,0);
SetPlayerPos(playerid,ListPos[pos][0],ListPos[pos][1],ListPos[pos][2]);
return 1;
// commands for help in map creating
} else if (strfind(cmdtext,"/putcar",true,0) == 0 && IsPlayerAdmin(playerid) == 1) {
new Float: x; new Float: y; new Float: z; new Float: z2;
new comment[100];
strmid(comment,cmdtext,7,strlen(cmdtext),sizeof(comment));
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid,z2);
format(tempstring, sizeof(tempstring), "--- Put car to pos: %.4f,%.4f,%.4f,%.4f",x,y,z,z2);
SendClientMessage(playerid, COLOR_COMMAND, tempstring);
if (IsPlayerInAnyVehicle(playerid)) {
SendClientMessage(playerid, COLOR_RED, "Get out of the car, asshole!");
return 1;
}
printf("AddStaticVehicle(429,%.4f,%.4f,%.4f,%.4f,58,8);//%s",x,y,z,z2,comment);
return 1;
} else if (strfind(cmdtext,"/putid",true,0) == 0 && IsPlayerAdmin(playerid) == 1) {
new Float: x; new Float: y; new Float: z;
new comment[100];
strmid(comment,cmdtext,7,strlen(cmdtext),sizeof(comment));
GetPlayerPos(playerid,x,y,z);
format(tempstring, sizeof(tempstring), "--- Put PickUp to pos: %.4f,%.4f,%.4f",x,y,z);
SendClientMessage(playerid, COLOR_COMMAND, tempstring);
printf("AddStaticPickup(370,15,%.4f,%.4f,%.4f);//%s",x,y,z,comment);
return 1;
} else if (strfind(cmdtext,"/getcarNOW",false,0) == 0 && IsPlayerAdmin(playerid) == 1) {
new Float: x; new Float: y; new Float: z;
GetPlayerPos(playerid,x,y,z);
SendClientMessage(playerid, COLOR_COMMAND, "getting byke");
AddStaticPickup(370, 15, x,y,z);
return 1;
} else if (strfind(cmdtext,"/kacis",false,0) == 0) {
// format(tempstring, sizeof(tempstring), "--- tknow=: %d, money = %d",tknow[playerid], GetPlayerMoney(playerid));
// SendClientMessageToAll(COLOR_COMMAND, tempstring);
if (tknow[playerid] == 0) {
SendClientMessage(playerid, COLOR_GREEN, "Hapsite degilsin.");
return 1;
}
if (GetPlayerMoney(playerid) < 5000) {
SendClientMessage(playerid, COLOR_GREEN, "Yeterli Paran yok.");
return 1;
}
SetPlayerInterior(playerid,0);
SetPlayerPos(playerid,1553.0318,-1675.4394,16.1953);
GivePlayerMoney(playerid,-5000);
tknow[playerid]=0;
return 1;
}else {
return 0;
}
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/quit] [name/number]");
return 1;
}
giveplayerid = strval(tmp);
if(strcmp(tmp, "create", true)==0)
gangcmd = 1;
else if(strcmp(tmp, "join", true)==0)
gangcmd = 2;
else if(strcmp(tmp, "invite", true)==0)
gangcmd = 3;
else if(strcmp(tmp, "quit", true)==0)
gangcmd = 4;
tmp = strtok(cmdtext, idx);
if(gangcmd < 4 && !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 [join] [number]");
else if(gangcmd==3)
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;
//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==2) {
gangnum = strval(tmp);
// if(playerGang[playerid]>0) {
// SendClientMessage(playerid, COLOR_RED, "You are already in a gang!");
// return 1;
// }
if(gangInfo[gangnum][0]==0) {
SendClientMessage(playerid, COLOR_RED, "No such gang exists!");
return 1;
}
if(gangInvite[playerid]!=gangnum) {
SendClientMessage(playerid, COLOR_RED, "You need to be invited to the gang to join.");
return 1;
}
// for(new i = 0; i < MAX_GANG_MEMBERS; i++) {
// if(gangMembers[gangnum][i] > 0) {
if(gangInfo[gangnum][1] < MAX_GANG_MEMBERS) {
new i = gangInfo[gangnum][1];
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==3) {
giveplayerid = strval(tmp);
if(playerGang[playerid]==0) {
SendClientMessage(playerid, COLOR_RED, "You are not in a gang!");
return 1;
}
// if(gangMembers[playerGang[playerid]][0]!=playerid) {
// SendClientMessage(playerid, COLOR_RED, "You need to be the gang leader to send an invite.");
// 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!");
//Leave Gang//
} 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;
}
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;
}
return 1;
}
//-----------------------------------------------------------------------------
public GetPlayerId(playername[])
{
for (new i = 0; i < MAX_PLAYERS; i++) {
// printf("zaproc-%s,tekyshee-%s",playername,gPlayerName[i]);
if ((IsPlayerConnected(i)) && (strcmp(playername, gPlayerName[i], false) == 0)) return i;
}
return -1;
}
//-----------------------------------------------------------------------------
public 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 RescueTK()
{
for (new i = 0; i < MAX_PLAYERS; i++) {
if (IsPlayerConnected(i) && tknow[i]== 1) {
SetPlayerInterior(i,0);
SetPlayerPos(i,1553.0318,-1675.4394,16.1953);
tknow[i]=0;
}
}
}
//------------------------------------------------------------------------------
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;
}
public 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;
}
//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);
}
format(string, sizeof(string),"You have quit the gang '%s' (id: %d)", gangNames[gangnum], gangnum);
SendClientMessage(playerid, COLOR_ORANGE, string);
playerGang[playerid]=0;
return;
}
}
} else {
SendClientMessage(playerid, COLOR_RED, "You are not in a gang.");
}
}
public OnPlayerText(playerid, text[])
{
if(text[0] == '!') {
if(playerGang[playerid] > 0) {
new gangChat[256];
new senderName[MAX_PLAYER_NAME];
new string[256];
// for(new i = 1; i < strlen(text)+1; i++)
// gangChat[i]=text[i];
strmid(gangChat,text,1,strlen(text));
GetPlayerName(playerid, senderName, sizeof(senderName));
format(string, sizeof(string),"%s: %s", senderName, gangChat);
for(new i = 0; i < gangInfo[playerGang[playerid]][1]; i++) {
SendClientMessage(gangMembers[playerGang[playerid]][i], COLOR_LIGHTBLUE, string);
}
}
}
return 1;
}
public OnPlayerInfoChange(playerid)
{
printf("OnPlayerInfoChange(%d)");
return 1;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
printf("OnPlayerEnterVehicle(%d, %d, %d)", playerid, vehicleid, ispassenger);
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
printf("OnPlayerExitVehicle(%d, %d)", playerid, vehicleid);
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
printf("OnPlayerStateChange(%d, %d, %d)", playerid, newstate, oldstate);
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
printf("OnPlayerEnterCheckpoint(%d)", playerid);
return 1;
}
public OnPlayerLeaveCheckpoint(playerid)
{
printf("OnPlayerLeaveCheckpoint(%d)", playerid);
return 1;
}