Advertisement
Guest User

Untitled

a guest
Oct 29th, 2010
2,164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 48.53 KB | None | 0 0
  1. //Gamemode by kitten 10/29/10 2:30 AM
  2. // Made for Halloween by kitten
  3. // So far some credits to playbox12 for making the Accent FS converted into this gamemode
  4. #include <a_samp>
  5. #include <streamer>
  6. #include <foreach>
  7. //--TEAMS--//
  8. new cTeam[MAX_PLAYERS];
  9. #define TEAM_MEDIC 0
  10. #define TEAM_SOLIDER 1
  11. #define TEAM_POLICE 2
  12. #define TEAM_SURVIVOR 3
  13. #define TEAM_ZOMBIE 4
  14. #define TEAM_ZOMBIE2 5
  15. //--WEAPONS--//
  16. #define AK47 30
  17. #define M4 31
  18. #define MP5 29
  19. #define DEAGLE 24
  20. #define GRENADE 16
  21. #define TEC9 32
  22. #define SHOTGUN 25
  23. #define BASEBALL 5
  24. #define KNIFE 4
  25. //--COLORS--//
  26. #define COLOR_YELLOW 0xFFFF00AA
  27. #define COLOR_WHITE 0xFFFFFFAA
  28. #define COLOR_BLUE 0x0000BBAA
  29. #define COLOR_LIGHTBLUE 0x33CCFFAA
  30. #define COLOR_ORANGE 0xFF9900AA
  31. #define COLOR_RED 0xAA3333AA
  32. //--TEAM COLORS--//
  33. #define TEAMMEDICSOLIDERPOLICESURVIVOR_COLOR 0x33CCFFAA
  34. #define TEAM_COLORZOMBIE 0xFFFF00AA
  35. //--Varaibles--//
  36. new Text:Death;
  37. new Text:ZMMESSAGE;
  38. new Text:Deaths[MAX_PLAYERS];
  39. new Text:cHP[MAX_PLAYERS];
  40. new Text:Money[MAX_PLAYERS];
  41. new Text:Score[MAX_PLAYERS];
  42. new Text:Textdraw5;
  43. new Text:Textdraw0;
  44. new Text:Textdraw1;
  45. new Text:Bar[MAX_PLAYERS];
  46. new Text:EXPNUM[MAX_PLAYERS];
  47. new Deathss[MAX_PLAYERS];
  48. new string[128];
  49. #define PRESSED(%0) \
  50. (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
  51. //--Forwards--//
  52. forward NearbyMessageForPlayers( playerid, stringcolour, text[]);
  53. //--Dialogs--//
  54. #define DialogIDChangeOnProblems 1928
  55.  
  56.  
  57. main()
  58. {
  59. print("\n----------------------------------");
  60. print(" Zombie-Mod V1.0 SF");
  61. print("----------------------------------\n");
  62. }
  63.  
  64. public OnGameModeInit()
  65. {
  66. // Don't use these lines if it's a filterscript
  67. SetGameModeText("Halloween Zombie-Mod");
  68. AddPlayerClass(275, -2036.4352,179.3066,28.8429,266.0225,0,0,0,0,0,0); //MEDIC
  69. AddPlayerClass(162, -1950.8861,696.2945,46.5625,355.4216,0,0,0,0,0,0);// ZOMBIE 1
  70. AddPlayerClass(287, -1979.9567,138.0153,27.6875,91.8412,0,0,0,0,0,0);// SOLIDER
  71. AddPlayerClass(137, -1950.8861,696.2945,46.5625,355.4216,0,0,0,0,0,0);// ZOMBIE 2
  72. AddPlayerClass(280, -2019.7849,-46.1203,35.3375,270.1827,0,0,0,0,0,0);// POLICE
  73. AddPlayerClass(2, -1978.7373,564.7525,38.6038,152.8846,0,0,0,0,0,0);// SURVIVOR
  74.  
  75.  
  76. //--CARS--//
  77. AddStaticVehicle(481,-2001.14855957,191.51016235,27.14783859,0.00000000,-1,-1); //BMX
  78. AddStaticVehicle(481,-2000.90405273,193.13311768,27.14783859,0.00000000,-1,-1); //BMX
  79. AddStaticVehicle(481,-2000.85705566,194.85237122,27.14783859,0.00000000,-1,-1); //BMX
  80. AddStaticVehicle(481,-2000.51403809,196.48480225,27.14783859,0.00000000,-1,-1); //BMX
  81. AddStaticVehicle(481,-2000.62243652,199.00923157,27.14016533,0.00000000,-1,-1); //BMX
  82. AddStaticVehicle(481,-2030.83471680,171.84078979,28.44471359,273.99987793,-1,-1); //BMX
  83. AddStaticVehicle(597,-2010.13940430,-57.55938721,35.03497696,0.00000000,-1,1); //Police Car (SFPD)
  84. AddStaticVehicle(597,-2010.10949707,-51.39652634,35.03497696,0.00000000,-1,1); //Police Car (SFPD)
  85. AddStaticVehicle(597,-2009.96496582,-45.44446564,35.04187393,0.00000000,-1,1); //Police Car (SFPD)
  86. AddStaticVehicle(597,-2009.99194336,-38.89971161,35.02678299,0.00000000,-1,1); //Police Car (SFPD)
  87. AddStaticVehicle(597,-2002.32812500,-21.70625877,34.88402939,0.00000000,-1,1); //Police Car (SFPD)
  88. AddStaticVehicle(597,-2002.52661133,-33.21662140,34.97959518,0.00000000,-1,1); //Police Car (SFPD)
  89. AddStaticVehicle(597,-2002.73022461,-40.48923111,35.03497696,0.00000000,-1,1); //Police Car (SFPD)
  90. AddStaticVehicle(533,-2009.73657227,154.29324341,27.33906174,0.00000000,-1,-1); //Feltzer
  91. AddStaticVehicle(533,-2010.02624512,160.68347168,27.33906174,0.00000000,-1,-1); //Feltzer
  92. AddStaticVehicle(533,-2010.00012207,167.99829102,27.33906174,0.00000000,-1,-1); //Feltzer
  93. AddStaticVehicle(533,-2010.03308105,175.05853271,27.33906174,0.00000000,-1,-1); //Feltzer
  94. AddStaticVehicle(533,-2010.43811035,181.43998718,27.33906174,0.00000000,-1,-1); //Feltzer
  95. AddStaticVehicle(466,-1997.47583008,710.11846924,45.21687317,180.00000000,-1,-1); //Glendale
  96. AddStaticVehicle(466,-1997.29504395,703.10711670,45.21687317,180.00000000,-1,-1); //Glendale
  97. AddStaticVehicle(466,-1997.55139160,695.92315674,45.21687317,180.00000000,-1,-1); //Glendale
  98. AddStaticVehicle(466,-1997.60876465,717.14312744,45.21687317,180.00000000,-1,-1); //Glendale
  99. AddStaticVehicle(489,-1978.91589355,555.88452148,35.57931137,90.00000000,-1,-1); //Rancher
  100. AddStaticVehicle(489,-1979.34326172,552.20745850,35.56148148,90.00000000,-1,-1); //Rancher
  101. AddStaticVehicle(489,-1979.63903809,548.88006592,35.56408310,90.00000000,-1,-1); //Rancher
  102. AddStaticVehicle(579,-1979.79711914,543.48034668,35.31917191,90.00000000,-1,-1); //Huntley
  103. AddStaticVehicle(579,-1979.66760254,540.60186768,35.30284119,90.00000000,-1,-1); //Huntley
  104. AddStaticVehicle(579,-1979.66699219,540.60156250,35.30284119,90.00000000,-1,-1); //Huntley
  105. AddStaticVehicle(579,-1979.76330566,537.61016846,35.30368423,90.00000000,-1,-1); //Huntley
  106. AddStaticVehicle(445,-1997.63684082,533.79815674,35.00562668,0.00000000,-1,-1); //Admiral
  107. AddStaticVehicle(445,-1996.67724609,527.94769287,35.00562668,0.00000000,-1,-1); //Admiral
  108.  
  109. //--OBJECTS--//
  110. CreateDynamicObject(18450,298.25851440,2137.56518555,19.43712234,1.95626831,347.99291992,354.41601562); //object(cs_roadbridge04) (1)
  111. CreateDynamicObject(18450,375.74612427,2129.23632812,35.78060913,359.99926758,347.99902344,353.99743652); //object(cs_roadbridge04) (2)
  112. CreateDynamicObject(8390,482.57897949,2118.03686523,63.79504395,0.00000000,0.00000000,266.00000000); //object(multicarpark01_lvs) (1)
  113. CreateDynamicObject(18450,391.13177490,2102.32812500,78.55854797,359.99438477,359.99743652,355.99707031); //object(cs_roadbridge04) (3)
  114. CreateDynamicObject(1634,435.67501831,2102.22216797,77.78767395,0.00000000,0.00000000,84.00000000); //object(landjump2) (1)
  115. CreateDynamicObject(1634,435.24066162,2098.42553711,77.78767395,0.00000000,0.00000000,83.99597168); //object(landjump2) (2)
  116. CreateDynamicObject(1634,434.78421021,2094.44262695,77.78767395,0.00000000,0.00000000,83.99597168); //object(landjump2) (3)
  117. CreateDynamicObject(1634,428.78424072,2098.43115234,77.70126343,0.00000000,0.00000000,263.99597168); //object(landjump2) (4)
  118. CreateDynamicObject(1634,429.13684082,2102.69091797,77.70111084,0.00000000,0.00000000,263.99047852); //object(landjump2) (5)
  119. CreateDynamicObject(1634,428.57635498,2094.48046875,77.95186615,0.00000000,0.00000000,263.99047852); //object(landjump2) (6)
  120. CreateDynamicObject(18450,356.08535767,2105.97558594,81.46905518,359.98974609,19.99450684,347.99926758); //object(cs_roadbridge04) (4)
  121. CreateDynamicObject(8420,246.42150879,2128.88330078,17.47566223,0.00000000,0.00000000,0.00000000); //object(arprtcrprk04_lvs) (1)
  122. CreateDynamicObject(6997,284.68167114,2090.84326172,99.80050659,1.99877930,357.99877930,82.06982422); //object(strfshcpark69) (1)
  123. CreateDynamicObject(18450,281.78811646,2123.04760742,85.38455200,1.92913818,345.98156738,346.47509766); //object(cs_roadbridge04) (5)
  124. CreateDynamicObject(10629,309.34936523,2111.73779297,25.15957260,0.00000000,0.00000000,0.00000000); //object(queens_04_sfs) (1)
  125. CreateDynamicObject(7555,240.50645447,2239.35498047,53.01930237,0.00000000,0.00000000,90.00000000); //object(bballcpark1) (1)
  126. CreateDynamicObject(18450,205.66430664,2204.25268555,45.57309341,1.73132324,329.98394775,86.99758911); //object(cs_roadbridge04) (6)
  127. CreateDynamicObject(18450,203.25660706,2173.75708008,31.82683182,1.82559204,335.98205566,86.80786133); //object(cs_roadbridge04) (8)
  128. CreateDynamicObject(10394,261.75668335,2055.61596680,19.38010788,0.00000000,0.00000000,0.00000000); //object(plot1_sfs) (1)
  129. CreateDynamicObject(3303,273.22204590,2067.99926758,18.73773575,0.00000000,0.00000000,0.00000000); //object(des_bighus03) (1)
  130. CreateDynamicObject(3303,273.49493408,2051.70556641,18.73773575,0.00000000,0.00000000,0.00000000); //object(des_bighus03) (2)
  131. CreateDynamicObject(3303,249.39376831,2068.24121094,18.73773575,0.00000000,0.00000000,180.00000000); //object(des_bighus03) (3)
  132. CreateDynamicObject(3303,249.34230042,2043.95043945,18.73773575,0.00000000,0.00000000,179.99450684); //object(des_bighus03) (4)
  133. CreateDynamicObject(1634,262.95816040,2084.27734375,17.43794250,11.99707031,0.00000000,181.98449707); //object(landjump2) (16)
  134. CreateDynamicObject(1634,262.46105957,2078.80981445,17.25675392,11.99157715,0.00000000,357.98303223); //object(landjump2) (17)
  135. CreateDynamicObject(4199,228.04954529,2143.53417969,20.72752762,0.00000000,0.00000000,270.00000000); //object(garages1_lan) (1)
  136. CreateDynamicObject(6910,102.56044769,2036.48327637,21.90613556,0.00000000,0.00000000,0.00000000); //object(vgnprtlstation_01) (1)
  137. CreateDynamicObject(14776,494.87713623,2077.00781250,83.35222626,0.00000000,0.00000000,176.00000000); //object(int3int_carupg_int) (1)
  138. CreateDynamicObject(17064,143.59333801,2058.28637695,15.71645737,0.00000000,0.00000000,288.00000000); //object(cw2_garage) (1)
  139. CreateDynamicObject(10282,143.44694519,2124.25805664,18.75538635,0.00000000,0.00000000,0.00000000); //object(mich_int_sfe) (1)
  140. CreateDynamicObject(10282,133.15161133,2123.32202148,18.76105118,0.00000000,0.00000000,0.00000000); //object(mich_int_sfe) (2)
  141. CreateDynamicObject(11391,149.47048950,2104.13403320,18.23409081,0.00000000,0.00000000,0.00000000); //object(hubprops6_sfse) (1)
  142. CreateDynamicObject(11391,165.34185791,2123.88549805,19.22067451,0.00000000,0.00000000,180.00000000); //object(hubprops6_sfse) (2)
  143. CreateDynamicObject(14826,140.93786621,2113.45312500,17.99884987,0.00000000,0.00000000,0.00000000); //object(int_kbsgarage2) (1)
  144. CreateDynamicObject(14826,141.43107605,2108.93066406,17.76234245,0.00000000,0.00000000,0.00000000); //object(int_kbsgarage2) (2)
  145. CreateDynamicObject(14826,142.44447327,2103.52563477,17.48217964,0.00000000,0.00000000,0.00000000); //object(int_kbsgarage2) (3)
  146. CreateDynamicObject(11677,124.66296387,2053.03686523,21.13662720,0.00000000,0.00000000,68.00000000); //object(xen2_countn) (1)
  147. CreateDynamicObject(1443,133.37615967,2066.67822266,16.47530365,0.00000000,0.00000000,80.00000000); //object(dyn_street_sign_1) (1)
  148. CreateDynamicObject(2047,68.13633728,2020.91503906,22.45834732,0.00000000,0.00000000,0.00000000); //object(cj_flag1) (1)
  149. CreateDynamicObject(2745,127.49699402,2128.51391602,17.84615707,0.00000000,0.00000000,0.00000000); //object(cj_stat_3) (1)
  150. CreateDynamicObject(3554,157.64064026,2140.23413086,27.67276764,0.00000000,0.00000000,0.00000000); //object(visagesign04) (1)
  151. CreateDynamicObject(3554,170.94183350,2140.16113281,27.61890030,0.00000000,0.00000000,0.00000000); //object(visagesign04) (2)
  152. CreateDynamicObject(3521,181.53425598,2140.55102539,19.05852699,0.00000000,0.00000000,0.00000000); //object(vgsn_rbstiff) (1)
  153. CreateDynamicObject(3715,38.39371109,2066.64062500,25.63639069,0.00000000,0.00000000,274.00000000); //object(arch_sign) (1)
  154. CreateDynamicObject(3715,37.16772079,2094.69384766,25.89540100,0.00000000,0.00000000,273.99902344); //object(arch_sign) (2)
  155. CreateDynamicObject(3715,35.47429276,2123.49780273,25.82915497,0.00000000,0.00000000,273.99902344); //object(arch_sign) (3)
  156. CreateDynamicObject(5811,67.56576538,2060.98095703,20.92096710,0.00000000,0.00000000,60.00000000); //object(lawnmallsign1) (1)
  157. CreateDynamicObject(966,180.53903198,2137.49389648,16.22656250,0.00000000,0.00000000,100.00000000); //object(bar_gatebar01) (1)
  158. CreateDynamicObject(1634,209.84910583,2247.45703125,56.54318237,11.99157715,0.00000000,181.98303223); //object(landjump2) (18)
  159. CreateDynamicObject(1634,209.80651855,2241.85009766,61.85724258,23.97604370,2.18896484,181.09318542); //object(landjump2) (19)
  160. CreateDynamicObject(1634,205.55078125,2247.25683594,56.54318237,11.99157715,0.00000000,181.98303223); //object(landjump2) (20)
  161. CreateDynamicObject(1634,205.53028870,2241.50512695,62.04318237,25.99157715,0.00000000,181.98303223); //object(landjump2) (21)
  162. CreateDynamicObject(3257,256.10452271,2143.40942383,18.61241913,0.00000000,0.00000000,272.00000000); //object(refinerybox1) (1)
  163. CreateDynamicObject(1676,102.16468811,2041.24035645,18.78657150,0.00000000,0.00000000,0.00000000); //object(washgaspump) (1)
  164. CreateDynamicObject(1676,97.99192810,2042.75854492,18.83782578,0.00000000,0.00000000,0.00000000); //object(washgaspump) (2)
  165. CreateDynamicObject(7073,215.65289307,2140.10644531,41.10772324,0.00000000,0.00000000,30.00000000); //object(vegascowboy1) (1)
  166. CreateDynamicObject(7392,315.87710571,2102.80712891,39.33208466,0.00000000,0.00000000,0.00000000); //object(vegcandysign1) (1)
  167. CreateDynamicObject(3522,227.61605835,2109.04541016,17.73376656,0.00000000,0.00000000,90.00000000); //object(vgsn_flwbdcrb) (1)
  168. CreateDynamicObject(7520,84.06965637,2077.76147461,16.51736832,0.00000000,0.00000000,0.00000000); //object(vgnlowbuild203) (1)
  169. CreateDynamicObject(11439,-2026.49316406,318.99707031,24.66406250,0.00000000,0.00000000,90.00000000); //object(des_woodbr_) (2)
  170. CreateDynamicObject(11439,-1910.03869629,342.57656860,21.70567131,0.00000000,0.00000000,329.99450684); //object(des_woodbr_) (5)
  171. CreateDynamicObject(8875,-2005.13403320,300.69418335,39.79613876,0.00000000,0.00000000,92.00000000); //object(vgsecnstrct14) (1)
  172. CreateDynamicObject(8875,-2001.32092285,299.40856934,39.75499344,0.00000000,0.00000000,51.99951172); //object(vgsecnstrct14) (2)
  173. CreateDynamicObject(18275,-2016.54003906,308.70422363,36.35875702,0.00000000,0.00000000,0.00000000); //object(cw2_mtbfinish) (1)
  174. CreateDynamicObject(18275,-1992.18334961,295.03848267,35.79204559,0.00000000,0.00000000,0.00000000); //object(cw2_mtbfinish) (2)
  175. CreateDynamicObject(7089,-1979.37170410,289.56588745,40.03011322,0.00000000,0.00000000,90.00000000); //object(newscafldvegs02) (1)
  176. CreateDynamicObject(7089,-1978.62670898,281.62863159,50.16832733,0.00000000,0.00000000,90.00000000); //object(newscafldvegs02) (2)
  177. CreateDynamicObject(7089,-1932.59973145,242.63481140,41.53011322,0.00000000,0.00000000,180.00000000); //object(newscafldvegs02) (3)
  178. CreateDynamicObject(7089,-1977.24609375,281.28875732,55.93228149,0.00000000,0.00000000,91.99450684); //object(newscafldvegs02) (4)
  179. CreateDynamicObject(7089,-1975.65332031,279.43597412,66.27954865,0.00000000,0.00000000,89.99401855); //object(newscafldvegs02) (5)
  180. CreateDynamicObject(7089,-1935.28625488,332.96240234,43.14525604,0.00000000,0.00000000,359.98901367); //object(newscafldvegs02) (6)
  181. CreateDynamicObject(7089,-1937.40136719,332.71182251,53.74611664,0.00000000,0.00000000,359.98352051); //object(newscafldvegs02) (7)
  182. CreateDynamicObject(7089,-1936.23583984,331.77819824,62.59697723,0.00000000,0.00000000,359.98352051); //object(newscafldvegs02) (8)
  183. CreateDynamicObject(7089,-1973.92565918,282.06170654,66.52148438,0.00000000,0.00000000,87.98352051); //object(newscafldvegs02) (10)
  184. CreateDynamicObject(7089,-1933.94543457,245.80827332,50.31136322,0.00000000,359.99450684,177.97851562); //object(newscafldvegs02) (11)
  185. CreateDynamicObject(7089,-1925.14550781,247.55636597,60.57613373,0.00000000,359.98901367,177.97851562); //object(newscafldvegs02) (12)
  186. CreateDynamicObject(7089,-1891.66406250,258.16134644,40.46036530,0.00000000,359.98901367,255.97851562); //object(newscafldvegs02) (13)
  187. CreateDynamicObject(7089,-1894.69311523,254.04504395,50.11331940,0.00000000,359.98352051,255.97595215); //object(newscafldvegs02) (14)
  188. CreateDynamicObject(7089,-1897.67004395,203.81265259,46.84244537,0.00000000,359.98352051,275.97595215); //object(newscafldvegs02) (15)
  189. CreateDynamicObject(7089,-1905.12207031,206.23698425,44.76448822,0.00000000,359.97802734,85.97106934); //object(newscafldvegs02) (16)
  190. CreateDynamicObject(7089,-1914.82971191,287.85104370,43.72650909,0.00000000,359.97802734,291.96801758); //object(newscafldvegs02) (17)
  191. CreateDynamicObject(7089,-1909.88745117,288.57443237,53.15531921,0.00000000,359.97802734,281.96716309); //object(newscafldvegs02) (18)
  192. CreateDynamicObject(7089,-1905.74414062,287.80484009,51.66159439,0.00000000,359.97802734,281.96411133); //object(newscafldvegs02) (19)
  193. CreateDynamicObject(7089,-1902.54101562,288.17596436,56.87502289,0.00000000,359.97802734,281.96411133); //object(newscafldvegs02) (20)
  194. CreateDynamicObject(7089,-1976.92492676,279.73062134,64.66889191,0.00000000,359.97802734,89.96411133); //object(newscafldvegs02) (21)
  195. CreateDynamicObject(7017,-1988.89672852,276.13507080,34.17935562,0.00000000,0.00000000,89.99938965); //object(circusconstruct07) (2)
  196. CreateDynamicObject(7017,-1998.39062500,221.90898132,26.74085236,0.00000000,356.00000000,87.99450684); //object(circusconstruct07) (3)
  197. CreateDynamicObject(7017,-1999.84692383,188.95301819,27.17833328,0.00000000,359.99548340,87.98950195); //object(circusconstruct07) (4)
  198. CreateDynamicObject(7017,-2001.23510742,118.07251740,27.53138924,0.00000000,359.98901367,89.97851562); //object(circusconstruct07) (5)
  199. CreateDynamicObject(7017,-2017.75000000,61.69335938,27.82507133,0.00000000,359.98901367,267.98400879); //object(circusconstruct07) (6)
  200. CreateDynamicObject(6867,-2079.90698242,192.52803040,54.07432556,0.00000000,0.00000000,0.00000000); //object(vegasplant06) (1)
  201. CreateDynamicObject(12986,-2006.82641602,139.92024231,28.06169319,0.00000000,0.00000000,0.00000000); //object(sw_well1) (1)
  202. CreateDynamicObject(4848,-1985.26379395,450.63107300,37.05813599,0.00000000,0.00000000,270.00000000); //object(sanpedbeaut) (1)
  203. CreateDynamicObject(7089,-1976.73791504,288.50738525,50.68478775,0.00000000,0.00000000,90.00000000); //object(newscafldvegs02) (22)
  204. CreateDynamicObject(8875,-1993.36364746,244.91836548,40.26737976,0.00000000,0.00000000,351.99829102); //object(vgsecnstrct14) (3)
  205. CreateDynamicObject(5142,-1969.86486816,543.99151611,40.80715561,0.00000000,0.00000000,90.00000000); //object(las2plaza1bit) (1)
  206. CreateDynamicObject(5729,-1983.47009277,410.76522827,38.24286270,0.00000000,0.00000000,180.00000000); //object(melblok02_lawn) (1)
  207. CreateDynamicObject(5729,-1983.34899902,488.31799316,38.24286270,0.00000000,0.00000000,179.99450684); //object(melblok02_lawn) (2)
  208. CreateDynamicObject(1384,-1976.74145508,244.20945740,67.43803406,0.00000000,0.00000000,50.00000000); //object(twrcrane_m_01) (1)
  209. CreateDynamicObject(5126,-2028.15795898,282.45794678,48.60133362,0.00000000,0.00000000,0.00000000); //object(dockcranescale0) (1)
  210. CreateDynamicObject(11406,-2002.03283691,282.29147339,45.36168289,0.00000000,0.00000000,0.00000000); //object(acwinch1b_sfs01) (2)
  211. CreateDynamicObject(7017,-1993.64099121,-72.95140076,33.71890259,0.00000000,359.98901367,87.98400879); //object(circusconstruct07) (6)
  212. CreateDynamicObject(5424,-1989.29248047,-6.64309692,33.39360428,0.00000000,93.99993896,356.00030518); //object(laejeffers04) (1)
  213. CreateDynamicObject(5424,-1989.36682129,-61.71216202,40.13883209,0.00000000,93.99905396,355.99542236); //object(laejeffers04) (2)
  214. CreateDynamicObject(5424,-1991.25231934,-117.66154480,37.83666611,0.00000000,93.99905396,355.99542236); //object(laejeffers04) (3)
  215. CreateDynamicObject(5424,-2021.31054688,-146.47409058,36.44706345,0.00000000,93.99905396,265.99548340); //object(laejeffers04) (4)
  216. CreateDynamicObject(5424,-2044.28564453,-111.19506073,38.73023987,0.00000000,93.99905396,265.99548340); //object(laejeffers04) (5)
  217. CreateDynamicObject(5424,-2014.71386719,-128.69227600,35.02549744,0.00000000,93.99905396,185.99546814); //object(laejeffers04) (6)
  218. CreateDynamicObject(5424,-2079.09643555,-64.15837860,35.90800095,0.00000000,93.99905396,177.99298096); //object(laejeffers04) (7)
  219. CreateDynamicObject(5424,-2079.15087891,-114.33666229,35.90800095,0.00000000,93.99902344,177.98950195); //object(laejeffers04) (8)
  220. CreateDynamicObject(5424,-2101.40771484,-33.14077759,35.75956345,0.00000000,93.99905396,267.98950195); //object(laejeffers04) (9)
  221. CreateDynamicObject(5424,-2101.50097656,-34.36285782,73.79785156,0.00000000,93.99902344,267.98400879); //object(laejeffers04) (10)
  222. CreateDynamicObject(5424,-2158.06689453,30.38822937,35.75956345,0.00000000,93.99905396,173.98400879); //object(laejeffers04) (11)
  223. CreateDynamicObject(5424,-2150.29687500,108.70333862,48.42109299,0.00000000,93.99905396,173.97949219); //object(laejeffers04) (12)
  224. CreateDynamicObject(5424,-2139.16381836,225.73214722,34.75450897,0.00000000,93.99905396,173.97949219); //object(laejeffers04) (13)
  225. CreateDynamicObject(5424,-2137.17431641,279.41885376,42.83180237,0.00000000,93.99905396,173.97949219); //object(laejeffers04) (14)
  226. CreateDynamicObject(5424,-2139.24267578,320.26919556,35.75956345,0.00000000,93.99905396,187.97949219); //object(laejeffers04) (15)
  227. CreateDynamicObject(5424,-2110.42822266,395.81546021,44.11596298,0.00000000,93.99905396,173.97949219); //object(laejeffers04) (16)
  228. CreateDynamicObject(5424,-2133.97119141,503.95465088,35.60331345,0.00000000,93.99905396,173.97949219); //object(laejeffers04) (17)
  229. CreateDynamicObject(5424,-2128.14477539,463.64215088,35.39604950,0.00000000,93.99905396,223.97946167); //object(laejeffers04) (18)
  230. CreateDynamicObject(5424,-2129.39257812,565.10626221,35.60331345,0.00000000,93.99905396,183.97822571); //object(laejeffers04) (19)
  231. CreateDynamicObject(5424,-1885.73876953,595.68078613,34.69449615,0.00000000,93.99905396,353.97705078); //object(laejeffers04) (20)
  232. CreateDynamicObject(5424,-1905.51098633,561.66564941,35.69831467,0.00000000,93.99905396,283.97399902); //object(laejeffers04) (21)
  233. CreateDynamicObject(5424,-1878.47546387,736.24694824,45.88456345,0.00000000,93.99905396,3.96911621); //object(laejeffers04) (22)
  234. CreateDynamicObject(5424,-1897.71716309,746.44427490,45.88456345,0.00000000,93.99905396,83.96606445); //object(laejeffers04) (23)
  235. CreateDynamicObject(5424,-2017.98608398,749.66790771,46.03300095,0.00000000,93.99905396,83.96301270); //object(laejeffers04) (24)
  236. CreateDynamicObject(5424,-2121.26928711,736.89306641,87.47831726,0.00000000,93.99905396,183.96295166); //object(laejeffers04) (25)
  237. CreateDynamicObject(5424,-2117.79199219,651.12628174,61.28823090,0.00000000,93.99905396,183.96058655); //object(laejeffers04) (26)
  238. CreateDynamicObject(5424,-1911.79431152,352.18341064,45.10140610,0.00000000,93.99905396,13.96057129); //object(laejeffers04) (27)
  239. CreateDynamicObject(5424,-1913.85998535,399.61312866,35.97790909,0.00000000,93.99905396,13.95812988); //object(laejeffers04) (28)
  240. CreateDynamicObject(5424,-1898.84582520,450.86367798,35.75956345,0.00000000,93.99905396,313.95816040); //object(laejeffers04) (29)
  241. CreateDynamicObject(5424,-1899.79760742,511.90859985,44.22634888,0.00000000,93.99905396,63.95629883); //object(laejeffers04) (30)
  242. CreateDynamicObject(5424,-1924.60681152,329.60861206,32.36769867,0.00000000,93.99905396,1.95141602); //object(laejeffers04) (31)
  243. CreateDynamicObject(5424,-2138.96093750,311.61218262,40.50051880,0.00000000,93.99902344,173.97949219); //object(laejeffers04) (32)
  244. CreateDynamicObject(5424,-1986.58837891,47.70615387,27.47074318,0.00000000,93.99905396,355.99545288); //object(laejeffers04) (33)
  245. CreateDynamicObject(5424,-1957.94921875,93.02339935,26.72236061,0.00000000,93.99905396,355.99542236); //object(laejeffers04) (34)
  246. CreateDynamicObject(5424,-1958.98608398,63.74965668,28.65760231,0.00000000,93.99905396,265.99548340); //object(laejeffers04) (35)
  247. CreateDynamicObject(5424,-1954.90747070,188.23022461,24.11762619,0.00000000,93.99905396,355.99548340); //object(laejeffers04) (36)
  248. CreateDynamicObject(5424,-1955.04772949,138.68986511,38.73103333,0.00000000,93.99905396,355.98995972); //object(laejeffers04) (3)
  249.  
  250. // Textdraws
  251.  
  252. Death = TextDrawCreate(130.000000, 141.000000, "~r~ YOU HAVE ~b~DIED~n~~w~ EPIC FAIL");
  253. TextDrawBackgroundColor(Death, 255);
  254. TextDrawFont(Death, 1);
  255. TextDrawLetterSize(Death, 1.510000, 9.000000);
  256. TextDrawColor(Death, -1);
  257. TextDrawSetOutline(Death, 0);
  258. TextDrawSetProportional(Death, 1);
  259. TextDrawSetShadow(Death, 1);
  260.  
  261. SetTimer("MoneyM",2000,true);
  262. SetTimer("ScoreM",2000,true);
  263. SetTimer("cHealth",2000,true);
  264.  
  265. ZMMESSAGE = TextDrawCreate(427.000000, 390.000000, "~w~Halloween~n~~r~ZOMBIE-MOD");
  266. TextDrawBackgroundColor(ZMMESSAGE, 255);
  267. TextDrawFont(ZMMESSAGE, 1);
  268. TextDrawLetterSize(ZMMESSAGE, 0.500000, 2.899999);
  269. TextDrawColor(ZMMESSAGE, -1);
  270. TextDrawSetOutline(ZMMESSAGE, 0);
  271. TextDrawSetProportional(ZMMESSAGE, 1);
  272. TextDrawSetShadow(ZMMESSAGE, 1);
  273.  
  274. for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
  275. {
  276. Deaths[playerid] = TextDrawCreate(20.000000, 414.000000, "~r~Deaths~w~[]");
  277. TextDrawBackgroundColor(Deaths[playerid], 255);
  278. TextDrawFont(Deaths[playerid], 1);
  279. TextDrawLetterSize(Deaths[playerid], 0.500000, 1.000000);
  280. TextDrawColor(Deaths[playerid], -1);
  281. TextDrawSetOutline(Deaths[playerid], 0);
  282. TextDrawSetProportional(Deaths[playerid], 1);
  283. TextDrawSetShadow(Deaths[playerid], 1);
  284.  
  285. cHP[playerid] = TextDrawCreate(20.000000, 429.000000, "~b~CurrentHP~w~[100]");
  286. TextDrawBackgroundColor(cHP[playerid], 255);
  287. TextDrawFont(cHP[playerid], 1);
  288. TextDrawLetterSize(cHP[playerid], 0.500000, 1.000000);
  289. TextDrawColor(cHP[playerid], -1);
  290. TextDrawSetOutline(cHP[playerid], 0);
  291. TextDrawSetProportional(cHP[playerid], 1);
  292. TextDrawSetShadow(cHP[playerid], 1);
  293.  
  294. Money[playerid] = TextDrawCreate(150.000000, 430.000000, "~r~Money~w~[]");
  295. TextDrawBackgroundColor(Money[playerid], 255);
  296. TextDrawFont(Money[playerid], 1);
  297. TextDrawLetterSize(Money[playerid], 0.500000, 1.000000);
  298. TextDrawColor(Money[playerid], -1);
  299. TextDrawSetOutline(Money[playerid], 0);
  300. TextDrawSetProportional(Money[playerid], 1);
  301. TextDrawSetShadow(Money[playerid], 1);
  302.  
  303. Score[playerid] = TextDrawCreate(150.000000, 411.000000, "~b~Score~w~[]");
  304. TextDrawBackgroundColor(Score[playerid], 255);
  305. TextDrawFont(Score[playerid], 1);
  306. TextDrawLetterSize(Score[playerid], 0.500000, 1.000000);
  307. TextDrawColor(Score[playerid], -1);
  308. TextDrawSetOutline(Score[playerid], 0);
  309. TextDrawSetProportional(Score[playerid], 1);
  310. TextDrawSetShadow(Score[playerid], 1);
  311.  
  312. // exp number
  313. EXPNUM[playerid] = TextDrawCreate(274.000000, 378.000000, "~w~ 0/~r~20");
  314. TextDrawBackgroundColor(EXPNUM[playerid], 255);
  315. TextDrawFont(EXPNUM[playerid], 1);
  316. TextDrawLetterSize(EXPNUM[playerid], 0.500000, 1.100000);
  317. TextDrawColor(EXPNUM[playerid], -1);
  318. TextDrawSetOutline(EXPNUM[playerid], 0);
  319. TextDrawSetProportional(EXPNUM[playerid], 1);
  320. TextDrawSetShadow(EXPNUM[playerid], 1);
  321. //bar
  322. Bar[playerid] = TextDrawCreate(220.000000, 385.000000, "~b~ GET A KILL");
  323. TextDrawBackgroundColor(Bar[playerid], 255);
  324. TextDrawFont(Bar[playerid], 1);
  325. TextDrawLetterSize(Bar[playerid], 0.500000, 1.900000);
  326. TextDrawColor(Bar[playerid], -1);
  327. TextDrawSetOutline(Bar[playerid], 0);
  328. TextDrawSetProportional(Bar[playerid], 1);
  329. TextDrawSetShadow(Bar[playerid], 1);
  330. }
  331.  
  332. Textdraw5 = TextDrawCreate(425.000000, 370.000000, "~r~Current~b~Verison~n~~w~V1.0 SA-MP 0.3b");
  333. TextDrawBackgroundColor(Textdraw5, 255);
  334. TextDrawFont(Textdraw5, 1);
  335. TextDrawLetterSize(Textdraw5, 0.500000, 1.200000);
  336. TextDrawColor(Textdraw5, -1);
  337. TextDrawSetOutline(Textdraw5, 0);
  338. TextDrawSetProportional(Textdraw5, 1);
  339. TextDrawSetShadow(Textdraw5, 1);
  340.  
  341. Textdraw0 = TextDrawCreate(230.000000, 390.000000, "~n~");
  342. TextDrawBackgroundColor(Textdraw0, 255);
  343. TextDrawFont(Textdraw0, 1);
  344. TextDrawLetterSize(Textdraw0, 0.500000, 1.000000);
  345. TextDrawColor(Textdraw0, -1);
  346. TextDrawSetOutline(Textdraw0, 0);
  347. TextDrawSetProportional(Textdraw0, 1);
  348. TextDrawSetShadow(Textdraw0, 1);
  349. TextDrawUseBox(Textdraw0, 1);
  350. TextDrawBoxColor(Textdraw0, 840829490);
  351. TextDrawTextSize(Textdraw0, 401.000000, 0.000000);
  352.  
  353. Textdraw1 = TextDrawCreate(267.000000, 368.000000, "~r~ EXP");
  354. TextDrawBackgroundColor(Textdraw1, 255);
  355. TextDrawFont(Textdraw1, 1);
  356. TextDrawLetterSize(Textdraw1, 0.919999, 1.200000);
  357. TextDrawColor(Textdraw1, -1);
  358. TextDrawSetOutline(Textdraw1, 0);
  359. TextDrawSetProportional(Textdraw1, 1);
  360. TextDrawSetShadow(Textdraw1, 1);
  361.  
  362. for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
  363. {
  364. TextDrawShowForPlayer(playerid, Deaths[playerid]);
  365. TextDrawShowForPlayer(playerid, cHP[playerid]);
  366. TextDrawShowForPlayer(playerid, Money[playerid]);
  367. TextDrawShowForPlayer(playerid, Score[playerid]);
  368. }
  369.  
  370. for(new i; i < MAX_PLAYERS; i ++)
  371. {
  372. if(IsPlayerConnected(i))
  373. {
  374. TextDrawShowForPlayer(i, ZMMESSAGE);
  375. TextDrawShowForPlayer(i, Textdraw5);
  376. TextDrawShowForPlayer(i, Textdraw0);
  377. TextDrawShowForPlayer(i, Textdraw1);
  378. TextDrawShowForPlayer(i, Bar[i]);
  379. TextDrawShowForPlayer(i, EXPNUM[i]);
  380. }
  381. }
  382.  
  383. return 1;
  384. }
  385.  
  386. public OnGameModeExit()
  387. {
  388. TextDrawHideForAll(Death);
  389. TextDrawDestroy(Death);
  390. TextDrawHideForAll(Textdraw0);
  391. TextDrawDestroy(Textdraw0);
  392. TextDrawHideForAll(Textdraw1);
  393. TextDrawDestroy(Textdraw1);
  394. TextDrawHideForAll(ZMMESSAGE);
  395. TextDrawDestroy(ZMMESSAGE);
  396. TextDrawHideForAll(Textdraw5);
  397. TextDrawDestroy(Textdraw5);
  398. for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
  399. {
  400. TextDrawHideForAll(EXPNUM[playerid]);
  401. TextDrawDestroy(EXPNUM[playerid]);
  402. TextDrawHideForAll(Bar[playerid]);
  403. TextDrawDestroy(Bar[playerid]);
  404. TextDrawHideForAll(Deaths[playerid]);
  405. TextDrawDestroy(Deaths[playerid]);
  406. TextDrawHideForAll(cHP[playerid]);
  407. TextDrawDestroy(cHP[playerid]);
  408. TextDrawHideForAll(Money[playerid]);
  409. TextDrawDestroy(Money[playerid]);
  410. TextDrawHideForAll(Score[playerid]);
  411. TextDrawDestroy(Score[playerid]);
  412. }
  413. return 1;
  414. }
  415. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  416. {
  417. if(newkeys & KEY_FIRE)
  418. {
  419. if(GetPlayerWeapon(playerid) == 4)
  420. {
  421. new victimid = GetClosestPlayer(playerid);
  422. if(IsPlayerConnected(victimid))
  423. {
  424. if(GetDistanceBetweenPlayers(playerid,victimid) < 2)
  425. {
  426. new Float:health;
  427. GetPlayerHealth(victimid, health);
  428. SetPlayerHealth(victimid, health - 20.0);
  429. return 1;
  430. }
  431. }
  432. }
  433. }
  434. return 1;
  435. }
  436. forward Float:GetDistanceBetweenPlayers(p1,p2); // Up top of script
  437.  
  438. forward GetClosestPlayer(p1); // Up top of script
  439.  
  440. public Float:GetDistanceBetweenPlayers(p1,p2)
  441. {
  442. new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
  443. if(!IsPlayerConnected(p1) || !IsPlayerConnected(p2))
  444. {
  445. return -1.00;
  446. }
  447. GetPlayerPos(p1,x1,y1,z1);
  448. GetPlayerPos(p2,x2,y2,z2);
  449. return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
  450. }
  451.  
  452. public GetClosestPlayer(p1)
  453. {
  454. new x,Float:dis,Float:dis2,player;
  455. player = -1;
  456. dis = 99999.99;
  457. for (x=0;x<MAX_PLAYERS;x++)
  458. {
  459. if(IsPlayerConnected(x))
  460. {
  461. if(x != p1)
  462. {
  463. dis2 = GetDistanceBetweenPlayers(x,p1);
  464. if(dis2 < dis && dis2 != -1.00)
  465. {
  466. dis = dis2;
  467. player = x;
  468. }
  469. }
  470. }
  471. }
  472. return player;
  473. }
  474. forward MoneyM(playerid);
  475. public MoneyM(playerid)
  476. {
  477. new Mon = GetPlayerMoney(playerid);
  478. new string5[48];
  479. format(string5, sizeof(string), "~r~Money~w~[$%d]", Mon);
  480. TextDrawSetString(Money[playerid],string5);
  481. return 1;
  482. }
  483. forward ScoreM(playerid);
  484. public ScoreM(playerid)
  485. {
  486. new string2[128];
  487. new ScoreMM = GetPlayerScore(playerid);
  488. format(string2, sizeof(string), "~b~Score~w~[%d]",ScoreMM);
  489. TextDrawSetString(Score[playerid],string2);
  490. return 1;
  491. }
  492. forward cHealth(playerid);
  493. public cHealth(playerid)
  494. {
  495. new Float:health;
  496. new string3[128];
  497. GetPlayerHealth(playerid,health);
  498. if (health < 100.0)
  499. {
  500. format(string3, sizeof(string), "~b~CurrentHP~w~[100]");
  501. TextDrawSetString(cHP[playerid],string3);
  502. }
  503. if (health < 95.0)
  504. {
  505. format(string3, sizeof(string), "~b~CurrentHP~w~[95]");
  506. TextDrawSetString(cHP[playerid],string3);
  507. }
  508. if (health < 90.0)
  509. {
  510. format(string3, sizeof(string), "~b~CurrentHP~w~[90]");
  511. TextDrawSetString(cHP[playerid],string3);
  512. }
  513. if (health < 85.0)
  514. {
  515. format(string3, sizeof(string), "~b~CurrentHP~w~[85]");
  516. TextDrawSetString(cHP[playerid],string3);
  517. }
  518. if (health < 80.0)
  519. {
  520. format(string3, sizeof(string), "~b~CurrentHP~w~[80]");
  521. TextDrawSetString(cHP[playerid],string3);
  522. }
  523. if (health < 75.0)
  524. {
  525. format(string3, sizeof(string), "~b~CurrentHP~w~[75]");
  526. TextDrawSetString(cHP[playerid],string3);
  527. }
  528. if (health < 70.0)
  529. {
  530. format(string3, sizeof(string), "~b~CurrentHP~w~[70]");
  531. TextDrawSetString(cHP[playerid],string3);
  532. }
  533. if (health < 65.0)
  534. {
  535. format(string3, sizeof(string), "~b~CurrentHP~w~[65]");
  536. TextDrawSetString(cHP[playerid],string3);
  537. }
  538. if (health < 60.0)
  539. {
  540. format(string3, sizeof(string), "~b~CurrentHP~w~[60]");
  541. TextDrawSetString(cHP[playerid],string3);
  542. }
  543. if (health < 55.0)
  544. {
  545. format(string3, sizeof(string), "~b~CurrentHP~w~[55]");
  546. TextDrawSetString(cHP[playerid],string3);
  547. }
  548. if (health < 50.0)
  549. {
  550. format(string3, sizeof(string), "~b~CurrentHP~w~[50]");
  551. TextDrawSetString(cHP[playerid],string3);
  552. }
  553. if (health < 45.0)
  554. {
  555. format(string3, sizeof(string), "~b~CurrentHP~w~[45]");
  556. TextDrawSetString(cHP[playerid],string3);
  557. }
  558. if (health < 40.0)
  559. {
  560. format(string3, sizeof(string), "~b~CurrentHP~w~[40]");
  561. TextDrawSetString(cHP[playerid],string3);
  562. }
  563. if (health < 35.0)
  564. {
  565. format(string3, sizeof(string), "~b~CurrentHP~w~[35]");
  566. TextDrawSetString(cHP[playerid],string3);
  567. }
  568. if (health < 30.0)
  569. {
  570. format(string3, sizeof(string), "~b~CurrentHP~w~[30]");
  571. TextDrawSetString(cHP[playerid],string3);
  572. }
  573. if (health < 25.0)
  574. {
  575. format(string3, sizeof(string), "~b~CurrentHP~w~[25]");
  576. TextDrawSetString(cHP[playerid],string3);
  577. }
  578. if (health < 20.0)
  579. {
  580. format(string3, sizeof(string), "~b~CurrentHP~w~[20]");
  581. TextDrawSetString(cHP[playerid],string3);
  582. }
  583. if (health < 15.0)
  584. {
  585. format(string3, sizeof(string), "~b~CurrentHP~w~[15]");
  586. TextDrawSetString(cHP[playerid],string3);
  587. }
  588. if (health < 10.0)
  589. {
  590. format(string3, sizeof(string), "~b~CurrentHP~w~[10]");
  591. TextDrawSetString(cHP[playerid],string3);
  592. }
  593. if (health < 5.0)
  594. {
  595. format(string3, sizeof(string), "~b~CurrentHP~w~[5]");
  596. TextDrawSetString(cHP[playerid],string3);
  597. }
  598. if (health < 0.0)
  599. {
  600. format(string3, sizeof(string), "~b~CurrentHP~w~[0]");
  601. TextDrawSetString(cHP[playerid],string3);
  602. }
  603.  
  604. return 1;
  605. }
  606. forward HideMessage(playerid);
  607. public HideMessage(playerid)
  608. {
  609. TextDrawHideForPlayer(playerid, Death);
  610. TextDrawDestroy(Death);
  611. return 1;
  612. }
  613. public OnPlayerDeath(playerid, killerid, reason)
  614. {
  615. TextDrawShowForPlayer(playerid, Death);
  616. SetTimerEx("HideMessage", 2000, 0, "i", killerid);
  617. new string10[48];
  618. Deathss[playerid] ++;
  619. format(string10, sizeof(string), "~r~Deaths~w~[%d]",Deathss[playerid]);
  620. TextDrawSetString(Deaths[playerid],string10);
  621.  
  622. new msg[64];
  623. new score = GetPlayerScore(killerid);
  624. SetPlayerScore(killerid, score+1);
  625. format(msg, sizeof(msg),"EXP: %d/20",score+1);
  626. TextDrawSetString(EXPNUM[killerid],msg);
  627. GivePlayerMoney(killerid, 12000);
  628. GameTextForPlayer(killerid, "~p~1+ ~w~EXP Experience! ~n~~g~+$12000!!",6000,4);
  629.  
  630. switch(GetPlayerScore(killerid))
  631. {
  632. case 1:
  633. {
  634. TextDrawSetString(Bar[killerid],"~b~l");
  635. TextDrawSetString(EXPNUM[killerid],"~w~ 1/~r~20");
  636. }
  637. case 2:
  638. {
  639. TextDrawSetString(Bar[killerid],"~b~ll");
  640. TextDrawSetString(EXPNUM[killerid],"~w~ 2/~r~20");
  641. }
  642. case 3:
  643. {
  644. TextDrawSetString(Bar[killerid],"~b~lll");
  645. TextDrawSetString(EXPNUM[killerid],"~w~ 3/~r~20");
  646. }
  647. case 4:
  648. {
  649. TextDrawSetString(Bar[killerid],"~b~llll");
  650. TextDrawSetString(EXPNUM[killerid],"~w~ 4/~r~20");
  651. }
  652. case 5:
  653. {
  654. TextDrawSetString(Bar[killerid],"~b~lllll");
  655. TextDrawSetString(EXPNUM[killerid],"~w~ 5/~r~20");
  656. }
  657. case 6:
  658. {
  659. TextDrawSetString(Bar[killerid],"~b~llllll");
  660. TextDrawSetString(EXPNUM[killerid],"~w~ 6/~r~20");
  661. }
  662. case 7:
  663. {
  664. TextDrawSetString(Bar[killerid],"~b~lllllll");
  665. TextDrawSetString(EXPNUM[killerid],"~w~ 7/~r~20");
  666. }
  667. case 8:
  668. {
  669. TextDrawSetString(Bar[killerid],"~b~llllllll");
  670. TextDrawSetString(EXPNUM[killerid],"~w~ 8/~r~20");
  671. }
  672. case 9:
  673. {
  674. TextDrawSetString(Bar[killerid],"~b~lllllllll");
  675. TextDrawSetString(EXPNUM[killerid],"~w~ 9/~r~20");
  676. }
  677. case 10:
  678. {
  679. TextDrawSetString(Bar[killerid],"~b~llllllllll");
  680. TextDrawSetString(EXPNUM[killerid],"~w~ 10/~r~20");
  681. }
  682. case 11:
  683. {
  684. TextDrawSetString(Bar[killerid],"~b~lllllllllll");
  685. TextDrawSetString(EXPNUM[killerid],"~w~ 11/~r~20");
  686. }
  687. case 12:
  688. {
  689. TextDrawSetString(Bar[killerid],"~b~llllllllllll");
  690. TextDrawSetString(EXPNUM[killerid],"~w~ 12/~r~20");
  691. }
  692. case 13:
  693. {
  694. TextDrawSetString(Bar[killerid],"~b~lllllllllllll");
  695. TextDrawSetString(EXPNUM[killerid],"~w~ 13/~r~20");
  696. }
  697. case 14:
  698. {
  699. TextDrawSetString(Bar[killerid],"~b~llllllllllllll");
  700. TextDrawSetString(EXPNUM[killerid],"~w~ 14/~r~20");
  701. }
  702. case 15:
  703. {
  704. TextDrawSetString(Bar[killerid],"~b~lllllllllllllll");
  705. TextDrawSetString(EXPNUM[killerid],"~w~ 15/~r~20");
  706. }
  707. case 16:
  708. {
  709. TextDrawSetString(Bar[killerid],"~b~llllllllllllllll");
  710. TextDrawSetString(EXPNUM[killerid],"~w~ 16/~r~20");
  711. }
  712. case 17:
  713. {
  714. TextDrawSetString(Bar[killerid],"~b~lllllllllllllllll");
  715. TextDrawSetString(EXPNUM[killerid],"~w~ 17/~r~20");
  716. }
  717. case 18:
  718. {
  719. TextDrawSetString(Bar[killerid],"~b~llllllllllllllllll");
  720. TextDrawSetString(EXPNUM[killerid],"~w~ 18/~r~~20");
  721. }
  722. case 19:
  723. {
  724. TextDrawSetString(Bar[killerid],"~b~lllllllllllllllllll");
  725. TextDrawSetString(EXPNUM[killerid],"~w~ 19/~r~20");
  726. }
  727. case 20:
  728. {
  729. TextDrawSetString(Bar[killerid],"~b~lllllllllllllllllllll");
  730. TextDrawSetString(EXPNUM[killerid],"~w~ 20/~r~20");
  731. new name[MAX_PLAYER_NAME], string6[100];
  732. GetPlayerName(playerid, name, sizeof(name));
  733. format(string6, sizeof(string), "Player * %s Has been finshed with the EXP System ** Desert Eagle unlocked for him", name);
  734. SendClientMessageToAll(COLOR_ORANGE, string6);
  735. GivePlayerWeapon(playerid,24,100);
  736. SetPlayerHealth(playerid,100.0);
  737. }
  738. }
  739. return 1;
  740. }
  741.  
  742.  
  743. public OnPlayerRequestClass(playerid, classid)
  744. {
  745. SetPlayerPos(playerid, -1959.4025,700.4174,46.5625);
  746. SetPlayerCameraPos(playerid, -1958.2029,711.0995,53.6375);
  747. SetPlayerCameraLookAt(playerid, -1959.4025,700.4174,46.5625);
  748. SetPlayerFacingAngle(playerid,357.4232);
  749.  
  750. if(classid == 0)
  751. {
  752. GameTextForPlayer(playerid,"~b~ Human- Medic~w~Objective:Survive the Infection",1000,4);
  753. cTeam[playerid] = TEAM_MEDIC;
  754. }
  755. else if(classid == 1)
  756. {
  757. GameTextForPlayer(playerid,"~r~ Zombie ~w~Objective: Eat brains",1000,4);
  758. cTeam[playerid] = TEAM_ZOMBIE;
  759. }
  760. else if(classid == 2)
  761. {
  762. GameTextForPlayer(playerid,"~b~ Human- Solider ~w~Objective:Survive the Infection",1000,4);
  763. cTeam[playerid] = TEAM_SOLIDER;
  764. }
  765. else if(classid == 3)
  766. {
  767. GameTextForPlayer(playerid,"~r~ Zombie 2 ~w~Objective: Eat brains",1000,4);
  768. cTeam[playerid] = TEAM_ZOMBIE2;
  769. }
  770. else if(classid == 4)
  771. {
  772. GameTextForPlayer(playerid,"~b~ Human- Police ~w~Objective:Survive the Infection",1000,4);
  773. cTeam[playerid] = TEAM_POLICE;
  774. }
  775. else if(classid == 5)
  776. {
  777. GameTextForPlayer(playerid,"~b~ Human- Survivor ~w~Objective:Survive the Infection",1000,4);
  778. cTeam[playerid] = TEAM_SURVIVOR;
  779. }
  780.  
  781.  
  782.  
  783. return 1;
  784. }
  785.  
  786. public OnPlayerConnect(playerid)
  787. {
  788. SetPVarString(playerid,"Language","American");
  789.  
  790.  
  791. //--Weapon Skills--//
  792. SetPlayerSkillLevel(playerid, WEAPONSKILL_SAWNOFF_SHOTGUN, 0);
  793. SetPlayerSkillLevel(playerid, WEAPONSKILL_PISTOL, 0);
  794. SetPlayerSkillLevel(playerid, WEAPONSKILL_PISTOL_SILENCED, 0);
  795. SetPlayerSkillLevel(playerid, WEAPONSKILL_DESERT_EAGLE, 0);
  796. SetPlayerSkillLevel(playerid, WEAPONSKILL_SHOTGUN, 0);
  797. SetPlayerSkillLevel(playerid, WEAPONSKILL_SPAS12_SHOTGUN, 0);
  798. SetPlayerSkillLevel(playerid, WEAPONSKILL_MICRO_UZI, 0);
  799. SetPlayerSkillLevel(playerid, WEAPONSKILL_MP5, 0);
  800. SetPlayerSkillLevel(playerid, WEAPONSKILL_AK47, 0);
  801. SetPlayerSkillLevel(playerid, WEAPONSKILL_M4, 0);
  802. SetPlayerSkillLevel(playerid, WEAPONSKILL_SNIPERRIFLE, 0);
  803.  
  804.  
  805. return 1;
  806. }
  807.  
  808. public OnPlayerDisconnect(playerid, reason)
  809. {
  810. return 1;
  811. }
  812.  
  813. public OnPlayerSpawn(playerid)
  814. {
  815. SetPlayerTime(playerid,20,0);
  816. SetPlayerWeather(playerid, 32);
  817. GameTextForPlayer(playerid,"~r~ Type ~n~ ~w~ /obj ~n~ ~r~ For The objectives",6000,3);
  818. TextDrawShowForPlayer(playerid, Textdraw1);
  819. TextDrawShowForPlayer(playerid, Textdraw0);
  820. TextDrawShowForPlayer(playerid, Bar[playerid]);
  821. TextDrawShowForPlayer(playerid, EXPNUM[playerid]);
  822. TextDrawShowForPlayer(playerid, ZMMESSAGE);
  823. TextDrawShowForPlayer(playerid, Deaths[playerid]);
  824. TextDrawShowForPlayer(playerid, cHP[playerid]);
  825. TextDrawShowForPlayer(playerid, Money[playerid]);
  826. TextDrawShowForPlayer(playerid, Score[playerid]);
  827. TextDrawShowForPlayer(playerid, Textdraw5);
  828.  
  829. if(cTeam[playerid] == TEAM_MEDIC)
  830. {
  831. GivePlayerWeapon(playerid,M4,500);
  832. GivePlayerWeapon(playerid,SHOTGUN,10);
  833. GivePlayerWeapon(playerid,DEAGLE,50);
  834. SetPlayerTeam(playerid,TEAM_MEDIC);
  835. SetPlayerColor(playerid,TEAMMEDICSOLIDERPOLICESURVIVOR_COLOR);
  836. SendClientMessage(playerid,COLOR_WHITE,"SERVER: You are a MEDIC you can heal others or heal your self by typing /heal or /healhim id");
  837. SetPlayerHealth(playerid,35.0);
  838. }
  839. else if(cTeam[playerid] == TEAM_SOLIDER)
  840. {
  841. GivePlayerWeapon(playerid,AK47,500);
  842. GivePlayerWeapon(playerid,MP5,1000);
  843. GivePlayerWeapon(playerid,DEAGLE,50);
  844. SetPlayerTeam(playerid,TEAM_SOLIDER);
  845. SetPlayerColor(playerid,TEAMMEDICSOLIDERPOLICESURVIVOR_COLOR);
  846. SetPlayerHealth(playerid,100.0);
  847. }
  848. else if(cTeam[playerid] == TEAM_POLICE)
  849. {
  850. GivePlayerWeapon(playerid,M4,500);
  851. GivePlayerWeapon(playerid,TEC9,1000);
  852. GivePlayerWeapon(playerid,GRENADE,50);
  853. SetPlayerTeam(playerid,TEAM_POLICE);
  854. SetPlayerColor(playerid,TEAMMEDICSOLIDERPOLICESURVIVOR_COLOR);
  855. SetPlayerHealth(playerid,100.0);
  856. }
  857. else if(cTeam[playerid] == TEAM_SURVIVOR)
  858. {
  859. GivePlayerWeapon(playerid,AK47,500);
  860. GivePlayerWeapon(playerid,MP5,1000);
  861. GivePlayerWeapon(playerid,BASEBALL,50);
  862. SetPlayerTeam(playerid,TEAM_SURVIVOR);
  863. SetPlayerColor(playerid,TEAMMEDICSOLIDERPOLICESURVIVOR_COLOR);
  864. SetPlayerHealth(playerid,100.0);
  865. }
  866. else if(cTeam[playerid] == TEAM_ZOMBIE)
  867. {
  868. GivePlayerWeapon(playerid,KNIFE,1000);
  869. SetPlayerTeam(playerid,TEAM_ZOMBIE);
  870. SetPlayerColor(playerid,TEAM_COLORZOMBIE);
  871. SetPlayerHealth(playerid,65.0);
  872. }
  873. else if(cTeam[playerid] == TEAM_ZOMBIE2)
  874. {
  875. GivePlayerWeapon(playerid,KNIFE,1000);
  876. SetPlayerTeam(playerid,TEAM_ZOMBIE);
  877. SetPlayerColor(playerid,TEAM_COLORZOMBIE);
  878. SetPlayerHealth(playerid,100.0);
  879. }
  880.  
  881.  
  882.  
  883. return 1;
  884. }
  885.  
  886.  
  887.  
  888. public OnPlayerText(playerid, text[])
  889. {
  890. new playername[MAX_PLAYER_NAME], PlayersLanguage[12];
  891. GetPlayerName(playerid, playername, sizeof(playername));
  892. GetPVarString(playerid, "Language", PlayersLanguage, 12);
  893. format(string, sizeof(string), "[%s Language] %s: %s", PlayersLanguage, playername, text);
  894. NearbyMessageForPlayers(playerid, 0xFFFFFFAA, string);
  895. return 0;
  896. }
  897. public OnPlayerCommandText(playerid, cmdtext[])
  898. {
  899.  
  900.  
  901. if(strcmp("/heal", cmdtext, true, 10) == 0)
  902. if(cTeam[playerid] == TEAM_MEDIC)
  903. {
  904. SetPlayerHealth(playerid,100);
  905. SendClientMessageToAll(COLOR_LIGHTBLUE,"MEDIC: Has healed him self");
  906. return 1;
  907. }
  908.  
  909. if(strcmp("/class", cmdtext, true, 10) == 0)
  910. {
  911. ForceClassSelection(playerid);
  912. return 1;
  913. }
  914.  
  915. if(strcmp("/kill", cmdtext, true, 10) == 0)
  916. {
  917. SetPlayerHealth(playerid,0);
  918. return 1;
  919. }
  920.  
  921. if (strcmp("/lang", cmdtext, true, 10) == 0)
  922. {
  923. ShowPlayerDialog(playerid, DialogIDChangeOnProblems, DIALOG_STYLE_LIST, "Language selection", "American\nRussian\nBritish\nItalian\nDutch\nFrance\nAustralian\nAfrican\nChinese", "Select", "Quit");
  924. return 1;
  925. }
  926.  
  927. if(strcmp("/cmds", cmdtext, true, 10) == 0)
  928. {
  929. SendClientMessage(playerid,COLOR_RED,"-----COMMANDS-----");
  930. SendClientMessage(playerid,COLOR_LIGHTBLUE,"MEDIC: /heal /healhim");
  931. SendClientMessage(playerid,COLOR_LIGHTBLUE,"SOLIDER: Coming soon");
  932. SendClientMessage(playerid,COLOR_LIGHTBLUE,"POLICE: Coming soon");
  933. SendClientMessage(playerid,COLOR_LIGHTBLUE,"SURVIVOR: Coming soon");
  934. SendClientMessage(playerid,COLOR_LIGHTBLUE,"ZOMBIE: Coming soon");
  935. return 1;
  936. }
  937.  
  938. if(strcmp("/help", cmdtext, true, 10) == 0)
  939. {
  940. SendClientMessage(playerid,COLOR_RED,"-----HELP-----");
  941. SendClientMessage(playerid,COLOR_LIGHTBLUE,"Welcome to San Fierro Zombie Infection Made for halloween");
  942. SendClientMessage(playerid,COLOR_LIGHTBLUE,"This is a server with fully self scripted by kitten");
  943. SendClientMessage(playerid,COLOR_LIGHTBLUE,"What do you do in this server / gamemode");
  944. SendClientMessage(playerid,COLOR_LIGHTBLUE,"There are 5 teams");
  945. SendClientMessage(playerid,COLOR_LIGHTBLUE,"Medic,Solider,Police,Survivor,Zombie");
  946. SendClientMessage(playerid,COLOR_LIGHTBLUE," For Objectives for each team please goto /obj");
  947. return 1;
  948. }
  949.  
  950. if(strcmp("/obj", cmdtext, true, 10) == 0)
  951. {
  952. SendClientMessage(playerid,COLOR_RED,"-----TEAM OBJECTIVES-----");
  953. SendClientMessage(playerid,COLOR_LIGHTBLUE,"Medic: Heal others survive the Infection");
  954. SendClientMessage(playerid,COLOR_LIGHTBLUE,"SOLIDER: Keep the survivors, police , medics alive");
  955. SendClientMessage(playerid,COLOR_LIGHTBLUE,"Police: Do not let any civilian DIE and survive the Infection");
  956. SendClientMessage(playerid,COLOR_LIGHTBLUE,"Survivor: Survive the Infection");
  957. SendClientMessage(playerid,COLOR_LIGHTBLUE,"Zombie: Eat human brains by knifing them if u knife the humans they lose 50 hp for 1 hit");
  958. return 1;
  959. }
  960.  
  961. new
  962. index,
  963. cmd[20];
  964. cmd = strtok(cmdtext, index);
  965. if (strcmp(cmd, "/healhim", true) == 0)
  966. if(cTeam[playerid] == TEAM_MEDIC)
  967. {
  968. new
  969. tmp[20],
  970. id;
  971. tmp = strtok(cmdtext, index);
  972. if (strlen(tmp))
  973. {
  974. id = strval(tmp);
  975. if (IsPlayerConnected(id))
  976. {
  977. SetPlayerHealth(id, 35.0);
  978. SendClientMessage(id, 0x00FF00AA, "You have been healed by medic survivor");
  979. SendClientMessage(playerid, 0x00FF00AA, "you have healed the survivor");
  980. }
  981. else
  982. {
  983. SendClientMessage(playerid, 0xFF0000AA, "Player not found");
  984. }
  985. }
  986. else
  987. {
  988. SendClientMessage(playerid, 0xFF0000AA, "Usage: \"/heal <playerid>\"");
  989. }
  990. return 1;
  991. }
  992. return 0;
  993. }
  994.  
  995.  
  996.  
  997. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  998. {
  999. if(dialogid == DialogIDChangeOnProblems)
  1000. {
  1001. switch( listitem )
  1002. {
  1003. case 0:
  1004. {
  1005. SetPVarString(playerid,"Language", "American");
  1006. }
  1007. case 1:
  1008. {
  1009. SetPVarString(playerid,"Language", "Russian");
  1010. }
  1011. case 2:
  1012. {
  1013. SetPVarString(playerid,"Language","British");
  1014. }
  1015. case 3:
  1016. {
  1017. SetPVarString(playerid,"Language","Italian");
  1018. }
  1019. case 4:
  1020. {
  1021. SetPVarString(playerid,"Language","Dutch");
  1022. }
  1023. case 5:
  1024. {
  1025. SetPVarString(playerid,"Language","France");
  1026. }
  1027. case 6:
  1028. {
  1029. SetPVarString(playerid,"Language","Australian");
  1030. }
  1031. case 7:
  1032. {
  1033. SetPVarString(playerid,"Language","African");
  1034. }
  1035. case 8:
  1036. {
  1037. SetPVarString(playerid,"Language","Chinese");
  1038. }
  1039. }
  1040. }
  1041. }
  1042.  
  1043. public NearbyMessageForPlayers( playerid, stringcolour, text[])
  1044. {
  1045. new Float:PosX, Float:PosY, Float:PosZ;
  1046. for(new p = 0; p < MAX_PLAYERS; p++)
  1047. {
  1048. if(IsPlayerConnected( p ))
  1049. {
  1050. GetPlayerPos( playerid, PosX, PosY, PosZ );
  1051. if(IsPlayerInRangeOfPoint(p, 12, PosX, PosY, PosZ) )
  1052. {
  1053. if(GetPlayerInterior( playerid ) == GetPlayerInterior( p ) && GetPlayerVirtualWorld( playerid ) == GetPlayerVirtualWorld( p ) )
  1054. {
  1055. SendClientMessage(p, stringcolour, text);
  1056. }
  1057. }
  1058. }
  1059. }
  1060. return 1;
  1061. }
  1062.  
  1063. //--Stuff not using only codes--//
  1064. strtok(const string2[], &index)
  1065. {
  1066. new length = strlen(string2);
  1067. while ((index < length) && (string2[index] <= ' '))
  1068. {
  1069. index++;
  1070. }
  1071.  
  1072. new offset = index;
  1073. new result[20];
  1074. while ((index < length) && (string2[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  1075. {
  1076. result[index - offset] = string2[index];
  1077. index++;
  1078. }
  1079. result[index - offset] = EOS;
  1080. return result;
  1081. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement