Advertisement
Guest User

Untitled

a guest
Sep 19th, 2018
148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.46 KB | None | 0 0
  1. @name [WW] Drag Race E2
  2. @inputs [StartR1,StartR2,SlutR1,SlutR2]:entity [Light]:wirelink
  3. @outputs
  4. @persist [Driver1,Driver2,WinnerSID]:string [RaceOnGoing,CountDown]:number
  5.  
  6. #[
  7. Config
  8. ]#
  9. PayWinners = 1 # Betal Vinderen: 1 = Ja, 0 = Nej
  10. PayAmount = 10000 # Hvor meget skal vinderen have betalt
  11.  
  12. #[
  13. The Functions we use later on
  14. ]#
  15. if(first()) {
  16. RaceOnGoing = 0
  17. CountDown = 0
  18.  
  19. function void msgPrint(MSG:string) {
  20. printColor(vec(58,141,0),"[WWDrag] ",vec(255,255,255),MSG)
  21. }
  22. function void sendPM(User:string,MSG:string) {
  23. concmd("say /pm "+User+" "+MSG)
  24. }
  25.  
  26. function void startRace() {
  27. if(StartR1:isVehicle() && StartR2:isVehicle()) {
  28. msgPrint("Begynder Drag Race..")
  29. msgPrint("K"+oe()+"rer 1: "+StartR1:driver():name())
  30. msgPrint("K"+oe()+"rer 2: "+StartR2:driver():name())
  31. Driver1 = StartR1:driver():steamID()
  32. Driver2 = StartR2:driver():steamID()
  33. sendPM(StartR1:driver():steamID(),"Velkommen til vores Drag Race, du er chauff"+oe()+"r 1! Racet begynder snarest")
  34. sendPM(StartR2:driver():steamID(),"Velkommen til vores Drag Race, du er chauff"+oe()+"r 2! Racet begynder snarest")
  35. CountDown = 1
  36. timer("startRaceLights",1000)
  37. }
  38. }
  39.  
  40. function void payWinner(SID:string) {
  41. Player = findPlayerBySteamID(SID)
  42. moneyGive(Player,PayAmount)
  43. msgPrint("Betaler Vinderen ("+Player:name()+")")
  44. sendPM(Player:steamID(),"Tillykke med at vinde vores Drag Race event! Din gevinst er sendt til dig.")
  45. }
  46. }
  47.  
  48. #[
  49. The Drawing Functions
  50. ]#
  51. if(first()) {
  52. function void drawLight() {
  53. Light:egpClear()
  54. Light:egpBox(1,vec2(256,420),vec2(10,250))
  55. Light:egpColor(1,vec(45,45,45))
  56.  
  57. Light:egpBox(4,vec2(225,151),vec2(75,12))
  58. Light:egpColor(4,vec(20,20,20))
  59.  
  60. Light:egpBox(5,vec2(287,151),vec2(75,12))
  61. Light:egpColor(5,vec(20,20,20))
  62.  
  63. Light:egpBox(6,vec2(225,180),vec2(75,12))
  64. Light:egpColor(6,vec(20,20,20))
  65.  
  66. Light:egpBox(7,vec2(287,180),vec2(75,12))
  67. Light:egpColor(7,vec(20,20,20))
  68.  
  69. Light:egpBox(8,vec2(256,210),vec2(100,14))
  70. Light:egpColor(8,vec(20,20,20))
  71.  
  72. Light:egpBox(9,vec2(256,240),vec2(100,14))
  73. Light:egpColor(9,vec(20,20,20))
  74.  
  75. Light:egpBox(10,vec2(256,270),vec2(100,14))
  76. Light:egpColor(10,vec(20,20,20))
  77.  
  78. Light:egpBox(11,vec2(256,300),vec2(100,14))
  79. Light:egpColor(11,vec(20,20,20))
  80.  
  81. Light:egpBox(12,vec2(256,330),vec2(100,14))
  82. Light:egpColor(12,vec(20,20,20))
  83.  
  84. Light:egpBox(2,vec2(256,245),vec2(25,200))
  85. Light:egpColor(2,vec(45,45,45))
  86.  
  87. Light:egpBoxOutline(3,vec2(256,245),vec2(25,202))
  88. Light:egpColor(3,vec(0,0,0))
  89. ######################LYS##################
  90. Light:egpCircle(13,vec2(200,157),vec2(8,8))
  91. Light:egpColor(13,vec(126,94,0))
  92.  
  93. Light:egpCircle(14,vec2(230,157),vec2(8,8))
  94. Light:egpColor(14,vec(126,94,0))
  95.  
  96. Light:egpCircle(15,vec2(282,157),vec2(8,8))
  97. Light:egpColor(15,vec(126,94,0))
  98.  
  99. Light:egpCircle(16,vec2(312,157),vec2(8,8))
  100. Light:egpColor(16,vec(126,94,0))
  101.  
  102. Light:egpCircle(17,vec2(200,187),vec2(8,8))
  103. Light:egpColor(17,vec(126,94,0))
  104.  
  105. Light:egpCircle(18,vec2(230,187),vec2(8,8))
  106. Light:egpColor(18,vec(126,94,0))
  107.  
  108. Light:egpCircle(19,vec2(282,187),vec2(8,8))
  109. Light:egpColor(19,vec(126,94,0))
  110.  
  111. Light:egpCircle(20,vec2(312,187),vec2(8,8))
  112. Light:egpColor(20,vec(126,94,0))
  113.  
  114. Light:egpCircle(21,vec2(300,210),vec2(14,14))
  115. Light:egpColor(21,vec(126,94,0))
  116.  
  117. Light:egpCircle(22,vec2(210,210),vec2(14,14))
  118. Light:egpColor(22,vec(126,94,0))
  119.  
  120. Light:egpCircle(23,vec2(300,240),vec2(14,14))
  121. Light:egpColor(23,vec(126,94,0))
  122.  
  123. Light:egpCircle(24,vec2(210,240),vec2(14,14))
  124. Light:egpColor(24,vec(126,94,0))
  125.  
  126. Light:egpCircle(25,vec2(300,270),vec2(14,14))
  127. Light:egpColor(25,vec(126,94,0))
  128.  
  129. Light:egpCircle(26,vec2(210,270),vec2(14,14))
  130. Light:egpColor(26,vec(126,94,0))
  131.  
  132. Light:egpCircle(27,vec2(300,300),vec2(14,14))
  133. Light:egpColor(27,vec(32,92,0))
  134.  
  135. Light:egpCircle(28,vec2(210,300),vec2(14,14))
  136. Light:egpColor(28,vec(32,92,0))
  137.  
  138. Light:egpCircle(29,vec2(300,330),vec2(14,14))
  139. Light:egpColor(29,vec(92,0,0))
  140.  
  141. Light:egpCircle(30,vec2(210,330),vec2(14,14))
  142. Light:egpColor(30,vec(92,0,0))
  143. ##################################################
  144. }
  145. }
  146.  
  147. if(first()) {
  148. timer("drawRaceLights",250)
  149. msgPrint("Drag Race E2 lavet af WalterWhite [STEAM_0:1:32726131]")
  150. msgPrint("E2'en ligger gratis p"+aa()+" Forums [stavox.dk]")
  151. msgPrint("Skriv !help for hj"+ae()+"lp til brug.")
  152. }
  153.  
  154. if (CountDown == 1) {
  155. if(!StartR1:isVehicle()) {
  156. stopAllTimers()
  157. CountDown = 0
  158. timer("preStart",250)
  159. msgPrint("Chauff"+oe()+"r Nr. 1 har tyvstartet, Racet er blevet stoppet!")
  160. sendPM(Driver1,"HOV HOV! Det er ikke tilladt at tyv starte!")
  161. }
  162. if(!StartR2:isVehicle()) {
  163. stopAllTimers()
  164. CountDown = 0
  165. timer("preStart",250)
  166. msgPrint("Chauff"+oe()+"r Nr. 2 har tyvstartet, Racet er blevet stoppet!")
  167. sendPM(Driver2,"HOV HOV! Det er ikke tilladt at tyv starte!")
  168. }
  169. }
  170.  
  171. if (RaceOnGoing == 1) {
  172. if(SlutR1:isVehicle()) {
  173. if(SlutR1:driver():steamID() == Driver1) {
  174. msgPrint("Chauff"+oe()+"r Nr. 1 vandt Racet!")
  175. payWinner(Driver1)
  176. CountDown = 0
  177. RaceOnGoing = 0
  178. timer("drawRaceLights",3000)
  179. } elseif (SlutR1:driver():steamID() == Driver2) {
  180. msgPrint("Chauff"+oe()+"r Nr. 2 vandt Racet!")
  181. payWinner(Driver2)
  182. CountDown = 0
  183. RaceOnGoing = 0
  184. timer("drawRaceLights",3000)
  185. }
  186. }
  187. if(SlutR2:isVehicle()) {
  188. if(SlutR2:driver():steamID() == Driver1) {
  189. msgPrint("Chauff"+oe()+"r Nr. 1 vandt Racet!")
  190. payWinner(Driver1)
  191. CountDown = 0
  192. RaceOnGoing = 0
  193. timer("drawRaceLights",3000)
  194. } elseif (SlutR2:driver():steamID() == Driver2) {
  195. msgPrint("Chauff"+oe()+"r Nr. 2 vandt Racet!")
  196. payWinner(Driver2)
  197. CountDown = 0
  198. RaceOnGoing = 0
  199. timer("drawRaceLights",3000)
  200. }
  201. }
  202. }
  203.  
  204. if(clk("drawRaceLights")) {drawLight()}
  205. if(clk("startRaceLights")) { #Foeste 4 lys
  206. Light:egpColor(13,vec(223,163,0))
  207. Light:egpColor(14,vec(223,163,0))
  208. Light:egpColor(15,vec(223,163,0))
  209. Light:egpColor(16,vec(223,163,0))
  210. timer("RLightP2",2000)
  211. }
  212. if(clk("RLightP2")) { #Anden saet 4 lys
  213. Light:egpColor(17,vec(223,163,0))
  214. Light:egpColor(18,vec(223,163,0))
  215. Light:egpColor(19,vec(223,163,0))
  216. Light:egpColor(20,vec(223,163,0))
  217. timer("RLightP3",2000)
  218. }
  219. if(clk("RLightP3")) { #Foeste 2 gule lys
  220. Light:egpColor(21,vec(223,163,0))
  221. Light:egpColor(22,vec(223,163,0))
  222. timer("RLightP4",1000)
  223. }
  224. if(clk("RLightP4")) { #Anden saet gule lys
  225. Light:egpColor(23,vec(223,163,0))
  226. Light:egpColor(24,vec(223,163,0))
  227. timer("RLightP5",1000)
  228. }
  229. if(clk("RLightP5")) { #Trejde saet gule lys
  230. Light:egpColor(25,vec(223,163,0))
  231. Light:egpColor(26,vec(223,163,0))
  232. timer("RLightP6",1000)
  233. }
  234. if(clk("RLightP6")) { #Groenne Lys
  235. Light:egpColor(27,vec(73,208,0))
  236. Light:egpColor(28,vec(73,208,0))
  237. CountDown = 0
  238. RaceOnGoing = 1
  239. }
  240.  
  241. if(clk("preStart")) { #Roede Lys
  242. Light:egpColor(29,vec(196,0,0))
  243. Light:egpColor(30,vec(196,0,0))
  244. timer("drawRaceLights",5000)
  245. }
  246.  
  247.  
  248. #[
  249. Chat Commands (Currently available: !help, !start & !stop)
  250. ]#
  251. runOnChat(1)
  252. if (chatClk(owner()))
  253. {
  254. Cmd = lastSaid():explode(" "):string(1)
  255. switch (Cmd)
  256. {
  257. case "!help",
  258. hideChat(1)
  259. msgPrint("Velkommen til Walter's Drag Race E2")
  260. msgPrint("For at bruge E2'en skal du have 4 rangers og 1 EGP (Emitter)")
  261. msgPrint("2 Rangers i starten (Ud for bilerne) og 2 i slutningen.")
  262. msgPrint("EGP Emitteren bruges som Start skilt.")
  263. msgPrint("N"+aa()+"r du har placeret 2 bilver ved start rangers kan du skrive !start. Du kan bruge !stop til at afbryde dit Drag Race.")
  264. break,
  265. case "!start",
  266. hideChat(1)
  267. if(StartR1:isVehicle() && StartR2:isVehicle()) {
  268. if(StartR1:driver():isPlayer() && StartR2:driver():isPlayer()) {
  269. startRace()
  270. } else {
  271. msgPrint("FEJL! En af de 2 biler har ikke en chauff"+oe()+"r!")
  272. }
  273. } else {
  274. msgPrint("FEJL! Der er ikke en bil ved begge rangere!")
  275. }
  276. break,
  277. case "!stop",
  278. hideChat(1)
  279. if(RaceOnGoing == 0) {
  280. msgPrint("Der er p"+aa()+" nuv"+ae()+"rende tidspunkt ikke et startet Drag Race.")
  281. } else {
  282.  
  283. }
  284. break,
  285. }
  286. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement