<aside> 🗒️

Network hub lobby. Players spawn with hotbar tools (Server Selector, My Profile, Perks, Knocker bow). Most damage is cancelled and dropping below Y 100 returns you to spawn. The selector GUI sends you to another BungeeCord server named after the clicked item. Rank on the sidebar comes from display-name tags like [owner] and balance.

</aside>

<aside> 🛠

How to set this up

Scoreboard:
  title: '&6Server Network'
  lines:
    '6': ''
    '5': '&7Online&8:&e {minigame-size}'
    '4': '&7Rank&8:&e {private:data:rank}'
    '3': '&7Balance&8:&e {private:data:balance}'
    '2': ' '
    '1': '&ewww.example.com'
Kits:
  hub:
    Inventory:
      '1':
        type: CLOCK
        id: 0
        amount: 1
        name: '&aServer Selector'
      '2':
        type: ENCHANTED_BOOK
        id: 0
        amount: 1
        name: '&aMy Profile'
      '3':
        type: NETHER_STAR
        id: 0
        amount: 1
        name: '&aPerks'
        enchantments:
          loyalty: 3
          durability: 3
      '9':
        type: BOW
        id: 0
        amount: 1
        name: '&aKnocker'
        enchantments:
          arrow_infinite: 1
          unbreaking: 3
      '10':
        type: ARROW
        id: 0
        amount: 1
Events:
  Per_Second_Scheduler:
    Commands:
      - 'set-private-data {player} rank Player'
      - '{player} if {y} < 100 do teleport {player} spawn'
      - '{player} if {display-name} contains [owner] do set-private-data {player} rank Owner'
      - '{player} if {display-name} contains [manager] do set-private-data {player} rank Manager'
      - '{player} if {display-name} contains [developer] do set-private-data {player} rank Developer'
      - '{player} if {display-name} contains [moderator] do set-private-data {player} rank Moderator'
      - '{player} if {display-name} contains [helper] do set-private-data {player} rank Helper'
  Food_Level_Decrease:
    Commands:
      - 'cancel-event {player}'
  Server_Leave:
    Commands:
      - '{player} if {private:timer:server_join} = 0 do remove-from-minigame {player}'
      - '{player} if {private:timer:server_join} > 0 do cancel-event {player}'
  Item_Drop:
    Commands:
      - 'cancel-event {player}'
  Player_Suffocation_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Fall_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Fire_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Lava_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Drowning_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Creeper_Explosion_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Block_Explosion_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Firework_Explosion_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Void_Damage:
    Commands:
      - 'cancel-event {player}'
      - 'teleport {player} spawn'
  Player_Lightning_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Starvation_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Poison_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Magic_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Wither_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Falling_Block_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Thorns_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Dragon_Breath_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Custom_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Hot_Floor_Damage:
    Commands:
      - 'cancel-event {player}'
  Player_Projectile_Damage:
    Commands:
      - 'cancel-event {player}'
      - 'add-velocity {player} 0 1'
  Player_Hand_Damage:
    Commands:
      - 'cancel-event {player}'
  Respawn:
    Commands:
      - 'teleport {player} spawn'
  Server_Join:
    Commands:
      - 'apply-kit {player} hub'
      - 'set-gamemode {player} SURVIVAL'
      - 'set-private-data {player} balance {stats:balance:users}'
      - 'teleport {player} spawn'
  Minigame_Join:
    Commands:
      - 'apply-kit {player} hub'
      - 'set-gamemode {player} SURVIVAL'
      - 'set-private-data {player} balance {stats:balance:users}'
      - 'teleport {player} spawn'
  Inventory_Shift_Click:
    Commands:
      - '{player} if {gamemode} /= creative do cancel-event {player}'
      - >
	      {player} if {inventory-title} = server%spc%selector do 
	         {player} if {clicked-item:type} not-contains : do
	            set-private-timer {player} server_join 5 {&}
	            send-to-bungee-server {player} {clicked-item:name}
  Inventory_Keyboard_Click:
    Commands:
      - '{player} if {gamemode} /= creative do cancel-event {player}'
      - >
		     {player} if {inventory-title} = server%spc%selector do 
		        {player} if {clicked-item:type} not-contains : do 
		           set-private-timer {player} server_join 5 {&}
		           send-to-bungee-server {player} {clicked-item:name}
  Inventory_Right_Click:
    Commands:
      - '{player} if {gamemode} /= creative do cancel-event {player}'
      - >
		     {player} if {inventory-title} = server%spc%selector do 
		        {player} if {clicked-item:type} not-contains : do 
		           set-private-timer {player} server_join 5 {&}
		           send-to-bungee-server {player} {clicked-item:name}
  Inventory_Left_Click:
    Commands:
      - '{player} if {gamemode} /= creative do cancel-event {player}'
      - >
		     {player} if {inventory-title} = server%spc%selector do 
		        {player} if {clicked-item:type} not-contains : do 
		           set-private-timer {player} server_join 5 {&}
		           send-to-bungee-server {player} {clicked-item:name}
  Item_Pick_Up:
    Commands:
      - 'cancel-event {player}'
  Right_Click_Block:
    Commands:
      - '{player} if {item-in-hand:name} = server%spc%selector do open-configured-inventory {player} server_selector'
      - '{player} if {item-in-hand:name} = my%spc%profile do send-private-message {player} &7View your profile at&8: &6https://example.com/stats/?player={player}'
      - '{player} if {item-in-hand:name} = perks do execute-command {player} perks'
  Right_Click_Air:
    Commands:
      - '{player} if {item-in-hand:name} = server%spc%selector do open-configured-inventory {player} server_selector'
      - '{player} if {item-in-hand:name} = my%spc%profile do send-private-message {player} &7View your profile at&8: &6https://example.com/stats/?player={player}'
      - '{player} if {item-in-hand:name} = perks do execute-command {player} perks'
Locations:
  spawn:
    world: world
    x: 0.0
    y: 0.0
    z: 0.0
    yaw: 0.0
    pitch: 0.0
Inventories:
  server_selector:
    title: Server Selector
    bars: 3
    '11':
      name: '&aSurvival'
      type: APPLE
      id: 0
      amount: 1
    '12':
      name: '&aKitPvP'
      type: IRON_SWORD
      id: 0
      amount: 1
    '13':
      name: '&aLivestream'
      type: REDSTONE
      id: 0
      amount: 1
    '14':
      name: '&aMinigames'
      type: LEATHER_CHESTPLATE
      id: 0
      amount: 1
    '15':
      name: '&c&kABCDEF'
      type: BLACK_STAINED_GLASS_PANE
      id: 0
      amount: 1
    '16':
      name: '&c&kABCDEF'
      type: BLACK_STAINED_GLASS_PANE
      id: 0
      amount: 1
    '17':
      name: '&c&kABCDEF'
      type: BLACK_STAINED_GLASS_PANE
      id: 0
      amount: 1