Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2017
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 27.63 KB | None | 0 0
  1.  
  2.  
  3. #include <a_samp>
  4. #include <Dini>
  5. /*____________________________________[COLORI]__________________________________*/
  6.  
  7. //Colori gangs
  8. #define COLORE_GROOVE 0x33AA33AA
  9. #define COLORE_BALLAS 0xB200FFAA
  10. #define COLORE_VAGOS 0xFFFF00AA
  11. #define COLORE_ATZECAS 0x00FFFFFF
  12. #define COLORE_TRIADE 0xFFFFFFAA
  13. #define COLORE_BIKERS 0xF97804AA
  14. #define COLORE_POLIZIA 0x0000FFAA
  15. //Colori messaggi
  16. #define GRIGIO 0xAFAFAFAA
  17. #define ROSA 0xFF66FFAA
  18. #define BLU_CHIARO 0x00BFFFAA
  19. #define COLORE_ERRORE 0xFF4444AA
  20.  
  21.  
  22. /*____________________________________[DIALOGS]_________________________________*/
  23. #define SCELTA_TEAM 1200
  24. #define REGISTER_DIALOG 2000
  25. #define LOGIN_DIALOG 3000
  26. #define MENUV 4567
  27. /*____________________________________[TEAMS]___________________________________*/
  28. #define Groove 1
  29. #define Ballas 2
  30. #define Vagos 3
  31. #define Atzecas 4
  32. #define Polizia 5
  33. #define Triade 6
  34. #define Bikers 7
  35. /*______________________________[New/Defines/Forwards]__________________________*/
  36.  
  37. //Sistema di registrazione
  38. enum pInfo
  39. {
  40. pSoldi,
  41. pKills,
  42. pDeaths,
  43. pLoggato,
  44. }
  45. new
  46. PlayerInfo[MAX_PLAYERS][pInfo],
  47. entrato[24],
  48. stringa[128],
  49. primavolta[MAX_PLAYERS],
  50. pFile[64];
  51. new savename[24];
  52.  
  53. //Targhe
  54. new
  55. vehGroove[8],
  56. vehBallas[10],
  57. vehVagos[8],
  58. vehAtzecas[11],
  59. vehPolizia[13],
  60. vehTriade[10],
  61. vehBikers[11];
  62.  
  63. //Messaggio Iniziale
  64. #define righe 592
  65. #define versione "1.0.3"
  66. #define aggiornamento "Quotidiano"
  67. //Tutorial
  68. new Tutorial[MAX_PLAYERS];
  69. forward PrimoSpawn(playerid);
  70. forward Parte2(playerid);
  71. forward Parte3(playerid);
  72. forward Parte4(playerid);
  73. forward Parte5(playerid);
  74. forward Fine(playerid);
  75.  
  76. /*___________________________________[GM DOS]___________________________________*/
  77. main()
  78. {
  79. print("\n---------------------------------------------");
  80. print(" GangWar 1.0.3 by Francesco_Ronaldo(The_BLade)");
  81. print("-----------------------------------------------\n");
  82. }
  83.  
  84.  
  85. public OnGameModeInit()
  86. {
  87.  
  88. SetGameModeText("Gang War 1.0.3 by The_Blade(Francesco_Ronaldo)");
  89. EnableStuntBonusForAll(0);
  90. ShowPlayerMarkers(0);
  91. /*___________________________________[VEICOLI]__________________________________*/
  92.  
  93. //Groove
  94. vehGroove[0] = AddStaticVehicle(487, 2530.2830, -1677.0455, 19.9302, 88.6083, 86, 1);//Maverick
  95. vehGroove[1] = AddStaticVehicle(567, 2483.0061, -1655.8569, 13.3153, 90.2978, 86, 1);//Savanna 1
  96. vehGroove[2] = AddStaticVehicle(567, 2499.0161, -1656.6808, 13.3889, 92.0733, 86, 1);//Savanna 2
  97. vehGroove[3] = AddStaticVehicle(451, 2507.2432, -1670.2717, 13.3796, 12.8828, 86, 1);//Turismo
  98. vehGroove[4] = AddStaticVehicle(602, 2471.6128, -1673.2925, 13.3341, 4.0910, 86, 1);//Alpha 1
  99. vehGroove[5] = AddStaticVehicle(482, 2491.3323, -1682.4792, 13.3369, 86.7466, 86, 0);//Burrito
  100. vehGroove[6] = AddStaticVehicle(521, 2521.3433, -1711.2371, 13.5243, 180.4108, 86, 0);//Fcr-900 1
  101. vehGroove[7] = AddStaticVehicle(521, 2523.2056, -1712.0825, 13.5542, 180.4108, 86, 0);//Fcr-9000 2
  102.  
  103. //Ballas
  104. vehBallas[0] = AddStaticVehicle(487, 2039.8413, -1113.9447, 29.8617, 88.7411, 156, 1);//Maverick
  105. vehBallas[1] = AddStaticVehicle(492, 2033.9307, -1131.5229, 24.3788, 96.1982, 156, 1);//Greenwood 1
  106. vehBallas[2] = AddStaticVehicle(492, 1990.9487, -1132.6953, 25.5705, 83.4140, 156, 1);//Greenwood 2
  107. vehBallas[3] = AddStaticVehicle(492, 1975.6765, -1123.8302, 25.7942, 354.9905, 156, 1);//Greenwood 3
  108. vehBallas[4] = AddStaticVehicle(491, 2012.7074, -1111.3458, 26.2031, 179.4779, 156, 1);//Virgo 1
  109. vehBallas[5] = AddStaticVehicle(491, 1985.7809, -1079.4043, 24.8783, 169.6210, 156, 1);//Virgo 2
  110. vehBallas[6] = AddStaticVehicle(413, 1993.9128, -1091.0186, 24.7140, 84.8345, 156, 1);//Pony 1
  111. vehBallas[7] = AddStaticVehicle(413, 1992.8352, -1096.0474, 25.1176, 65.6583, 156, 1);//Pony 2
  112. vehBallas[8] = AddStaticVehicle(468, 2049.8264, -1106.9272, 24.4198, 270.4733, 156, 0);//Sanchez 1
  113. vehBallas[9] = AddStaticVehicle(468, 2049.8030, -1103.9708, 24.4877, 270.4733, 156, 0);//Sanchez 2
  114.  
  115. //Vagos
  116. vehVagos[0] = AddStaticVehicle(487, 2620.0776, -1068.4387, 75.9696, 88.1649, 6, 1);//Maverick
  117. vehVagos[1] = AddStaticVehicle(412, 2580.2080, -1043.8097, 69.4141, 87.1411, 6, 0);//Voodoo 1
  118. vehVagos[2] = AddStaticVehicle(412, 2536.3130, -1030.3466, 69.5816, 178.0504, 6, 6);//Voodoo 2
  119. vehVagos[3] = AddStaticVehicle(412, 2542.7451, -1051.3716, 69.4141, 270.3802, 6, 6);//Voodoo 3
  120. vehVagos[4] = AddStaticVehicle(413, 2596.7725, -1064.2415, 69.5786, 1.4725, 6, 1);//Pony 1
  121. vehVagos[5] = AddStaticVehicle(413, 2603.5818, -1064.0664, 69.5849, 1.4725, 6, 1);//Pony 2
  122. vehVagos[6] = AddStaticVehicle(461, 2586.9268, -1026.8773, 69.5696, 175.2094, 6, 0);//Pcj-600 1
  123. vehVagos[7] = AddStaticVehicle(461, 2530.9404, -1068.3550, 69.5660, 4.0443, 6, 0);//Pcj-600 2
  124.  
  125. //Atzecas
  126. vehAtzecas[0] = AddStaticVehicle(487, 1929.6305, -2088.0920, 19.9609, 91.5821, 184, 1);//Maverick
  127. vehAtzecas[1] = AddStaticVehicle(467, 1928.8185, -2141.7732, 13.5622, 181.8704, 184, 184);//Oceanic 1
  128. vehAtzecas[2] = AddStaticVehicle(467, 1931.9409, -2141.6707, 13.7821, 181.8704, 184, 184);//Oceanic 2
  129. vehAtzecas[3] = AddStaticVehicle(467, 1938.0920, -2141.4700, 13.7823, 181.8704, 184, 184);//Oceanic 3
  130. vehAtzecas[4] = AddStaticVehicle(534, 1941.5638, -2141.5386, 13.5565, 181.8704, 184, 184);//Remington 1
  131. vehAtzecas[5] = AddStaticVehicle(534, 1946.6229, -2129.3833, 13.5487, 266.3877, 184, 184);//Remington 2
  132. vehAtzecas[6] = AddStaticVehicle(534, 1946.1504, -2136.8623, 14.0123, 266.3877, 184, 184);//Remington 3
  133. vehAtzecas[7] = AddStaticVehicle(482, 1938.3975, -2092.5085, 13.5619, 266.3877, 184, 184);//Burrito 1
  134. vehAtzecas[8] = AddStaticVehicle(482, 1939.1140, -2086.8049, 13.5607, 266.3877, 184, 184);//Burrito 2
  135. vehAtzecas[9] = AddStaticVehicle(462, 1946.3577, -2113.8306, 13.7806, 266.3877, 184, 184);//Faggio 1
  136. vehAtzecas[10] = AddStaticVehicle(462, 1946.5344, -2111.0300, 13.5480, 266.3877, 184, 184);//Faggio 2
  137.  
  138. //Polizia
  139. vehPolizia[0] = AddStaticVehicle(596, 1602.2296, -1683.9373, 5.8906, 91.5357, 0, 1);//Volante 1
  140. vehPolizia[1] = AddStaticVehicle(596, 1602.3263, -1687.5493, 6.1096, 91.5357, 0, 1);//Volante 2
  141. vehPolizia[2] = AddStaticVehicle(596, 1602.4369, -1691.6738, 5.8906, 91.5357, 0, 1);//Volante 3
  142. vehPolizia[3] = AddStaticVehicle(596, 1602.5447, -1695.6990, 5.8906, 91.5357, 0, 1);//Volante 4
  143. vehPolizia[4] = AddStaticVehicle(427, 1583.0607, -1708.8167, 5.8906, 4.1776, 0, 1);//Swat 1
  144. vehPolizia[5] = AddStaticVehicle(427, 1578.8240, -1709.1260, 5.9150, 4.1776, 0, 1);//Swat 2
  145. vehPolizia[6] = AddStaticVehicle(427, 1574.0734, -1709.4729, 5.8906, 4.1776, 0, 1);//Swat3
  146. vehPolizia[7] = AddStaticVehicle(528, 1546.5118, -1680.0653, 5.8906, 92.9562, 79, 0);//Blindato 1
  147. vehPolizia[8] = AddStaticVehicle(528, 1546.0780, -1675.9309, 5.8906, 92.9562, 79, 0);//Blindato 2
  148. vehPolizia[9] = AddStaticVehicle(528, 1545.8702, -1671.9070, 5.8906, 92.9562, 79, 0);//Blindato 3
  149. vehPolizia[10] = AddStaticVehicle(523, 1534.4729, -1644.0449, 5.8906, 183.9516, 0, 1);//Moto 1
  150. vehPolizia[11] = AddStaticVehicle(523, 1530.0658, -1644.3495, 5.8906, 183.9516, 0, 1);//Moto 2
  151. vehPolizia[12] = AddStaticVehicle(601, 1544.9454, -1654.8713, 5.8906, 92.9562, 79, 0);//Tank 1
  152.  
  153. //Triade
  154. vehTriade[0] = AddStaticVehicle(487, 363.3645, -1554.5759, 36.4063, 327.6868, 1, 1);//Maverick
  155. vehTriade[1] = AddStaticVehicle(401, 365.4946, -1501.7798, 32.5945, 126.1539, 1, 1);//Bravura 1
  156. vehTriade[2] = AddStaticVehicle(401, 343.6009, -1523.7920, 32.5217, 144.9749, 1, 1);//Bravura 2
  157. vehTriade[3] = AddStaticVehicle(561, 326.3698, -1549.1854, 32.5217, 144.9749, 1, 1);//Stratum 1
  158. vehTriade[4] = AddStaticVehicle(561, 367.3156, -1577.7382, 31.6502, 89.0499, 1, 1);//Stratum 2
  159. vehTriade[5] = AddStaticVehicle(482, 399.5266, -1497.5052, 31.6407, 307.0901, 1, 1);//Burrito 1
  160. vehTriade[6] = AddStaticVehicle(482, 402.7293, -1578.2449, 27.7214, 94.0215, 1, 1);//Burrito 3
  161. vehTriade[7] = AddStaticVehicle(522, 396.3952, -1540.3560, 32.2734, 312.9441, 1, 1);//Nrg-500 1
  162. vehTriade[8] = AddStaticVehicle(522, 399.6397, -1543.8423, 32.2734, 312.9441, 1, 1);//Nrg-500 2
  163. vehTriade[9] = AddStaticVehicle(522, 398.9734, -1522.7727, 32.4934, 136.0971, 1, 1);//Nrg-500 3
  164.  
  165. //Bikers
  166. vehBikers[0] = AddStaticVehicle(487, 983.1121, -1822.1439, 19.0942, 83.9777, 6, 1);//Maverick
  167. vehBikers[1] = AddStaticVehicle(463, 945.3842, -1822.9375, 12.6552, 352.9567, 6, 0);//Freeway 1
  168. vehBikers[2] = AddStaticVehicle(463, 939.3496, -1822.1920, 12.6446, 352.9567, 6, 0);//Freeway 2
  169. vehBikers[3] = AddStaticVehicle(463, 941.6749, -1822.4792, 12.6499, 352.9567, 6, 0);//Freeway 3
  170. vehBikers[4] = AddStaticVehicle(463, 949.5307, -1826.1163, 12.6021, 253.1695, 6, 0);//Freeway 4
  171. vehBikers[5] = AddStaticVehicle(463, 960.3245, -1837.7937, 12.5968, 253.1695, 6, 0);//Freeway 5
  172. vehBikers[6] = AddStaticVehicle(463, 973.5328, -1832.0135, 12.5968, 253.1695, 6, 0);//Freeway 6
  173. vehBikers[7] = AddStaticVehicle(463, 983.0893, -1834.9047, 12.6105, 253.1695, 6, 0);//Freeway 7
  174. vehBikers[8] = AddStaticVehicle(463, 985.9750, -1844.7874, 13.0753, 253.1695, 6, 0);//Freeway 8
  175. vehBikers[9] = AddStaticVehicle(463, 994.9844, -1834.1825, 12.8286, 351.8913, 6, 0);//Freeway 9
  176. vehBikers[10] = AddStaticVehicle(463, 995.7520, -1828.7941, 13.1645, 351.8913, 6, 0);//Freeway 10
  177. Targhe();
  178. AddPlayerClass(117, 2530.2830, -1677.0455, 21.9302, 88.6083, 8, 1, 32, 3400, 27, 1500);
  179. return 1;
  180. }
  181.  
  182.  
  183. public OnGameModeExit()
  184. {
  185. //Timer Salva Accounts
  186. SalvaAccounts();
  187. return 1;
  188. }
  189.  
  190. public OnPlayerRequestClass(playerid, classid)
  191. {
  192.  
  193. return 1;
  194. }
  195.  
  196. public OnPlayerConnect(playerid)
  197. {
  198. /*________________________________[REGISTRAZIONE]_______________________________*/
  199. PlayerInfo[playerid][pKills] = 0;
  200. PlayerInfo[playerid][pDeaths] = 0;
  201. GetPlayerName(playerid, entrato, 24);
  202. GetPlayerName(playerid, savename, 24);
  203. SendClientMessage(playerid,COLORE_GROOVE,"_____________________{FFFFFF}_____________________{FF4444}_____________________");
  204. SendClientMessage(playerid,COLORE_GROOVE,"");
  205. SendClientMessage(playerid,COLORE_TRIADE,"Benvenuto nella gm GangWar/Roleplay, creata da Francesco_Ronaldo");
  206. format(stringa,sizeof(stringa),"Numero di righe: %d Versione: %s Aggiornamento: %s ", righe, versione, aggiornamento);
  207. SendClientMessage(playerid,COLORE_TRIADE,stringa);
  208. SendClientMessage(playerid,COLORE_GROOVE,"_____________________{FFFFFF}_____________________{FF4444}_____________________");
  209. format(pFile, sizeof(pFile), "%s.ini", savename);
  210. //Se il player non è registrato
  211. if(!fexist(pFile))
  212. {
  213. format(stringa, sizeof stringa, "{FFFFFF}Benvenuto {FF4444}%s!\n{FFFFFF}Non sei registrato.\nInserisci la password per registrarti.", entrato);
  214. ShowPlayerDialog(playerid, REGISTER_DIALOG, DIALOG_STYLE_INPUT, "{FFFFFF}Dialog di Registrazione:", stringa, "Registrati", "Chiudi");
  215. }
  216. //Se il player è registrato
  217. if(fexist(pFile))
  218. {
  219. format(stringa, sizeof stringa, "{FFFFFF}Benvenuto {FF4444}%s!\n{FFFFFF}\nInserisci la password per effettuare il login.", entrato);
  220. ShowPlayerDialog(playerid, LOGIN_DIALOG, DIALOG_STYLE_INPUT, "{FFFFFF}Dialog di Login:", stringa, "Login", "Chiudi");
  221. }
  222.  
  223. return 1;
  224. }
  225.  
  226. public OnPlayerDisconnect(playerid, reason)
  227. {
  228. SalvaAccount(playerid);
  229. return 1;
  230. }
  231.  
  232. public OnPlayerSpawn(playerid)
  233. {
  234. SetPlayerVirtualWorld(playerid, 0); //VirtualWorld predefinito
  235.  
  236. //Se il player non ha fatto il Login
  237. if(PlayerInfo[playerid][pLoggato] == 0)
  238. {
  239. SendClientMessage(playerid, COLORE_ERRORE, "[ERRORE] Non puoi spawnare se non hai fatto il login, stà più attento la prossima volta.");
  240. Kick(playerid);// Kick
  241. }
  242.  
  243. SetWorldTime(24);
  244. return 1;
  245. }
  246.  
  247. public OnPlayerDeath(playerid, killerid, reason)
  248. {
  249. /*________________________________[REGISTRAZIONE]_______________________________*/
  250. if(killerid != INVALID_PLAYER_ID) PlayerInfo[playerid][pKills]++; //Aumentano le uccisioni
  251. PlayerInfo[playerid][pDeaths]++; //Aumentano le morti
  252. return 1;
  253. }
  254.  
  255. public OnVehicleSpawn(vehicleid)
  256. {
  257. return 1;
  258. }
  259.  
  260. public OnVehicleDeath(vehicleid, killerid)
  261. {
  262. return 1;
  263. }
  264.  
  265. public OnPlayerText(playerid, text[])
  266. {
  267. //Se il giocatore non è loggato
  268. if(PlayerInfo[playerid][pLoggato] != 1)
  269. {
  270. SendClientMessage(playerid, COLORE_ERRORE, "[ERRORE] Non puoi scrivere in chat se non sei loggato.");
  271. return 0;
  272. }
  273. //Se il giocatore sta facendo il tutorial
  274. if(Tutorial[playerid]!= 0)
  275. {
  276. SendClientMessage(playerid, COLORE_ERRORE, "[ERRORE] Non puoi scrivere in chat durante il tutorial.");
  277. return 0;
  278. }
  279. return 1;
  280. }
  281.  
  282. public OnPlayerCommandText(playerid, cmdtext[])
  283. {
  284. new cmd[256],idx;
  285. cmd = strtok(cmdtext, idx);
  286.  
  287. return 0;
  288. }
  289.  
  290. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  291. {
  292. return 1;
  293. }
  294.  
  295. public OnPlayerExitVehicle(playerid, vehicleid)
  296. {
  297. return 1;
  298. }
  299.  
  300. public OnPlayerStateChange(playerid, newstate, oldstate)
  301. {
  302. return 1;
  303. }
  304.  
  305. public OnPlayerEnterCheckpoint(playerid)
  306. {
  307. return 1;
  308. }
  309.  
  310. public OnPlayerLeaveCheckpoint(playerid)
  311. {
  312. return 1;
  313. }
  314.  
  315. public OnPlayerEnterRaceCheckpoint(playerid)
  316. {
  317. return 1;
  318. }
  319.  
  320. public OnPlayerLeaveRaceCheckpoint(playerid)
  321. {
  322. return 1;
  323. }
  324.  
  325. public OnRconCommand(cmd[])
  326. {
  327. return 1;
  328. }
  329.  
  330. public OnPlayerRequestSpawn(playerid)
  331. {
  332.  
  333. return 1;
  334. }
  335.  
  336. public OnObjectMoved(objectid)
  337. {
  338. return 1;
  339. }
  340.  
  341. public OnPlayerObjectMoved(playerid, objectid)
  342. {
  343. return 1;
  344. }
  345.  
  346. public OnPlayerPickUpPickup(playerid, pickupid)
  347. {
  348. return 1;
  349. }
  350.  
  351. public OnVehicleMod(playerid, vehicleid, componentid)
  352. {
  353. return 1;
  354. }
  355.  
  356. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  357. {
  358. return 1;
  359. }
  360.  
  361. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  362. {
  363. return 1;
  364. }
  365.  
  366. public OnPlayerSelectedMenuRow(playerid, row)
  367. {
  368. return 1;
  369. }
  370.  
  371. public OnPlayerExitedMenu(playerid)
  372. {
  373. return 1;
  374. }
  375.  
  376. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  377. {
  378. return 1;
  379. }
  380.  
  381. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  382. {
  383. return 1;
  384. }
  385.  
  386. public OnRconLoginAttempt(ip[], password[], success)
  387. {
  388. return 1;
  389. }
  390.  
  391. public OnPlayerUpdate(playerid)
  392. {
  393. return 1;
  394. }
  395.  
  396. public OnPlayerStreamIn(playerid, forplayerid)
  397. {
  398. return 1;
  399. }
  400.  
  401. public OnPlayerStreamOut(playerid, forplayerid)
  402. {
  403. return 1;
  404. }
  405.  
  406. public OnVehicleStreamIn(vehicleid, forplayerid)
  407. {
  408. return 1;
  409. }
  410.  
  411. public OnVehicleStreamOut(vehicleid, forplayerid)
  412. {
  413. return 1;
  414. }
  415.  
  416. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  417. {
  418. /*________________________________[REGISTRAZIONE]_______________________________*/
  419. GetPlayerName(playerid, entrato, 24);
  420. GetPlayerName(playerid, savename, 24);
  421. format(pFile, sizeof(pFile), "%s.ini", savename);
  422. //Registrazione
  423. if(dialogid == REGISTER_DIALOG)
  424. {
  425. if(strfind(inputtext, "=", true) == 0)//Se si scrive = nella password
  426. {
  427. format(stringa, sizeof stringa, "{FFFFFF}Benvenuto {FF4444}%s!\n{FFFFFF}Non sei registrato.\nInserisci la password per registrarti.", entrato);
  428. ShowPlayerDialog(playerid, REGISTER_DIALOG, DIALOG_STYLE_INPUT, "{FFFFFF}Dialog di Registrazione:", stringa, "Registrati", "Chiudi");
  429. SendClientMessage(playerid, COLORE_ERRORE, "[ERRORE] Non è permesso utilizzare questo carattere per la password.");
  430. return 1;
  431. }
  432.  
  433. else if(!strlen(inputtext))//Se non si inserisce niente
  434. {
  435. format(stringa, sizeof stringa, "{FFFFFF}Benvenuto {FF4444}%s!\n\n{FFFFFF}Non sei registrato.\n\nInserisci la password per registrarti.", entrato);
  436. ShowPlayerDialog(playerid, REGISTER_DIALOG, DIALOG_STYLE_INPUT, "{FFFFFF}Dialog di Registrazione:", stringa, "Registrati", "Chiudi");
  437. SendClientMessage(playerid, COLORE_ERRORE, "[ERRORE] Inserisci una password per registrarti.");
  438. return 1;
  439. }
  440.  
  441. dini_Create(pFile);
  442. dini_Set(pFile, "Password", inputtext);//Password
  443. dini_IntSet(pFile, "Soldi", 0);//Soldi
  444. dini_IntSet(pFile, "Kills", 0);//Uccisioni
  445. dini_IntSet(pFile, "Deaths", 0);//Morti
  446. primavolta[playerid] = 1;
  447. format(stringa, sizeof stringa, "{FFFFFF}Benvenuto {FF4444}%s!\n{FFFFFF}\nInserisci la password per effettuare il login.", entrato);
  448. ShowPlayerDialog(playerid, LOGIN_DIALOG, DIALOG_STYLE_INPUT, "{FFFFFF}Dialog di Login:", stringa, "Login", "Chiudi");
  449. return 1;
  450. }
  451.  
  452. //Login
  453. if(dialogid == LOGIN_DIALOG)
  454. {
  455. if(!strlen(inputtext))//Se non si inserisce niente
  456. {
  457. format(stringa, sizeof stringa, "{FFFFFF}Benvenuto {FF4444}%s!\n{FFFFFF}\nInserisci la password per effettuare il login.", entrato);
  458. ShowPlayerDialog(playerid, LOGIN_DIALOG, DIALOG_STYLE_INPUT, "{FFFFFF}Dialog di Login:", stringa, "Login", "Chiudi");
  459. SendClientMessage(playerid, COLORE_ERRORE, "[ERRORE] Inserisci una password per loggarti.");
  460. return 1;
  461. }
  462.  
  463. if(strcmp(inputtext, dini_Get(pFile, "Password"), false) == 0)
  464. {
  465. if(primavolta[playerid] == 1)//Se il player si è registrato per la prima volta
  466. {
  467. PlayerInfo[playerid][pLoggato] = 1;
  468. ResetPlayerMoney(playerid);
  469. GivePlayerMoney(playerid, dini_Int(pFile, "Soldi"));//Soldi
  470. PlayerInfo[playerid][pKills] = dini_Int(pFile, "Kills");//Uccisioni
  471. PlayerInfo[playerid][pDeaths] = dini_Int(pFile, "Deaths");//Morti
  472. SendClientMessage(playerid, ROSA, "Login eseguito con successo, ora ti verrà mostrato un breve tutorial.");
  473. SetTimer("PrimoSpawn", 100, false);//Timer del primo spawn e del tutorial
  474. Tutorial[playerid] = 1;
  475. }
  476. else if(primavolta[playerid] == 0)
  477. {
  478. PlayerInfo[playerid][pLoggato] = 1;
  479. ResetPlayerMoney(playerid);
  480. GivePlayerMoney(playerid, dini_Int(pFile, "Soldi"));//Soldi
  481. PlayerInfo[playerid][pKills] = dini_Int(pFile, "Kills");//Uccisioni
  482. PlayerInfo[playerid][pDeaths] = dini_Int(pFile, "Deaths");//Morti
  483. SendClientMessage(playerid, ROSA, "Login eseguito con successo.");
  484. SetPlayerTeam(playerid, dini_Int(pFile, "Team"));
  485. }
  486. }
  487. else return SendClientMessage(playerid, COLORE_ERRORE, "[ERRORE] Password errata, riprova.");
  488. return 1;
  489. }
  490.  
  491. //MENU ARMI
  492. if(dialogid == SCELTA_TEAM)
  493. {
  494. if(response)
  495. {
  496. //Fazione Groove
  497. if(listitem == 0)
  498. {
  499. SetPlayerTeam(playerid, 1);
  500. dini_IntSet(pFile, "Team", GetPlayerTeam(playerid));
  501. }
  502. //Fazione Ballas
  503. if(listitem == 1)
  504. {
  505. SetPlayerTeam(playerid, 2);
  506. dini_IntSet(pFile, "Team", GetPlayerTeam(playerid));
  507. }
  508. //Fazione Vagos
  509. if(listitem == 2)
  510. {
  511. SetPlayerTeam(playerid, 3);
  512. dini_IntSet(pFile, "Team", GetPlayerTeam(playerid));
  513. }
  514. //Fazione Atzecas
  515. if(listitem == 3)
  516. {
  517. SetPlayerTeam(playerid, 4);
  518. dini_IntSet(pFile, "Team", GetPlayerTeam(playerid));
  519. }
  520. //Fazione Triade
  521. if(listitem == 4)
  522. {
  523. SetPlayerTeam(playerid, 5);
  524. dini_IntSet(pFile, "Team", GetPlayerTeam(playerid));
  525. }
  526. //Fazione Bikers
  527. if(listitem == 5)
  528. {
  529. SetPlayerTeam(playerid, 6);
  530. dini_IntSet(pFile, "Team", GetPlayerTeam(playerid));
  531. }
  532. //Fazione Polizia
  533. if(listitem == 6)
  534. {
  535. SetPlayerTeam(playerid, 7);
  536. dini_IntSet(pFile, "Team", GetPlayerTeam(playerid));
  537. }
  538. }
  539. return 1;
  540. }
  541.  
  542. return 0;
  543. }
  544.  
  545. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  546. {
  547. return 1;
  548. }
  549.  
  550. /*___________________________________[STRTOK]___________________________________*/
  551. strtok(const stringhe[], &index)
  552. {
  553. new length = strlen(stringhe);
  554. while((index < length) && (stringhe[index] <= ' ')) index++;
  555. new
  556. offset = index,
  557. result[20];
  558. while((index < length) && (stringhe[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  559. {
  560. result[index - offset] = stringhe[index];
  561. index++;
  562. }
  563. result[index - offset] = EOS;
  564. return result;
  565. }
  566. /*________________________________[REGISTRAZIONE]_______________________________*/
  567.  
  568. //Salva Account
  569. forward SalvaAccounts();
  570. public SalvaAccounts()
  571. {
  572. for(new i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i)) SalvaAccount(i);
  573. }
  574.  
  575. SalvaAccount(playerid)
  576. {
  577. if(PlayerInfo[playerid][pLoggato] == 1)
  578. {
  579. GetPlayerName(playerid, savename, sizeof(savename));
  580. format(pFile, sizeof(pFile), "%s.ini", savename);
  581. //Salvataggi
  582. dini_IntSet(pFile, "Soldi", GetPlayerMoney(playerid));
  583. dini_IntSet(pFile, "Kills", PlayerInfo[playerid][pKills]);
  584. dini_IntSet(pFile, "Deaths", PlayerInfo[playerid][pDeaths]);
  585. dini_IntSet(pFile, "Team", GetPlayerTeam(playerid));
  586. }
  587. return 1;
  588. }
  589.  
  590.  
  591. //Targhe
  592. Targhe()
  593. {
  594. for(new i = 0; i < 7; i++) SetVehicleNumberPlate(vehGroove[i], "Groove");
  595. for(new i = 0; i < 9; i++) SetVehicleNumberPlate(vehBallas[i], "Ballas");
  596. for(new i = 0; i < 7; i++) SetVehicleNumberPlate(vehVagos[i], "Vagos");
  597. for(new i = 0; i < 10; i++) SetVehicleNumberPlate(vehAtzecas[i], "Atzecas");
  598. for(new i = 0; i < 12; i++) SetVehicleNumberPlate(vehPolizia[i], "Polizia LS");
  599. for(new i = 0; i < 9; i++) SetVehicleNumberPlate(vehTriade[i], "Triade");
  600. for(new i = 0; i < 10; i++) SetVehicleNumberPlate(vehBikers[i], "Bikers");
  601. }
  602.  
  603. //Tutorial parte 1
  604. public PrimoSpawn(playerid)
  605. {
  606. SpawnPlayer(playerid);
  607. new nomet[24];
  608. GetPlayerName(playerid, nomet, 24);
  609. SetPlayerCameraPos(playerid, 345.3194, -2002.9467, 23.3376);
  610. SetPlayerCameraLookAt(playerid, 383.5432, -2040.4696, 23.3376);
  611. SetPlayerPos(playerid, 343.2539, -2003.4648, 22.8738);
  612. TogglePlayerControllable(playerid,0); // Freeza Player
  613. SetPlayerVirtualWorld(playerid, 1); //VirtualWorld tutorial
  614. SetTimer("Parte2", 13000, false); //Parte 2
  615. SendClientMessage(playerid, BLU_CHIARO, "_________________________________[{FFFFFF}Benvenuto a Los Santos{00BFFF}]_________________________________");
  616. format(stringa, sizeof stringa, "Ben arrivato {FFFFFF}%s{00BFFF}, Los Santos è una città abbastanza ricca ed accogliente.", nomet);
  617. SendClientMessage(playerid, BLU_CHIARO, stringa);
  618. SendClientMessage(playerid, BLU_CHIARO, "Ultimamente, essa è stata rinnovata con numerosi negozi, concessionari e luoghi di");
  619. SendClientMessage(playerid, BLU_CHIARO, "divertimento. Il tuo obiettivo quindi, è farti una vita, trovare casa e lavoro, oppure");
  620. SendClientMessage(playerid, BLU_CHIARO, "sarai costretto a dormire per strada.");
  621. SendClientMessage(playerid, BLU_CHIARO, "");
  622. SendClientMessage(playerid, BLU_CHIARO, "");
  623. SendClientMessage(playerid, BLU_CHIARO, "");
  624. SetTimer("Parte2", 13000, false);
  625. SetPlayerVirtualWorld(playerid, 1);
  626. }
  627.  
  628. //Tutorial parte 2
  629. public Parte2(playerid)
  630. {
  631. SetPlayerCameraPos(playerid, 1512.2330,-1645.6677,19.2422);
  632. SetPlayerCameraLookAt(playerid,1555.6569,-1689.9617,28.3956);
  633. SetPlayerPos(playerid,1512.2330,-1645.6677,19.2422);
  634. TogglePlayerControllable(playerid,0);// Freeza Player
  635. SetPlayerVirtualWorld(playerid, 1); //VirtualWorld tutorial
  636. SetTimer("Parte3", 13000, false); //Parte 3
  637. SendClientMessage(playerid, COLORE_POLIZIA, "_________________________________[{FFFFFF}Polizia di Los Santos{0000FF}]_________________________________");
  638. SendClientMessage(playerid, COLORE_POLIZIA, "Il compito di questa associazione, è catturare i criminali, gli spacciatori e i gangster.");
  639. SendClientMessage(playerid, COLORE_POLIZIA, "La stazione è quella che vedi nella telecamera. Ultimamente, stanno cercando nuove reclute,");
  640. SendClientMessage(playerid, COLORE_POLIZIA, "per cui potresti provare ad arruolarti. La polizia, ha numerosi comandi unici, e potrà");
  641. SendClientMessage(playerid, COLORE_POLIZIA, "chiamare rinforzi in qualsiasi momento, quindi fà attenzione.");
  642. SendClientMessage(playerid, COLORE_POLIZIA, "");
  643. SendClientMessage(playerid, COLORE_POLIZIA, "");
  644. SendClientMessage(playerid, COLORE_POLIZIA, "");
  645. }
  646.  
  647. //Tutorial parte 3
  648. public Parte3(playerid)
  649. {
  650. SetPlayerCameraPos(playerid, 1959.9305, -1116.2561, 31.0424);
  651. SetPlayerCameraLookAt(playerid, 1980.9781, -1129.9010, 25.9787);
  652. SetPlayerPos(playerid,1955.9175, -1110.4893, 31.3304);
  653. TogglePlayerControllable(playerid,0); // Freeza Player
  654. SetPlayerVirtualWorld(playerid, 0); //VirtualWorld tutorial
  655. SetTimer("Parte4", 13000, false); //Parte 4
  656. SendClientMessage(playerid, COLORE_BIKERS, "_______________________________[{FFFFFF}Gangs di Los Santos{F97804}]_______________________________");
  657. SendClientMessage(playerid, COLORE_BIKERS, "A Los Santos, ci sono numerose gangs, che cercano di salire al potere. Lo loro azioni sono");
  658. SendClientMessage(playerid, COLORE_BIKERS, "spaccio di droga ed armi, rapine, attentati. Puoi unirti ad una di esse, ma dopo averlo fatto,");
  659. SendClientMessage(playerid, COLORE_BIKERS, "non potrai tornare indietro, altrimenti verrai ucciso. Entrando a far parte di una gang, rischi");
  660. SendClientMessage(playerid, COLORE_BIKERS, "l'arresto da parte della Polizia di Los Santos.");
  661. SendClientMessage(playerid, COLORE_POLIZIA, "");
  662. SendClientMessage(playerid, COLORE_POLIZIA, "");
  663. SendClientMessage(playerid, COLORE_POLIZIA, "");
  664. }
  665.  
  666. //Tutorial parte 4
  667. public Parte4(playerid)
  668. {
  669. SetPlayerCameraPos(playerid, 1979.6873, -1475.9039, 21.7584);
  670. SetPlayerCameraLookAt(playerid, 2032.9921, -1409.8184, 23.1193);
  671. SetPlayerPos(playerid, 1979.4567, -1477.6495, 21.7584);
  672. TogglePlayerControllable(playerid,0); // Freeza Player
  673. SetPlayerVirtualWorld(playerid, 1); //VirtualWorld tutorial
  674. SetTimer("Fine", 13000, false); //Parte 4
  675. SendClientMessage(playerid, COLORE_VAGOS, "_______________________________[{FFFFFF}Ospedale di Los Santos{FFFF00}]_______________________________");
  676. SendClientMessage(playerid, COLORE_VAGOS, "Questo è l'ospedale di Los Santos. I medici sono molto pratici, e ti salveranno la vita anche se sei");
  677. SendClientMessage(playerid, COLORE_VAGOS, "in condizioni disperate. Quando sei ferito gravemente, continuerai a perdere vita, perciò dovrai");
  678. SendClientMessage(playerid, COLORE_VAGOS, "recarti in sala operatoria a farti ricucire le ferite!");
  679. SendClientMessage(playerid, COLORE_POLIZIA, "");
  680. SendClientMessage(playerid, COLORE_POLIZIA, "");
  681. SendClientMessage(playerid, COLORE_POLIZIA, "");
  682. }
  683. //Tutorial parte 4
  684. public Fine(playerid)
  685. {
  686. SetPlayerCameraPos(playerid, 2514.8760, -1463.8076, 25.2961);
  687. SetPlayerCameraLookAt(playerid, 2521.1482, -1475.6719, 23.9980);
  688. SetPlayerPos(playerid, 2521.1482, -1475.6719, 23.9980);
  689. SetPlayerVirtualWorld(playerid, 1); //VirtualWorld tutorial
  690. GivePlayerMoney(playerid, 50);
  691. SendClientMessage(playerid, COLORE_TRIADE, "_________________________________[{F97804}Fine del Tutorial{FFFFFF}]_________________________________");
  692. SendClientMessage(playerid, COLORE_TRIADE, "Bene, sei giunto alla fine del tutorial. Come puoi vedere, sei un barbone, e sei costretto a dormire");
  693. SendClientMessage(playerid, COLORE_TRIADE, "sotto ad un porticato. Con i 50$ che ti rimangono, puoi chiedere di entrare a far parte di una delle");
  694. SendClientMessage(playerid, COLORE_TRIADE, "6 gangs di Los Santos, oppure diventare un impiegato nel corpo di Polizia di Los Santos. Scegli il");
  695. SendClientMessage(playerid, COLORE_TRIADE, "tuo futuro tramite questo menù che ti viene proposto.");
  696. ShowPlayerDialog(playerid, SCELTA_TEAM, DIALOG_STYLE_LIST, "Selezione Fazione:", "Unisciti a {33AA33}Groove Street\nUnisciti ai {B200FF}Ballas\nUnisciti ai {FFFF00}Vagos\nUnisciti agli {00FFFF}Atzecas\nUnisciti alla {FFFFFF}Triade\nUnisciti ai {F97804}Bikers\nArruolati nella {0000FF}Polizia", "Scegli", "Chiudi");
  697. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement