Advertisement
NanoBob

NanoGlasses

Sep 24th, 2014
227
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 5.11 KB | None | 0 0
  1. --NanoGlasses Version 2.0
  2.  
  3. rednet.open("back")
  4. sensor=peripheral.wrap("right")
  5. glasses=peripheral.wrap("left")
  6. glassesController="darkbobo00"
  7. local pcX=-908
  8. local pcZ=-1835
  9. local pcY=84
  10.  
  11. blackList={
  12. ["Doc_Jason"]=true,
  13. ["iTzBruin"]=true,
  14. }
  15. whiteList={
  16. ['darkbobo00']=true,
  17. ['dark_sjoerd']=true,
  18. ['Lekkerdie']=true,
  19. ['mastersnake20']=true,
  20. ['skye333']=true,
  21. }
  22.  
  23. local distances={}
  24.  
  25. weaponIDs={[23557]=true,[23559]=true,[23561]=true,[23563]=true,[23565]=true,[23567]=true,[23569]=true,[23587]=true,[23589]=true,[23590]=true,[23592]=true,[23594]=true,[23597]=true,[23617]=true,[23619]=true,[23621]=true,[23623]=true,[23625]=true,[23627]=true,
  26. [23629]=true,[23631]=true,[23647]=true,[23649]=true,[23651]=true,[23652]=true,[23667]=true,[23668]=true,[23670]=true,[23672]=true,[23674]=true,[23801]=true,[23803]=true,[23805]=true,[23807]=true,[23809]=true,[23811]=true,[23813]=true,[23815]=true,[23817]=true,
  27. [23819]=true,[23821]=true,[23823]=true,[23825]=true,[23827]=true,[23829]=true,[23831]=true,[23833]=true,[23835]=true,[23837]=true,[23839]=true,[23841]=true,[23843]=true,[23845]=true,[23847]=true,[23848]=true,[23850]=true}
  28.  
  29. weaponNames={"sword","rapier","bow","paxel"}
  30.  
  31.  
  32. function getWeapons(playerName)
  33.     allSlots=sensor.getPlayerData(playerName)['inventory']
  34.     weapons={}
  35.     for id,data in pairs(allSlots) do
  36.         if weaponIDs[data['id']] then
  37.             weapons[data['id']]=true
  38.         else
  39.             loweredString=string.lower(data['name'])
  40.             for id,name in pairs(weaponNames) do
  41.                 if string.find(loweredString,name)~=nil then
  42.                     weapons[data['id']]=true
  43.                 end
  44.             end
  45.         end
  46.     end
  47.     return weapons
  48. end
  49.  
  50. function isHacked()
  51.     users=glasses.getUsers()
  52.     for id,player in ipairs(users) do
  53.         if player~=glassesController then
  54.             return true
  55.         end
  56.     end
  57.     return false
  58. end
  59.  
  60.  
  61. while true do
  62.     data=sensor.getPlayerData(glassesController)
  63.     if data~=nil and not isHacked() then
  64.         playerX=data['position']['x']+pcX
  65.         playerZ=data['position']['z']+pcZ
  66.         playerY=data['position']['y']+pcY
  67.         print(glassesController.." : "..playerX..","..playerZ..","..playerY)
  68.         for name,__ in pairs(blackList) do
  69.             data=sensor.getPlayerData(name)
  70.             if data~=nil then
  71.                 local pos=data['position']
  72.                 local x=pos['x']
  73.                 local z=pos['z']
  74.                 local y=pos['y']
  75.                 local health=data['health']
  76.                 x=math.floor(pcX+x+0.5)
  77.                 z=math.floor(pcZ+z+0.5)
  78.                 y=math.floor(pcY+y+0.5)
  79.                 distance=math.floor(math.sqrt((x-playerX)^2+(z-playerZ)^2)+0.5)
  80.                 distances[name]={['x']=x,['z']=z,['y']=y,['d']=distance,['h']=health}
  81.                 print(name.." : "..x..","..z..","..y..","..distance)
  82.                 end
  83.             end
  84.         for name,__ in pairs(whiteList) do
  85.             data=sensor.getPlayerData(name)
  86.             if data~=nil then
  87.                 local pos=data['position']
  88.                 local x=pos['x']
  89.                 local z=pos['z']
  90.                 local y=pos['y']
  91.                 local health=data['health']
  92.                 x=math.floor(pcX+x+0.5)
  93.                 z=math.floor(pcZ+z+0.5)
  94.                 y=math.floor(pcY+y+0.5)
  95.                 distance=math.floor(math.sqrt((x-playerX)^2+(z-playerZ)^2)+0.5)
  96.                 distances[name]={['x']=x,['z']=z,['y']=y,['d']=distance,['h']=health}
  97.                 print(name.." : "..x..","..z..","..y..","..distance)
  98.             end
  99.         end
  100.         local nameIndex=1
  101.         glasses.clear()
  102.         for name,information in pairs(distances) do
  103.             local x=information['x']
  104.             local z=information['z']
  105.             local height=information['y']
  106.             local distance=information['d']
  107.             local health=information['h']
  108.             if whiteList[name] then
  109.                 glasses.addText(5,nameIndex*10-5,name..":"..x..","..z.." Height :"..height.."  Distance :"..distance.." Health:"..health,50000)
  110.             elseif blackList[name] then
  111.                 glasses.addText(5,nameIndex*10-5,name..":"..x..","..z.." Height :"..height.."  Distance :"..distance.." Health:"..health,8000000)
  112.             end
  113.             --stringLength=glasses.getStringWidth(name..": "..x..","..z.."  Distance :"..distance)
  114.             glasses.addBox(0,nameIndex*10-5,400,10,10000000,0.2)
  115.             name=string.sub(name,1,6)
  116.             nameIndex=nameIndex+1
  117.         end
  118.     else
  119.         glasses.clear()
  120.         glasses.addText(5,5*10,"DAFUQ R U DOIN",8000000)
  121.     end
  122.     event,message,a2,a3,a4=os.pullEvent()
  123.     if event=="chat_command" then
  124.         if message=="" then
  125.        
  126.         else
  127.             local data=sensor.getPlayerData(message)
  128.             armorIndex=0
  129.             if data~=nil then
  130.                 armor=data['armor']
  131.                 glasses.clear()
  132.                 for armorSlot,data in pairs(armor) do
  133.                     glasses.addIcon(10,armorIndex*40+20,data['id'],0)
  134.                     armorIndex=armorIndex+1
  135.                 end
  136.                 weaponIndex=0
  137.                 collumnIndex=0
  138.                 weapons=getWeapons(message)
  139.                 for id,data in pairs(weapons) do
  140.                     glasses.addIcon(30+collumnIndex*20,weaponIndex*40+20,id,0)
  141.                     weaponIndex=weaponIndex+1
  142.                     if weaponIndex==4 then
  143.                         collumnIndex=collumnIndex+1
  144.                         weaponIndex=0
  145.                     end
  146.                 end
  147.                
  148.                 inventoryIndex=0
  149.                 collumnIndex=0
  150.                 inventory=data['inventory']
  151.                 for slot,data in pairs(inventory) do
  152.                     if slot<37 and data~="empty" then
  153.                         glasses.addIcon(100+collumnIndex*20+100,inventoryIndex*40+20,data['id'],0)
  154.                         if data~="empty" then
  155.                             inventoryIndex=inventoryIndex+1
  156.                             if inventoryIndex==4 then
  157.                                 collumnIndex=collumnIndex+1
  158.                                 inventoryIndex=0
  159.                             end
  160.                         end
  161.                     end
  162.                 end
  163.                
  164.                 sleep(5)
  165.             end
  166.            
  167.         end    
  168.     end
  169. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement