Advertisement
Solonarv

Minecraft 14w20a: Custom UI Menu using /title

May 17th, 2014
276
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.52 KB | None | 0 0
  1. 14w20a /title menu commands
  2.  
  3. by Solonarv
  4.  
  5. Video: http://youtu.be/LpyZkDYmjL4
  6.  
  7. Lines starting with # are comments, not commands. Everything after an # on the same line is also a comment,
  8. and should not be put into a command block.
  9. # ========================================
  10.  
  11. # Run these ONCE; they set up the needed scores.
  12. /scoreboard objectives add distSnuck stat.crouchOneCm # Used to detect when the players is sneaking
  13. /scoreboard objectives add holdingMenuItem dummy # Tells whether or not the player is holding an item named 'Menu'
  14. /scoreboard objectives add selectedMenuItem dummy # The number (1-9) of the selected/hovered menu item
  15. /scoreboard objectives add choiceMade dummy # Counts down from 100 as soon as the player chooses a menu item.
  16.  
  17. # ========================================
  18.  
  19. # All commands after this line are hooked up to a /fill clock and executed in the order given here, every game tick.
  20.  
  21. # Reset/update scores
  22. /scoreboard players remove @a[score_choiceMade_min=1] choiceMade 1
  23. /scoreboard players set @a holdingMenuItem 0
  24. /scoreboard players set @a selectedMenuItem 0
  25.  
  26. # Tag players who have an item named "Menu" in hand by giving them a score 'holdingMenuItem' of 1
  27. /scoreboard players set @a[score_choiceMade=0] holdingMenuItem 1 {Inventory:[{Slot:0b,tag:{display:{Name:"Menu"}}}],SelectedItemSlot:0}
  28. /scoreboard players set @a[score_choiceMade=0] holdingMenuItem 1 {Inventory:[{Slot:1b,tag:{display:{Name:"Menu"}}}],SelectedItemSlot:1}
  29. /scoreboard players set @a[score_choiceMade=0] holdingMenuItem 1 {Inventory:[{Slot:2b,tag:{display:{Name:"Menu"}}}],SelectedItemSlot:2}
  30. /scoreboard players set @a[score_choiceMade=0] holdingMenuItem 1 {Inventory:[{Slot:3b,tag:{display:{Name:"Menu"}}}],SelectedItemSlot:3}
  31. /scoreboard players set @a[score_choiceMade=0] holdingMenuItem 1 {Inventory:[{Slot:4b,tag:{display:{Name:"Menu"}}}],SelectedItemSlot:4}
  32. /scoreboard players set @a[score_choiceMade=0] holdingMenuItem 1 {Inventory:[{Slot:5b,tag:{display:{Name:"Menu"}}}],SelectedItemSlot:5}
  33. /scoreboard players set @a[score_choiceMade=0] holdingMenuItem 1 {Inventory:[{Slot:6b,tag:{display:{Name:"Menu"}}}],SelectedItemSlot:6}
  34. /scoreboard players set @a[score_choiceMade=0] holdingMenuItem 1 {Inventory:[{Slot:7b,tag:{display:{Name:"Menu"}}}],SelectedItemSlot:7}
  35. /scoreboard players set @a[score_choiceMade=0] holdingMenuItem 1 {Inventory:[{Slot:8b,tag:{display:{Name:"Menu"}}}],SelectedItemSlot:8}
  36.  
  37. # Give the players with a menu item a score 'selectedMenuItem' that reflects which menu item they're hovering over
  38. /scoreboard players set @a[rym=0,ry=40,score_holdingMenuItem_min=1] selectedMenuItem 1
  39. /scoreboard players set @a[rym=40,ry=80,score_holdingMenuItem_min=1] selectedMenuItem 2
  40. /scoreboard players set @a[rym=80,ry=120,score_holdingMenuItem_min=1] selectedMenuItem 3
  41. /scoreboard players set @a[rym=120,ry=160,score_holdingMenuItem_min=1] selectedMenuItem 4
  42. /scoreboard players set @a[rym=160,ry=200,score_holdingMenuItem_min=1] selectedMenuItem 5
  43. /scoreboard players set @a[rym=200,ry=240,score_holdingMenuItem_min=1] selectedMenuItem 6
  44. /scoreboard players set @a[rym=240,ry=280,score_holdingMenuItem_min=1] selectedMenuItem 7
  45. /scoreboard players set @a[rym=280,ry=320,score_holdingMenuItem_min=1] selectedMenuItem 8
  46. /scoreboard players set @a[rym=320,ry=360,score_holdingMenuItem_min=1] selectedMenuItem 9
  47.  
  48. # Set the appropriate subtitle to show part of the menu ring
  49. # Note: these are actually executed in a different order, but that doesn't matter
  50. /title @a[rym=0,ry=20,score_holdingMenuItem_min=1] subtitle {text:"em 9 - Item 1 - It"}
  51. /title @a[rym=20,ry=40,score_holdingMenuItem_min=1] subtitle {text:" - Item 1 - Item"}
  52. /title @a[rym=40,ry=60,score_holdingMenuItem_min=1] subtitle {text:"em 1 - Item 2 - It"}
  53. /title @a[rym=60,ry=80,score_holdingMenuItem_min=1] subtitle {text:" - Item 2 - Item"}
  54. /title @a[rym=80,ry=100,score_holdingMenuItem_min=1] subtitle {text:"em 2 - Item 3 - It"}
  55. /title @a[rym=100,ry=120,score_holdingMenuItem_min=1] subtitle {text:" - Item 3 - Item"}
  56. /title @a[rym=120,ry=140,score_holdingMenuItem_min=1] subtitle {text:"em 3 - Item 4 - It"}
  57. /title @a[rym=140,ry=160,score_holdingMenuItem_min=1] subtitle {text:" - Item 4 - Item"}
  58. /title @a[rym=160,ry=180,score_holdingMenuItem_min=1] subtitle {text:"em 4 - Item 5 - It"}
  59. /title @a[rym=180,ry=200,score_holdingMenuItem_min=1] subtitle {text:" - Item 5 - Item"}
  60. /title @a[rym=200,ry=220,score_holdingMenuItem_min=1] subtitle {text:"em 5 - Item 6 - It"}
  61. /title @a[rym=220,ry=240,score_holdingMenuItem_min=1] subtitle {text:" - Item 6 - Item"}
  62. /title @a[rym=240,ry=260,score_holdingMenuItem_min=1] subtitle {text:"em 6 - Item 7 - It"}
  63. /title @a[rym=260,ry=280,score_holdingMenuItem_min=1] subtitle {text:" - Item 7 - Item"}
  64. /title @a[rym=280,ry=300,score_holdingMenuItem_min=1] subtitle {text:"em 7 - Item 8 - It"}
  65. /title @a[rym=300,ry=320,score_holdingMenuItem_min=1] subtitle {text:" - Item 8 - Item"}
  66. /title @a[rym=320,ry=340,score_holdingMenuItem_min=1] subtitle {text:"em 8 - Item 9 - It"}
  67. /title @a[rym=340,ry=360,score_holdingMenuItem_min=1] subtitle {text:" - Item 9 - Item"}
  68.  
  69. # Make sure the subtitles are displayed correctly
  70. /title @a[score_holdingMenuItem_min=1] times 0 2 0
  71. /title @a[score_holdingMenuItem_min=1] title {text:"Menu"}
  72.  
  73. # 'Locks in' the choice of players who have moved while crouching this tick. The lock expires after 100 ticks=5s
  74. /scoreboard players set @a[score_distSnuck_min=1,score_holdingMenuItem_min=1,score_choiceMade=0] choiceMade 100
  75.  
  76. # Tell the player which choice they made.
  77. # Obviously, you can really use pretty much any commands here.
  78. /tell @a[score_choiceMade_min=100,score_selectedMenuItem_min=1,score_selectedMenuItem=1] Menu item 1 selected
  79. /tell @a[score_choiceMade_min=100,score_selectedMenuItem_min=2,score_selectedMenuItem=2] Menu item 2 selected
  80. /tell @a[score_choiceMade_min=100,score_selectedMenuItem_min=3,score_selectedMenuItem=3] Menu item 3 selected
  81. /tell @a[score_choiceMade_min=100,score_selectedMenuItem_min=4,score_selectedMenuItem=4] Menu item 4 selected
  82. /tell @a[score_choiceMade_min=100,score_selectedMenuItem_min=5,score_selectedMenuItem=5] Menu item 5 selected
  83. /tell @a[score_choiceMade_min=100,score_selectedMenuItem_min=6,score_selectedMenuItem=6] Menu item 6 selected
  84. /tell @a[score_choiceMade_min=100,score_selectedMenuItem_min=7,score_selectedMenuItem=7] Menu item 7 selected
  85. /tell @a[score_choiceMade_min=100,score_selectedMenuItem_min=8,score_selectedMenuItem=8] Menu item 8 selected
  86. /tell @a[score_choiceMade_min=100,score_selectedMenuItem_min=9,score_selectedMenuItem=9] Menu item 9 selected
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement