Advertisement
Bunny_bt

Turret

Aug 24th, 2022 (edited)
901
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.07 KB | None | 0 0
  1. --[[    FUNCTIONS
  2.     setAttacksMobs
  3.     setAttacksNeutrals
  4.     setAttacksPlayers
  5.     setInverted
  6.  
  7.     getActive
  8.     getAspectCount
  9.     getAspects
  10.     getEnergyStored
  11.     getInverted
  12.     getMaxEnergyStored
  13.     getOwner
  14.     getRedstone
  15.     getTrustedPlayers
  16.     getType
  17.  
  18.     addTrustedPlayer ["Name", acess[bool], bool, bool]
  19.     attacksMobs
  20.     attacksNeutrals
  21.     attacksPlayers
  22.     removeTrustedPlayer
  23. ]]
  24.  
  25. local base = peripheral.find('tt_aspectContainer')
  26. local monitor = peripheral.find('monitor')
  27.  
  28. function AddTrust(User, hasAcess)
  29.     base.removeTrustedPlayer(User)
  30.     base.addTrustedPlayer(User, Acess, true, true)
  31.     print(User, ' has been trusted!')
  32. end
  33.  
  34. function ClearMonitor(monitor, color)
  35.     if monitor ~= nil then
  36.         if color == nil then
  37.             monitor.setBackgroundColor(colors.black)
  38.         else
  39.             monitor.setBackgroundColor(color)
  40.         end
  41.         monitor.setCursorPos(1,1)
  42.         monitor.clear()
  43.     end
  44. end
  45.  
  46. function GetPlayers()
  47.     for k, v in ipairs(base.getTrustedPlayers()) do
  48.  
  49.     end
  50. end
  51.  
  52. function SetOptions(AttackMobs, AttackNeutrals, AttackPlayers, Inverted)
  53.     base.setAttacksMobs(AttackMobs)
  54.     base.setAttacksNeutrals(AttackNeutrals)
  55.     base.setAttacksPlayers(AttackPlayers)
  56.     base.setInverted(Inverted)
  57.  
  58.     return {base.attacksMobs(), base.attacksNeutrals(), base.attacksPlayers(), base.getInverted()}
  59. end
  60.  
  61. function RedstoneEvent()
  62.     local evt = {os.pullEvent()}
  63.     if evt[1] == 'redstone' then
  64.         os.sleep(0.1)
  65.         print('Signal changed.')
  66.         if redstone.getInput('left') == true then
  67.             print('Mode: Kill')
  68.             SetOptions(true, true, true, true)
  69.         elseif redstone.getInput('left') == false then
  70.             print('Mode: Idle')
  71.             SetOptions(true, false, false, true)
  72.         end
  73.     end
  74. end
  75.  
  76. function RemoveTrust(User)
  77.     base.removeTrustedPlayer(User)
  78.     print(User, ' has been removed from trust.')
  79. end
  80.  
  81. --Init
  82. term.redirect(monitor)
  83. ClearMonitor()
  84.  
  85. while true do
  86.     --If triggered
  87.     RedstoneEvent()
  88. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement