hi all.
im a beginner and i can't understand why this happen...
i connect to my server , run away , disconnect , reconnect = back to last position i was
BUT if i restart the server it wont load my last pos anymore.
Код:
#include <a_samp>
#include <YSI\y_ini>
#include <YSI\y_commands>
#include <fdialog>
#include <sscanf>
#include <inventory>
#define FDLG_NO_DISABLE_CALLBACK
#pragma tabsize 0
#define UserPath "Users/%s.ini"
native WP_Hash(buffer[],len,const str[]);
new dead[MAX_PLAYERS];
new deathskinID;
new NeedsMechanic[MAX_PLAYERS];
new Float:GetLocX, Float:GetLocY, Float:GetLocZ;
new WhoNeedsAMechanic;
new SomeOneNeedsAMechanic;
new Float:posx, Float:posy, Float:posz;
new Float:angle;
new setmissiontimer;
new boxtruck;
new playercheckpoint = 0;
new Float:loads[10][3] = {
{ 2155.1038, -2290.3298, 13.5707 },
{ 2389.9509, -2015.5701, 13.7227 },
{ 2484.8582, -2115.1455, 13.7204 },
{ 1641.7356, 1070.9087, 10.4453 },
{ 2736.1550, -1998.9930, 13.6260 },
{ 1985.9636, -1989.8496, 13.7203 },
{ 1617.3865, -1891.7042, 13.7210 },
{ 1391.9001, -1898.0645, 13.6743 },
{ 1007.8582, -1364.8033, 13.5093 },
{ 438.5351, -1294.6078, 15.3496 }
};
new Float:drops[11][3] = {
{ 2057.6660, -1636.6082, 13.7196 },
{ 2058.7354, -1694.6821, 13.7267 },
{ 2012.4716, -1737.4246, 13.7219 },
{ 1972.2361, -1727.4102, 16.1418 },
{ 1971.5975, -1658.7869, 16.1423 },
{ 1910.6210, -1117.4026, 25.9279 },
{ 2105.7471, -1242.6188, 25.1883 },
{ 2242.2573, -1237.5234, 25.1093 },
{ 2255.7549, -1280.7203, 25.4562 },
{ 2191.8838, -1465.7257, 25.7146 },
{ 2149.5251, -1454.4329, 25.4250 }
};
enum PlayerInfo
{
Pass[129],
Adminlevel,
VIPlevel,
Money,
Scores,
Kills,
Deaths,
Job,
JobLVL
}
new pInfo[MAX_PLAYERS][PlayerInfo];
enum WeaponInfo
{
Weapon1,
Weapon1a,
Weapon2,
Weapon2a,
Weapon3,
Weapon3a,
Weapon4,
Weapon4a,
Weapon5,
Weapon5a,
Weapon6,
Weapon6a,
Weapon7,
Weapon7a,
Weapon8,
Weapon8a,
Weapon9,
Weapon9a,
Weapon10,
Weapon10a,
Weapon11,
Weapon11a,
Weapon12,
Weapon12a
}
new wInfo[MAX_PLAYERS][WeaponInfo];
#define jobless 0
#define mechanic 1
#define taxi 2
#define police 3
#define mineworker 4
#define farmer 5
#define fisher 6
#define fireman 7
#define trucker 8
#define deliveryman 9
#define drugdealer 10
#define fbi 11
#define pizzaboy 12
#define soldier 13
#define hooker 14
#define hitman 15
#define jobless_skin 230
#define mechanic_skin 50
#define taxi_skin 255
#define police_skin 280
#define mineworker_skin 27
#define farmer_skin 161
#define fisher_skin 122
#define fireman_skin 279
#define trucker_skin 202
#define deliveryman_skin 170
#define drugdealer_skin 29
#define fbi_skin 286
#define pizzaboy_skin 155
#define soldier_skin 287
#define hooker_skin 152
#define hitman_skin 127
#define jobless_color 0xAFAFAFAA
#define mechanic_color 0xFFFF00AA
#define taxi_color 0xFFFFFFAA
#define police_color 0x33CCFFAA
#define mineworker_color 0x63AFF00A
#define farmer_color 0x12900BBF
#define fisher_color 0x993300AA
#define fireman_color 0x99FFFFAA
#define trucker_color 0xCCFFDD56
#define deliveryman_color 0x9955DEEE
#define drugdealer_color 0x00EEADDF
#define fbi_color 0xFF0000AA
#define pizzaboy_color 0xDDDD2357
#define soldier_color 0x99FF00AA
#define hooker_color 0xFF66FFAA
#define hitman_color 0x800080AA
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_RED 0xAA3333AA
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_PINK 0xFF66FFAA
#define COLOR_BLUE 0x0000BBAA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_DARKRED 0x660000AA
#define COLOR_ORANGE 0xFF9900AA
#define COLOR_BRIGHTRED 0xFF0000AA
#define COLOR_INDIGO 0x4B00B0AA
#define COLOR_VIOLET 0x9955DEEE
#define COLOR_LIGHTRED 0xFF99AADD
#define COLOR_SEAGREEN 0x00EEADDF
#define COLOR_GRAYWHITE 0xEEEEFFC4
#define COLOR_LIGHTNEUTRALBLUE 0xabcdef66
#define COLOR_GREENISHGOLD 0xCCFFDD56
#define COLOR_LIGHTBLUEGREEN 0x0FFDD349
#define COLOR_NEUTRALBLUE 0xABCDEF01
#define COLOR_LIGHTCYAN 0xAAFFCC33
#define COLOR_LEMON 0xDDDD2357
#define COLOR_MEDIUMBLUE 0x63AFF00A
#define COLOR_NEUTRAL 0xABCDEF97
#define COLOR_BLACK 0x00000000
#define COLOR_NEUTRALGREEN 0x81CFAB00
#define COLOR_DARKGREEN 0x12900BBF
#define COLOR_LIGHTGREEN 0x24FF0AB9
#define COLOR_DARKBLUE 0x300FFAAB
#define COLOR_BLUEGREEN 0x46BBAA00
#define COLOR_PINK 0xFF66FFAA
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_DARKRED 0x660000AA
#define COLOR_ORANGE 0xFF9900AA
#define COLOR_PURPLE 0x800080AA
#define COLOR_GRAD1 0xB4B5B7FF
#define COLOR_GRAD2 0xBFC0C2FF
#define COLOR_RED1 0xFF0000AA
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_RED 0xAA3333AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_BROWN 0x993300AA
#define COLOR_CYAN 0x99FFFFAA
#define COLOR_TAN 0xFFFFCCAA
#define COLOR_PINK 0xFF66FFAA
#define COLOR_KHAKI 0x999900AA
#define COLOR_LIME 0x99FF00AA
#define COLOR_SYSTEM 0xEFEFF7AA
#define COLOR_GRAD2 0xBFC0C2FF
#define COLOR_GRAD4 0xD8D8D8FF
#define COLOR_GRAD6 0xF0F0F0FF
#define COLOR_GRAD2 0xBFC0C2FF
#define COLOR_GRAD3 0xCBCCCEFF
#define COLOR_GRAD5 0xE3E3E3FF
#define COLOR_GRAD1 0xB4B5B7FF
main()
{
print("\n----------------------------------");
print(" My Virtual Life by Carnage");
print("----------------------------------\n");
}
public OnGameModeInit()
{
SetGameModeText(" My Virtual Life");
AddPlayerClass(135,1648.2819,-2287.9338,-1.2065,271.2087,0,0,0,0,0,0);
setmissiontimer = SetTimer("setplayerdeliverymission", 1800000, 1);
//ManualVehicleEngineAndLights();
UsePlayerPedAnims();
DisableInteriorEnterExits();
ShowPlayerMarkers(0);
//bank
CreateObject(13007, 601.20837, -1273.01379, 1036.47498, 0.00000, 0.00000, 22.06300);
CreateObject(9, 602.82184, -1273.88965, 1035.77576, 98.00000, 0.00000, 0.00000);
CreateObject(18981, 595.52753, -1265.97095, 1035.95886, 0.00000, 0.00000, 291.99405);
CreateObject(18981, 610.34747, -1268.10828, 1035.95886, 0.00000, 0.00000, 201.99240);
CreateObject(2873, 590.09583, -1268.66382, 1035.85645, 0.00000, 0.00000, 22.24190);
CreateObject(2873, 591.62732, -1268.07861, 1035.85645, 0.00000, 0.00000, 22.24190);
// mairie
CreateObject(14602, 1477.11108, -1776.49084, 1000.32800, 360.06241, 0.00000, 94.15910);
CreateObject(1522, 391.20313, 173.03125, 1007.36719, 3.14159, 0.00000, 1.57080);
CreateObject(2904, 1491.35669, -1779.52100, 996.12988, 0.00000, 0.00000, 273.35049);
CreateObject(2904, 1491.41199, -1780.39819, 996.12988, 0.00000, 0.00000, 273.35049);
CreateObject(2904, 1492.63013, -1779.41162, 996.12988, 0.00000, 0.00000, 273.35049);
CreateObject(2904, 1491.39551, -1779.66064, 998.09827, 0.00000, 0.00000, 273.35049);
CreateObject(2904, 1491.42957, -1780.36401, 998.21094, 0.00000, 0.00000, 273.35049);
CreateObject(1506, 1461.96240, -1786.82166, 994.97424, 0.00000, 0.00000, 273.73764);
CreateObject(1212, 1481.03540, -1794.27563, 995.68640, 0.00000, 0.00000, 193.10721);
CreateObject(1212, 1481.02344, -1794.13635, 995.68640, 0.00000, 0.00000, 193.10721);
CreateObject(955, 1484.21216, -1783.02417, 995.35809, 0.00000, 0.00000, 273.65170);
CreateObject(2186, 1483.63647, -1798.59741, 994.95331, 0.00000, 0.00000, 183.51447);
CreateObject(2190, 1480.03772, -1792.40747, 995.67291, 0.00000, 0.00000, 329.51569);
//jobhouse
CreateObject(14530, 913.73425, -1000.79987, 1000.15430, 360.00000, 0.00000, 360.00000);
CreateObject(1493, 914.84802, -988.82257, 998.46051, 0.00000, 0.00000, 0.00000);
CreateObject(1493, 915.73590, -988.80908, 999.51367, 0.00000, 0.00000, 0.00000);
CreateObject(1493, 912.05981, -1005.74896, 998.36517, 0.00000, 0.00000, 0.00000);
CreateObject(11334, 908.55438, -1001.99268, 999.15363, 0.00000, 0.00000, 270.13718);
CreateObject(1998, 920.79358, -1004.84924, 998.38202, 0.00000, 0.00000, 90.05277);
AddStaticVehicle(420,1672.8082,-2312.2703,-2.6718,270.7440,6,1); // public service
AddStaticVehicle(420,1655.4961,-2311.9312,-2.6764,268.8695,6,1); // public service
AddStaticVehicle(420,1646.4023,-2311.7380,-2.6896,268.9787,6,1); // public service
AddStaticVehicle(420,1673.1578,-2261.2151,-2.7480,89.3488,6,1); // public service
AddStaticVehicle(420,1656.8508,-2260.8376,-2.7219,89.7332,6,1); // public service
AddStaticVehicle(420,1648.3184,-2261.0842,-2.7156,89.3340,6,1); // public service
AddStaticVehicle(438,1098.2144,-1772.3580,13.3337,90.0917,6,1); // public service
AddStaticVehicle(438,1098.3529,-1766.4839,13.3500,89.1344,6,1); // public service
AddStaticVehicle(438,1098.2788,-1760.8821,13.3370,88.4151,6,1); // public service
AddStaticVehicle(438,1098.5709,-1754.8893,13.3402,91.0300,6,1); // public service
AddStaticVehicle(409,1081.3315,-1769.7308,13.2213,90.7347,1,1); // public service
AddStaticVehicle(409,1081.2714,-1775.5494,13.2094,89.3735,1,1); // public service
AddStaticVehicle(409,1081.1205,-1763.8744,13.2349,89.6532,1,1); // public service
AddStaticVehicle(409,1081.2311,-1757.8512,13.2478,91.1208,1,1); // public service
AddStaticVehicle(420,1062.2610,-1772.5785,13.3606,270.5717,6,76); // public service
AddStaticVehicle(420,1062.3411,-1766.7850,13.3838,269.5175,6,76); // public service
AddStaticVehicle(420,1062.3833,-1760.7294,13.4078,270.3735,6,76); // public service
AddStaticVehicle(420,1062.2695,-1754.9147,13.4367,270.7573,6,76); // public service
AddStaticVehicle(420,1062.5275,-1748.9949,13.4534,268.9571,6,76); // public service
AddStaticVehicle(420,1062.0284,-1743.1365,13.4675,269.0803,6,76); // public service
AddStaticVehicle(596,1526.4349,-1644.5522,5.6123,359.6361,0,1); // LSPD
AddStaticVehicle(596,1530.4495,-1644.2931,5.6103,0.1722,0,1); // LSPD
AddStaticVehicle(596,1534.6753,-1644.6266,5.6120,0.2711,0,1); // LSPD
AddStaticVehicle(596,1538.7284,-1644.6705,5.6110,359.4716,0,1); // LSPD
AddStaticVehicle(596,1545.2334,-1651.0472,5.6108,90.1454,0,1); // LSPD
AddStaticVehicle(596,1544.9452,-1655.1099,5.6112,89.0140,0,1); // LSPD
AddStaticVehicle(596,1544.8601,-1659.0345,5.6108,89.7770,0,1); // LSPD
AddStaticVehicle(416,1177.7241,-1338.9841,14.5632,271.0410,1,3); //
AddStaticVehicle(416,1177.5291,-1308.3597,14.5215,269.4391,1,3); //
AddStaticVehicle(416,1183.1855,-1315.3824,14.2254,180.5791,1,3); //
AddStaticVehicle(416,1182.9148,-1332.3381,14.2339,359.8133,1,3); //
AddStaticVehicle(416,1147.0635,-1311.2725,14.3262,22.3073,1,3); //
AddStaticVehicle(416,1147.3556,-1302.8877,14.3232,20.9430,1,3); //
AddStaticVehicle(416,1147.5508,-1294.8168,14.3114,24.8223,1,3); //
AddStaticVehicle(596,1535.8169,-1678.6388,13.2474,359.5273,0,1); //
AddStaticVehicle(596,1535.7959,-1672.3774,13.2477,0.2931,0,1); //
AddStaticVehicle(523,1535.9844,-1668.0298,12.9342,92.3142,0,0); //
AddStaticVehicle(523,1535.9778,-1666.4882,12.9361,95.7091,0,0); //
AddStaticVehicle(523,1536.1499,-1664.9197,12.9333,92.0067,0,0); //
AddStaticVehicle(599,1546.2585,-1605.1112,13.4782,268.4388,0,1); //
AddStaticVehicle(599,1545.6078,-1609.8575,13.4863,270.1936,0,1); //
AddStaticVehicle(599,1545.8613,-1614.4500,13.4942,268.8693,0,1); //
AddStaticVehicle(596,1585.3055,-1671.4384,5.7546,271.4629,0,1); //
AddStaticVehicle(596,1585.1298,-1667.6371,5.7665,270.9059,0,1); //
AddStaticVehicle(523,1598.7526,-1680.0782,5.4463,11.6692,0,0); //
AddStaticVehicle(523,1600.8385,-1680.0481,5.4448,4.4698,0,0); //
AddStaticVehicle(523,1604.6118,-1680.1263,5.4441,357.6356,0,0); //
AddStaticVehicle(523,1602.7939,-1680.1570,5.4475,9.2586,0,0); //
AddStaticVehicle(596,1544.9762,-1663.2732,5.7536,91.3043,0,1); //
AddStaticVehicle(596,1544.9821,-1668.0310,5.7559,88.6101,0,1); //
AddStaticVehicle(596,1545.2639,-1671.9628,5.7559,91.8751,0,1); //
AddStaticVehicle(596,1545.1987,-1676.2474,5.7530,90.0537,0,1); //
AddStaticVehicle(596,1544.9999,-1680.3530,5.7530,91.0737,0,1); //
AddStaticVehicle(596,1545.0275,-1684.3818,5.7567,90.0841,0,1); //
AddStaticVehicle(427,1587.3291,-1710.4536,6.0226,359.0903,0,1); //
AddStaticVehicle(427,1591.8236,-1710.4869,6.0225,359.7759,0,1); //
AddStaticVehicle(427,1595.4144,-1710.3766,6.0226,359.6438,0,1); //
AddStaticVehicle(427,1583.2977,-1710.5935,6.0225,0.5235,0,1); //
AddStaticVehicle(528,1578.6029,-1711.3419,5.9352,0.8549,0,0); //
AddStaticVehicle(528,1574.4458,-1711.1163,5.9355,0.3954,0,0); //
AddStaticVehicle(528,1570.5953,-1711.7333,5.9341,2.0271,0,0); //
AddStaticVehicle(601,1558.9027,-1710.9323,5.6494,358.5751,1,1); //
AddStaticVehicle(490,-2426.1167,518.5465,30.0996,221.7304,0,0); //
AddStaticVehicle(490,-2430.0183,515.2512,30.0851,219.0582,0,0); //
AddStaticVehicle(490,-2422.5618,521.9503,30.1192,224.6859,0,0); //
AddStaticVehicle(490,-2419.5437,525.4987,30.0941,231.2543,0,0); //
AddStaticVehicle(490,-2417.3589,528.9186,30.1049,239.8169,0,0); //
AddStaticVehicle(490,-2415.8279,532.4188,30.1049,245.1193,0,0); //
AddStaticVehicle(490,-2414.5645,536.0826,30.1071,258.8416,0,0); //
AddStaticVehicle(490,-2414.3057,539.7922,30.0944,268.4468,0,0); //
AddStaticVehicle(599,1601.9857,-1688.0863,5.9860,90.2888,0,1); //
AddStaticVehicle(599,1601.9268,-1683.8192,5.9887,90.3286,0,1); //
AddStaticVehicle(599,1601.9500,-1691.6957,5.9860,89.2399,0,1); //
AddStaticVehicle(599,1602.0854,-1695.9666,5.9860,90.6373,0,1); //
AddStaticVehicle(599,1601.9203,-1700.3416,5.9861,90.3301,0,1); //
AddStaticVehicle(599,1602.0798,-1704.1113,5.9861,88.6788,0,1); //
AddStaticVehicle(428,1528.7690,-1688.1602,6.0167,271.5935,4,75); //
AddStaticVehicle(428,610.2052,-1265.6277,17.3541,168.6867,4,75); //
AddStaticVehicle(428,610.2831,-1277.1282,16.5926,191.6963,4,75); //
AddStaticVehicle(428,1528.6978,-1684.1115,6.0146,271.8097,4,75); //
AddStaticVehicle(525,-2052.5952,145.1329,28.5728,179.9640,44,51); //
AddStaticVehicle(525,-2033.1168,178.7365,28.5760,271.2627,44,51); //
AddStaticVehicle(525,-2033.4717,170.3611,28.5728,269.5365,44,51); //
AddStaticVehicle(525,-2037.2981,132.2831,28.5728,271.9069,44,51); //
AddStaticVehicle(525,-2047.6234,123.7584,28.6093,187.6608,44,51); //
AddStaticVehicle(525,-2029.1941,125.5350,28.8040,358.4366,44,51); //
AddStaticVehicle(525,-2024.8368,125.2274,28.8235,4.3969,44,51); //
AddStaticVehicle(481,1672.6382,-2299.1372,-1.6864,4.0871,12,9); //
AddStaticVehicle(481,1674.9366,-2298.9041,-1.6796,7.3044,65,9); //
AddStaticVehicle(481,1677.4769,-2298.8433,-1.6774,7.2431,6,6); //
AddStaticVehicle(481,1669.9528,-2299.0474,-1.6921,2.0742,6,6); //
AddStaticVehicle(509,1669.0955,-2274.1182,-1.7403,187.9336,16,1); //
AddStaticVehicle(509,1672.2711,-2274.0771,-1.7370,182.5770,16,1); //
AddStaticVehicle(509,1675.2837,-2274.0730,-1.7345,183.3168,16,1); //
AddStaticVehicle(509,1677.2905,-2274.2354,-1.7290,183.9580,16,1); //
AddStaticVehicle(415,599.5848,-1297.0853,14.3326,190.7426,62,1); //
AddStaticVehicle(496,595.4615,-1297.7607,14.5225,192.1966,9,14); //
AddStaticVehicle(533,591.8151,-1298.9362,14.6516,192.7188,79,1); //
AddStaticVehicle(555,567.2856,-1259.2977,16.7454,199.2867,2,1); //
AddStaticVehicle(541,579.8582,-1255.9110,17.5229,193.1050,60,1); //
AddStaticVehicle(562,576.3359,-1256.7198,17.1982,191.2856,113,1); //
AddStaticVehicle(481,601.0984,-1207.1006,17.9005,238.9070,12,9); //
AddStaticVehicle(509,598.8768,-1208.3922,17.8352,233.9419,53,1); //
AddStaticVehicle(468,610.5441,-1254.1765,17.5811,227.2963,6,6); //
AddStaticVehicle(462,610.4725,-1250.3304,17.8388,229.9439,1,2); //
AddStaticVehicle(498,611.4026,-1240.1334,18.7177,190.6536,27,107); //
AddStaticVehicle(544,1763.5426,2074.1624,11.0560,180.5619,3,1); //
AddStaticVehicle(453,-2259.0251,2418.9116,-0.4114,227.2627,56,56); //
AddStaticVehicle(453,-2252.3474,2428.4434,-0.1761,225.3332,56,56); //
AddStaticVehicle(453,-2224.4941,2400.4839,-0.3262,43.7045,56,56); //
AddStaticVehicle(453,-2232.3586,2393.0305,-0.2142,44.8031,56,56); //
AddStaticVehicle(453,-2233.0339,2449.1641,-0.4721,226.8392,56,56); //
AddStaticVehicle(453,-2204.5959,2420.4124,-0.2386,44.3582,56,56); //
AddStaticVehicle(484,-2324.3311,2317.7146,0.1119,178.6092,50,32); //
AddStaticVehicle(500,-2271.5195,2336.2009,4.8054,91.1452,4,119); //
AddStaticVehicle(424,-2271.1914,2321.4243,5.0978,268.4299,1,0); //
AddStaticVehicle(458,-2252.3354,2329.8149,4.6926,90.5275,113,1); //
AddStaticVehicle(415,-2251.8567,2306.0952,4.3592,90.3521,0,1); //
AddStaticVehicle(439,-2271.4246,2300.2852,4.7179,89.2820,25,78); //
AddStaticVehicle(402,-2271.9141,2285.5745,4.6054,269.9929,90,90); //
AddStaticVehicle(522,-2251.9753,2287.9001,4.4108,87.4224,39,106); //
AddStaticVehicle(522,-2558.8059,2261.7969,4.6372,331.7849,39,106); //
AddStaticVehicle(416,1588.3193,1728.3514,11.4755,178.9695,1,3); //
AddStaticVehicle(416,1582.3787,1745.7590,11.4774,90.4406,1,3); //
AddStaticVehicle(416,1574.2888,1774.2252,11.3566,1.2123,1,3); //
AddStaticVehicle(416,1574.4956,1765.9437,11.4264,1.8282,1,3); //
AddStaticVehicle(416,1574.7256,1755.2476,11.4228,1.3983,1,3); //
AddStaticVehicle(416,1608.0603,1822.9490,11.4734,272.0786,1,3); //
AddStaticVehicle(598,2298.5308,2464.1934,3.0217,269.0381,0,1); //
AddStaticVehicle(598,2298.4927,2460.3726,3.0191,271.0012,0,1); //
AddStaticVehicle(598,2298.4880,2455.9810,3.0190,270.5458,0,1); //
AddStaticVehicle(598,2298.6482,2451.6934,3.0190,271.8889,0,1); //
AddStaticVehicle(598,2314.4739,2460.7122,3.0197,89.9595,0,1); //
AddStaticVehicle(598,2314.4539,2465.2666,3.0183,88.5278,0,1); //
AddStaticVehicle(598,2314.7798,2470.6428,3.0200,89.6307,0,1); //
AddStaticVehicle(598,2314.0654,2475.0664,3.0186,89.5640,0,1); //
AddStaticVehicle(598,2314.8130,2480.0654,3.0208,87.8901,0,1); //
AddStaticVehicle(598,2313.9231,2485.3972,3.0186,89.7121,0,1); //
AddStaticVehicle(598,2314.3198,2490.4451,3.0209,91.3779,0,1); //
AddStaticVehicle(598,2314.4292,2495.3833,3.0194,90.1429,0,1); //
AddStaticVehicle(598,2313.6028,2500.4492,3.0173,91.0990,0,1); //
AddStaticVehicle(599,2285.4968,2474.6523,3.3689,179.5903,0,1); //
AddStaticVehicle(599,2281.0986,2474.9023,3.3689,179.5616,0,1); //
AddStaticVehicle(599,2276.9160,2474.1199,3.3689,180.1882,0,1); //
AddStaticVehicle(599,2272.6172,2474.5564,3.3688,180.2697,0,1); //
AddStaticVehicle(599,2268.3550,2475.0193,3.3689,180.8428,0,1); //
AddStaticVehicle(599,2263.5366,2474.8140,3.3689,178.8857,0,1); //
AddStaticVehicle(599,2276.8733,2431.5015,3.3689,1.6458,0,1); //
AddStaticVehicle(599,2272.6809,2431.3059,3.3688,1.3495,0,1); //
AddStaticVehicle(599,2268.3992,2431.2217,3.3689,0.1979,0,1); //
AddStaticVehicle(599,2264.0759,2431.0347,3.3689,359.5327,0,1); //
AddStaticVehicle(599,2259.9880,2431.5996,3.3689,359.7192,0,1); //
AddStaticVehicle(599,2255.2231,2430.9172,3.3689,358.1080,0,1); //
AddStaticVehicle(599,2250.8916,2431.8101,3.3687,354.9199,0,1); //
AddStaticVehicle(599,2246.5508,2431.2551,3.3685,359.7805,0,1); //
AddStaticVehicle(598,2285.9429,2431.8945,3.0190,359.3139,0,1); //
AddStaticVehicle(598,2290.1826,2432.1414,3.0221,358.2462,0,1); //
AddStaticVehicle(598,2294.7410,2431.7671,3.0209,0.5541,0,1); //
AddStaticVehicle(598,2299.3198,2431.2100,3.0204,0.4703,0,1); //
AddStaticVehicle(598,2303.7988,2431.2419,3.0207,0.8991,0,1); //
AddStaticVehicle(598,2307.6880,2431.2646,3.0208,358.0395,0,1); //
AddStaticVehicle(598,2312.1375,2431.6460,3.0206,2.0598,0,1); //
AddStaticVehicle(598,2316.9751,2431.6794,3.0169,359.7454,0,1); //
AddStaticVehicle(598,2314.0830,2455.5806,3.0192,91.2546,0,1); //
AddStaticVehicle(528,2239.8308,2475.6743,3.3149,270.7931,0,0); //
AddStaticVehicle(528,2240.7656,2471.1287,3.3170,269.9293,0,0); //
AddStaticVehicle(528,2240.3938,2466.2258,3.3170,272.3971,0,0); //
AddStaticVehicle(528,2240.5310,2461.6697,3.3171,269.7192,0,0); //
AddStaticVehicle(427,2239.8721,2456.6333,3.4063,269.7820,0,1); //
AddStaticVehicle(427,2240.3267,2452.2615,3.4054,268.4214,0,1); //
AddStaticVehicle(427,2239.9243,2447.4590,3.4060,270.7573,0,1); //
AddStaticVehicle(427,2240.0229,2442.3623,3.4052,271.7242,0,1); //
AddStaticVehicle(427,2239.9895,2437.3987,3.4052,270.6766,0,1); //
AddStaticVehicle(427,2281.9705,2477.5073,10.9525,180.9474,0,1); //
AddStaticVehicle(427,2273.6052,2477.3193,10.9517,178.9903,0,1); //
AddStaticVehicle(427,2260.6956,2477.5042,10.9533,179.3845,0,1); //
AddStaticVehicle(427,2251.9163,2477.5374,10.9529,182.4645,0,1); //
AddStaticVehicle(598,2282.3262,2443.9800,10.5681,178.7565,0,1); //
AddStaticVehicle(598,2273.6392,2442.9993,10.5650,2.0225,0,1); //
AddStaticVehicle(598,2260.4531,2443.0156,10.5678,180.7990,0,1); //
AddStaticVehicle(598,2251.8972,2442.7192,10.5654,179.3014,0,1); //
AddStaticVehicle(598,2255.7834,2460.3694,10.5658,358.8562,0,1); //
AddStaticVehicle(598,2268.8347,2459.7290,10.5665,179.9528,0,1); //
AddStaticVehicle(599,2282.2542,2460.7405,10.9158,359.8072,0,1); //
AddStaticVehicle(599,2291.1206,2476.2092,10.9152,180.5255,0,1); //
AddStaticVehicle(599,2290.7673,2442.5842,10.9157,359.9638,0,1); //
AddStaticVehicle(523,2313.7390,2500.2717,-7.8917,267.6190,0,0); //
AddStaticVehicle(523,2314.6809,2494.9006,-7.8901,269.5539,0,0); //
AddStaticVehicle(523,2313.4163,2490.1499,-7.8950,270.1061,0,0); //
AddStaticVehicle(523,2313.6216,2485.3127,-7.8952,86.5972,0,0); //
AddStaticVehicle(523,2314.5786,2480.0190,-7.8907,90.4751,0,0); //
AddStaticVehicle(523,2314.3757,2474.7922,-7.8905,98.3634,0,0); //
AddStaticVehicle(523,2313.6875,2470.4255,-7.8903,89.1098,0,0); //
AddStaticVehicle(523,2314.4863,2465.1055,-7.8895,88.9713,0,0); //
AddStaticVehicle(523,2314.3262,2460.5896,-7.8836,264.1569,0,0); //
AddStaticVehicle(523,2314.3030,2455.2629,-7.8895,275.3852,0,0); //
AddStaticVehicle(601,2298.1030,2460.3982,-7.6943,269.7861,1,1); //
AddStaticVehicle(601,2298.7815,2451.4221,-7.6943,272.1534,1,1); //
AddStaticVehicle(403,-1703.1677,-78.8419,4.1723,44.8624,25,1); //
AddStaticVehicle(407,-1257.8569,66.9267,14.3835,46.0348,3,1); //
AddStaticVehicle(407,-1261.0293,62.7058,14.3836,44.9379,3,1); //
AddStaticVehicle(407,-2051.7395,92.2747,28.6188,89.7086,3,1); //
AddStaticVehicle(407,-2051.8137,75.1745,28.6244,90.4019,3,1); //
AddStaticVehicle(407,-2052.2732,84.4464,28.6316,91.4450,3,1); //
AddStaticVehicle(407,1769.6926,2076.4104,11.0581,180.8321,3,1); //
AddStaticVehicle(544,1763.5426,2074.1624,11.0560,180.5619,3,1); //
AddStaticVehicle(407,1751.2198,2076.5979,11.0546,182.0471,3,1); //
AddStaticVehicle(407,-2021.9722,75.1417,28.3434,270.7473,3,1); //
AddStaticVehicle(407,-2021.3990,93.1270,28.2654,270.8457,3,1); //
AddStaticVehicle(544,-2019.1958,83.8320,28.0921,270.3031,3,1); //
return 1;
}
public OnGameModeExit()
{
KillTimer(setmissiontimer);
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 1648.0865,-2287.7813,-1.2066);
SetPlayerCameraPos(playerid, 1659.9435,-2286.9714,-1.2138);
SetPlayerCameraLookAt(playerid, 1648.0865,-2287.7813,-1.2066);
return 1;
}
public OnPlayerConnect(playerid)
{
dead[playerid] = 0;
new name[MAX_PLAYER_NAME]; //Making a new variable called 'name'. name[MAX_PLAYER_NAME] is created so we can use it to get player's name.
GetPlayerName(playerid,name,sizeof(name)); //Get player's name
if(fexist(Path(playerid))) /* Check if the connected user is registered or not. fexist stands for file exist. So if file exist in the files(Path(playerid)),*/
{// then
INI_ParseFile(Path(playerid),"loadaccount_%s", .bExtra = true, .extra = playerid); //Will load user's data using INI_Parsefile.
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Login","Welcome back. This account is registered. \nInsert your password to login to your account","Login","Quit");/*A dialog with input style will appear so you can insert your password to login.*/
}
else //If the connected user is not registered,
{//then we will 'force' him to register :)
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Register","Welcome! This account is not registered.\nEnter your own password to create a new account.","Register","Quit");
return 1;
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
GetPlayerPos(playerid, posx, posy, posz);
GetPlayerFacingAngle(playerid, angle);
GetPlayerWeaponData(playerid, 1, wInfo[playerid][Weapon1], wInfo[playerid][Weapon1a]);
GetPlayerWeaponData(playerid, 2, wInfo[playerid][Weapon2], wInfo[playerid][Weapon2a]);
GetPlayerWeaponData(playerid, 3, wInfo[playerid][Weapon3], wInfo[playerid][Weapon3a]);
GetPlayerWeaponData(playerid, 4, wInfo[playerid][Weapon4], wInfo[playerid][Weapon4a]);
GetPlayerWeaponData(playerid, 5, wInfo[playerid][Weapon5], wInfo[playerid][Weapon5a]);
GetPlayerWeaponData(playerid, 6, wInfo[playerid][Weapon6], wInfo[playerid][Weapon6a]);
GetPlayerWeaponData(playerid, 7, wInfo[playerid][Weapon7], wInfo[playerid][Weapon7a]);
GetPlayerWeaponData(playerid, 8, wInfo[playerid][Weapon8], wInfo[playerid][Weapon8a]);
GetPlayerWeaponData(playerid, 9, wInfo[playerid][Weapon9], wInfo[playerid][Weapon9a]);
GetPlayerWeaponData(playerid, 10, wInfo[playerid][Weapon10], wInfo[playerid][Weapon10a]);
GetPlayerWeaponData(playerid, 11, wInfo[playerid][Weapon11], wInfo[playerid][Weapon11a]);
GetPlayerWeaponData(playerid, 12, wInfo[playerid][Weapon12], wInfo[playerid][Weapon12a]);
//Same as OnDialogResponse, we will save their stats inside of their user's account
new INI:file = INI_Open(Path(playerid)); //will open their file
INI_SetTag(file,"Player's Data");//We will set a tag inside of user's account called "Player's Data"
INI_WriteInt(file,"AdminLevel",pInfo[playerid][Adminlevel]); //If you've set his/her admin level, then his/her admin level will be saved inside of his/her account
INI_WriteInt(file,"VIPLevel",pInfo[playerid][VIPlevel]);//As explained above
INI_WriteInt(file,"Money",GetPlayerMoney(playerid));//We will save his money inside of his account
INI_WriteInt(file,"Scores",GetPlayerScore(playerid));//We will save his score inside of his account
INI_WriteInt(file,"Kills",pInfo[playerid][Kills]);//As explained above
INI_WriteInt(file,"Deaths",pInfo[playerid][Deaths]);//As explained above
INI_WriteInt(file, "JobID", pInfo[playerid][Job]);
INI_WriteInt(file, "JobLVL", pInfo[playerid][JobLVL]);
INI_WriteInt(file,"Weapon1",wInfo[playerid][Weapon1]);
INI_WriteInt(file,"Weapon1a",wInfo[playerid][Weapon1a]);
INI_WriteInt(file,"Weapon2",wInfo[playerid][Weapon2]);
INI_WriteInt(file,"Weapon2a",wInfo[playerid][Weapon2a]);
INI_WriteInt(file,"Weapon3",wInfo[playerid][Weapon3]);
INI_WriteInt(file,"Weapon3a",wInfo[playerid][Weapon3a]);
INI_WriteInt(file,"Weapon4",wInfo[playerid][Weapon4]);
INI_WriteInt(file,"Weapon4a",wInfo[playerid][Weapon4a]);
INI_WriteInt(file,"Weapon5",wInfo[playerid][Weapon5]);
INI_WriteInt(file,"Weapon5a",wInfo[playerid][Weapon5a]);
INI_WriteInt(file,"Weapon6",wInfo[playerid][Weapon6]);
INI_WriteInt(file,"Weapon6a",wInfo[playerid][Weapon6a]);
INI_WriteInt(file,"Weapon7",wInfo[playerid][Weapon7]);
INI_WriteInt(file,"Weapon7a",wInfo[playerid][Weapon7a]);
INI_WriteInt(file,"Weapon8",wInfo[playerid][Weapon8]);
INI_WriteInt(file,"Weapon8a",wInfo[playerid][Weapon8a]);
INI_WriteInt(file,"Weapon9",wInfo[playerid][Weapon9]);
INI_WriteInt(file,"Weapon9a",wInfo[playerid][Weapon9a]);
INI_WriteInt(file,"Weapon10",wInfo[playerid][Weapon10]);
INI_WriteInt(file,"Weapon10a",wInfo[playerid][Weapon10a]);
INI_WriteInt(file,"Weapon11",wInfo[playerid][Weapon11]);
INI_WriteInt(file,"Weapon11a",wInfo[playerid][Weapon11a]);
INI_WriteInt(file,"Weapon12",wInfo[playerid][Weapon12]);
INI_WriteInt(file,"Weapon12a",wInfo[playerid][Weapon12a]);
INI_WriteFloat(file, "posX", posx);
INI_WriteFloat(file, "posY", posy);
INI_WriteFloat(file, "posZ", posz);
INI_WriteFloat(file, "angle", angle);
INI_Close(file);//Now after we've done saving their data, we now need to close the file
return 1;
}
public OnPlayerSpawn( playerid )
{
GivePlayerMoney(playerid, pInfo[playerid][Money]);
GivePlayerWeapon(playerid, wInfo[playerid][Weapon1], wInfo[playerid][Weapon1a]);
GivePlayerWeapon(playerid, wInfo[playerid][Weapon2], wInfo[playerid][Weapon2a]);
GivePlayerWeapon(playerid, wInfo[playerid][Weapon3], wInfo[playerid][Weapon3a]);
GivePlayerWeapon(playerid, wInfo[playerid][Weapon4], wInfo[playerid][Weapon4a]);
GivePlayerWeapon(playerid, wInfo[playerid][Weapon5], wInfo[playerid][Weapon5a]);
GivePlayerWeapon(playerid, wInfo[playerid][Weapon6], wInfo[playerid][Weapon6a]);
GivePlayerWeapon(playerid, wInfo[playerid][Weapon7], wInfo[playerid][Weapon7a]);
GivePlayerWeapon(playerid, wInfo[playerid][Weapon8], wInfo[playerid][Weapon8a]);
GivePlayerWeapon(playerid, wInfo[playerid][Weapon9], wInfo[playerid][Weapon9a]);
GivePlayerWeapon(playerid, wInfo[playerid][Weapon10], wInfo[playerid][Weapon10a]);
GivePlayerWeapon(playerid, wInfo[playerid][Weapon11], wInfo[playerid][Weapon11a]);
GivePlayerWeapon(playerid, wInfo[playerid][Weapon12], wInfo[playerid][Weapon12a]);
if (pInfo[playerid][Job] == 0) //jobless
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 230);
SetPlayerColor(playerid, COLOR_GREY);
}
else if (pInfo[playerid][Job] == 1)//mechanic
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 50);
SetPlayerColor(playerid, COLOR_YELLOW);
}
else if (pInfo[playerid][Job] == 2)//taxi
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 255);
SetPlayerColor(playerid, COLOR_WHITE);
}
else if (pInfo[playerid][Job] == 3)//police
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid, COLOR_LIGHTBLUE);
}
else if (pInfo[playerid][Job] == 4)//mineworker
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 27);
}
else if (pInfo[playerid][Job] == 5)//farmer
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 161);
SetPlayerColor(playerid, COLOR_DARKGREEN);
}
else if (pInfo[playerid][Job] == 6)//fisher
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 122);
SetPlayerColor(playerid, COLOR_BROWN);
}
else if (pInfo[playerid][Job] == 7)//fireman
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 279);
SetPlayerColor(playerid, COLOR_CYAN);
}
else if (pInfo[playerid][Job] == 8)//trucker
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 202);
SetPlayerColor(playerid, COLOR_GREENISHGOLD);
}
else if (pInfo[playerid][Job] == 9)//delivery man
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 170);
SetPlayerColor(playerid, COLOR_VIOLET);
}
else if (pInfo[playerid][Job] == 10)//drug dealer
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 29);
SetPlayerColor(playerid, COLOR_SEAGREEN);
}
else if (pInfo[playerid][Job] == 11)// fbi
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 286);
SetPlayerColor(playerid, COLOR_BRIGHTRED);
}
else if (pInfo[playerid][Job] == 12)//pizza boy
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 155);
SetPlayerColor(playerid, COLOR_LEMON);
}
else if (pInfo[playerid][Job] == 13)//soldier
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 287);
SetPlayerColor(playerid, COLOR_LIME);
}
else if (pInfo[playerid][Job] == 14)//hooker
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 152);
SetPlayerColor(playerid, COLOR_PINK);
}
else if (pInfo[playerid][Job] == 15)//hitman
{
SetPlayerPos(playerid, 1648.2819, -2287.9338, -1.2065);
SetPlayerFacingAngle(playerid, 271.2087);
SetPlayerSkin(playerid, 127);
SetPlayerColor(playerid, COLOR_PURPLE);
}
if(dead[playerid] == 1)
{
respawned(playerid);
SetPlayerSkin(playerid, deathskinID);
}
if ( posx != 0 && posy != 0 && posz != 0 )
{
SetPlayerPos(playerid , posx, posy, posz);
SetPlayerFacingAngle(playerid, angle);
}
return ( 1 );
}
public OnPlayerDeath(playerid, killerid, reason)
{
deathskinID = GetPlayerSkin(playerid);
if(killerid != INVALID_PLAYER_ID)
{
deathskinID = GetPlayerSkin(playerid);
pInfo[killerid][Kills]++;
pInfo[playerid][Deaths]++;
}
else
{
deathskinID = GetPlayerSkin(playerid);
GivePlayerMoney(playerid, -100);
SendClientMessage(playerid, -1, "You have been hospitalized and hospital fee cost $100");
dead[playerid] = 1;
pInfo[killerid][Kills]++;
pInfo[playerid][Deaths]++;
}
return 1;
}
public OnVehicleSpawn(vehicleid)
{
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}
public OnPlayerText(playerid, text[])
{
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/mycommand", cmdtext, true, 10) == 0)
{
// Do something here
return 1;
}
if (strcmp("/weapon", cmdtext, true, 10) == 0)
{
GivePlayerWeapon(playerid, 24, 5);
GivePlayerWeapon(playerid, 31, 5);
GivePlayerWeapon(playerid, 33, 5);
return 1;
}
if (strcmp("/money", cmdtext, true, 10) == 0)
{
GivePlayerMoney(playerid, 1000);
return 1;
}
return 0;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
new vehicleid;
vehicleid = GetPlayerVehicleID(playerid);
if(newstate == PLAYER_STATE_DRIVER)
{
if(GetVehicleModel(vehicleid) != 403 || GetVehicleModel(vehicleid) != 514 || GetVehicleModel(vehicleid) != 515) // 411 is the infernus model
{
if (pInfo[playerid][Job] != 8)
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, COLOR_RED, "Vous ne pouvez pas conduire ce vehicule !");
}
}
}
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
new thevehicleid;
thevehicleid = GetPlayerVehicleID(playerid);
if(playercheckpoint == 1)
{
PutPlayerInVehicle(playerid, boxtruck, 0);
DisablePlayerCheckpoint(playerid);
new rand = random(sizeof(loads));
SetPlayerCheckpoint(playerid, loads[rand][0], loads[rand][1], loads[rand][2], 2.0);
playercheckpoint = 2;
SendClientMessage(playerid, COLOR_WHITE, "Go load the goods");
}
else if(playercheckpoint == 2)
{
if(GetVehicleModel(thevehicleid) == 414)
{
PutPlayerInVehicle(playerid, boxtruck, 0);
DisablePlayerCheckpoint(playerid);
new rand = random(sizeof(drops));
SetPlayerCheckpoint(playerid, drops[rand][0], drops[rand][1], drops[rand][2], 2.0);
playercheckpoint = 3;
SendClientMessage(playerid, COLOR_WHITE, "Go load the goods");
}
}
else if(playercheckpoint == 3)
{
if(GetVehicleModel(thevehicleid) == 414)
{
DisablePlayerCheckpoint(playerid);
RemovePlayerFromVehicle(playerid);
DestroyVehicle(boxtruck);
GivePlayerMoney(playerid, 250);
SendClientMessage(playerid, COLOR_WHITE, "Mission succesfull");
playercheckpoint = 0;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Mission failed");
playercheckpoint = 0;
DisablePlayerCheckpoint(playerid);
RemovePlayerFromVehicle(playerid);
DestroyVehicle(boxtruck);
}
}
return 1;
}
public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}
public OnRconCommand(cmd[])
{
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
return 1;
}
public OnObjectMoved(objectid)
{
return 1;
}
public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
return 1;
}
public OnVehicleMod(playerid, vehicleid, componentid)
{
return 1;
}
public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
return 1;
}
public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
return 1;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}
public OnPlayerExitedMenu(playerid)
{
return 1;
}
public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
return 1;
}
public OnRconLoginAttempt(ip[], password[], success)
{
return 1;
}
public OnPlayerUpdate(playerid)
{
return 1;
}
public OnPlayerStreamIn(playerid, forplayerid)
{
return 1;
}
public OnPlayerStreamOut(playerid, forplayerid)
{
return 1;
}
public OnVehicleStreamIn(vehicleid, forplayerid)
{
return 1;
}
public OnVehicleStreamOut(vehicleid, forplayerid)
{
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
InventoryOnDialogResponse(playerid, dialogid, response, inputtext);
return 1;
}
fDialog(1)
{
if(!response) return Kick(playerid); //If they clicked the second button "Quit", we will kick them.
if(response) //if they clicked the first button "Register"
{//then
if(!strlen(inputtext)) //If they didn't enter any password
{// then we will tell to them to enter the password to register
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Register","Welcome! This account is not registered.\nEnter your own password to create a new account.\nPlease enter the password!","Register","Quit");
return 1;
}
//If they have entered a correct password for his/her account...
new hashpass[129]; //Now we will create a new variable to hash his/her password
WP_Hash(hashpass,sizeof(hashpass),inputtext);//We will use whirlpool to hash their inputted text
new INI:file = INI_Open(Path(playerid)); // we will open a new file for them to save their account inside of Scriptfiles/Users folder
INI_SetTag(file,"Player's Data");//We will set a tag inside of user's account called "Player's Data"
INI_WriteString(file,"Password",hashpass);//This will write a hashed password into user's account
INI_WriteInt(file,"AdminLevel",0); //Write an integer inside of user's account called "AdminLevel". We will set his level to 0 after he registered.
INI_WriteInt(file,"VIPLevel",0);//As explained above
INI_WriteInt(file,"Money",0);//Write an integer inside of user's account called "Money". We will set their money to 0 after he registered
INI_WriteInt(file,"Scores",0);//Write an integer inside of user's account called "Scores". We will set their score to 0 after he registered
INI_WriteInt(file,"Kills",0);//As explained above
INI_WriteInt(file,"Deaths",0);//As explained above
INI_WriteInt(file,"JobID",0);
INI_WriteInt(file,"JobLVL",0);
INI_WriteInt(file,"Weapon1",0);//As explained above
INI_WriteInt(file,"Weapon1a",0);//As explained above
INI_WriteInt(file,"Weapon2",0);//As explained above
INI_WriteInt(file,"Weapon2a",0);//As explained above
INI_WriteInt(file,"Weapon3",0);//As explained above
INI_WriteInt(file,"Weapon3a",0);//As explained above
INI_WriteInt(file,"Weapon4",0);//As explained above
INI_WriteInt(file,"Weapon4a",0);//As explained above
INI_WriteInt(file,"Weapon5",0);//As explained above
INI_WriteInt(file,"Weapon5a",0);//As explained above
INI_WriteInt(file,"Weapon6",0);//As explained above
INI_WriteInt(file,"Weapon6a",0);//As explained above
INI_WriteInt(file,"Weapon7",0);//As explained above
INI_WriteInt(file,"Weapon7a",0);//As explained above
INI_WriteInt(file,"Weapon8",0);//As explained above
INI_WriteInt(file,"Weapon8a",0);//As explained above
INI_WriteInt(file,"Weapon9",0);//As explained above
INI_WriteInt(file,"Weapon9a",0);//As explained above
INI_WriteInt(file,"Weapon10",0);//As explained above
INI_WriteInt(file,"Weapon10a",0);//As explained above
INI_WriteInt(file,"Weapon11",0);//As explained above
INI_WriteInt(file,"Weapon11a",0);//As explained above
INI_WriteInt(file,"Weapon12",0);//As explained above
INI_WriteInt(file,"Weapon12a",0);//As explained above
INI_Close(file);//Now after we've done saving their data, we now need to close the file
SendClientMessage(playerid,-1,"You have been successfully registered");//Tell to them that they have successfully registered a new account
return 1;
}
return 1;
}
fDialog(2)
{
if(!response) return Kick(playerid); //If they clicked the second button "Quit", we will kick them.
if(response) //if they clicked the first button "Register"
{//then
new hashpass[129]; //Will create a new variable to hash his/her password
WP_Hash(hashpass,sizeof(hashpass),inputtext); //Will hash inputted password
if(!strcmp(hashpass,pInfo[playerid][Pass])) //If they have insert their correct password
{//then
INI_ParseFile(Path(playerid),"loadaccount_%s",.bExtra = true, .extra = playerid);//We will load his account's data from user's path
SetPlayerScore(playerid,pInfo[playerid][Scores]);//We will get their score inside of his user's account and we will set it here
GivePlayerMoney(playerid,pInfo[playerid][Money]);//As explained above
SendClientMessage(playerid,-1,"Welcome back! You have successfully logged in");//Tell them that they've successfully logged in
}
else //If they've entered an incorrect password
{//then
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Login","Welcome back. This account is registered. \nInsert your password to login to your account.\nIncorrect password!","Login","Quit");//We will tell to them that they've entered an incorrect password
return 1;
}
}
return 1;
}
fDialog(3)
{
if(response)
{
switch(listitem)// Checking which listitem was selected
{
case 0://mecanicien
{
SetPlayerSkin(playerid, 50);
SetPlayerColor(playerid, COLOR_YELLOW);
}
case 1://taxi
{
SetPlayerSkin(playerid, 255);
SetPlayerColor(playerid, COLOR_WHITE);
}
case 2://policier
{
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid, COLOR_LIGHTBLUE);
}
case 3://policier
{
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid, COLOR_LIGHTBLUE);
}
case 4://policier
{
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid, COLOR_LIGHTBLUE);
}
case 5://policier
{
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid, COLOR_LIGHTBLUE);
}
case 6://policier
{
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid, COLOR_LIGHTBLUE);
}
case 7://policier
{
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid, COLOR_LIGHTBLUE);
}
case 8://policier
{
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid, COLOR_LIGHTBLUE);
}
case 9://policier
{
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid, COLOR_LIGHTBLUE);
}
case 10://policier
{
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid, COLOR_LIGHTBLUE);
}
case 11://policier
{
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid, COLOR_LIGHTBLUE);
}
case 12://policier
{
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid, COLOR_LIGHTBLUE);
}
case 13://policier
{
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid, COLOR_LIGHTBLUE);
}
}
}
return 1;
}
fDialog(4)
{
if(response)
{
if(listitem == 0)
{
new Float:X, Float:Y, Float:Z ;//Float:Distance = 10.0; // This means the distance that the player would be able to hear music
GetPlayerPos(playerid, X, Y, Z);
PlayAudioStreamForPlayer(playerid, "http://yp.shoutcast.com/sbin/tunein-station.pls?id=133521"); // Here, you can add any stream URL you'd like,
SendClientMessage(playerid, COLOR_WHITE, "Music started!");
return 1;
}
if(listitem == 1)
{
new Float:X, Float:Y, Float:Z ;//Float:Distance = 10.0; // This means the distance that the player would be able to hear music
GetPlayerPos(playerid, X, Y, Z);
PlayAudioStreamForPlayer(playerid, "http://www.streamingthe.net/fr/CKOI-96.9-FM-Montreal/p/18843&player=1#.UZ2Lp5y2R1c"); // Here, you can add any stream URL you'd like,
SendClientMessage(playerid, COLOR_WHITE, "Music started!");
StopAudioStreamForPlayer(playerid);
return 1;
}
if(listitem == 2)
{
new Float:X, Float:Y, Float:Z ;//Float:Distance = 10.0; // This means the distance that the player would be able to hear music
GetPlayerPos(playerid, X, Y, Z);
PlayAudioStreamForPlayer(playerid, "http://chik.player.amri.ca/"); // Here, you can add any stream URL you'd like,
SendClientMessage(playerid, COLOR_WHITE, "Music started!");
StopAudioStreamForPlayer(playerid);
return 1;
}
if(listitem == 3)
{
StopAudioStreamForPlayer(playerid);
return 1;
}
}
return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}
stock Path(playerid) //Will create a new stock so we can easily use it later to load/save user's data in user's path
{
new str[128],name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(str,sizeof(str),UserPath,name);
return str;
}
forward loadaccount_user(playerid, name[], value[]);
public loadaccount_user(playerid, name[], value[])
{
INI_String("Password", pInfo[playerid][Pass],129); /*we will use INI_String to load user's password.
("Password",.. will load user's password inside of user's path. 'pInfo[playerid][Pass]',...We have defined our user's variable above called, pInfo. Now it's time to use it here to load user's password. '129',... 129 is a length of a hashed user's password. Whirlpool will hash 128 characters + NULL*/
INI_Int("AdminLevel",pInfo[playerid][Adminlevel]);/*We will use INI_Int to load user's admin level. INI_Int stands for INI_Integer. This load an admin level. */
INI_Int("VIPLevel",pInfo[playerid][VIPlevel]);//As explained above
INI_Int("Money",pInfo[playerid][Money]); //As explained above
INI_Int("Scores",pInfo[playerid][Scores]);//As explained above
INI_Int("Kills",pInfo[playerid][Kills]);//As explained above
INI_Int("Deaths",pInfo[playerid][Deaths]);//As explained above
INI_Int("JobID",pInfo[playerid][Job]);
INI_Int("JobLVL",pInfo[playerid][JobLVL]);
INI_Int("Weapon1",wInfo[playerid][Weapon1]);
INI_Int("Weapon1a",wInfo[playerid][Weapon1a]);
INI_Int("Weapon2",wInfo[playerid][Weapon2]);
INI_Int("Weapon2a",wInfo[playerid][Weapon2a]);
INI_Int("Weapon3",wInfo[playerid][Weapon3]);
INI_Int("Weapon3a",wInfo[playerid][Weapon3a]);
INI_Int("Weapon4",wInfo[playerid][Weapon4]);
INI_Int("Weapon4a",wInfo[playerid][Weapon4a]);
INI_Int("Weapon5",wInfo[playerid][Weapon5]);
INI_Int("Weapon5a",wInfo[playerid][Weapon5a]);
INI_Int("Weapon6",wInfo[playerid][Weapon6]);
INI_Int("Weapon6a",wInfo[playerid][Weapon6a]);
INI_Int("Weapon7",wInfo[playerid][Weapon7]);
INI_Int("Weapon7a",wInfo[playerid][Weapon7a]);
INI_Int("Weapon8",wInfo[playerid][Weapon8]);
INI_Int("Weapon8a",wInfo[playerid][Weapon8a]);
INI_Int("Weapon9",wInfo[playerid][Weapon9]);
INI_Int("Weapon9a",wInfo[playerid][Weapon9a]);
INI_Int("Weapon10",wInfo[playerid][Weapon10]);
INI_Int("Weapon10a",wInfo[playerid][Weapon10a]);
INI_Int("Weapon11",wInfo[playerid][Weapon11]);
INI_Int("Weapon11a",wInfo[playerid][Weapon11a]);
INI_Int("Weapon12",wInfo[playerid][Weapon12]);
INI_Int("Weapon12a",wInfo[playerid][Weapon12a]);
return 1;
}
forward respawned(playerid); //anywhere
public respawned(playerid) //anywhere
{
SetPlayerPos(playerid, 1173.0612, -1323.1986, 15.3969);
SetPlayerFacingAngle(playerid, 268.7180);
SetPlayerSkin(playerid, deathskinID);
SetPlayerSkin(playerid, deathskinID);
dead[playerid] = 0;
return 1;
}
CMD:enter(playerid,params[])
{
// SA bank
if(IsPlayerInRangeOfPoint(playerid, 5.0, 594.4772,-1249.1016,18.2201))
{
SetPlayerPos(playerid, 591.7039,-1269.4248,1035.6932);
SetPlayerInterior(playerid, 0);
}
// mairie
if(IsPlayerInRangeOfPoint(playerid, 5.0, 1481.1119,-1771.1141,18.7958))
{
SetPlayerPos(playerid, 1476.1237, -1765.6045, 995.9890);
SetPlayerInterior(playerid, 3);
}
// jobhouse
if(IsPlayerInRangeOfPoint(playerid, 5.0, 914.0151,-1003.2240,38.0076))
{
SetPlayerPos(playerid, 914.87433, -990.59930, 999.58380);
SetPlayerInterior(playerid, 0);
}
return 1;
}
CMD:exit(playerid,params[])
{
// SA BANK
if(IsPlayerInRangeOfPoint(playerid, 5.0, 591.7039,-1269.4248,1035.6932))
{
SetPlayerPos(playerid, 594.4772,-1249.1016,18.2201);
SetPlayerFacingAngle(playerid, 89.0684);
SetPlayerInterior(playerid, 0);
}
// mairie
if(IsPlayerInRangeOfPoint(playerid, 5.0, 1476.2694,-1762.8276,995.9606))
{
SetPlayerPos(playerid, 1480.8271,-1770.5574,18.7958);
SetPlayerFacingAngle(playerid, 2.0389);
SetPlayerInterior(playerid, 0);
}
//jobhouse
if(IsPlayerInRangeOfPoint(playerid, 5.0, 915.8417,-989.5709,999.3730))
{
SetPlayerPos(playerid, 913.5525,-1003.4492,38.0031);
SetPlayerFacingAngle(playerid, 17.7092);
SetPlayerInterior(playerid, 0);
}
return 1;
}
CMD:resignmyjob(playerid,params[])
{
pInfo[playerid][Job] = 0;
pInfo[playerid][JobLVL] = 0;
SetPlayerSkin(playerid, jobless_skin);
SetPlayerColor(playerid, jobless_color);
return 1;
}
CMD:getjob(playerid,params[])
{
if(IsPlayerInRangeOfPoint(playerid, 5.0, 918.9927,-1002.3051,999.3730))
{
ShowPlayerDialog(playerid,3,DIALOG_STYLE_LIST, "Selectionnez votre travail", " Mecanicien\n Taxi\n Policier\n Mineur\n Fermier\n Pecheur\n Pompier\n Camionneur\n Livreur\n Vendeur de drogue\n FBI\n Livreur de pizza\n Soldat\n Pute\n Chasseur de prime", "Prendre", "Annuler");
}
else
{
SendClientMessage(playerid, 0xAFAFAFAA, "Tu n'est pas a la maison des travail.");
}
return 1;
}
CMD:mecanicien(playerid,params[])
{
WhoNeedsAMechanic = playerid;
SomeOneNeedsAMechanic = 1;
NeedsMechanic[playerid] = 1; //the player needs the mechanic
GetPlayerPos(playerid,GetLocX,GetLocY,GetLocZ);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if (pInfo[i][Job] == 1)
{
new string[128];
new pname[24];
GetPlayerName(playerid, pname, sizeof(pname));
format(string, 128,"[MECANICIEN]: %s a besoin d'un mecanicien. Faite /accepter pour accepter l'appel",pname);
SendClientMessage(i,COLOR_GREEN,string);
}
}
return 1;
}
CMD:accepter(playerid,params[])
{
if (pInfo[playerid][Job] == 1)
{
if(SomeOneNeedsAMechanic == 1)
{
WhoNeedsAMechanic = 255;
SomeOneNeedsAMechanic = 0;
new string[128];
new pname[24];
GetPlayerName(playerid, pname, sizeof(pname));
format(string, 128,"[MECANICIEN]: %s a accepter votre appel et est en route!",pname);
SendClientMessage(WhoNeedsAMechanic,COLOR_GREEN,string);
SetPlayerCheckpoint(playerid,GetLocX,GetLocY,GetLocZ,2);
GetLocX = 0; GetLocY = 0; GetLocZ = 0;
}
else
{
SendClientMessage(playerid, COLOR_GREEN, "Personne n'a besoin d'un mecanicien.");
}
}
else
{
SendClientMessage(playerid,COLOR_GREEN, "[!] Vous n'ete pas un mecanicien!");
}
return 1;
}
CMD:inventaire(playerid,params[])
{
ShowInventory(playerid);
return 1;
}
CMD:radio(playerid,params[])
{
ShowPlayerDialog(playerid, 4, DIALOG_STYLE_LIST, "Radio Station", "Techno \nCKOI 96,9 \nNRJ 98,9 \nTurn radio off", "Select", "Cancel");
return 1;
}
forward setplayerdeliverymission(playerid);
public setplayerdeliverymission(playerid)
{
boxtruck = CreateVehicle(414, 2268.0627, -2017.7373, 13.6388, 179.8147, 40, 111, 0);
SetPlayerCheckpoint(playerid, 2268.3843,-2025.7472,13.5469, 3.0);
SendClientMessage(playerid, COLOR_WHITE, "Take the delivery truck");
playercheckpoint = 1;
// KillTimer(setmissiontimer);
return 1;
}
problem fixed.
i feel so dumb....
anyway...
sorry to bump , but it still dont work.
damn samp... i start to understand why mta is way more popular...