Advertisement
skypop

CC Sort list

Jul 23rd, 2018
299
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.61 KB | None | 0 0
  1. -- Sort list API
  2. -- by SukaiPoppuGo
  3. -- required mod Plethora
  4.  
  5. local STOCK =   {"west","stock"}
  6. local FURNACE = {"west","furnace"}
  7. local FUEL =    {"west","fuel"}
  8. local WANTED =  {"east","wanted"}
  9. local TRASH =   {"east","trash"}
  10. local ENCHANT = {"east", "enchant"}
  11.  
  12. local rules = {
  13.     ["minecraft:bone"] = STOCK,
  14.     ["minecraft:rotten_flesh"] = STOCK,
  15.     ["minecraft:arrow"] = STOCK,
  16.     ["minecraft:tipped_arrow"] = STOCK,
  17.     ["minecraft:spectral_arrow"] = STOCK,
  18.     ["minecraft:bow"] = WANTED,
  19.     ["minecraft:shield"] = TRASH,
  20.     ["minecraft:iron_shovel"] = WANTED,
  21.     ["minecraft:iron_pickaxe"] = WANTED,
  22.     ["minecraft:iron_axe"] = WANTED,
  23.     ["minecraft:iron_hoe"] = FURNACE,
  24.     ["minecraft:iron_sword"] = WANTED,
  25.     ["minecraft:iron_helmet"] = FURNACE,
  26.     ["minecraft:iron_chestplate"] = FURNACE,
  27.     ["minecraft:iron_leggings"] = FURNACE,
  28.     ["minecraft:iron_boots"] = FURNACE,
  29.    
  30.     ["^minecraft:wooden_.*"] = FUEL,
  31.     ["^minecraft:chainmail_.*"] = FURNACE,
  32.     ["^minecraft:golden_.*"] = FURNACE,
  33.     ["^minecraft:diamond_.*"] = WANTED,
  34.     ["^minecraft:stone_.*"] = TRASH,
  35.     ["^minecraft:leather_.*"] = TRASH,
  36. }
  37.  
  38. function get(item)
  39.     local r = false
  40.     --simple rules
  41.     if rules[item.name] then
  42.         r = rules[item.name]
  43.     --match pattern rules
  44.     else
  45.         for regexp, dest in pairs(rules) do
  46.             if string.sub(regexp,1,1) == "^"
  47.             and string.find(item.name, regexp) then
  48.                 r = dest
  49.             end
  50.         end
  51.     end
  52.     --Save enchanted stuff
  53.     if r and r[2] == TRASH[2] then
  54.         if item.nbtHash then
  55.             r = ENCHANT
  56.         end
  57.     end
  58.     if r then
  59.         return unpack(r)
  60.     else
  61.         return false, "dtc"
  62.     end
  63. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement