Advertisement
Guest User

ST4NL3Y

a guest
Dec 14th, 2009
367
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 37.49 KB | None | 0 0
  1. #include <a_samp>
  2. #define GERMAN 1
  3. #define AMERICAN 2
  4. #define COLOR_ADMIN 0xFFD700AA
  5. new reqtime[MAX_PLAYERS];
  6. new Float:X[MAX_PLAYERS];
  7. new verso[MAX_PLAYERS];
  8. new pClass[MAX_PLAYERS];
  9. new pFire;
  10. new Text:Barra1;
  11. new Text:Barra2;
  12. new Text:inforeq[MAX_PLAYERS];
  13. new pRandPick[11];
  14. new pSpawned[MAX_PLAYERS];
  15. new Text:laterale;
  16. new TestoVecchio[256];
  17. new Sended=0;
  18. new timdel;
  19. new Text:General;
  20. new verso2=0;
  21. new pos=-1;
  22. new veicolodelbot;
  23. new pTeam[MAX_PLAYERS];
  24. new gangzone1;
  25. new gangzone2;
  26. new Text:info[MAX_PLAYERS];
  27. new Kill[MAX_PLAYERS],Death[MAX_PLAYERS],Float:Ratio[MAX_PLAYERS];
  28. new carroarmato1,carroarmato2,camion1,camion2,hunter,patriot;
  29. new Autorizzato[MAX_PLAYERS];
  30. new inuso=0;
  31. new conta_kill[MAX_PLAYERS];
  32. new Text:punteggio;
  33. new Text:riquadrosotto;
  34. new Text:sinistro;
  35. new Text:destro;
  36. new fin=0;
  37. new maxpunti=15;
  38. new Text:testo_s,Text:testo_d;
  39.  
  40. new testo1[256];
  41. new testo2[256];
  42.  
  43. enum scuadra{GER,USA}
  44. new Punti[scuadra];
  45.  
  46.  
  47.  
  48. new Float:RandomPickup[18][4] = {
  49. {154.017761, 1869.462646, 17.856750},
  50. {164.113098, 1830.373535, 17.648057},
  51. {135.178955, 1820.205932, 17.640625},
  52. {108.316459, 1868.915649, 17.819082},
  53. {115.366134, 1902.560424, 18.597774},
  54. {136.148681, 1921.501220, 19.101139},
  55. {161.179290, 1937.862426, 18.723199},
  56. {149.230743, 1877.263427, 17.935407},
  57. {204.208999, 1904.086059, 17.640625},
  58. {228.916107, 1927.722656, 17.640625},
  59. {272.780456, 1893.266357, 17.640625},
  60. {266.971099, 1850.282226, 17.640625},
  61. {281.829864, 1819.524047, 17.640625},
  62. {212.874130, 1804.883911, 17.640625},
  63. {162.552078, 1826.279907, 17.640625},
  64. {104.148101, 1814.425537, 17.640625},
  65. {103.889564, 1873.243652, 17.828903},
  66. {133.230850, 1926.015869, 19.182846}
  67. };
  68.  
  69. new Float:RandomSpawn[17][4]={
  70. {221.210327, 1916.324096, 17.640625, 173.925369}, //
  71. {211.780197, 1863.103515, 13.140625, 4.120548}, //
  72. {253.942184, 1880.196044, 11.460937, 90.119720}, //
  73. {250.528793, 1847.871704, 8.773437, 27.139099}, //
  74. {266.508850, 1913.351074, 17.640625, 189.255340}, //
  75. {266.786376, 1892.997436, 33.898437, 182.675323}, //
  76. {280.585845, 1858.079223, 17.640625, 76.791061}, //
  77. {263.805236, 1821.556884, 17.640625, 15.931306}, //
  78. {229.857727, 1812.360473, 17.640625, 15.931306}, //
  79. {183.526550, 1805.266357, 17.640625, 353.684417}, //
  80. {164.534713, 1837.323242, 17.640625, 89.011184}, //
  81. {103.653465, 1826.199584, 17.640625, 329.003387}, //
  82. {174.775665, 1877.147094, 20.823219, 78.911941}, //
  83. {210.492630, 1858.519897, 20.640625, 294.559906}, //
  84. {250.874282, 1885.752197, 20.640625, 276.386322}, //
  85. {215.440124, 1838.267456, 23.242187, 318.831726}, //
  86. {192.016143, 1837.079589, 23.242187, 15.690559} //
  87. };
  88.  
  89. main()
  90. {
  91. printf("\n\nGameMode Caricata con successo!\n");
  92. }
  93.  
  94. public OnGameModeInit()
  95. {
  96.  
  97. riquadrosotto=TextDrawCreate(90,110," ~p~PUNTEGGIO~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~");
  98. TextDrawUseBox(riquadrosotto,1);
  99. TextDrawBoxColor(riquadrosotto,0x000000238);
  100. TextDrawTextSize(riquadrosotto,490,100);
  101.  
  102.  
  103. sinistro=TextDrawCreate(95,130," ~y~Ger~h~m~h~a~h~n~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~");
  104. TextDrawUseBox(sinistro,1);
  105. TextDrawBoxColor(sinistro,0x000000252);
  106. TextDrawTextSize(sinistro,285,100);
  107.  
  108.  
  109. destro=TextDrawCreate(295,130," ~g~Ameri~h~c~h~a~h~n~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~");
  110. TextDrawUseBox(destro,1);
  111. TextDrawBoxColor(destro,0x000000252);
  112. TextDrawTextSize(destro,485,100);
  113.  
  114.  
  115. testo_s=TextDrawCreate(100,145," ");
  116.  
  117. TextDrawFont(testo_s,2);
  118. TextDrawSetShadow(testo_s,0);
  119. TextDrawSetOutline(testo_s,1);
  120. TextDrawLetterSize(testo_s,0.2,0.75);
  121.  
  122. testo_d=TextDrawCreate(300,145," ");
  123.  
  124. TextDrawFont(testo_d,2);
  125. TextDrawSetShadow(testo_d,0);
  126. TextDrawSetOutline(testo_d,1);
  127. TextDrawLetterSize(testo_d,0.2,0.75);
  128.  
  129.  
  130. Punti[GER]=0;
  131. Punti[USA]=0;
  132.  
  133. punteggio=TextDrawCreate(200,3,"~y~~h~German ~w~0 ~r~ : ~w~ 0 ~g~~h~American");
  134. TextDrawSetShadow(punteggio,0);
  135. TextDrawSetOutline(punteggio,1);
  136.  
  137.  
  138. carroarmato1=AddStaticVehicle(432,204.6379,1867.1873,13.1588,179.2581,0,0);
  139. carroarmato2=AddStaticVehicle(432,212.3884,1803.0927,17.6532,269.0173,0,0); //
  140. camion1=AddStaticVehicle(433,116.7315,1865.1566,18.2497,268.9090,0,0);
  141. camion2=AddStaticVehicle(433,186.0239,1934.1763,18.1958,359.7710,0,0);
  142. hunter=AddStaticVehicle(425,186.2359,1833.8173,23.8140,268.9821,0,0);
  143. patriot=AddStaticVehicle(470,141.6466,1829.5168,17.6421,273.7574,0,0);
  144.  
  145. gangzone1 = GangZoneCreate(276.362396, 1800.349853, 97.976539, 1863.529296);
  146. gangzone2 = GangZoneCreate(97.976539, 1863.529296, 276.250701, 1910.752807);
  147.  
  148. ConnectNPC("Hunter","hunter");
  149. veicolodelbot=CreateVehicle(425, 0.0, 0.0, 5.0, 0.0, 3, 3, 5000);
  150.  
  151. SetGameModeText("Untitled Project v0.1");
  152. SetWorldTime(22);
  153.  
  154. UsePlayerPedAnims();
  155.  
  156. AddPlayerClass(285, 212.350112, 1909.638671, 17.640625, 336.1425, 24, 100, 31, 100, 27, 50);
  157. AddPlayerClass(287, 212.350112, 1909.638671, 17.640625, 336.1425, 24, 100, 31, 100, 27, 50);
  158.  
  159. AddPlayerClass(0, 212.350112, 1909.638671, 17.640625, 336.1425, 24, 100, 31, 100, 27, 50);
  160.  
  161. CreateObject(1217, 280.986450, 1843.504517, 17.069435, 0.0000, 0.0000, 0.0000);
  162. CreateObject(1217, 263.309265, 1814.563232, 17.062004, 0.0000, 0.0000, 0.0000);
  163. CreateObject(1217, 222.632568, 1811.662109, 17.062004, 0.0000, 0.0000, 0.0000);
  164. CreateObject(1217, 207.185059, 1829.454712, 17.062004, 0.0000, 0.0000, 0.0000);
  165. CreateObject(1217, 207.147598, 1828.248047, 17.062004, 0.0000, 0.0000, 0.0000);
  166. CreateObject(1217, 112.074356, 1803.166260, 17.062004, 0.0000, 0.0000, 0.0000);
  167. CreateObject(1217, 109.722717, 1806.071289, 17.069529, 0.0000, 0.0000, 0.0000);
  168. CreateObject(1217, 110.968376, 1804.762817, 17.069529, 0.0000, 0.0000, 0.0000);
  169. CreateObject(1218, 133.873352, 1893.019409, 17.882238, 0.0000, 0.0000, 0.0000);
  170. CreateObject(1218, 101.604980, 1893.800171, 17.583147, 0.0000, 0.0000, 0.0000);
  171. CreateObject(1218, 126.476158, 1910.592529, 18.230608, 0.0000, 0.0000, 0.0000);
  172. CreateObject(1218, 126.567551, 1909.407715, 18.220230, 0.0000, 0.0000, 0.0000);
  173. CreateObject(1218, 98.889999, 1918.645142, 17.718664, 0.0000, 0.0000, 0.0000);
  174. CreateObject(1218, 98.706604, 1923.713379, 17.695055, 0.0000, 0.0000, 0.0000);
  175. CreateObject(1218, 167.715897, 1933.903809, 17.960903, 0.0000, 0.0000, 0.0000);
  176. CreateObject(1218, 203.403687, 1922.114380, 17.132317, 0.0000, 0.0000, 0.0000);
  177. CreateObject(1218, 205.613953, 1924.034058, 17.132317, 0.0000, 0.0000, 0.0000);
  178. CreateObject(1218, 205.264282, 1922.122314, 17.132317, 0.0000, 0.0000, 0.0000);
  179. CreateObject(1218, 244.698654, 1932.822266, 17.139750, 0.0000, 0.0000, 0.0000);
  180. CreateObject(1218, 281.000549, 1866.294678, 17.132317, 0.0000, 0.0000, 0.0000);
  181. CreateObject(2780, 266.873657, 1885.430420, 16.648058, 0.0000, 0.0000, 0.0000);
  182. CreateObject(2780, 270.889954, 1883.703491, 16.648056, 0.0000, 0.0000, 0.0000);
  183. CreateObject(971, 96.692635, 1922.799316, 17.584755, 0.0000, 0.0000, 90.0000);
  184.  
  185.  
  186. laterale=TextDrawCreate(29,235," ");
  187. TextDrawFont(laterale,2);
  188. TextDrawSetShadow(laterale,0);
  189. TextDrawSetOutline(laterale,1);
  190. TextDrawLetterSize(laterale,0.2,0.75);
  191.  
  192. Barra1=TextDrawCreate(1,1,"~n~~n~~n~~n~");
  193. TextDrawUseBox(Barra1,1);
  194. TextDrawBoxColor(Barra1,0x000000ff);
  195.  
  196.  
  197. Barra2=TextDrawCreate(1,405,"~n~~n~~n~~n~~n~~n~");
  198. TextDrawUseBox(Barra2,1);
  199. TextDrawBoxColor(Barra2,0x000000ff);
  200.  
  201.  
  202. General=TextDrawCreate(200,435,"~g~Untitled Project v0.1");
  203. TextDrawFont(General,2);
  204. TextDrawSetShadow(General,0);
  205. TextDrawSetOutline(General,1);
  206.  
  207.  
  208.  
  209.  
  210. SetTimer("Esplos",800,1);
  211. SetTimer("Esp2",1000,1);
  212.  
  213. SetTimer("TD",50,1);
  214.  
  215. SetTimer("Pick",30000,1);
  216.  
  217. SetTimer("Health",5000,1);
  218. return 1;
  219. }
  220.  
  221. public OnGameModeExit()
  222. {
  223. for(new i=0;i<MAX_PLAYERS;i++)
  224. {
  225. KillTimer(reqtime[i]);
  226. TextDrawDestroy(inforeq[i]);
  227. TextDrawDestroy(info[i]);
  228. TextDrawHideForPlayer(i,sinistro);
  229. TextDrawDestroy(sinistro);
  230.  
  231. TextDrawHideForPlayer(i,riquadrosotto);
  232. TextDrawDestroy(riquadrosotto);
  233.  
  234.  
  235. TextDrawHideForPlayer(i,destro);
  236. TextDrawDestroy(destro);
  237. }
  238. TextDrawDestroy(Barra1);
  239. TextDrawDestroy(laterale);
  240. TextDrawDestroy(punteggio);
  241. TextDrawDestroy(Barra2);
  242. TextDrawDestroy(destro);
  243. TextDrawDestroy(sinistro);
  244. TextDrawDestroy(riquadrosotto);
  245. return 1;
  246. }
  247.  
  248. public OnPlayerRequestClass(playerid, classid)
  249. {
  250. TextDrawHideForPlayer(playerid,info[playerid]);
  251. TextDrawHideForPlayer(playerid,General);
  252. TextDrawShowForPlayer(playerid,Barra1);
  253. TextDrawShowForPlayer(playerid,Barra2);
  254. TextDrawShowForPlayer(playerid,inforeq[playerid]);
  255. SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
  256. SetPlayerCameraPos(playerid,91.015808, 1798.239013, 60.600177-10); // amera
  257. SetPlayerCameraLookAt(playerid,209.762161, 1887.595092, 38.577957-10);
  258. KillTimer(reqtime[playerid]);
  259. reqtime[playerid]=SetTimerEx("Camera",10,1,"i",playerid);
  260. pClass[playerid]=classid;
  261. if(classid==0)
  262. {
  263. TextDrawSetString(inforeq[playerid]," ~b~~h~Team:~w~ German ~n~ ~r~Armi:~w~ Delfaut");
  264. }
  265. if(classid==1)
  266. {
  267. TextDrawSetString(inforeq[playerid]," ~b~~h~Team:~w~ American ~n~ ~r~Armi:~w~ Delfaut");
  268. }
  269.  
  270. if(classid==2)
  271. {
  272. TextDrawSetString(inforeq[playerid]," ~b~~h~Team:~w~ AUTO-BALANCE ~n~ ~r~Armi:~w~ Pack random");
  273. }
  274. return 1;
  275. }
  276.  
  277. public OnPlayerConnect(playerid)
  278. {
  279. SendClientMessage(playerid,0x00ff00aa," ");
  280. SendClientMessage(playerid,0x00ff00aa," ");
  281. SendClientMessage(playerid,0x00ff00aa," ");
  282. SendClientMessage(playerid,0x00ff00aa," ");
  283. SendClientMessage(playerid,0x00ff00aa," ");
  284. SendClientMessage(playerid,0x00ff00aa," ");
  285. SendClientMessage(playerid,0x00ff00aa," ");
  286. SendClientMessage(playerid,0x00ff00aa," ");
  287. SendClientMessage(playerid,0x00ff00aa," ");
  288. SendClientMessage(playerid,0x00ff00aa," ");
  289. SendClientMessage(playerid,0x00ff00aa," ");
  290. SendClientMessage(playerid,0x00ff00aa," ");
  291. SendClientMessage(playerid,0x00ff00aa," ");
  292. SendClientMessage(playerid,0x00ff00aa," ");
  293.  
  294. pSpawned[playerid]=0;
  295. inforeq[playerid]=TextDrawCreate(2,160," ~b~~h~Team:~w~ German ~n~ ~r~Armi:~w~ Delfaut");
  296. TextDrawFont(inforeq[playerid],2);
  297. TextDrawSetShadow(inforeq[playerid],0);
  298. TextDrawSetOutline(inforeq[playerid],1);
  299. TextDrawLetterSize(inforeq[playerid],0.4,1);
  300. X[playerid]=0.0;
  301. new string[150];
  302. format(string,150,"~b~~h~~h~%s~w~ e' entrato nel server",PlayerName(playerid));
  303. SendTextDrawMessage(string);
  304.  
  305. info[playerid]=TextDrawCreate(500,120,"~r~T~w~EAM:~n~~r~K~w~ILL:~n~~r~D~w~EATH:~n~~r~R~w~ATIO:");
  306. TextDrawFont(info[playerid],2);
  307. TextDrawSetShadow(info[playerid],0);
  308. TextDrawSetOutline(info[playerid],1);
  309. return 1;
  310. }
  311.  
  312. public OnPlayerDisconnect(playerid, reason)
  313. {
  314. TextDrawHideForPlayer(playerid,laterale);
  315. TextDrawHideForPlayer(playerid,punteggio);
  316. TextDrawHideForPlayer(playerid,General);
  317. TextDrawHideForPlayer(playerid,Barra1);
  318. TextDrawHideForPlayer(playerid,Barra2);
  319. TextDrawHideForPlayer(playerid,inforeq[playerid]);
  320. new string[150];
  321. format(string,150,"~b~~h~~h~%s~w~ e' uscito dal server",PlayerName(playerid));
  322. SendTextDrawMessage(string);
  323. return 1;
  324. }
  325.  
  326. public OnPlayerSpawn(playerid)
  327. {
  328. if(fin==1)
  329. {
  330. TogglePlayerControllable(playerid,0);
  331. }
  332. SetPlayerDrunkLevel(playerid,0);
  333. TextDrawShowForPlayer(playerid,info[playerid]);
  334. GangZoneShowForPlayer(playerid, gangzone1, 0x0000ff220);
  335. GangZoneShowForPlayer(playerid, gangzone2, 0xff0000220);
  336. new rand=random(18);
  337. if(rand!=17 && rand!=18)
  338. {
  339. SetPlayerInterior(playerid,0);
  340. SetPlayerPos(playerid,RandomSpawn[rand][0],RandomSpawn[rand][1],RandomSpawn[rand][2]);
  341. SetPlayerFacingAngle(playerid,RandomSpawn[rand][3]);
  342. }else{
  343. SetPlayerInterior(playerid,9);
  344. SetPlayerPos(playerid,315.856170 ,1024.496459 , 1949.797363 );
  345. DisablePlayerCheckpoint(playerid);
  346. SetPlayerCheckpoint(playerid,315.8014,1035.1260,1945.3812,8.0);
  347. }
  348. if(IsPlayerNPC(playerid)) //Controlla se � un bot.
  349. {
  350. new npcname[MAX_PLAYER_NAME];
  351. GetPlayerName(playerid, npcname, sizeof(npcname));
  352. if(!strcmp(npcname, "Hunter", true)) //Assicuratevi che il nome si uguale a quello di connessione
  353. {
  354. PutPlayerInVehicle(playerid, veicolodelbot, 0); //Mette il bot nel veicolo creato nell'ongamemodeinit.
  355. SetPlayerColor(playerid,0xff0000220);
  356. }
  357. return 1;
  358. }
  359.  
  360. TextDrawShowForPlayer(playerid,laterale);
  361. TextDrawShowForPlayer(playerid,punteggio);
  362. TextDrawShowForPlayer(playerid,General);
  363. pSpawned[playerid]=1;
  364. TextDrawHideForPlayer(playerid,Barra1);
  365. TextDrawHideForPlayer(playerid,Barra2);
  366. TextDrawHideForPlayer(playerid,inforeq[playerid]);
  367. Aggiorna(playerid);
  368. return 1;
  369. }
  370.  
  371. public OnPlayerDeath(playerid, killerid, reason)
  372. {
  373. if(pTeam[playerid]==GERMAN)
  374. {
  375. Punti[USA]++;
  376. }
  377.  
  378.  
  379. if(pTeam[playerid]==AMERICAN)
  380. {
  381. Punti[GER]++;
  382. }
  383.  
  384. if(Punti[GER]==maxpunti)
  385. {
  386. for(new i=0;i<MAX_PLAYERS;i++)
  387. {
  388. if(IsPlayerConnected(i))
  389. {
  390. TogglePlayerControllable(i,0);
  391. }
  392. }
  393. SetTimer("Fine",3500,0);
  394. GameTextForAll("Team German VINCE!",4000,4);
  395. fin=1;
  396. }
  397.  
  398.  
  399. if(Punti[USA]==maxpunti)
  400. {
  401. for(new i=0;i<MAX_PLAYERS;i++)
  402. {
  403. if(IsPlayerConnected(i))
  404. {
  405. TogglePlayerControllable(i,0);
  406. }
  407. }
  408. SetTimer("Fine",3500,0);
  409. GameTextForAll("Team American VINCE!",4000,4);
  410. fin=1;
  411. }
  412.  
  413.  
  414. new strag[200];
  415. format(strag,200,"~y~~h~German ~w~%d ~r~ : ~w~ %d ~g~~h~American",Punti[GER],Punti[USA]);
  416. TextDrawSetString(punteggio,strag);
  417.  
  418. conta_kill[playerid]=0;
  419. pSpawned[playerid]=0;
  420. new string[190];
  421. Death[playerid]++;
  422. if(!IsPlayerConnected(killerid))
  423. {
  424. format(string,190,"~r~%s muore.",PlayerName(playerid));
  425. SetPlayerScore(playerid,GetPlayerScore(playerid)-1);
  426. }else{
  427. Kill[killerid]++;
  428. conta_kill[killerid]++;
  429. SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
  430. if(GetPlayerScore(killerid)==2|| GetPlayerScore(killerid)== 15||GetPlayerScore(killerid)==5||GetPlayerScore(killerid)==10)
  431. {
  432. new strinsa[150];
  433. format(strinsa,150,"~y~~h~%s ~w~e' livello ~g~%d",PlayerName(killerid),GetPlayerScore(killerid));
  434. SendTextDrawMessage(strinsa);
  435. }
  436. GameTextForPlayer(killerid,"+1",900,5);
  437. GameTextForPlayer(playerid,"-1",900,5);
  438. new gunname[50];
  439. GetWeaponName(reason,gunname,sizeof(gunname));
  440. if(reason==0){gunname="NESSUNA";}
  441. if(reason==51){gunname="Esplosione";}
  442. format(string,190,"~w~%s ~r~ha ucciso ~w~%s~n~~y~arma: ~g~%s",PlayerName(killerid),PlayerName(playerid),gunname);
  443. if(IsPlayerConnected(killerid) && killerid!=playerid && !IsPlayerNPC(killerid))
  444. {
  445. TogglePlayerSpectating(playerid, true);
  446. PlayerSpectatePlayer(playerid, killerid, 1);
  447. TogglePlayerControllable(playerid, true);
  448. new st[256];
  449. format(st,256,"Stai spectando %s",PlayerName(killerid));
  450. SendClientMessage(playerid,0x00ff00aa,st);
  451. GameTextForPlayer(playerid,"~r~KIll Cam",5000,4);
  452. SetTimerEx("RemoveS",5000,0,"i",playerid);
  453. }
  454. if(conta_kill[killerid]>=5 && inuso==0)
  455. {
  456. SendClientMessage(killerid,0xff0000aa,"Sei stato autorizzato ad usare l'Hunter! Ritorna alla base entro 1 minuto.");
  457. SendClientMessageToAll(0xffffffff,"Hunter in uso!");
  458. SetTimerEx("RemoveHunter",60000,0,"i",playerid);
  459. Autorizzato[killerid]=1;
  460. PutPlayerInVehicle(killerid,hunter,0);
  461. inuso=1;
  462. }
  463. }
  464. SendTextDrawMessage(string);
  465. Aggiorna(killerid);
  466. return 1;
  467. }
  468.  
  469. forward RemoveHunter(playerid);
  470. public RemoveHunter(playerid)
  471. {
  472. if(Autorizzato[playerid]==1)
  473. {
  474. DestroyVehicle(hunter);
  475. hunter=AddStaticVehicle(425,186.2359,1833.8173,23.8140,268.9821,0,0);
  476. inuso=0;
  477. Autorizzato[playerid]=0;
  478. SpawnPlayer(playerid);
  479. }
  480. }
  481.  
  482. public OnVehicleSpawn(vehicleid)
  483. {
  484. return 1;
  485. }
  486.  
  487. public OnVehicleDeath(vehicleid, killerid)
  488. {
  489. return 1;
  490. }
  491.  
  492. public OnPlayerText(playerid, text[])
  493. {
  494. return 1;
  495. }
  496.  
  497.  
  498. public OnPlayerCommandText(playerid, cmdtext[])
  499. {
  500. if(pSpawned[playerid]==1)
  501. {
  502. new cmd[256], idx;
  503. cmd = strtok(cmdtext,idx);
  504.  
  505. if ( strcmp( cmd, "/punti", true ) == 0 && IsPlayerAdmin(playerid) )
  506. {
  507. new tmp[256];
  508. tmp = strtok( cmdtext, idx );
  509. if (!strlen(tmp))
  510. {
  511. return SendClientMessage(playerid,0xffffffff,"Uso: /punti [quantit�]");
  512. }
  513. maxpunti=strval(tmp);
  514. new string[230];
  515. format(string,230,"** L'amministratore %s, cambia il numero massimo di punti a %d",PlayerName(playerid),maxpunti);
  516. SendClientMessageToAll(COLOR_ADMIN,string);
  517. return 1;
  518. }
  519.  
  520.  
  521. if (strcmp("/armi", cmdtext, true) == 0)
  522. {
  523. ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Lista armi","Pack 1\nPack 2\nPack 3\nPack 4\nPack 5\nDelfaut","OK","Annulla");
  524. return 1;
  525. }
  526.  
  527. if (strcmp("/kill", cmdtext, true) == 0)
  528. {
  529. SetPlayerHealth(playerid,0);
  530. return 1;
  531. }
  532.  
  533.  
  534. if (strcmp("/help", cmdtext, true) == 0)
  535. {
  536. SendClientMessage(playerid,0xffffffff,"Usa /armi per cambiare il tuo pacchetto armi");
  537. SendClientMessage(playerid,0xffffffff,"Questa GM � ambientata nell'Area 51, dove i tedeschi e americani si scontrano tra di loro");
  538. SendClientMessage(playerid,0xffffffff,"Il Team che fa per primo 25 punti vince.");
  539. SendClientMessage(playerid,0xffffffff," ");
  540. SendClientMessage(playerid,0xffffffff,"Creatore: ST4]N[L3Y (FT941 su expert)");
  541. return 1;
  542. }
  543.  
  544. }else{
  545. SendClientMessage(playerid,0xffffffff,"SERVER: Aspetta lo spawn.");
  546. }
  547. return SendClientMessage(playerid,0xffffffff,"SERVER: Comando non disponibile. /help");
  548. }
  549.  
  550. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  551. {
  552. if(vehicleid==carroarmato1 || vehicleid==carroarmato2)
  553. {
  554. if(GetPlayerScore(playerid)<=9)
  555. {
  556. SendClientMessage(playerid,0xffffffff,"Devi essere livello 10 per entrare in un carroarmato");
  557. Salire(playerid);
  558. }
  559. }
  560.  
  561. if(vehicleid==camion1 || vehicleid==camion2)
  562. {
  563. if(GetPlayerScore(playerid)<=4)
  564. {
  565. SendClientMessage(playerid,0xffffffff,"Devi essere livello 5 per entrare in un camion");
  566. Salire(playerid);
  567. }
  568. }
  569.  
  570. if(vehicleid==hunter)
  571. {
  572. if(Autorizzato[playerid]==0)
  573. {
  574. SendClientMessage(playerid,0xffffffff,"Devi aver compiuto 5 kill di seguito per utilizzare l'hunter");
  575. inuso=0;
  576. Salire(playerid);
  577. }
  578. }
  579.  
  580.  
  581. if(vehicleid==patriot)
  582. {
  583. if(GetPlayerScore(playerid)<=1)
  584. {
  585. SendClientMessage(playerid,0xffffffff,"Devi essere livello 2 per entrare in una patriot");
  586. Salire(playerid);
  587. }
  588. }
  589. return 1;
  590. }
  591.  
  592. public OnPlayerExitVehicle(playerid, vehicleid)
  593. {
  594. if(vehicleid==hunter)
  595. {
  596. Autorizzato[playerid]=0;
  597. inuso=0;
  598. DestroyVehicle(hunter);
  599. hunter=AddStaticVehicle(425,186.2359,1833.8173,23.8140,268.9821,0,0);
  600. SpawnPlayer(playerid);
  601. SendClientMessageToAll(0xffffffff,"L'hunter � ora libero.");
  602. }
  603. return 1;
  604. }
  605.  
  606. public OnPlayerStateChange(playerid, newstate, oldstate)
  607. {
  608. return 1;
  609. }
  610.  
  611. public OnPlayerEnterCheckpoint(playerid)
  612. {
  613. DisablePlayerCheckpoint(playerid);
  614. SetPlayerInterior(playerid,0);
  615. GivePlayerWeapon(playerid,46,1);
  616. SetPlayerPos(playerid,215.0791,1938.3284,93.6712+30);
  617. SetPlayerFacingAngle(playerid,180.1921);
  618. return 1;
  619. }
  620.  
  621. public OnPlayerLeaveCheckpoint(playerid)
  622. {
  623. return 1;
  624. }
  625.  
  626. public OnPlayerEnterRaceCheckpoint(playerid)
  627. {
  628. return 1;
  629. }
  630.  
  631. public OnPlayerLeaveRaceCheckpoint(playerid)
  632. {
  633. return 1;
  634. }
  635.  
  636. public OnRconCommand(cmd[])
  637. {
  638. return 1;
  639. }
  640.  
  641. public OnPlayerRequestSpawn(playerid)
  642. {
  643. new string [256];
  644. if(!IsPlayerNPC(playerid))
  645. {
  646. KillTimer(reqtime[playerid]);
  647. SendClientMessage(playerid,0xFF0000ff,"***********************************************");
  648. SendClientMessage(playerid,0x00FF00ff,"Benvenuto nel server!");
  649. SendClientMessage(playerid,0x00FF00ff,"Digita /help per aiuto");
  650. SendClientMessage(playerid,0xFF0000ff,"***********************************************");
  651.  
  652.  
  653. if(pClass[playerid]==0)
  654. {
  655. pTeam[playerid]=GERMAN;
  656. SetPlayerColor(playerid,0x00C0FF230);
  657. SetPlayerTeam(playerid,1);
  658. }
  659. if(pClass[playerid]==1)
  660. {
  661. pTeam[playerid]=AMERICAN;
  662. SetPlayerColor(playerid,0x00ff00230);
  663. SetPlayerTeam(playerid,2);
  664. }
  665. if(pClass[playerid]==2)
  666. {
  667. new tedeschi=0;
  668. new americani=0;
  669. for(new i=0;i<MAX_PLAYERS;i++)
  670. {
  671. if(IsPlayerConnected(i))
  672. {
  673. if(pTeam[i]==GERMAN)
  674. {
  675. tedeschi++;
  676. }
  677. if(pTeam[i]==AMERICAN)
  678. {
  679. americani++;
  680. }
  681. }
  682. }
  683.  
  684. if(americani==tedeschi)
  685. {
  686. pTeam[playerid]=GERMAN;
  687. SetPlayerColor(playerid,0x00C0FF230);
  688. SetPlayerTeam(playerid,1);
  689. GameTextForPlayer(playerid,"~b~~h~Elimina i tedeschi!",1000,5);
  690. format(string,256,"[AUTO-BALANCE]: Americani %d, Tedeschi %d",americani,tedeschi+1);
  691. SetSpawnInfo(playerid,1,285, 212.350112, 1909.638671, 17.640625, 336.1425, 24, 100, 31, 100, 27, 50);
  692. }
  693.  
  694. if(americani<tedeschi)
  695. {
  696. pTeam[playerid]=AMERICAN;
  697. SetPlayerColor(playerid,0x00ff00230);
  698. SetPlayerTeam(playerid,2);
  699. GameTextForPlayer(playerid,"~b~~h~Elimina gli americani!",1000,5);
  700. format(string,256,"[AUTO-BALANCE]: Americani %d, Tedeschi %d",americani+1,tedeschi);
  701.  
  702. SetSpawnInfo(playerid,2,287, 212.350112, 1909.638671, 17.640625, 336.1425, 24, 100, 31, 100, 27, 50);
  703. }
  704.  
  705.  
  706. if(americani>tedeschi)
  707. {
  708. pTeam[playerid]=GERMAN;
  709. SetPlayerColor(playerid,0x00C0FF230);
  710. SetPlayerTeam(playerid,1);
  711. GameTextForPlayer(playerid,"~b~~h~Elimina i tedeschi!",1000,5);
  712. format(string,256,"[AUTO-BALANCE]: Americani %d, Tedeschi %d",americani,tedeschi+1);
  713.  
  714. SetSpawnInfo(playerid,1,285, 212.350112, 1909.638671, 17.640625, 336.1425, 24, 100, 31, 100, 27, 50);
  715. }
  716. }
  717. SendClientMessageToAll(0x00ff00ff,string);
  718. }
  719. return 1;
  720. }
  721.  
  722. public OnObjectMoved(objectid)
  723. {
  724. return 1;
  725. }
  726.  
  727. public OnPlayerObjectMoved(playerid, objectid)
  728. {
  729. return 1;
  730. }
  731.  
  732. public OnPlayerPickUpPickup(playerid, pickupid)
  733. {
  734. return 1;
  735. }
  736.  
  737. public OnVehicleMod(playerid, vehicleid, componentid)
  738. {
  739. return 1;
  740. }
  741.  
  742. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  743. {
  744. return 1;
  745. }
  746.  
  747. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  748. {
  749. return 1;
  750. }
  751.  
  752. public OnPlayerSelectedMenuRow(playerid, row)
  753. {
  754. return 1;
  755. }
  756.  
  757. public OnPlayerExitedMenu(playerid)
  758. {
  759. return 1;
  760. }
  761.  
  762. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  763. {
  764. return 1;
  765. }
  766.  
  767. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  768. {
  769. return 1;
  770. }
  771.  
  772. public OnRconLoginAttempt(ip[], password[], success)
  773. {
  774. return 1;
  775. }
  776.  
  777. public OnPlayerUpdate(playerid)
  778. {
  779. return 1;
  780. }
  781.  
  782. public OnPlayerStreamIn(playerid, forplayerid)
  783. {
  784. return 1;
  785. }
  786.  
  787. public OnPlayerStreamOut(playerid, forplayerid)
  788. {
  789. return 1;
  790. }
  791.  
  792. public OnVehicleStreamIn(vehicleid, forplayerid)
  793. {
  794. return 1;
  795. }
  796.  
  797. public OnVehicleStreamOut(vehicleid, forplayerid)
  798. {
  799. return 1;
  800. }
  801.  
  802. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  803. {
  804. if(dialogid == 1)
  805. {
  806. if(response==1)
  807. {
  808. if(listitem==0)
  809. {
  810. ShowPlayerDialog(playerid,2,0,"Pack 1","-MP5 \n-Granate\n-Desert Eagle","Accetta","Annulla");
  811. }
  812. if(listitem==1)
  813. {
  814. ShowPlayerDialog(playerid,3,0,"Pack 2","-Combat ShotGun \n-Desert Eagle\n-Granate","Accetta","Annulla");
  815. }
  816. if(listitem==2)
  817. {
  818. ShowPlayerDialog(playerid,4,0,"Pack 3","-Lanciarazzi \n-M4\n-Desert Eagle","Accetta","Annulla");
  819. }
  820. if(listitem==3)
  821. {
  822. ShowPlayerDialog(playerid,5,0,"Pack 4","-MP5 \n-Desert\n-Coltello","Accetta","Annulla");
  823. }
  824. if(listitem==4)
  825. {
  826. ShowPlayerDialog(playerid,6,0,"Pack 5","-ShoutGun \n-M4\n-Desert Eagle","Accetta","Annulla");
  827. }
  828. if(listitem==5)
  829. {
  830. SetSpawnInfo(playerid,GetPlayerTeam(playerid),GetPlayerSkin(playerid),212.350112, 1909.638671, 17.640625,336.1425, 24, 100, 31, 100, 27, 50);
  831. SendClientMessage(playerid,0xffffff,"Le armi verranno cambiate al prossimo death");
  832. }
  833. }
  834. }
  835.  
  836.  
  837. if(dialogid == 2)
  838. {
  839. if(response==1)
  840. {
  841. SetSpawnInfo(playerid,GetPlayerTeam(playerid),GetPlayerSkin(playerid),212.350112, 1909.638671, 17.640625,336.1425, 29, 150, 16, 8, 24, 50);
  842. SendClientMessage(playerid,0xffffff,"Le armi verranno cambiate al prossimo death");
  843. }else{
  844. ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Lista armi","Pack 1\nPack 2\nPack 3\nPack 4\nPack 5\nDelfaut","OK","Annulla");
  845. }
  846. }
  847. if(dialogid == 3)
  848. {
  849. if(response==1)
  850. {
  851. SetSpawnInfo(playerid,GetPlayerTeam(playerid),GetPlayerSkin(playerid),212.350112, 1909.638671, 17.640625,336.1425, 27, 100, 24, 50,16, 8);
  852. SendClientMessage(playerid,0xffffff,"Le armi verranno cambiate al prossimo death");
  853. }else{
  854. ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Lista armi","Pack 1\nPack 2\nPack 3\nPack 4\nPack 5\nDelfaut","OK","Annulla");
  855. }
  856. }
  857. if(dialogid ==4)
  858. {
  859. if(response==1)
  860. {
  861. SetSpawnInfo(playerid,GetPlayerTeam(playerid),GetPlayerSkin(playerid),212.350112, 1909.638671, 17.640625,336.1425, 35, 4, 31, 150, 24, 50);
  862. SendClientMessage(playerid,0xffffff,"Le armi verranno cambiate al prossimo death");
  863. }else{
  864. ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Lista armi","Pack 1\nPack 2\nPack 3\nPack 4\nPack 5\nDelfaut","OK","Annulla");
  865. }
  866. }
  867. if(dialogid == 5)
  868. {
  869. if(response==1)
  870. {
  871. SetSpawnInfo(playerid,GetPlayerTeam(playerid),GetPlayerSkin(playerid),212.350112, 1909.638671, 17.640625,336.1425, 29, 150, 24, 50, 4, 1);
  872. SendClientMessage(playerid,0xffffff,"Le armi verranno cambiate al prossimo death");
  873. }else{
  874. ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Lista armi","Pack 1\nPack 2\nPack 3\nPack 4\nPack 5\nDelfaut","OK","Annulla");
  875. }
  876. }
  877. if(dialogid == 6)
  878. {
  879. if(response==1)
  880. {
  881. SetSpawnInfo(playerid,GetPlayerTeam(playerid),GetPlayerSkin(playerid),212.350112, 1909.638671, 17.640625,336.1425, 25, 50, 31, 150, 24, 50);
  882. SendClientMessage(playerid,0xffffff,"Le armi verranno cambiate al prossimo death");
  883. }else{
  884. ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Lista armi","Pack 1\nPack 2\nPack 3\nPack 4\nPack 5\nDelfaut","OK","Annulla");
  885. }
  886. }
  887. return 1;
  888. }
  889.  
  890. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  891. {
  892. return 1;
  893. }
  894.  
  895. forward Camera(playerid);
  896. public Camera(playerid)
  897. {
  898. if(X[playerid]>=190)
  899. {
  900. verso[playerid]=0;
  901. }
  902. if(X[playerid]<=0)
  903. {
  904. verso[playerid]=1;
  905. }
  906.  
  907.  
  908.  
  909. if(verso[playerid]==1)
  910. {
  911. X[playerid]+=0.1;
  912. }else{
  913. X[playerid]-=0.1;
  914. }
  915. SetPlayerPos(playerid,91.015808+X[playerid], 1798.239013+X[playerid], 60.600177+20);
  916. SetPlayerCameraPos(playerid,91.015808+X[playerid], 1798.239013+X[playerid], 60.600177-10); // amera
  917. SetPlayerCameraLookAt(playerid,209.762161, 1887.595092, 38.577957-10);
  918. }
  919.  
  920. forward Esplos();
  921. public Esplos()
  922. {
  923. new rand=random(20);
  924. new type=random(1);
  925. if(type==1)
  926. {
  927. type=1;
  928. }else{
  929. type=9;
  930. }
  931. if(rand==0)
  932. {
  933. CreateExplosion(263.332885+random(50), 1845.888549+random(50), 38.343727,type,999);
  934. }
  935. if(rand==1)
  936. {
  937. CreateExplosion(238.782867+random(50), 1862.740844+random(50), 36.731662,type,999);
  938. }
  939. if(rand==2)
  940. {
  941. CreateExplosion(213.114883+random(50), 1899.587036+random(50), 33.068298,type,999);
  942. }
  943. if(rand==3)
  944. {
  945. CreateExplosion(135.771072+random(50), 1910.606079+random(50), 33.542907,type,999);
  946. }
  947. if(rand==4)
  948. {
  949. CreateExplosion(142.590667+random(50), 1884.869384+random(50), 32.292278,type,999);
  950. }
  951. if(rand==5)
  952. {
  953. CreateExplosion(141.488967+random(50), 1815.638183+random(50), 25.202354,type,999);
  954. }
  955. if(rand==6)
  956. {
  957. CreateExplosion(176.054489+random(50), 1832.937377+random(50), 32.084663,type,999);
  958. }
  959.  
  960.  
  961. new rando=random(13);
  962. DestroyObject(pFire);
  963. if(rando==0)
  964. {
  965. pFire=CreateObject(354,164.109985+random(10), 1817.909790+random(10), 48.026500+20,0,0,0);
  966. }
  967. if(rando==1)
  968. {
  969. pFire=CreateObject(354,136.071731-random(10), 1834.513305-random(10), 46.565196+20,0,0,0);
  970. }
  971. if(rando==2)
  972. {
  973. pFire=CreateObject(354,122.020881+random(10), 1887.365234-random(10), 36.634342+20,0,0,0);
  974. }
  975. if(rando==3)
  976. {
  977. pFire=CreateObject(354,106.052566-random(10), 1915.562377+random(10), 33.493339+20,0,0,0);
  978. }
  979. if(rando==4)
  980. {
  981. pFire=CreateObject(354,148.097671+random(10), 1928.035034+random(10), 33.527648+20,0,0,0);
  982. }
  983. if(rando==5)
  984. {
  985. pFire=CreateObject(354,206.872467-random(10), 1921.755493-random(10), 31.275938+20,0,0,0);
  986. }
  987. if(rando==6)
  988. {
  989. pFire=CreateObject(354,265.732238+random(10), 1882.920166+random(10), 43.430343+20,0,0,0);
  990. }
  991. if(rando==7)
  992. {
  993. pFire=CreateObject(354,216.907073-random(10), 1872.070800+random(10), 39.771503+20,0,0,0);
  994. }
  995. if(rando==8)
  996. {
  997. pFire=CreateObject(354,216.907073+random(10), 1872.070800+random(10), 39.771503+20,0,0,0);
  998. }
  999. if(rando==9)
  1000. {
  1001. pFire=CreateObject(354,216.907073+random(10), 1872.070800+random(10), 39.771503+20,0,0,0);
  1002. }
  1003. if(rando==10)
  1004. {
  1005. pFire=CreateObject(354,216.907073+random(10), 1872.070800+random(10), 39.771503+20,0,0,0);
  1006. }
  1007.  
  1008. if(rando==11)
  1009. {
  1010. pFire=CreateObject(354,164.109985+random(10), 1817.909790+random(10), 48.026500+20,0,0,0);
  1011. }
  1012. if(rando==12)
  1013. {
  1014. pFire=CreateObject(354,136.071731+random(10), 1834.513305+random(10), 46.565196+20,0,0,0);
  1015. }
  1016. if(rando==13)
  1017. {
  1018. pFire=CreateObject(354,122.020881+random(10), 1887.365234+random(10), 36.634342+20,0,0,0);
  1019. }
  1020.  
  1021.  
  1022. new Float:posx,Float:posy,Float:posz;
  1023. GetObjectPos(pFire,posx,posy,posz);
  1024. MoveObject(pFire,posx+random(20),posy+random(20),posz-9999,50);
  1025. }
  1026.  
  1027.  
  1028.  
  1029. forward Esp2();
  1030. public Esp2()
  1031. {
  1032. new rand=random(15);
  1033. if(rand==0)
  1034. {
  1035. CreateExplosion(219.947113+random(50), 1847.937744+random(50), 27.227209,1,999);
  1036. }
  1037. if(rand==1)
  1038. {
  1039. CreateExplosion(217.799743+random(50), 1902.622070+random(50), 29.735179,1,999);
  1040. }
  1041. if(rand==2)
  1042. {
  1043. CreateExplosion(106.582290+random(50), 1872.567138+random(50), 17.842514,1,999);
  1044. }
  1045. if(rand==3)
  1046. {
  1047. CreateExplosion(138.197235+random(50), 1888.608032+random(50), 18.260297,1,999);
  1048. }
  1049. if(rand==4)
  1050. {
  1051. CreateExplosion(167.252365+random(50), 1858.812133+random(50), 18.362493,1,999);
  1052. }
  1053. if(rand==5)
  1054. {
  1055. CreateExplosion(244.356369+random(50), 1894.606689+random(50), 19.787393,1,999);
  1056. }
  1057. if(rand==6)
  1058. {
  1059. CreateExplosion(118.716438+random(50), 1921.314575+random(50), 18.973819,1,999);
  1060. }
  1061. }
  1062.  
  1063.  
  1064. forward Pick();
  1065. public Pick()
  1066. {
  1067. for(new i=0;i<10;i++)
  1068. {
  1069. DestroyPickup(pRandPick[i]);
  1070. }
  1071.  
  1072. for(new i=0;i<10;i++)
  1073. {
  1074. new rand=random(17);
  1075. new m=random(2);
  1076. new model=343;
  1077. if(m==0)
  1078. {
  1079. model=359;
  1080. }
  1081. if(m==1)
  1082. {
  1083. model=342;
  1084. }
  1085. if(m==2)
  1086. {
  1087. model=342;
  1088. }
  1089. pRandPick[i]=CreatePickup(model,4,RandomPickup[rand][0],RandomPickup[rand][1],RandomPickup[rand][2],0);
  1090. }
  1091. CreatePickup(358,4,168.1264,1851.8081,33.9955,0);
  1092. CreatePickup(358,4,149.0253,1914.2793,18.8765,0);
  1093. CreatePickup(358,4,237.9884,1923.1028,17.6481,0);
  1094. }
  1095.  
  1096.  
  1097. stock SendTextDrawMessage(text[])
  1098. {
  1099.  
  1100. if(Sended>=0)
  1101. {
  1102. Sended++;
  1103. }
  1104.  
  1105. if(Sended==7)
  1106. {
  1107. Sended=0;
  1108. TextDrawSetString(laterale," ");
  1109. TestoVecchio=" ";
  1110. }
  1111.  
  1112.  
  1113. for(new i=0; i<strlen(text); i++)
  1114. {
  1115. if(strfind(text[i], "]", true) == 00)
  1116. {
  1117. for(new a=0; a<256; a++)
  1118. {
  1119. if (a >= i && a < i+strlen("]"))
  1120. {
  1121. text[a]=')';
  1122. }
  1123. }
  1124. }
  1125. }
  1126.  
  1127.  
  1128. for(new i=0; i<strlen(text); i++)
  1129. {
  1130. if(strfind(text[i], "[", true) == 00)
  1131. {
  1132. for(new a=0; a<256; a++)
  1133. {
  1134. if (a >= i && a < i+strlen("["))
  1135. {
  1136. text[a]='(';
  1137. }
  1138. }
  1139. }
  1140. }
  1141.  
  1142.  
  1143.  
  1144.  
  1145.  
  1146.  
  1147. new string[256];
  1148. format(string,256,"%s~n~~n~%s",TestoVecchio,text);
  1149. TestoVecchio=string;
  1150. TextDrawSetString(laterale,string);
  1151. KillTimer(timdel);
  1152. timdel=SetTimer("TDdel",6000,0);
  1153. }
  1154.  
  1155. forward TDdel();
  1156. public TDdel()
  1157. {
  1158. Sended=0;
  1159. TextDrawSetString(laterale," ");
  1160. TestoVecchio=" ";
  1161. }
  1162.  
  1163.  
  1164. stock PlayerName(playerid)
  1165. {
  1166. new name[MAX_PLAYER_NAME];
  1167. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  1168. return name;
  1169. }
  1170.  
  1171.  
  1172.  
  1173. forward TD();
  1174. public TD()
  1175. {
  1176. new string[100];
  1177. if(verso2==0)
  1178. {
  1179. pos++;
  1180. }else{
  1181. pos--;
  1182. }
  1183. if(pos==0)
  1184. {
  1185. format(string,100,"~g~~h~U~g~ntitled Project v0.2");
  1186. verso2=0;
  1187. }
  1188. if(pos==1)
  1189. {
  1190. format(string,100,"~g~~h~~h~U~h~n~g~titled Project v0.2");
  1191. }
  1192. if(pos==2)
  1193. {
  1194. format(string,100,"~g~~h~U~h~~h~nt~g~~h~i~g~tled Project v0.2");
  1195. }
  1196. if(pos==3)
  1197. {
  1198. format(string,100,"~g~Un~h~t~h~~h~it~g~~h~l~g~ed Project v0.2");
  1199. }
  1200. if(pos==4)
  1201. {
  1202. format(string,100,"~g~Unti~h~t~h~~h~l~g~~h~e~g~d Project v0.2");
  1203. }
  1204. if(pos==5)
  1205. {
  1206. format(string,100,"~g~Untitl~h~e~h~~h~d ~g~~h~P~g~roject v0.2");
  1207. }
  1208. if(pos==6)
  1209. {
  1210. format(string,100,"~g~Untitle~h~d ~h~~h~P~g~~h~r~g~oject v0.2");
  1211. }
  1212. if(pos==7)
  1213. {
  1214. format(string,100,"~g~Untitled ~h~P~h~~h~r~g~~h~o~g~ject v0.2");
  1215. }
  1216. if(pos==8)
  1217. {
  1218. format(string,100,"~g~Untitled Pr~h~o~h~~h~j~g~~h~e~g~ct v0.2");
  1219. }
  1220. if(pos==9)
  1221. {
  1222. format(string,100,"~g~Untitled Pro~h~j~h~~h~e~g~~h~c~g~t v0.2");
  1223. }
  1224. if(pos==10)
  1225. {
  1226. format(string,100,"~g~Untitled Proj~h~e~h~~h~c~g~~h~t v~g~0.2");
  1227. }
  1228. if(pos==11)
  1229. {
  1230. format(string,100,"~g~Untitled Projec~h~t ~h~~h~v~g~~h~0~g~.2");
  1231. }
  1232. if(pos==12)
  1233. {
  1234. format(string,100,"~g~Untitled Project ~h~v~h~~h~0~g~~h~.2");
  1235. verso2=1;
  1236. }
  1237. TextDrawSetString(General,string);
  1238. }
  1239.  
  1240. forward RemoveS(playerid);
  1241. public RemoveS(playerid)
  1242. {
  1243. KillTimer(reqtime[playerid]);
  1244. TogglePlayerSpectating(playerid, false);
  1245. SpawnPlayer(playerid);
  1246. }
  1247.  
  1248.  
  1249. stock Aggiorna(playerid)
  1250. {
  1251. new string[256];
  1252. new pfl[20];
  1253. new Float:deat=Death[playerid],Float:kil=Kill[playerid];
  1254. Ratio[playerid]=kil/deat;
  1255. format(pfl,20,"%f",Ratio[playerid]);
  1256. strdel(pfl,3,6);
  1257. new team[30];
  1258. if(pTeam[playerid]==GERMAN)
  1259. {
  1260. team="~b~~h~~h~GERM.";
  1261. }else{
  1262. team="~g~~h~~h~AMER.";
  1263. }
  1264. format(string,256,"~r~T~w~EAM: %s~n~~r~K~w~ILL: %d~n~~r~D~w~EATH: %d~n~~r~R~w~ATIO: %s",team,Kill[playerid],Death[playerid],pfl);
  1265. TextDrawSetString(info[playerid],string);
  1266. }
  1267.  
  1268.  
  1269. forward Health();
  1270. public Health()
  1271. {
  1272. for(new playerid;playerid<MAX_PLAYERS;playerid++)
  1273. {
  1274. if(IsPlayerConnected(playerid))
  1275. {
  1276. new Float:health;
  1277. GetPlayerHealth(playerid,health);
  1278. if (health < 25.0)
  1279. {
  1280. SetPlayerDrunkLevel(playerid,50000);
  1281. }
  1282. if (health < 40.0)
  1283. {
  1284. SetPlayerDrunkLevel(playerid,5000);
  1285. }
  1286. }
  1287. }
  1288. }
  1289.  
  1290.  
  1291. stock Salire(playerid)
  1292. {
  1293. new Float:x,Float:y,Float:z;
  1294. GetPlayerPos(playerid,x,y,z);
  1295. SetPlayerPos(playerid,x,y,z);
  1296. }
  1297.  
  1298. forward Fine();
  1299. public Fine()
  1300. {
  1301. SetTimer("restart",10000,0);
  1302. new n[MAX_PLAYERS];
  1303.  
  1304. for(new i;i<MAX_PLAYERS;i++)
  1305. {
  1306. n[i]=-1;
  1307. }
  1308.  
  1309. for(new i;i<MAX_PLAYERS;i++)
  1310. {
  1311. if(IsPlayerConnected(i))
  1312. {
  1313. TogglePlayerControllable(i,false);
  1314. n[i]=Kill[i];
  1315. }
  1316. }
  1317.  
  1318. new i, j, temp;
  1319. for ( i = 0; i < MAX_PLAYERS; ++i )
  1320. for ( j = i; j < MAX_PLAYERS; j++ )
  1321. {
  1322. if ( n[j] > n[i] )
  1323. {
  1324. temp = n[i];
  1325. n[i] = n[j];
  1326. n[j] = temp;
  1327. }
  1328. }
  1329. //SendClientMessageToAll(0xffffffff,"L'ordine decrescente dei kill �");
  1330. new detto[MAX_PLAYERS]=0;
  1331. for (i = 0; i < MAX_PLAYERS; i++)
  1332. {
  1333. for (new a = 0; a < MAX_PLAYERS; a++)
  1334. {
  1335. if(n[i]==Kill[a]&&IsPlayerConnected(a)&&detto[a]==0&&!IsPlayerNPC(a))
  1336. {
  1337. if(pTeam[a]==GERMAN)
  1338. {
  1339. new wa[100];
  1340. detto[a]=1;
  1341. format(wa,100,"%s%s: %d~n~",testo1,PlayerName(a), n[i]);
  1342. testo1=wa;
  1343. EliminaParentesi(wa);
  1344. TextDrawSetString(testo_s,wa);
  1345. }
  1346.  
  1347. if(pTeam[a]==AMERICAN)
  1348. {
  1349. new wa[100];
  1350. detto[a]=1;
  1351. format(wa,100,"%s%s: %d~n~",testo2,PlayerName(a), n[i]);
  1352. testo2=wa;
  1353. EliminaParentesi(wa);
  1354. TextDrawSetString(testo_d,wa);
  1355. }
  1356. }
  1357. }
  1358. }
  1359. for(new pl=0;pl<MAX_PLAYERS;pl++)
  1360. {
  1361. if(IsPlayerConnected(pl))
  1362. {
  1363. TextDrawShowForPlayer(pl,riquadrosotto);
  1364. TextDrawShowForPlayer(pl,sinistro);
  1365. TextDrawShowForPlayer(pl,destro);
  1366. TextDrawShowForPlayer(pl,testo_d);
  1367. TextDrawShowForPlayer(pl,testo_s);
  1368. }
  1369. }
  1370. }
  1371.  
  1372.  
  1373.  
  1374. forward restart();
  1375. public restart()
  1376. {
  1377. SendRconCommand("gmx");
  1378. }
  1379.  
  1380.  
  1381. stock EliminaParentesi(testo[])
  1382. {
  1383. for(new i=0; i<strlen(testo); i++)
  1384. {
  1385. if(strfind(testo[i], "]", true) == 0)
  1386. {
  1387. for(new a=0; a<256; a++)
  1388. {
  1389. if (a >= i && a < i+strlen("]"))
  1390. {
  1391. testo[a]=')';
  1392. }
  1393. }
  1394. }
  1395. }
  1396.  
  1397. for(new i=0; i<strlen(testo); i++)
  1398. {
  1399. if(strfind(testo[i], "[", true) == 0)
  1400. {
  1401. for(new a=0; a<256; a++)
  1402. {
  1403. if (a >= i && a < i+strlen("]"))
  1404. {
  1405. testo[a]='(';
  1406. }
  1407. }
  1408. }
  1409. }
  1410. }
  1411.  
  1412.  
  1413. stock strtok(const string[], &index,seperator=' ')
  1414. {
  1415. new length = strlen(string);
  1416. new offset = index;
  1417. new result[128];
  1418. while ((index < length) && (string[index] != seperator) && ((index - offset) < (sizeof(result) - 1)))
  1419. {
  1420. result[index - offset] = string[index];
  1421. index++;
  1422. }
  1423.  
  1424. result[index - offset] = EOS;
  1425. if ((index < length) && (string[index] == seperator))
  1426. {
  1427. index++;
  1428. }
  1429. return result;
  1430. }
  1431.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement