Advertisement
Guest User

Untitled

a guest
Feb 25th, 2020
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.53 KB | None | 0 0
  1.  
  2. @name Matt's Money Leaderboard Shark Edit
  3. @inputs EGP:wirelink
  4. @inputs User:entity
  5.  
  6. if(first())
  7. {
  8. function void prettyPrint(Message:string)
  9. {
  10. printColor(vec(255, 255, 255), "[" + entity():getName() + "] : ", vec(255), Message)
  11. }
  12.  
  13. #ifdef entity:money()
  14. #else
  15. prettyPrint("This E2 requires TylerB's money request functions, halting!")
  16. error("This E2 requires TylerB's money request functions, halting!")
  17. #endif
  18.  
  19. #ifdef entity:createWire(entity, string, string)
  20. if(entity():isWeldedTo():type() == "gmod_wire_egp_emitter")
  21. {
  22. entity():createWire(entity():isWeldedTo(), "EGP", "wirelink")
  23. entity():createWire(entity():isWeldedTo(), "User", "User")
  24. prettyPrint("Successfully autowired to the EGP device the E2 was placed on!")
  25. }
  26. else
  27. {
  28. prettyPrint("E2 was not placed on an emitter, please manually wire!")
  29. }
  30. #else
  31. prettyPrint("Wiring extension is not enabled, please manually wire!")
  32. #endif
  33.  
  34. function table getMoneyArray()
  35. {
  36. T = table()
  37.  
  38. foreach(K, V:entity = players())
  39. {
  40. T[V:name(), number] = V:money()
  41. }
  42.  
  43. return T
  44. }
  45.  
  46.  
  47. function void drawMoney()
  48. {
  49. NObj = EGP:egpNumObjects() + 1
  50. Money = getMoneyArray()
  51.  
  52. for(I = 1, players():count() < 1 ? players():count() : 10)
  53. {
  54. EGP:egpBox(NObj, vec2(256, -10 + I * 50), vec2(1024, 50))
  55. EGP:egpColor(NObj, NObj % 2 == 1 ? vec(0) : vec(0))
  56. NObj++
  57.  
  58. Highest = Money:values():max()
  59. Name = Money:keys()[Money:values():maxIndex(), string]
  60.  
  61. EGP:egpText(NObj, Name, vec2(-220, -10 + I * 50))
  62. EGP:egpAlign(NObj, 0, 1)
  63. EGP:egpSize(NObj, 38)
  64. EGP:egpColor(NObj, vec(0,255,0))
  65.  
  66. NObj++
  67.  
  68. HighestText = format("%15.0f", Highest)
  69. HighestText = HighestText:replace(" ", "")
  70.  
  71. FormattedText = ""
  72.  
  73. EGP:egpText(NObj, "$" + HighestText, vec2(290, -10 + I * 50))
  74. EGP:egpAlign(NObj, 0, 1)
  75. EGP:egpSize(NObj, 38)
  76. EGP:egpColor(NObj, vec(255,0,0))
  77.  
  78. Money:remove(Name)
  79. NObj++
  80.  
  81. EGP:egpRoundedBox(NObj, vec2(256), vec2(16, 512))
  82. EGP:egpColor(NObj, vec(0))
  83.  
  84. NObj++
  85.  
  86. EGP:egpRoundedBox(NObj, vec2(-256, 256), vec2(16, 512))
  87. EGP:egpColor(NObj, vec(0))
  88.  
  89. NObj++
  90.  
  91. EGP:egpRoundedBox(NObj, vec2(768, 256), vec2(16, 512))
  92. EGP:egpColor(NObj, vec(0))
  93.  
  94. NObj++
  95.  
  96. EGP:egpRoundedBox(NObj, vec2(256, 1), vec2(512, 16))
  97. EGP:egpColor(NObj, vec(0))
  98.  
  99. NObj++
  100. }
  101. }
  102. }
  103.  
  104. elseif(inputClkName() == "EGP")
  105. {
  106. prettyPrint("Successfully manually wired to EGP")
  107. }
  108.  
  109. interval(10000)
  110.  
  111. EGP:egpClear()
  112. EGP:egpText(1, "", vec2(252, -70))
  113. EGP:egpColor(1, vec(128, 0, 128))
  114. EGP:egpSize(1, 100)
  115. EGP:egpAlign(1, 1, 1)
  116.  
  117. EGP:egpText(2, "", vec2(256, -74))
  118. EGP:egpAlign(2, 1, 1)
  119. EGP:egpSize(2, 100)
  120.  
  121. EGP:egpRoundedBox(3, vec2(256), vec2(16, 512))
  122. EGP:egpColor(3, vec(0))
  123.  
  124. EGP:egpRoundedBox(4, vec2(256, 0), vec2(1024, 32))
  125. EGP:egpColor(4, vec(0))
  126.  
  127. drawMoney()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement