Zeldaboy111

Skript #203 - f

Jul 9th, 2019
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. function fill(x: String, y: String, z: String, loc2: location, world: String, block: String):
  2. set {_loc1} to location ({_x} parsed as a number), ({_y} parsed as a number), ({_z} parsed as a number) of world "%{_world}%"
  3. #set {_loc2} to location ({_x2} parsed as a number), ({_y2} parsed as a number), ({_z2} parsed as a number) of world "%{_world}%"
  4.  
  5. if {_block} is "scematic_dirt_machine":
  6. loop blocks between block at {_loc1} and block at {_loc2}:
  7. if loop-block is air:
  8. set block at location of loop-block to green glass block
  9.  
  10. else:
  11. set {_block::%location of loop-block%} to loop-block
  12. send "%{_block::%location of loop-block%}%" to console
  13. set block at location of loop-block to red glass block
  14.  
  15.  
  16.  
  17. function getDirectionalBlock(i: item, d: direction) :: item:
  18. set {_block::north} to 1
  19. set {_block::south} to 3
  20. set {_block::west} to 4
  21. set {_block::east} to 5
  22. return "%{_i}%:%{_block::%{_d}%}%" parsed as an item
  23.  
  24.  
  25. function getOppositeDirection(direction: direction) :: direction:
  26. loop split "%{_direction}%" by "and":
  27. if {_dir} is not set:
  28. set {_dir} to numbersIn(loop-value)
  29. set {_final} to loop-value
  30.  
  31. else if numbersIn(loop-value) > {_dir}:
  32. set {_dir} to numbersIn(loop-value)
  33. set {_final} to loop-value
  34.  
  35. if {_final} contains "north":
  36. return north
  37. if {_final} contains "east":
  38. return east
  39. if {_final} contains "south":
  40. return south
  41. if {_final} contains "west":
  42. return west
  43.  
  44.  
  45.  
  46. function numbersIn(s: String) :: number:
  47. set {_return} to ""
  48. loop {_s} split at "":
  49. set {_num} to loop-value parsed as a number
  50. if {_num} is set:
  51. "%{_num}%" = "%loop-value%"
  52. set {_return} to "%{_return}%%{_num}%"
  53.  
  54. return {_return} parsed as a number
  55.  
  56.  
  57. function addNumber(x: string, y: string, z: string, w: world, dir: direction) :: location:
  58. if {_dir} is "north":
  59. remove 1 from {_z}
  60.  
  61. if {_dir} is "east":
  62. add 1 to {_x}
  63.  
  64. if {_dir} is "south":
  65. add 1 to {_z}
  66.  
  67. if {_dir} is "west":
  68. remove 1 from {_x}
  69.  
  70. set {_return} to location ({_x} parsed as a number), ({_y} parsed as a number), ({_z} parsed as a number) of world "%{_w}%"
  71. return {_return}
Add Comment
Please, Sign In to add comment