Guest User

DR

a guest
Oct 6th, 2013
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 36.54 KB | None | 0 0
  1. //Includes
  2. #include <a_samp>
  3. #include <dini>
  4.  
  5. //Farben
  6. #define ROT 0xFF3C00FF
  7. #define GELB 0xFFFA00FF
  8. #define BLAU 0x0041FFFF
  9. #define ORANGE 0xFF9600FF
  10. #define GRÜN 0x00FF00FF
  11. #define PINK 0xFF00D7FF
  12. #define GRAU 0xC8C8C8FF
  13.  
  14. //Dialoge
  15. #define REGISTER 1
  16. #define LOGIN 2
  17. #define CREDITS 3
  18.  
  19. //Pickup news
  20. new LSPDEnter;
  21. new LSPDExit;
  22.  
  23. //Enums
  24.  
  25. enum SpielerDaten
  26. {
  27. Adminlevel,
  28. Level,
  29. Fraktion,
  30. Team,
  31. Geld
  32.  
  33. };
  34.  
  35. //dcmd
  36. #define dcmd(%1,%2,%3) if(!strcmp((%3)[1],#%1, true, (%2)) && ((((%3) [ (%2) + 1]
  37.  
  38. new sSpieler[MAX_PLAYERS][SpielerDaten];
  39.  
  40. main()
  41. {
  42. print("\n----------------------------------");
  43. print(" Server wurde gestartet!");
  44. print(" Map: LS/SF/LV/Bayside");
  45. print(" Scriptet by [DR]Rivellon19");
  46. print(" Skype name : Max_Stone3");
  47. print("----------------------------------\n");
  48. }
  49.  
  50. public OnGameModeInit()
  51. {
  52. SetGameModeText("German Reallife");
  53. AddPlayerClass(17,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Männlich 1
  54. AddPlayerClass(20,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Männlich 2
  55. AddPlayerClass(21,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Männlich 3
  56. AddPlayerClass(22,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Männlich 4
  57. AddPlayerClass(23,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Männlich 5
  58. AddPlayerClass(24,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Männlich 6
  59. AddPlayerClass(25,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Männlich 7
  60. AddPlayerClass(28,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Männlich 8
  61. AddPlayerClass(29,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Männlich 9
  62. AddPlayerClass(11,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Weiblich 1
  63. AddPlayerClass(12,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Weiblich 2
  64. AddPlayerClass(69,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Weiblich 3
  65. AddPlayerClass(76,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Weiblich 4
  66. AddPlayerClass(90,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Weiblich 5
  67. AddPlayerClass(91,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Weiblich 6
  68. AddPlayerClass(148,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Weiblich 7
  69. AddPlayerClass(150,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Weiblich 8
  70. AddPlayerClass(190,1765.1514,-1931.3848,13.5671,42.4661,0,0,0,0,0,0);//Weiblich 9
  71.  
  72. //Auto pickups weg
  73. DisableInteriorEnterExits();
  74.  
  75. //Pickup´s
  76. LSPDEnter = CreatePickup(1239, 1, 1555.0566,-1674.8755,16.1953);
  77. LSPDExit = CreatePickup(1239, 1, 246.1941,62.3963,1003.6461);
  78. CreatePickup(1274, 1, 1785.8668,-1891.3445,13.4483);
  79.  
  80. //3DTexte
  81. Create3DTextLabel("Los Santos Police Department\n -Um zu betreten einfach reinlaufen-",BLAU,1555.0566,-1674.8755,16.1953,30.0,0,0);
  82. Create3DTextLabel("Los Santos Police Department\n -Um zu verlassen einfach reinlaufen-",BLAU,246.1941,62.3963,1003.6461,30.0,0,0);
  83. Create3DTextLabel("Schreibe (/mieten)für ein roller\n Kosten : 400$",ORANGE,1785.8668,-1891.3445,13.4483,30.0,0,0);
  84.  
  85. //Noobspawn
  86. CreateObject(18981, 1794.32959, -1923.26538, 11.92830, 0.00000, 90.00000, 90.00000);
  87. CreateObject(18981, 1794.30920, -1898.46631, 11.92830, 0.00000, 90.00000, 90.00000);
  88. CreateObject(18981, 1799.19409, -1892.08533, 11.94830, 0.00000, 90.00000, 90.00000);
  89. CreateObject(18981, 1786.44617, -1894.15259, 11.94830, 0.00000, 90.00000, 90.00000);
  90. CreateObject(18981, 1786.58167, -1918.87756, 11.94830, 0.00000, 90.00000, 90.00000);
  91. CreateObject(18981, 1786.68591, -1923.33398, 11.94830, 0.00000, 90.00000, 90.00000);
  92. CreateObject(4100, 1779.28516, -1883.38831, 14.08829, 0.00000, 0.00000, 52.80168);
  93. CreateObject(4100, 1785.73279, -1883.46753, 14.08829, 0.00000, 0.00000, 52.80168);
  94. CreateObject(717, 1786.08398, -1890.50110, 12.44367, 0.00000, 0.00000, 0.00000);
  95. CreateObject(717, 1779.62122, -1890.54663, 12.44367, 0.00000, 0.00000, 0.00000);
  96. CreateObject(967, 1810.96118, -1895.49158, 12.56724, 0.00000, 0.00000, 0.00000);
  97. CreateObject(966, 1811.33801, -1894.56226, 12.44240, 0.00000, 0.00000, 270.00000);
  98. CreateObject(968, 1811.30566, -1894.52710, 13.17880, 0.00000, 0.00000, 90.00000);
  99. CreateObject(19126, 1811.38794, -1886.65503, 12.96630, 0.00000, 0.00000, 0.00000);
  100. CreateObject(19126, 1811.37476, -1885.78040, 12.96630, 0.00000, 0.00000, 0.00000);
  101. CreateObject(19126, 1811.36548, -1884.92566, 12.96630, 0.00000, 0.00000, 0.00000);
  102. CreateObject(19126, 1811.24695, -1884.13330, 12.96630, 0.00000, 0.00000, 0.00000);
  103. CreateObject(19126, 1810.97522, -1883.49402, 12.96630, 0.00000, 0.00000, 0.00000);
  104. CreateObject(19126, 1810.63293, -1882.80737, 12.96630, 0.00000, 0.00000, 0.00000);
  105. CreateObject(19126, 1810.46350, -1882.06604, 12.96630, 0.00000, 0.00000, 0.00000);
  106. CreateObject(19126, 1810.98767, -1896.53992, 12.96630, 0.00000, 0.00000, 0.00000);
  107. CreateObject(19126, 1811.40076, -1897.30310, 12.96630, 0.00000, 0.00000, 0.00000);
  108. CreateObject(19126, 1811.39856, -1898.13550, 12.96630, 0.00000, 0.00000, 0.00000);
  109. CreateObject(19126, 1811.37024, -1898.93176, 12.96630, 0.00000, 0.00000, 0.00000);
  110. CreateObject(19126, 1811.04871, -1899.55408, 12.96630, 0.00000, 0.00000, 0.00000);
  111. CreateObject(19425, 1811.37610, -1889.49182, 12.42090, 0.00000, 0.00000, 90.00000);
  112. CreateObject(19425, 1811.36694, -1892.75598, 12.42090, 0.00000, 0.00000, 90.00000);
  113. CreateObject(983, 1774.34167, -1886.88989, 13.16490, 0.00000, 0.00000, 0.00000);
  114. CreateObject(983, 1774.35168, -1893.28076, 13.16490, 0.00000, 0.00000, 0.00000);
  115. CreateObject(1237, 1774.40283, -1896.47437, 12.48180, 0.00000, 0.00000, 0.00000);
  116. CreateObject(983, 1774.35168, -1902.95215, 13.16490, 0.00000, 0.00000, 0.00000);
  117. CreateObject(1237, 1774.39075, -1899.79138, 12.48180, 0.00000, 0.00000, 0.00000);
  118. CreateObject(983, 1774.34717, -1909.33838, 13.16490, 0.00000, 0.00000, 0.00000);
  119. CreateObject(983, 1774.32776, -1915.69897, 13.16490, 0.00000, 0.00000, 0.00000);
  120. CreateObject(983, 1774.31897, -1922.07349, 13.16490, 0.00000, 0.00000, 0.00000);
  121. CreateObject(983, 1774.30164, -1928.45325, 13.16490, 0.00000, 0.00000, 0.00000);
  122. CreateObject(983, 1774.31323, -1932.25464, 13.16490, 0.00000, 0.00000, 0.00000);
  123. CreateObject(983, 1777.52124, -1935.50659, 13.16490, 0.00000, 0.00000, 90.00000);
  124. CreateObject(983, 1783.88721, -1935.52747, 13.16490, 0.00000, 0.00000, 90.00000);
  125. CreateObject(983, 1790.28735, -1935.55566, 13.16490, 0.00000, 0.00000, 90.00000);
  126. CreateObject(983, 1796.65796, -1935.53796, 13.16490, 0.00000, 0.00000, 90.00000);
  127. CreateObject(983, 1803.04871, -1935.55347, 13.16490, 0.00000, 0.00000, 90.00000);
  128. CreateObject(983, 1803.40930, -1935.55481, 13.16490, 0.00000, 0.00000, 90.00000);
  129. CreateObject(983, 1806.60791, -1932.36755, 13.16490, 0.00000, 0.00000, 0.00000);
  130. CreateObject(983, 1806.63416, -1925.98364, 13.16490, 0.00000, 0.00000, 0.00000);
  131. CreateObject(983, 1806.61841, -1919.61560, 13.16490, 0.00000, 0.00000, 0.00000);
  132. CreateObject(983, 1806.62756, -1913.23450, 13.16490, 0.00000, 0.00000, 0.00000);
  133. CreateObject(983, 1806.61340, -1909.88818, 13.16490, 0.00000, 0.00000, 0.00000);
  134. CreateObject(983, 1806.78943, -1903.47656, 13.16490, 0.00000, 0.00000, 357.26111);
  135. CreateObject(983, 1808.58057, -1897.56702, 13.16490, 0.00000, 0.00000, 328.50577);
  136. CreateObject(1251, 1803.44421, -1900.21216, 12.52050, 0.00000, 0.00000, 90.00000);
  137. CreateObject(1251, 1803.53149, -1905.01733, 12.52050, 0.00000, 0.00000, 90.00000);
  138. CreateObject(1251, 1803.48303, -1909.87549, 12.52050, 0.00000, 0.00000, 90.00000);
  139. CreateObject(1251, 1803.57361, -1914.80737, 12.52050, 0.00000, 0.00000, 90.00000);
  140. CreateObject(1251, 1803.27991, -1919.63904, 12.52050, 0.00000, 0.00000, 90.00000);
  141. CreateObject(1251, 1803.40076, -1924.43201, 12.52050, 0.00000, 0.00000, 90.00000);
  142. CreateObject(1251, 1803.32764, -1929.79565, 12.52050, 0.00000, 0.00000, 90.00000);
  143. CreateObject(1251, 1777.82642, -1899.83813, 12.52050, 0.00000, 0.00000, 90.00000);
  144. CreateObject(1251, 1777.74512, -1906.10388, 12.52050, 0.00000, 0.00000, 90.00000);
  145. CreateObject(1251, 1777.69641, -1910.92981, 12.52050, 0.00000, 0.00000, 90.00000);
  146. CreateObject(1251, 1777.53662, -1915.69055, 12.52050, 0.00000, 0.00000, 90.00000);
  147. CreateObject(1251, 1777.58228, -1920.43713, 12.52050, 0.00000, 0.00000, 90.00000);
  148. CreateObject(1251, 1777.51416, -1925.27063, 12.52050, 0.00000, 0.00000, 90.00000);
  149. CreateObject(1251, 1777.69739, -1930.30212, 12.52050, 0.00000, 0.00000, 90.00000);
  150. CreateObject(1251, 1777.79980, -1935.48413, 12.52050, 0.00000, 0.00000, 90.00000);
  151. CreateObject(6965, 1761.89270, -1895.93774, 15.17903, 0.00000, 0.00000, 0.00000);
  152. CreateObject(3515, 1767.25208, -1904.99573, 12.06071, 0.00000, 0.00000, 0.00000);
  153. CreateObject(3515, 1767.72620, -1886.18689, 12.06071, 0.00000, 0.00000, 0.00000);
  154. CreateObject(1368, 1759.26233, -1920.43127, 13.29433, 0.00000, 0.00000, 90.04691);
  155. CreateObject(1368, 1759.35742, -1928.11377, 13.29433, 0.00000, 0.00000, 90.04691);
  156. CreateObject(1368, 1751.52441, -1916.52466, 13.29433, 0.00000, 0.00000, 90.04691);
  157. CreateObject(1368, 1751.47546, -1925.70447, 13.29433, 0.00000, 0.00000, 90.04691);
  158. CreateObject(19338, 1794.95850, -1900.08521, 29.89713, 0.00000, 0.00000, 0.00000);
  159.  
  160. //Neue LSPD base
  161. CreateObject(19366, 248.68159, 70.82670, 1002.56018, 0.00000, 90.00000, 0.00000);
  162. CreateObject(19366, 245.20570, 70.82670, 1002.56018, 0.00000, 90.00000, 0.00000);
  163. CreateObject(19366, 241.73610, 70.82670, 1002.56018, 0.00000, 90.00000, 0.00000);
  164. CreateObject(19366, 248.65781, 67.67290, 1002.56018, 0.00000, 90.00000, 0.00000);
  165. CreateObject(19366, 245.20570, 67.67290, 1002.56018, 0.00000, 90.00000, 0.00000);
  166. CreateObject(19366, 241.73610, 67.67290, 1002.56018, 0.00000, 90.00000, 0.00000);
  167. CreateObject(19366, 248.67931, 64.50231, 1002.56018, 0.00000, 90.00000, 0.00000);
  168. CreateObject(19366, 245.20570, 64.50230, 1002.56018, 0.00000, 90.00000, 0.00000);
  169. CreateObject(19366, 241.73610, 64.50230, 1002.56018, 0.00000, 90.00000, 0.00000);
  170. CreateObject(19366, 248.67720, 61.43345, 1002.56018, 0.00000, 90.00000, 0.00000);
  171. CreateObject(19366, 245.20570, 61.43350, 1002.56018, 0.00000, 90.00000, 0.00000);
  172. CreateObject(19366, 241.73610, 61.43350, 1002.56018, 0.00000, 90.00000, 0.00000);
  173. CreateObject(2604, 228.43001, 82.16631, 1004.77002, 0.00000, 0.00000, 0.00000);
  174. CreateObject(2611, 228.60562, 82.54381, 1006.45355, 0.00000, 0.00000, 0.00000);
  175. CreateObject(2604, 233.47070, 82.17530, 1004.77002, 0.00000, 0.00000, 0.00000);
  176. CreateObject(2604, 238.61304, 82.14745, 1004.77002, 0.00000, 0.00000, 0.00000);
  177. CreateObject(2356, 239.66960, 81.09625, 1004.03967, 0.00000, 0.00000, 0.00000);
  178. CreateObject(2356, 238.02141, 80.97912, 1004.03967, 0.00000, 0.00000, 0.00000);
  179. CreateObject(2356, 234.62044, 81.16654, 1004.03967, 0.00000, 0.00000, 0.00000);
  180. CreateObject(2356, 232.89000, 80.96586, 1004.03967, 0.00000, 0.00000, 0.00000);
  181. CreateObject(2356, 229.42560, 80.86033, 1004.03967, 0.00000, 0.00000, 0.00000);
  182. CreateObject(2356, 227.68336, 80.84460, 1004.03967, 0.00000, 0.00000, 0.00000);
  183. CreateObject(2611, 233.46584, 82.51717, 1006.45355, 0.00000, 0.00000, 0.00000);
  184. CreateObject(2611, 238.72589, 82.51936, 1006.45355, 0.00000, 0.00000, 0.00000);
  185. CreateObject(2172, 229.87061, 76.82263, 1004.03955, 0.00000, 0.00000, 0.00000);
  186. CreateObject(2172, 229.11699, 75.06926, 1004.03961, 0.00000, 0.00000, 90.00000);
  187. CreateObject(2172, 231.62286, 76.08784, 1004.03961, 0.00000, 0.00000, 270.00000);
  188. CreateObject(2172, 232.49042, 75.08439, 1004.03961, 0.00000, 0.00000, 90.00000);
  189. CreateObject(2172, 233.23405, 76.86330, 1004.03955, 0.00000, 0.00000, 0.00000);
  190. CreateObject(2172, 234.96753, 76.14823, 1004.03961, 0.00000, 0.00000, 270.00000);
  191. CreateObject(2172, 235.83737, 75.12008, 1004.03961, 0.00000, 0.00000, 90.00000);
  192. CreateObject(2172, 236.58844, 76.86792, 1004.03955, 0.00000, 0.00000, 0.00000);
  193. CreateObject(2356, 237.14830, 75.44966, 1004.03967, 0.00000, 0.00000, 0.00000);
  194. CreateObject(2356, 233.68974, 75.37527, 1004.03967, 0.00000, 0.00000, 0.00000);
  195. CreateObject(2356, 230.30838, 75.24767, 1004.03967, 0.00000, 0.00000, 0.00000);
  196. CreateObject(2610, 234.97150, 77.04420, 1004.83411, 0.00000, 0.00000, 180.00000);
  197. CreateObject(2610, 235.81236, 77.06042, 1004.83411, 0.00000, 0.00000, 180.00000);
  198. CreateObject(2610, 232.41194, 76.99763, 1004.83411, 0.00000, 0.00000, 180.00000);
  199. CreateObject(2610, 231.67195, 76.98803, 1004.83411, 0.00000, 0.00000, 180.00000);
  200. CreateObject(2610, 228.94649, 76.92435, 1004.83411, 0.00000, 0.00000, 180.00000);
  201.  
  202.  
  203. return 1;
  204. }
  205.  
  206. public OnGameModeExit()
  207. {
  208. return 1;
  209. }
  210.  
  211. public OnPlayerRequestClass(playerid, classid)
  212. {
  213. SetPlayerPos(playerid, 1873.9717,-1944.7021,18.6563);
  214. SetPlayerCameraPos(playerid, 1876.7629,-1944.7490,18.6563);
  215. SetPlayerCameraLookAt(playerid, 1873.9717,-1944.7021,18.6563);
  216. return 1;
  217. }
  218.  
  219. public OnPlayerConnect(playerid)
  220. {
  221. //====================Entfrente objecte====================//
  222. //Noobspawn
  223. RemoveBuildingForPlayer(playerid, 5024, 1748.8438, -1883.0313, 14.1875, 0.25);
  224. RemoveBuildingForPlayer(playerid, 5083, 1748.8438, -1883.0313, 14.1875, 0.25);
  225. //LSPD base
  226. RemoveBuildingForPlayer(playerid, 2610, 229.6094, 77.2422, 1004.8984, 0.25);
  227. RemoveBuildingForPlayer(playerid, 2610, 229.6094, 77.7656, 1004.8984, 0.25);
  228. RemoveBuildingForPlayer(playerid, 2356, 230.1250, 70.8672, 1004.0234, 0.25);
  229. RemoveBuildingForPlayer(playerid, 2605, 230.4063, 72.1172, 1004.4609, 0.25);
  230. RemoveBuildingForPlayer(playerid, 2356, 230.7266, 75.9922, 1004.0234, 0.25);
  231. RemoveBuildingForPlayer(playerid, 2605, 231.0469, 77.1719, 1004.4609, 0.25);
  232. RemoveBuildingForPlayer(playerid, 2607, 231.0313, 78.0469, 1004.4609, 0.25);
  233. RemoveBuildingForPlayer(playerid, 2605, 231.4063, 81.1563, 1004.4609, 0.25);
  234. RemoveBuildingForPlayer(playerid, 2605, 235.3047, 75.0938, 1004.4609, 0.25);
  235. RemoveBuildingForPlayer(playerid, 2610, 233.8672, 75.7188, 1004.8984, 0.25);
  236. RemoveBuildingForPlayer(playerid, 2607, 235.2891, 75.9688, 1004.4609, 0.25);
  237. RemoveBuildingForPlayer(playerid, 2610, 233.8672, 76.2344, 1004.8984, 0.25);
  238. RemoveBuildingForPlayer(playerid, 2605, 235.0547, 80.2891, 1004.4609, 0.25);
  239. RemoveBuildingForPlayer(playerid, 2607, 235.0391, 81.1641, 1004.4609, 0.25);
  240. RemoveBuildingForPlayer(playerid, 2610, 236.3594, 70.7188, 1004.8984, 0.25);
  241. RemoveBuildingForPlayer(playerid, 2610, 237.3047, 70.7188, 1004.8984, 0.25);
  242. RemoveBuildingForPlayer(playerid, 2605, 238.0078, 72.1172, 1004.4609, 0.25);
  243. RemoveBuildingForPlayer(playerid, 2612, 241.2500, 71.9375, 1005.8516, 0.25);
  244. RemoveBuildingForPlayer(playerid, 14844, 242.2813, 72.0391, 1005.0781, 0.25);
  245. RemoveBuildingForPlayer(playerid, 2610, 241.0078, 73.3438, 1004.8984, 0.25);
  246. RemoveBuildingForPlayer(playerid, 2610, 241.0078, 73.8594, 1004.8984, 0.25);
  247. RemoveBuildingForPlayer(playerid, 2356, 235.4688, 77.3594, 1004.0234, 0.25);
  248. RemoveBuildingForPlayer(playerid, 2610, 236.5078, 80.5469, 1004.8984, 0.25);
  249. RemoveBuildingForPlayer(playerid, 2610, 236.5078, 81.0625, 1004.8984, 0.25);
  250. RemoveBuildingForPlayer(playerid, 2607, 240.3125, 80.4063, 1004.4609, 0.25);
  251. RemoveBuildingForPlayer(playerid, 2605, 240.3203, 79.5313, 1004.4609, 0.25);
  252.  
  253. //Login and Register
  254. new Spieler[64];
  255. new Sname[MAX_PLAYER_NAME];
  256. GetPlayerName(playerid,Sname,sizeof(Sname));
  257. format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",Sname);
  258. if(dini_Exists(Spieler))
  259. {//Falls der spieler einen account hat > Wichtig für Login! <
  260. SendClientMessage(playerid,GRÜN,".:Datenbank:.");
  261. SendClientMessage(playerid,GRÜN,"Wilkommen auf Dynamic Roleplay , dein Account wurde Gefunden.");
  262. ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_INPUT,"Login","Dein account wurde gefunden , bitte gebe das Passwort ein das du beim Regestieren eingegeben hast!","Login","Abbrechen");
  263. }
  264. else
  265. { //Falls der spieler kein account hat > Wichtig für Register! <
  266. SendClientMessage(playerid,GRÜN,".:Datenbank:.");
  267. SendClientMessage(playerid,GRÜN,"Wilkommen auf Dynamic Roleplay , dein Account wurde leider nicht gefunden.");
  268. ShowPlayerDialog(playerid,REGISTER,DIALOG_STYLE_INPUT,"Registieren","Bitte schreibe dein Passwort hier rein , das du auch zukünftig benutzen musst!","Regestieren","Abbrechen");
  269. }
  270. return 1;
  271. }
  272.  
  273. public OnPlayerDisconnect(playerid, reason)
  274. {
  275. SpielerSpeichern(playerid);
  276. return 1;
  277. }
  278.  
  279. public OnPlayerSpawn(playerid)
  280. {
  281. return 1;
  282. }
  283.  
  284. public OnPlayerDeath(playerid, killerid, reason)
  285. {
  286. return 1;
  287. }
  288.  
  289. public OnVehicleSpawn(vehicleid)
  290. {
  291. return 1;
  292. }
  293.  
  294. public OnVehicleDeath(vehicleid, killerid)
  295. {
  296. return 1;
  297. }
  298.  
  299. public OnPlayerText(playerid, text[])
  300. {
  301. return 1;
  302. }
  303.  
  304. public OnPlayerCommandText(playerid, cmdtext[])
  305. {
  306. dcmd(makeadmin, 9, cmdtext);
  307. if (strcmp("/Credits", cmdtext, true, 10) == 0)
  308. {
  309. ShowPlayerDialog(playerid,CREDITS,DIALOG_STYLE_MSGBOX,"Die Credits","Die Credits gehn an :\nScripter :-: Max_McCain\n Mapper :-: Max_McCain\n Projektleiter :-: Max_McCain","Fertig","Fertig");
  310. return 1;
  311. }
  312. if (strcmp("/mieten", cmdtext, true, 10) == 0)
  313. {
  314. if(IsPlayerInRangeOfPoint(playerid, 7.0, 1785.8668,-1891.3445,13.4483))
  315. {
  316. GivePlayerMoney(playerid, -400);
  317. SendClientMessage(playerid,BLAU,"Du hast dir ein Roller für 400Dollar gemietet!");
  318. AddStaticVehicle(462,1783.2631,-1885.7655,13.0481,180.6985,13,13); // spawnroller
  319. return 1;
  320. }
  321. else
  322. {
  323. SendClientMessage(playerid,ROT,"Du bist nicht am Noobspawn ( Verleih)!");
  324. return 1;
  325. }
  326. }
  327. if(strcmp("/Restart", cmdtext, true, 10) == 0)
  328. {
  329. if(IstSpielerAdmin(playerid, 6))
  330. {
  331. SendRconCommand("gmx");
  332. }
  333. else
  334. {
  335. SendClientMessage(playerid,ROT,"Du bist kein Scripter oder höhere admin rang!");
  336. }
  337. return 1;
  338. }
  339. return 0;
  340. }
  341.  
  342. //DCMD Befehle
  343.  
  344. dcmd_makeadmin(playerid, params[])
  345. {
  346. new pid,level;
  347. if(sscanf(params,"ud", pid , level))
  348. {
  349. return SendClientMessage(playerid, GRAU,"Verwendung . /makeadmin [Spieler id] [Adminlevel]);
  350. }
  351. if(IstSpielerAdmin(playerid, 8))
  352. {
  353. if(pid == INVALID_PLAYER_ID)
  354. {
  355. return SendClientMessage(playerid,ROT,"Der spieler muss auf dem server sein!");
  356. }
  357. if(IstSpielerAdmin(pid,level))
  358. {
  359. return SendClientMessage(playerid,ROT,"Der Spieler hat schon das Gewünschte Adminlevel!");
  360. }
  361. else
  362. {
  363. sSpieler[pid][Adminlevel] = level;
  364. SendClientMessage(pid, GELB , "Du bist nun ein Adminstrator");
  365. SendClientMessage(player, GELB,"Das Adminlevel ist erfolgreich an dem Spieler angekommen!");
  366. }
  367. }
  368. else
  369. {
  370. return SendClientMessage(playerid,ROT,"Du bist kein Projektleiter!");
  371. }
  372. return 1;
  373. }
  374.  
  375. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  376. {
  377. return 1;
  378. }
  379.  
  380. public OnPlayerExitVehicle(playerid, vehicleid)
  381. {
  382. return 1;
  383. }
  384.  
  385. public OnPlayerStateChange(playerid, newstate, oldstate)
  386. {
  387. return 1;
  388. }
  389.  
  390. public OnPlayerEnterCheckpoint(playerid)
  391. {
  392. return 1;
  393. }
  394.  
  395. public OnPlayerLeaveCheckpoint(playerid)
  396. {
  397. return 1;
  398. }
  399.  
  400. public OnPlayerEnterRaceCheckpoint(playerid)
  401. {
  402. return 1;
  403. }
  404.  
  405. public OnPlayerLeaveRaceCheckpoint(playerid)
  406. {
  407. return 1;
  408. }
  409.  
  410. public OnRconCommand(cmd[])
  411. {
  412. return 1;
  413. }
  414.  
  415. public OnPlayerRequestSpawn(playerid)
  416. {
  417. return 1;
  418. }
  419.  
  420. public OnObjectMoved(objectid)
  421. {
  422. return 1;
  423. }
  424.  
  425. public OnPlayerObjectMoved(playerid, objectid)
  426. {
  427. return 1;
  428. }
  429.  
  430. public OnPlayerPickUpPickup(playerid, pickupid)
  431. {
  432. if(pickupid == LSPDEnter)
  433. {
  434. SendClientMessage(playerid,GELB,"Du hast das Los Santos Police Department betreten!");
  435. SetPlayerPos(playerid,246.7839,63.9007,1003.6461);
  436. SetPlayerFacingAngle(playerid,0.0000);
  437. SetPlayerInterior(playerid,6);
  438. return 1;
  439. }
  440. if(pickupid == LSPDExit)
  441. {
  442. SendClientMessage(playerid,GELB,"Du hast das Los Santos Police Department verlassen!");
  443. SetPlayerPos(playerid,1552.4479,-1674.9889,16.1953);
  444. SetPlayerFacingAngle(playerid,90.0000);
  445. SetPlayerInterior(playerid,0);
  446. return 1;
  447. }
  448. return 1;
  449. }
  450.  
  451. public OnVehicleMod(playerid, vehicleid, componentid)
  452. {
  453. return 1;
  454. }
  455.  
  456. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  457. {
  458. return 1;
  459. }
  460.  
  461. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  462. {
  463. return 1;
  464. }
  465.  
  466. public OnPlayerSelectedMenuRow(playerid, row)
  467. {
  468. return 1;
  469. }
  470.  
  471. public OnPlayerExitedMenu(playerid)
  472. {
  473. return 1;
  474. }
  475.  
  476. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  477. {
  478. return 1;
  479. }
  480.  
  481. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  482. {
  483. return 1;
  484. }
  485.  
  486. public OnRconLoginAttempt(ip[], password[], success)
  487. {
  488. return 1;
  489. }
  490.  
  491. public OnPlayerUpdate(playerid)
  492. {
  493. return 1;
  494. }
  495.  
  496. public OnPlayerStreamIn(playerid, forplayerid)
  497. {
  498. return 1;
  499. }
  500.  
  501. public OnPlayerStreamOut(playerid, forplayerid)
  502. {
  503. return 1;
  504. }
  505.  
  506. public OnVehicleStreamIn(vehicleid, forplayerid)
  507. {
  508. return 1;
  509. }
  510.  
  511. public OnVehicleStreamOut(vehicleid, forplayerid)
  512. {
  513. return 1;
  514. }
  515.  
  516. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  517. {
  518. if(dialogid == LOGIN)
  519. {
  520. if(response == 0)
  521. {
  522. SendClientMessage(playerid,ROT,"Du hast den Login vorgang abgebrochen!");
  523. Kick(playerid);
  524. return 1;
  525. }
  526. if(response == 1)
  527. {
  528. Login(playerid,inputtext);
  529. return 1;
  530. }
  531. }
  532. if(dialogid == REGISTER)
  533. {
  534. if(response == 0)
  535. {
  536. SendClientMessage(playerid,ROT,"Du hast die Regestration abgebrochen!");
  537. Kick(playerid);
  538. return 1;
  539. }
  540. if(response == 1)
  541. {
  542. if(!strlen(inputtext))
  543. {
  544. SendClientMessage(playerid,ORANGE,"Du hast nix eingegeben , bitte versuchen sie es erneut!");
  545. ShowPlayerDialog(playerid,REGISTER,DIALOG_STYLE_INPUT,"Registieren","Bitte schreibe dein Passwort hier rein , das du auch zukünftig benutzen musst!","Regestieren","Abbrechen");
  546. return 1;
  547. }
  548. Register(playerid,inputtext);
  549. return 1;
  550. }
  551. return 1;
  552. }
  553. return 1;
  554. }
  555.  
  556. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  557. {
  558. return 1;
  559. }
  560.  
  561. stock Register(playerid,Key[])
  562. {
  563. new Spieler[64];
  564. new Sname[MAX_PLAYER_NAME];
  565. GetPlayerName(playerid,Sname,sizeof(Sname));
  566. format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",Sname);
  567. dini_Create(Spieler);
  568. dini_Set(Spieler,"Passwort",Key);
  569. dini_IntSet(Spieler,"Adminlevel",0);
  570. dini_IntSet(Spieler,"Level",0);
  571. dini_IntSet(Spieler,"Fraktion",0);
  572. dini_IntSet(Spieler,"Job",0);
  573. dini_IntSet(Spieler,"Team",0);
  574. dini_IntSet(Spieler,"Geld",10000);
  575. SendClientMessage(playerid,BLAU,"Du hast dich Erfolgreich regestiert");
  576. SpielerReset(playerid);
  577. GivePlayerMoney(playerid,10000);
  578. return 1;
  579. }
  580.  
  581. stock Login(playerid,key[])
  582. {
  583. new Spieler[64];
  584. new Sname[MAX_PLAYER_NAME];
  585. GetPlayerName(playerid,Sname,sizeof(Sname));
  586. format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",Sname);
  587. if(!strcmp(key,dini_Get(Spieler,"Passwort"),true))
  588. {
  589. SendClientMessage(playerid,GRÜN,"Du hast dich Erfolgreich eingeloggt!");
  590. SpielerLaden(playerid);
  591. return 1;
  592. }
  593. else
  594. {
  595. SendClientMessage(playerid,BLAU,"Du hast ein Falsches Passwort eingegeben!");
  596. ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_INPUT,"Login","Dein account wurde gefunden , bitte gebe das Passwort ein das du beim Regestieren eingegeben hast!","Login","Abbrechen");
  597. return 1;
  598. }
  599. }
  600.  
  601. stock SpielerSpeichern(playerid)
  602. {
  603. new Spieler[64];
  604. new Sname[MAX_PLAYER_NAME];
  605. GetPlayerName(playerid,Sname,sizeof(Sname));
  606. format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",Sname);
  607. if(dini_Exists(Spieler))
  608. {
  609. dini_IntSet(Spieler,"Adminlevel",sSpieler[playerid][Adminlevel]);
  610. dini_IntSet(Spieler,"Adminlevel",sSpieler[playerid][Level]);
  611. dini_IntSet(Spieler,"Adminlevel",sSpieler[playerid][Fraktion]);
  612. dini_IntSet(Spieler,"Adminlevel",sSpieler[playerid][Team]);
  613. return 1;
  614. }
  615. return 1;
  616. }
  617.  
  618. stock SpielerLaden(playerid)
  619. {
  620. new Spieler[64];
  621. new Sname[MAX_PLAYER_NAME];
  622. GetPlayerName(playerid,Sname,sizeof(Sname));
  623. format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",Sname);
  624. if(dini_Exists(Spieler))
  625. {
  626. sSpieler[playerid][Adminlevel] = dini_Int(Spieler,"Adminlevel");
  627. sSpieler[playerid][Level] = dini_Int(Spieler,"Level");
  628. sSpieler[playerid][Fraktion] = dini_Int(Spieler,"Fraktion");
  629. sSpieler[playerid][Team] = dini_Int(Spieler,"Team");
  630. sSpieler[playerid][Geld] = dini_Int(Spieler,"Geld");
  631. GivePlayerMoney(playerid, sSpieler[playerid][Geld]);
  632. return 1;
  633. }
  634. return 1;
  635. }
  636.  
  637. stock SpielerReset(playerid)
  638. {
  639. sSpieler[playerid][Adminlevel] = 0;
  640. sSpieler[playerid][Level] = 0;
  641. sSpieler[playerid][Fraktion] = 0;
  642. sSpieler[playerid][Team] = 0;
  643. sSpieler[playerid][Geld] = 10000;
  644. return 1;
  645. }
  646.  
  647. stock IstSpielerAdmin(playerid,level)
  648. {
  649. if(sSpieler[playerid][Adminlevel] >= level) return 1;
  650. return 0;
  651. }
  652.  
  653. //Sscanf
  654.  
  655. stock sscanf(string[], format[], {Float,_}:...)
  656. {
  657. #if defined isnull
  658. if (isnull(string))
  659. #else
  660. if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
  661. #endif
  662. {
  663. return format[0];
  664. }
  665. #pragma tabsize 4
  666. new
  667. formatPos = 0,
  668. stringPos = 0,
  669. paramPos = 2,
  670. paramCount = numargs(),
  671. delim = ' ';
  672. while (string[stringPos] && string[stringPos] <= ' ')
  673. {
  674. stringPos++;
  675. }
  676. while (paramPos < paramCount && string[stringPos])
  677. {
  678. switch (format[formatPos++])
  679. {
  680. case '\0':
  681. {
  682. return 0;
  683. }
  684. case 'i', 'd':
  685. {
  686. new
  687. neg = 1,
  688. num = 0,
  689. ch = string[stringPos];
  690. if (ch == '-')
  691. {
  692. neg = -1;
  693. ch = string[++stringPos];
  694. }
  695. do
  696. {
  697. stringPos++;
  698. if ('0' <= ch <= '9')
  699. {
  700. num = (num * 10) + (ch - '0');
  701. }
  702. else
  703. {
  704. return -1;
  705. }
  706. }
  707. while ((ch = string[stringPos]) > ' ' && ch != delim);
  708. setarg(paramPos, 0, num * neg);
  709. }
  710. case 'h', 'x':
  711. {
  712. new
  713. num = 0,
  714. ch = string[stringPos];
  715. do
  716. {
  717. stringPos++;
  718. switch (ch)
  719. {
  720. case 'x', 'X':
  721. {
  722. num = 0;
  723. continue;
  724. }
  725. case '0' .. '9':
  726. {
  727. num = (num << 4) | (ch - '0');
  728. }
  729. case 'a' .. 'f':
  730. {
  731. num = (num << 4) | (ch - ('a' - 10));
  732. }
  733. case 'A' .. 'F':
  734. {
  735. num = (num << 4) | (ch - ('A' - 10));
  736. }
  737. default:
  738. {
  739. return -1;
  740. }
  741. }
  742. }
  743. while ((ch = string[stringPos]) > ' ' && ch != delim);
  744. setarg(paramPos, 0, num);
  745. }
  746. case 'c':
  747. {
  748. setarg(paramPos, 0, string[stringPos++]);
  749. }
  750. case 'f':
  751. {
  752.  
  753. new changestr[16], changepos = 0, strpos = stringPos;
  754. while(changepos < 16 && string[strpos] && string[strpos] != delim)
  755. {
  756. changestr[changepos++] = string[strpos++];
  757. }
  758. changestr[changepos] = '\0';
  759. setarg(paramPos,0,_:floatstr(changestr));
  760. }
  761. case 'p':
  762. {
  763. delim = format[formatPos++];
  764. continue;
  765. }
  766. case '\'':
  767. {
  768. new
  769. end = formatPos - 1,
  770. ch;
  771. while ((ch = format[++end]) && ch != '\'') {}
  772. if (!ch)
  773. {
  774. return -1;
  775. }
  776. format[end] = '\0';
  777. if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
  778. {
  779. if (format[end + 1])
  780. {
  781. return -1;
  782. }
  783. return 0;
  784. }
  785. format[end] = '\'';
  786. stringPos = ch + (end - formatPos);
  787. formatPos = end + 1;
  788. }
  789. case 'u':
  790. {
  791. new
  792. end = stringPos - 1,
  793. id = 0,
  794. bool:num = true,
  795. ch;
  796. while ((ch = string[++end]) && ch != delim)
  797. {
  798. if (num)
  799. {
  800. if ('0' <= ch <= '9')
  801. {
  802. id = (id * 10) + (ch - '0');
  803. }
  804. else
  805. {
  806. num = false;
  807. }
  808. }
  809. }
  810. if (num && IsPlayerConnected(id))
  811. {
  812. setarg(paramPos, 0, id);
  813. }
  814. else
  815. {
  816. #if !defined foreach
  817. #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
  818. #define __SSCANF_FOREACH__
  819. #endif
  820. string[end] = '\0';
  821. num = false;
  822. new
  823. name[MAX_PLAYER_NAME];
  824. id = end - stringPos;
  825. foreach (Player, playerid)
  826. {
  827. GetPlayerName(playerid, name, sizeof (name));
  828. if (!strcmp(name, string[stringPos], true, id))
  829. {
  830. setarg(paramPos, 0, playerid);
  831. num = true;
  832. break;
  833. }
  834. }
  835. if (!num)
  836. {
  837. setarg(paramPos, 0, INVALID_PLAYER_ID);
  838. }
  839. string[end] = ch;
  840. #if defined __SSCANF_FOREACH__
  841. #undef foreach
  842. #undef __SSCANF_FOREACH__
  843. #endif
  844. }
  845. stringPos = end;
  846. }
  847. case 's', 'z':
  848. {
  849. new
  850. i = 0,
  851. ch;
  852. if (format[formatPos])
  853. {
  854. while ((ch = string[stringPos++]) && ch != delim)
  855. {
  856. setarg(paramPos, i++, ch);
  857. }
  858. if (!i)
  859. {
  860. return -1;
  861. }
  862. }
  863. else
  864. {
  865. while ((ch = string[stringPos++]))
  866. {
  867. setarg(paramPos, i++, ch);
  868. }
  869. }
  870. stringPos--;
  871. setarg(paramPos, i, '\0');
  872. }
  873. default:
  874. {
  875. continue;
  876. }
  877. }
  878. while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
  879. {
  880. stringPos++;
  881. }
  882. while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
  883. {
  884. stringPos++;
  885. }
  886. paramPos++;
  887. }
  888. do
  889. {
  890. if ((delim = format[formatPos++]) > ' ')
  891. {
  892. if (delim == '\'')
  893. {
  894. while ((delim = format[formatPos++]) && delim != '\'') {}
  895. }
  896. else if (delim != 'z')
  897. {
  898. return delim;
  899. }
  900. }
  901. }
  902. while (delim > ' ');
  903. return 0;
Advertisement
Add Comment
Please, Sign In to add comment