Advertisement
Jimbo_

Untitled

Jul 4th, 2015
307
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.31 KB | None | 0 0
  1. @name Lol
  2. @persist Keypads:array Codes:array OwnerUse:array CO:entity Display
  3. @trigger all
  4. if(first()|duped()){
  5. Display = 1
  6. CO = entity():owner()
  7. runOnTick(1)
  8. runOnChat(1)
  9. Scan = 1
  10. timer("ReScan",60000)
  11. }
  12. A = 1
  13. while(A <= Keypads:count()){
  14. Owner = Keypads:entity(A):owner()
  15. Keypad = Keypads[A,entity]
  16. Down = OwnerUse[A,number]
  17. Pressed = Owner:keyUse()
  18. if(CO:keyAttack2() & Display & CO:shootPos():distance(Keypad:pos()) <= 100 & CO:aimEntity() == Keypad){
  19. Code = Codes[A,number]
  20. if(Code - 50000 > 0){hint("The code is: " + (Code - 50000) +". Enjoy!",5)}
  21. else{hint("No Code Entered. Try Again Later!",3)}
  22. Display = 0
  23. }
  24. elseif(!CO:keyAttack2() & !Display){Display = 1}
  25. if(!Down & Pressed){
  26. if(Keypad != noentity()){
  27. if(Owner:shootPos():distance(Keypad:pos()) < 32 & Owner:aimEntity() == Keypad){
  28. Code = Codes[A,number]
  29. #Find Button Pressed
  30. KPPL = Keypad:toLocal(Keypad:owner():aimPos()):rotate(ang())
  31. #Line 1
  32. if(inrange(KPPL:z(),-1.3,0)){
  33. #Col 1
  34. if(inrange(KPPL:y(),-2.2, -0.95)){Number = 1}
  35. #Col 2
  36. elseif(inrange(KPPL:y(),-0.6, 0.65)){Number = 2}
  37. #Col 3
  38. elseif(inrange(KPPL:y(),1, 2.25)){Number = 3}
  39. }
  40. #Line 2
  41. elseif(inrange(KPPL:z(),-2.9,-1.6)){
  42. #Col 1
  43. if(inrange(KPPL:y(),-2.2 ,-0.95)){Number = 4}
  44. #Col 2
  45. elseif(inrange(KPPL:y(),-0.6, 0.65)){Number = 5}
  46. #Col 3
  47. elseif(inrange(KPPL:y(),1, 2.25)){Number = 6}
  48. }
  49. #Line 3
  50. elseif(inrange(KPPL:z(),-4.45,-3.3)){
  51. #Col 1
  52. if(inrange(KPPL:y(),-2.2 ,-0.95)){Number = 7}
  53. #Col 2
  54. elseif(inrange(KPPL:y(),-0.6, 0.65)){Number = 8}
  55. #Col 3
  56. elseif(inrange(KPPL:y(),1, 2.25)){Number = 9}
  57. }
  58. elseif(inrange(KPPL:z(),0.3, 1.6)){
  59. #Abort
  60. if(inrange(KPPL:y(),-2.2, -0.15)){Number = 11}
  61. #Accept
  62. elseif(inrange(KPPL:y(),0.3, 2.25)){Number = 10}
  63. }
  64. if(Number){
  65. if(Number == 10 & Code < 10000){
  66. Code += 50000
  67. hint("Code entered: "+(Code - 50000),3)
  68. }
  69. elseif(Number == 11 & Code < 10000){Code = 0 hint("Code Canceled",3)}
  70. elseif(Code < 1000){
  71. Code *= 10
  72. Code += Number
  73. hint(""+Owner:name()+" Pressed: "+Number,3)
  74. }
  75. Codes[A,number] = Code
  76. }
  77. }
  78. }
  79. else{
  80. hint("Keypad "+A+" has been removed",3)
  81. Keypads:removeEntity(A)
  82. Codes:removeNumber(A)
  83. }
  84. OwnerUse[A, number] = 1
  85. }
  86. elseif(Down & !Pressed){
  87. OwnerUse[A,number] = 0
  88. }
  89. A++
  90. }
  91.  
  92. if(chatClk(entity():owner())){
  93. if(entity():owner():lastSaid() == "/reset"){
  94. A = 1
  95. CO = entity():owner()
  96. while (A <= Keypads:count()){
  97. Keypad = Keypads:entity(A)
  98. if(CO:shootPos():distance(Keypad:pos()) <= 100 & CO:aimEntity() == Keypad){
  99. hint("Code Reset!",3)
  100. Codes[A,number] = 0
  101. }
  102. A++
  103. }
  104. }
  105. if(CO:lastSaid() == "/scan"){
  106. Scan = 1
  107. }
  108. }
  109. if(clk("ReScan")){Scan = 1 timer("ReScan",60000)}
  110. if(Scan){
  111. Keypads = array()
  112. OwnerUse = array()
  113. findByModel("models/props_lab/keypad.mdl")
  114. findSortByDistance(entity():pos())
  115. Keypads = findToArray()
  116. hint("Scan complete! "+Keypads:count()+" Keypads found!",3)
  117. while(Keypads:count()>13){
  118. hint("Keypad removed due to gate restriction!",3)
  119. Keypads:pop()
  120. }
  121. A = 1
  122. while(A <= Keypads:count()){
  123. print(""+A+": "+Keypads:entity(A):owner():name())
  124. OwnerUse[A,number] = Keypads:entity(A):owner():keyUse()
  125. A++
  126. }
  127. if(Keypads:count() > 0){
  128. timer("ReDisplayCode",3000)
  129. }
  130. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement