SAMP

Jumping - TraXters

Sep 14th, 2012
202
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 9.05 KB | None | 0 0
  1. //By TraXters - http://forum.sa-mp.de/index.php?page=User&userID=16770
  2. //Das Weiterverbreiten und Reuploaden ist verboten.
  3. #define FILTERSCRIPT
  4.  
  5. #include <a_samp>
  6. #include <ocmd>
  7. #if defined FILTERSCRIPT
  8. new Einweisung1[MAX_PLAYERS];
  9. new Einweisung2[MAX_PLAYERS];
  10. new Ticket[MAX_PLAYERS];
  11. new ew1;
  12. new ew2;
  13. forward port(playerid);
  14. forward ew1ende(playerid);
  15. forward ew12(playerid);
  16. forward ew22(playerid);
  17. forward ew2ende(playerid);
  18. forward Sprung1(playerid);
  19. forward Sprung2(playerid);
  20. forward Sprung3(playerid);
  21. forward Sprung4(playerid);
  22. forward Landung(playerid);
  23. public OnFilterScriptInit()
  24. {
  25.     print("\n--------------------------------------");
  26.     print(" Jumping by TraXters");
  27.     print("--------------------------------------\n");
  28.     CreateObject(18769, 1160.61, -778.10, 105.51,   0.00, 2.00, 8.00);
  29.     CreateObject(18770, 1161.68, -779.20, 206.10,   0.00, 0.00, 0.00);
  30.     CreateObject(18768, 1163.21, -779.17, 305.43,   0.00, 0.00, 0.00);
  31.     CreateObject(18769, 1163.20, -779.15, 305.43,   0.00, 0.00, 0.00);
  32.     CreateObject(18769, 1179.54, -772.84, 315.93,   0.00, -90.00, 0.00);
  33.     CreateObject(18769, 1179.52, -785.47, 315.93,   0.00, -90.00, 0.00);
  34.     CreateObject(18769, 1169.54, -762.80, 315.93,   0.00, -90.00, 90.00);
  35.     CreateObject(18769, 1156.86, -762.78, 315.93,   0.00, -90.00, 90.00);
  36.     CreateObject(18769, 1146.87, -772.78, 315.93,   0.00, -90.00, 180.00);
  37.     CreateObject(18769, 1146.85, -785.51, 315.93,   0.00, -90.00, 180.00);
  38.     CreateObject(18769, 1156.85, -794.85, 315.93,   0.00, -90.00, 90.00);
  39.     CreateObject(18769, 1169.54, -794.84, 315.93,   0.00, -90.00, 90.00);
  40.     CreatePickup(1239, 1, 1161.6364,-775.7803,107.1277,0); //Unten /jumpticket
  41.     CreatePickup(1239, 1, 1178.4946,-794.3556,307.0941,0); //Die Absprungstelle
  42.     ew1 = CreatePickup(1239, 1, 1153.7052,-769.6951,307.0941,0); //Einweisung1
  43.     ew2 = CreatePickup(1239, 1, 1173.0048,-769.2219,307.0941,0); //Einweisung2
  44.     SendClientMessageToAll(0xFFFF00, "Jumping by TraXters loaded...");
  45.     return 1;
  46. }
  47.  
  48. public OnFilterScriptExit()
  49. {
  50.     SendClientMessageToAll(0xFFFF00, "Jumping by TraXters unloaded...");
  51.     return 1;
  52. }
  53.  
  54. #else
  55.  
  56. main()
  57. {
  58.  
  59. }
  60.  
  61. #endif
  62.  
  63. public OnGameModeInit()
  64. {
  65.     return 1;
  66. }
  67.  
  68. public OnGameModeExit()
  69. {
  70.     return 1;
  71. }
  72.  
  73.  
  74. public OnPlayerConnect(playerid)
  75. {
  76.     Ticket[playerid] = 0;
  77.     Einweisung1[playerid] = 0;
  78.     Einweisung2[playerid] = 0;
  79.     CreatePlayer3DTextLabel( playerid, "Hier kannst du dir ein Ticket kaufen.\n/jumpticket", 0xA0A0A0FF, 1161.6364,-775.7803,107.1277, 15.0 );
  80.     CreatePlayer3DTextLabel( playerid, "Hier kannst du springen!\n/jump", 0xA0A0A0FF, 1178.4946,-794.3556,307.0941, 15.0 );
  81.     CreatePlayer3DTextLabel( playerid, "Einweisung 1", 0xA0A0A0FF, 1153.7052,-769.6951,307.0941, 15.0 );
  82.     CreatePlayer3DTextLabel( playerid, "Einweisung 2", 0xA0A0A0FF, 1173.0048,-769.2219,307.0941, 15.0 );
  83.     return 1;
  84. }
  85.  
  86. public OnPlayerDisconnect(playerid, reason)
  87. {
  88.     Ticket[playerid] = 0;
  89.     Einweisung1[playerid] = 0;
  90.     Einweisung2[playerid] = 0;
  91.     return 1;
  92. }
  93.  
  94. /*public OnPlayerCommandText(playerid, cmdtext[])
  95. {
  96.     if (strcmp("/tp", cmdtext, true, 10) == 0)
  97.     {
  98.         SetPlayerPos(playerid,1188.2667,-759.0632,103.0198);
  99.         return 1;
  100.     }
  101.     return 0;
  102. }
  103. */
  104. ocmd:jumpticket(playerid,params[])
  105. {
  106. if(Ticket[playerid] == 1) {
  107. return SendClientMessage(playerid,0xFF0000FF," *Du hast schon ein Ticket.");
  108. }
  109. if(IsPlayerInRangeOfPoint(playerid,2.0,1161.6364,-775.7803,107.1277)) {
  110. SendClientMessage(playerid,0xFFFFFFFF,"[Kassierer] Du hast dir ein 'Jump' Ticket gekauft.");
  111. SendClientMessage(playerid,0xFFFFFFFF,"[Kassierer] Bitte warte.");
  112. Ticket[playerid] = 1;
  113. TogglePlayerControllable(playerid,0);
  114. SetTimerEx("port",2000,0,"d",playerid);
  115. }
  116. else {
  117. SendClientMessage(playerid,0xFF0000FF,"Du kannst dir hier kein 'Jump' Ticket kaufen.");
  118. }
  119. return 1;
  120. }
  121.  
  122. ocmd:jump(playerid,params[])
  123. {
  124. if(Ticket[playerid] == 0) {
  125. return SendClientMessage(playerid,0xFF0000FF,"Du musst dir ein Ticket kaufen.");
  126. }
  127. if(Einweisung1[playerid] == 0) {
  128. return SendClientMessage(playerid,0xFF0000FF,"[Aufsicht] Du musst noch die Einweisung 1 machen.");
  129. }
  130. if(Einweisung2[playerid] == 0) {
  131. return SendClientMessage(playerid,0xFF0000FF,"[Aufsicht] Du musst noch die Einweisung 2 machen.");
  132. }
  133. if(IsPlayerInRangeOfPoint(playerid,2.0,1178.4946,-794.3556,307.0941)) {
  134. new Float:x, Float:y, Float:z;
  135. GetPlayerPos(playerid, x, y, z);
  136. SetPlayerPos(playerid,x+5,y,z);
  137. SetTimerEx("Sprung1",4500,false,"i",playerid);
  138. }
  139. else {
  140. return SendClientMessage(playerid,0xFF0000FF,"Du bist nicht am Absprung.");
  141. }
  142. return 1;
  143. }
  144.  
  145. public OnPlayerPickUpPickup(playerid, pickupid)
  146. {
  147.     if(pickupid == ew2) {
  148.     if(Einweisung2[playerid] == 1) {
  149.     return SendClientMessage(playerid,0xFF0000FF,"[Aufsicht] Du hast beide Einweisungen gemacht. Jetzt geh springen.");
  150.     }
  151.     if(Einweisung1[playerid] == 0) {
  152.     return SendClientMessage(playerid,0xFF0000FF,"[Aufsicht] Du musst erst die Einweisung 1 machen.");
  153.     }
  154.     TogglePlayerControllable(playerid,0);
  155.     SetPlayerPos(playerid,-5,-5,-5);
  156.     Einweisung2[playerid] = 1;
  157.     SetTimerEx("ew22",100,false,"i",playerid);
  158.     SendClientMessage(playerid,0xFFFFFFFF,"");
  159.     SendClientMessage(playerid,0xFFFFFFFF,"");
  160.     SendClientMessage(playerid,0xFFFFFFFF,"");
  161.     SendClientMessage(playerid,0xFFFFFFFF,"");
  162.     SendClientMessage(playerid,0xFFFFFFFF,"");
  163.     SendClientMessage(playerid,0xFFFFFFFF,"");
  164.     SendClientMessage(playerid,0xFFFFFFFF,"");
  165.     SendClientMessage(playerid,0xFFFFFFFF,"");
  166.     SendClientMessage(playerid,0xFFFFFFFF,"");
  167.     SendClientMessage(playerid,0xFFFFFFFF,"==Einweisung 2==");
  168.     }
  169.    
  170.     if(pickupid == ew1) {
  171.     if(Einweisung2[playerid] == 1) {
  172.     return SendClientMessage(playerid,0xFF0000FF,"[Aufsicht] Du hast beide Einweisungen gemacht. Jetzt geh springen.");
  173.     }
  174.     if(Einweisung1[playerid] == 1) {
  175.     return SendClientMessage(playerid,0xFF0000FF,"[Aufsicht] Du musst jetzt die Einweisung 2 machen.");
  176.     }
  177.     TogglePlayerControllable(playerid,0);
  178.     SetPlayerPos(playerid,-5,-5,-85);
  179.     Einweisung1[playerid] = 1;
  180.     SetTimerEx("ew12",15000,false,"i",playerid);
  181.     SendClientMessage(playerid,0xFFFFFFFF,"");
  182.     SendClientMessage(playerid,0xFFFFFFFF,"");
  183.     SendClientMessage(playerid,0xFFFFFFFF,"");
  184.     SendClientMessage(playerid,0xFFFFFFFF,"");
  185.     SendClientMessage(playerid,0xFFFFFFFF,"");
  186.     SendClientMessage(playerid,0xFFFFFFFF,"");
  187.     SendClientMessage(playerid,0xFFFFFFFF,"");
  188.     SendClientMessage(playerid,0xFFFFFFFF,"");
  189.     SendClientMessage(playerid,0xFFFFFFFF,"");
  190.     SendClientMessage(playerid,0xFFFFFFFF,"==Einweisung 1==");
  191.     SendClientMessage(playerid,0xFFFFFFFF,"[Aufsicht] Du traust dich also aus ca. 400 Metern zu springen?");
  192.     InterpolateCameraPos(playerid, 1160.795532, -769.189208, 107.847961, 1156.683837, -779.756652, 306.090972, 15000);
  193.     InterpolateCameraLookAt(playerid, 1161.235107, -774.152709, 107.435310, 1157.654663, -779.801513, 301.186340, 15000);
  194.  }
  195.     return 1;
  196. }
  197.  
  198. public port(playerid)
  199. {
  200. SetPlayerPos(playerid,1161.7234,-778.6445,307.1000);
  201. TogglePlayerControllable(playerid,1);
  202. return 1;
  203. }
  204.  
  205. public ew12(playerid)
  206. {
  207. SendClientMessage(playerid,0xFFFFFFFF,"[Aufsicht] Das ist die Höhe.");
  208. SendClientMessage(playerid,0xFFFFFFFF,"[Aufsicht] Gehe gleich zur Einweisung 2.");
  209. SendClientMessage(playerid,0xFFFFFFFF,"=============");
  210. SetTimerEx("ew1ende",5000,false,"i",playerid);
  211. return 1;
  212. }
  213.  
  214. public ew22(playerid)
  215. {
  216. SendClientMessage(playerid,0xFFFFFFFF,"Bei dem Sprung musst du aufpassen!");
  217. InterpolateCameraPos(playerid, 1180.921142, -796.237426, 306.782440, 1164.870849, -799.812500, 66.846626, 10000);
  218. InterpolateCameraLookAt(playerid, 1180.883056, -796.671508, 301.801452, 1164.447387, -803.459350, 63.452327, 2000);
  219. SendClientMessage(playerid,0xFFFFFFFF,"[Aufsicht] Drehe dein Körper nicht zu schnell.");
  220. SendClientMessage(playerid,0xFFFFFFFF,"==============");
  221. SetTimerEx("ew2ende",9000,false,"i",playerid);
  222. return 1;
  223. }
  224.  
  225. public ew1ende(playerid)
  226. {
  227. TogglePlayerControllable(playerid,1);
  228. SetCameraBehindPlayer(playerid);
  229. SetPlayerPos(playerid, 1154.7158,-770.8144,307.0941);
  230. Einweisung1[playerid] = 1;
  231. return 1;
  232. }
  233.  
  234. public ew2ende(playerid)
  235. {
  236. TogglePlayerControllable(playerid,1);
  237. SetCameraBehindPlayer(playerid);
  238. SetPlayerPos(playerid, 1172.0992,-771.0919,307.0941);
  239. Einweisung2[playerid] = 1;
  240. return 1;
  241. }
  242.  
  243. public Sprung1(playerid)
  244. {
  245. new Float:x, Float:y, Float:z;
  246. GetPlayerPos(playerid, x, y, z);
  247. SetPlayerPos(playerid,x,y,z+120);
  248. SetTimerEx("Sprung2",2400,false,"i",playerid);
  249. return 1;
  250. }
  251.  
  252. public Sprung2(playerid)
  253. {
  254. new Float:x, Float:y, Float:z;
  255. GetPlayerPos(playerid, x, y, z);
  256. SetPlayerPos(playerid,x,y,z+20);
  257. SetTimerEx("Sprung3",2100,false,"i",playerid);
  258. return 1;
  259. }
  260.  
  261. public Sprung3(playerid)
  262. {
  263. new Float:x, Float:y, Float:z;
  264. GetPlayerPos(playerid, x, y, z);
  265. SetPlayerPos(playerid,x,y,z+99);
  266. SetTimerEx("Sprung4",3100,false,"i",playerid);
  267. return 1;
  268. }
  269.  
  270. public Sprung4(playerid)
  271. {
  272. new Float:x, Float:y, Float:z;
  273. GetPlayerPos(playerid, x, y, z);
  274. SetPlayerPos(playerid,x,y,z+1);
  275. SetTimerEx("Landung",2000,false,"i",playerid);
  276. return 1;
  277. }
  278.  
  279. public Landung(playerid)
  280. {
  281. SetPlayerPos(playerid,1161.6364,-775.7803,107.1277);
  282. SendClientMessage(playerid,0xFFFFFFFF,"Ich hoffe es hat dir Spaß gemacht.");
  283. Ticket[playerid] = 0;
  284. return 1;
  285. }
Advertisement
Add Comment
Please, Sign In to add comment