Advertisement
GDragonArcher

defense system

Apr 21st, 2023 (edited)
586
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.95 KB | None | 0 0
  1. -- this code will detect a player within a certain set of coordinates and do the following
  2. -- message a list of players that "username has entered your territory"
  3. -- once they get closer it will give the perpetrator the following message "NAME, you have 30 seconds to leave this area or missiles will be launched at your base (COORDINATES)
  4.     -- 20 (wait 5 seconds)
  5.     -- 15 (wait 5 seconds)
  6.     -- 10, silos open
  7.     -- 9
  8.     -- 8
  9.     -- 7
  10.     -- 6
  11.     -- 5, missiles armed
  12.     -- 4
  13.     -- 3
  14.     -- 2
  15.     -- 1, missiles armed
  16.  
  17. -- do I need to chunk load the location that they get launched to
  18.  
  19. local detector = peripheral.find("playerDetector") -- Finds the peripheral if one is connected
  20. if detector == nil then error("playerDetector not found") end
  21.  
  22. armed = false -- deactivates the missile system
  23.  
  24.  
  25.  
  26. --main loop when armed
  27. while armed = true do
  28.  
  29.     --setup all local variables
  30.     local players = detector.getOnlinePlayers()
  31.     local numPlayers = #players
  32.     local i = 1
  33.     local launched = [array]
  34.  
  35.  
  36.     --remove GDragonArcher from the table
  37.     for k, v in pairs(players) do
  38.         if v == 'GDragonArcher' then
  39.             table.remove(players,k)
  40.             numPlayers = numPlayers - 1
  41.             break
  42.         end
  43.     end
  44.    
  45.     --remove BladetheSk8r from the table
  46.     for k, v in pairs(players) do
  47.         if v == 'BladetheSk8r' then
  48.             table.remove(players,k)
  49.             numPlayers = numPlayers - 1
  50.             break
  51.         end
  52.     end
  53.    
  54.     --remove Electrickat from the table
  55.     for k, v in pairs(players) do
  56.         if v == 'Electrickat' then
  57.             table.remove(players,k)
  58.             numPlayers = numPlayers - 1
  59.             break
  60.         end
  61.     end
  62.    
  63.  
  64.     -- say things
  65.     for i = 1, numPlayers do
  66.         local pos = detector.getPlayerPos(players[i]) --set what player you want the pos of
  67.        
  68.         if pos.x < xRangeMin or pos.x > xRangeMax and pos.y < yRangeMin or pos.y > yRangeMax
  69.             -- alert people of the intruder
  70.             box.sendMessageToPlayer("USERNAME has entered your territory", "GDragonArcher", "Missile Defense System")
  71.            
  72.             -- warn the intruder, count down
  73.             if players[i] == 'SlothKing'
  74.             box.sendMessageToPlayer("Britton, you have 20 seconds to leave this area or missiles will be launched at your base                                          (COORDINATES)", "USERNAME", "Missile Defense System")
  75.          
  76.             box.sendMessageToPlayer("20", players[i], "Missile Defense System")
  77.             sleep(5)
  78.            
  79.             box.sendMessageToPlayer("15", players[i], "Missile Defense System")
  80.             sleep(5)
  81.            
  82.             box.sendMessageToPlayer("10, silos open", ..username.., "Missile Defense System")
  83.             sleep(1)
  84.            
  85.             box.sendMessageToPlayer("9", players[i], "Missile Defense System")
  86.             sleep(1)
  87.            
  88.             box.sendMessageToPlayer("8", players[i], "Missile Defense System")
  89.             sleep(1)
  90.            
  91.             box.sendMessageToPlayer("7",players[i], "Missile Defense System")
  92.             sleep(1)
  93.            
  94.             box.sendMessageToPlayer("6", players[i], "Missile Defense System")
  95.             sleep(1)
  96.            
  97.             box.sendMessageToPlayer("5, missiles armed", players[i], "Missile Defense System")
  98.             sleep(1)
  99.            
  100.             box.sendMessageToPlayer("4", players[i], "Missile Defense System")
  101.             sleep(1)
  102.            
  103.             box.sendMessageToPlayer("3", players[i], "Missile Defense System")
  104.             sleep(1)
  105.            
  106.             box.sendMessageToPlayer("2", players[i], "Missile Defense System")
  107.             sleep(1)
  108.            
  109.             box.sendMessageToPlayer("1, missiles away", players[i], "Missile Defense System")
  110.             sleep(1)
  111.    
  112.             armed = false
  113.                
  114.             else if
  115.                    
  116.         end
  117.  
  118.         i = i + 1 --index i value
  119.     end
  120.    
  121.     sleep(5)
  122.  
  123. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement