#HAVE A 1 in 100000000 chance of instantly winning a game if they go in their own goal ##CHECK FOR IF ALL THE FLAGS ARE MET FOR SETUP OF BRIDGE, THEN MAKE THE ARENA AVAILABLE FOR PLAYERS TO JOIN? ##MAKE THE PLAYERS LEAVE THE GAME ON SERVER RESTART/SHUTDOWN ##MAKE A WHOLE LIST FLAG FOR ALL THE PLAYER FLAGS IN GAME? ##WIN THE GAME OR CANCEL IT WHEN THEY LEAVE ON THE FIRST POINT? ##ADD A TIMER ##SOUND EFFECT FOR WHEN ARROW IS RECHARGED? ##FIX HUNGER? ##USE TO_TITLECASE? ##CHANGE SCOREBOARD WHEN IT STARTS? ##SHOW THE SCORE IN THE LORE OF THE MAP SELECTION? ##WAIT LONGER BEFORE TELEPORTING OTHERS TO GIVE THEM A CHANCE TO JOIN NEW GAME ##CHECK FOR IF AN ARROW IS IN THE PLAYER'S INVENTORY ALREADY? OR CHECK FOR IF THEY HAVE THE FLAG ##IRON BAR FOR CAGES? bridge_solo_join_gui: debug: false type: inventory inventory: CHEST title: Play BreadBridge size: 36 slots: - "[] [] [] [] [] [] [] [] []" - "[] [] [] [bridge_solo_join_game] [] [bridge_map_selector] [] [] []" - "[] [] [] [] [] [] [] [] []" - "[] [] [] [] [brclose] [] [] [] []" bridge_solo_map_gui: debug: false type: inventory inventory: CHEST title: Play BreadBridge Duels size: 54 slots: - "[] [] [] [] [] [] [] [] []" - "[] [] [] [] [] [] [] [] []" - "[] [] [] [] [] [] [] [] []" - "[] [] [] [] [] [] [] [] []" - "[] [] [] [] [bridge_random_map] [] [] [] []" - "[] [] [] [] [bridge_go_back] [] [] [] [map_selection_book]" open_bridge_gui: type: assignment debug: false actions: on assignment: - trigger name:click state:true cooldown:0s on click: - inventory open d: bridgesetupstart: debug: false type: command name: bridgesetup description: breadbridge usage: /bridgesetup permission: bridge.command.admin aliases: - brsetup tab complete: - if !>: - stop script: - if != null: - if !]>: - narrate "<&c>No arena exists by that name. To create an arena, type /brcreate [arena name]" - else: - inventory open d: - flag player bridgearenaselection: - else: - narrate "<&c>No arenas have been created. To create an arena, type /brcreate [arena name]" bridgejoin: ##CANT JOIN IN THE SAME WORLD FOR SOME REASON? debug: false type: command name: bridgejoin description: brjoin usage: /bridgejoin permission: bridge.command.join aliases: - brjoin tab complete: - if !>: - stop script: ##SHOULD I MAKE A FLAG MAP FOR PLAYING STATE, TEAM COLOR, ETC. RATHER THAN DIFFERENT FLAGS? ##INSTEAD OF USING PLAYER.WORLD, USE THE WORLD THE BRIDGEMAP IS LOCATED IN? LIKE THIS .respawn1].as_location.world> IT RETURNS THE LOCATION OF A SAVED LOCATION OF A MAP THE PLAYER HAS JOINED AND IT'S WORLD ##THE REASON WHY I CAN'T JOIN THE ARENA IN THE SAME WORLD, IS BECAUSE THE SECOND THEY DO /BRJOIN, THEY ARE ALREADY IN THE WORLD - if == null: - if != null: - if !: - if ]>: - if .respawn1].as_location.world.players.filter[has_flag[playingbridge]].size> < 2: - flag player playingbridge:waiting - flag player bridgearena: - else: - narrate "<&c>This arena is full!" - else: - narrate "<&c>No arena exists by that name!" - else: - flag player bridgearena:]> - while .respawn1].as_location.world.players.filter[has_flag[playingbridge]].size> == 2: - flag player bridgearena:]> - flag player playingbridge:waiting ##SHOULD I ADD THE SIDEBAR, OR JUST FLAG IT FOR THE ON TICK EVENT TO CATCH? FOR NOW, DON'T BECAUSE LESS LINES - inventory set d: o:bridgelobbyinv # || == 1 have this? - if .respawn1].as_location.world.players.filter[has_flag[playingbridge]].filter[flag[playingbridge].is[==].to[waiting]].size> == 0: - if <= 50: - flag player bridgeteamcolor:yellow - teleport .respawn1]> - else: - flag player bridgeteamcolor:pink - teleport .respawn2]> - narrate "> <&e>joined the arena (<&b><&e>/<&b>2<&e>)!" targets: - sidebar set title:<&6><&l>BREAD<&d><&l>BRIDGE "values:<&b>|<&f>Players: <&a>/2|<&f>Map: <&b>||<&f>Waiting for players...|<&f>|<&e>mc.breadpixel.net" # || == 2 have this? - else if .respawn1].as_location.world.players.filter[has_flag[playingbridge]].filter[flag[playingbridge].is[==].to[waiting]].size> == 1: - if .respawn1].as_location.world.players.filter[has_flag[bridgeteamcolor]].filter[flag[bridgeteamcolor].is[==].to[yellow]].size> == 1: - flag player bridgeteamcolor:pink - teleport .respawn2]> - else if .respawn1].as_location.world.players.filter[has_flag[bridgeteamcolor]].filter[flag[bridgeteamcolor].is[==].to[pink]].size> == 1: - flag player bridgeteamcolor:yellow - teleport .respawn1]> - sidebar set title:<&6><&l>BREAD<&d><&l>BRIDGE "values:<&b>|<&f>Players: <&a>/2|<&f>Map: <&b>||<&f>Waiting for players...|<&f>|<&e>mc.breadpixel.net" - sidebar set_line scores:6 "values:<&f>Players: <&a>/2" players: - narrate "> <&e>joined the arena (<&b><&e>/<&b>2<&e>)!" targets: - if !.cage1]>: - schematic load name:bridge.arenas..cage1 - if !.cage2]>: - schematic load name:bridge.arenas..cage2 - if !.location]>: - schematic load name:bridge.arenas..location - inject bridgestartgame - else: - narrate "<&c>No arenas have been created!" - else: - narrate "<&c>You're already in a match!" ##FIX THE SIDEEEEEEEEBARRRRRRRR ##MAKE SURE TO CHECK IF THE ARENA IS FULL OR NOT USING FILTER AND RANDOM?? brleave: #################################DOOOOOOOOOOOOOOOOOOOOOO NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOT USEEEEEEEEEEEEEEEEEEEEEEEEEEEEE BRLEAVE!!!!!!!!!!!!!!!!!!!!!!!!! debug: false type: command name: bridgeleave description: bridgeleave usage: /bridgeleave permission: bridge.admin.command.leave aliases: - brleave tab complete: - if !>: - stop script: - if != null: - if : - narrate "<&e>Left BreadBridge game from arena <&a><&e>!" - foreach as:player: - inventory clear d:<[player].inventory> - sidebar remove #- foreach as:player: #- remove <[player].flag[healthstand]> #- flag <[player]> healthstand:! - flag player playingbridge:! - if == 1: - modifyblock .pit1].blocks[end_portal]> air - modifyblock .pit2].blocks[end_portal]> air - remove armor_stand world:.respawn1].as_location.world> - if == 0: - schematic paste name:bridge.arenas..location .bridgecenter]> ##REMOVE IT WHILE WAITING ##PASTE IT WHEN THE GAME STARTS ##REMOVE IT WHEN THE GAME ENDS #- modifyblock .cage1location].blocks> air #- modifyblock .cage2location].blocks> air #- schematic unload name:bridge.arenas..cage1 - flag player bridgescore:! - flag player bridgekills:! - flag player bridgeteamcolor:! - flag player bridgearena:! #why is the map sidebar returning null? - sidebar set_line scores:6 "values:<&f>Players: <&a>/2" players: #- sidebar set "title:<&6><&l>BREAD<&d><&l>BRIDGE" "values:<&b>|<&f>Players: <&a>/2|<&f>Map: <&b>||<&f>Waiting for players...|<&f>|<&e>mc.breadpixel.net" players: - else: - narrate "<&c>You're not in a match!" - else: - narrate "<&c>No arenas have been created!" #################################DOOOOOOOOOOOOOOOOOOOOOO NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOT USEEEEEEEEEEEEEEEEEEEEEEEEEEEEE BRLEAVE!!!!!!!!!!!!!!!!!!!!!!!!! ###MAKE THIS (BRLEAVE) A TASK AND INJECT IT, SO THAT I CAN USE IT FOR ON PLAYER LEAVES NETWORK TOO bridgecreatearena: debug: false type: command name: bridgecreate description: bridgecreate usage: /bridgecreate permission: bridge.command.admin aliases: - brcreate tab complete: - if !>: - stop script: - if != null: - if !]>: - flag server BridgeArenas:->: - narrate "<&e>Created arena <&a> <&e>for BreadBridge!" - else: - narrate "<&c>This is already an existing arena!" - else: - flag server BridgeArenas:->: - narrate "<&e>Created arena <&a> <&e>for BreadBridge!" bridgeremovearena: debug: false type: command name: bridgeremove description: bridgeremove usage: /bridgeremove permission: bridge.command.admin aliases: - brremove tab complete: - if !>: - stop script: - if : - if : - if ]>: - narrate "<&c>Are you sure you want to delete the arena? Retype the command within 10 seconds to confirm" - flag player arenaremove: duration:10s - else: - narrate "<&c>There's no arena by this name!" - else: - narrate "<&c>No arenas have been created!" - else: - adjust server delete_file:schematics/bridge.arenas..cage1.schem - adjust server delete_file:schematics/bridge.arenas..cage2.schem - adjust server delete_file:schematics/bridge.arenas..location.schem - note remove as:bridge.arenas..location - note remove as:bridge.arenas..pit1 - note remove as:bridge.arenas..pit2 - note bridge.arenas..void #just remove bridge.arenas? - flag server bridge.arenas.:! - flag server BridgeArenas:<-: - narrate "<&e>Deleted arena <&a> <&e>for BreadBridge!" - flag player arenaremove:! bridgelist: debug: false type: command name: bridgelist description: bridgelist usage: /bridgelist permission: bridge.command.admin aliases: - brlist tab complete: - if !>: - stop script: - narrate "<&e>BreadBridge Arenas: <&a>, <&a>]||<&c>No Arenas!>" bridgeregen: debug: false type: command name: bridgeregen description: bridgeregeneration usage: /bridgeregen permission: bridge.command.admin aliases: - brregen tab complete: - if !>: - stop script: - if ]>: - modifyblock ].read[bridge.location]>]> air brsetlobby: debug: false type: command name: bridgesetlobby description: bridgesetlobby usage: /bridgesetlobby permission: bridge.command.setlobby aliases: - brsetlobby tab complete: - if !>: - stop script: - narrate "<&6>Bread<&d>Bridge <&a>Lobby set!" - flag server BreadBridgeLobby: bradmin: debug: false type: command name: bridgeadmin description: bridgecreate usage: /bridgeadmin permission: bridge.command.admin aliases: - bradmin tab complete: - if !>: - stop script: - narrate "<&8>-----------------------------------------------------<&6><&l>Bread<&d><&l>Bridge <&e>Help menu<&nl><&e>Create a new arena with <&a>/brcreate [arena name]<&nl><&e>Setup your arena with <&a>/brsetup [arena name]<&nl><&e>Get a list of all available arenas with <&a>/brlist<&nl><&e>Remove arenas with <&a>/brremove [arena name]<&nl><&e>Set the main lobby to return to with <&a>/brlobby<&nl><&8>-----------------------------------------------------" bridgesetupinv: debug: false type: inventory inventory: CHEST title: BreadBridge Setup size: 45 slots: - "[blackpane] [blackpane] [blackpane] [blackpane] [brsetbridge] [blackpane] [blackpane] [blackpane] [blackpane]" - "[bryellow] [blackpane] [brsetpit1] [blackpane] [brsetcage1] [blackpane] [brrespawnlocation1] [blackpane] [brspawnlocation1]" - "[blackpane] [blackpane] [blackpane] [blackpane] [blackpane] [blackpane] [blackpane] [blackpane] [blackpane]" - "[brpink] [blackpane] [brsetpit2] [blackpane] [brsetcage2] [blackpane] [brrespawnlocation2] [blackpane] [brspawnlocation2]" - "[blackpane] [blackpane] [blackpane] [blackpane] [blackpane] [blackpane] [blackpane] [blackpane] [brclose]" bryellow: type: item debug: false material: yellow_terracotta display name: '<&6>Team 1' brpink: type: item debug: false material: pink_terracotta display name: '<&c>Team 2' brsetcage1: type: item debug: false material: yellow_stained_glass display name: '<&e>Step 2' lore: - <&r> - <&7>Select the cage - <&7>corners. - <&r> - <&a>Click to set cage! brsetcage2: type: item debug: false material: pink_stained_glass display name: '<&e>Step 2' lore: - <&r> - <&7>Select the cage - <&7>corners. - <&r> - <&a>Click to set cage! brclose: type: item debug: false material: barrier display name: '<&c>Close' brsetbridge: type: item debug: false material: oak_fence display name: '<&e>Set Bridge' lore: - <&r> - <&7>Select the bridge - <&7>whole bridge. - <&r> - <&a>Click to set bridge! brcenter: type: item debug: false material: glass display name: '<&e>Step 1' lore: - <&r> - <&7>Select the center - <&7>of the bridge. - <&r> - <&a>Click to set center! brsetpit1: type: item debug: false material: end_portal_frame display name: '<&e>Step 1' lore: - <&r> - <&7>Set the first pit. - <&r> - <&a>Click to set pit! brsetpit2: type: item debug: false material: end_portal_frame display name: '<&e>Step 1' lore: - <&r> - <&7>Set the second pit. - <&r> - <&a>Click to set pit! brrespawnlocation1: type: item debug: false material: redstone display name: '<&e>Step 3' lore: - <&r> - <&7>Set the respawn location. - <&r> - <&a>Click to set location! brrespawnlocation2: type: item debug: false material: redstone display name: '<&e>Step 3' lore: - <&r> - <&7>Set the respawn location. - <&r> - <&a>Click to set location! brspawnlocation1: type: item debug: false material: beacon display name: '<&e>Step 4' lore: - <&r> - <&7>Set the spawn location, - <&7>typically in a cage. - <&r> - <&a>Click to set location! brspawnlocation2: type: item debug: false material: beacon display name: '<&e>Step 4' lore: - <&r> - <&7>Set the spawn location, - <&7>typically in a cage. - <&r> - <&a>Click to set location! blackpane: type: item debug: false material: black_stained_glass_pane display name: '<&r>' #brsetlobby: #type: item #debug: false #material: bookshelf #display name: '<&e>Set Lobby' #lore: #- <&r> #- <&7>Set the lobby location #- <&7>after the game. #- <&r> #- <&a>Click to set location! bridgelobbyinv: debug: false type: inventory inventory: CHEST title: Player Inventory size: 9 slots: - "[] [] [] [] [] [] [] [] [bridgereturntolobby]" bridgepinkteaminv: debug: false type: inventory inventory: CHEST title: Player Inventory size: 9 slots: - "[bridgebreadsword] [bridgebow] [bridgepic] [pink_terracotta[quantity=64]] [pink_terracotta[quantity=64]] [goldenbread] [] [] []" bridgeyellowteaminv: debug: false type: inventory inventory: CHEST title: Player Inventory size: 9 slots: - "[bridgebreadsword] [bridgebow] [bridgepic] [yellow_terracotta[quantity=64]] [yellow_terracotta[quantity=64]] [goldenbread] [] [] []" #should we have black panes for the empty spots? bridgereturntolobby: type: item debug: false material: red_bed display name: '<&c><&l>Return to Lobby <&7>(Right Click)' lore: - <&r> - <&7>Right click to return - <&7>to the main BP lobby! mechanisms: unbreakable: true bridgebreadsword: type: item debug: false material: iron_sword display name: '<&e>Sharp Baguette' lore: - <&r> - <&7>wui mechanisms: unbreakable: true bridgebow: type: item debug: false material: bow display name: '<&f>Bow' lore: - <&r> - <&7>Pew pew mechanisms: unbreakable: true bridgepic: type: item debug: false material: diamond_pickaxe display name: '<&b>Diamond Pickaxe' lore: - <&r> - <&7>Shiny enchantments: - efficiency:2 mechanisms: unbreakable: true bridgeyellowterracotta: type: item debug: false material: yellow_terracotta[quantity=64] display name: '<&f>Yellow Terracotta' lore: - <&r> - <&7>Build, build, build! bridgepinkterracotta: type: item debug: false material: pink_terracotta[quantity=64] display name: '<&f>Pink Terracotta' lore: - <&r> - <&7>Build, build, build! goldenbread: type: item debug: false material: bread[quantity=8] display name: '<&b>Golden Bread' lore: - <&r> - <&7>The bread from above! mechanisms: flags: HIDE_ALL enchantments: - sharpness:1 ryeotshield: type: item debug: false material: shield display name: '<&7>Ryeot Shield' lore: - <&r> - <&7>The shield of heroes! map_selection_book: type: item debug: false material: book display name: '<&a>Map Selection' bridge_go_back: type: item debug: false material: arrow display name: '<&a>Go Back' bridge_random_map: type: item debug: false material: FIREWORK_ROCKET display name: '<&a>Random Map' lore: - <&8>Duels bridge_map_selector: type: item debug: false material: oak_sign display name: '<&a>Map Selector' bridge_solo_join_game: type: item material: bread display name: <&6>Bread<&d>Bridge<&sp><&7>(Duels) mechanisms: flags: HIDE_ALL enchantments: - sharpness:1 lore: - <&7>Play BreadBridge Duels brsetup: type: world debug: false events: on player clicks in bridgesetupinv priority:1000: - determine cancelled on player clicks brclose in bridgesetupinv: - inventory close ##BRIDGE BUILDING AREA on player left clicks brsetbridge in bridgesetupinv: - if != null: - narrate "<&a>Bridge set <&7>()<&a>!" #checks what direction the bridge is in #this is in the x direction, so expand in the z direction, other is in the z dir, expand in x #i don't think it's a good idea for the schematic and flag to have the same save name - if != : - note |]> as:bridge.arenas..location - if .location]>: - schematic unload name:bridge.arenas..location - schematic create name:bridge.arenas..location |]> - ~schematic save name:bridge.arenas..location - flag server bridge.arenas..bridgecenter: - else if != : - note |]> as:bridge.arenas..location - if .location]>: - schematic unload name:bridge.arenas..location - schematic create name:bridge.arenas..location |]> - ~schematic save name:bridge.arenas..location - flag server bridge.arenas..bridgecenter: - note |]> as:bridge.arenas..void #do i need to specify the points if im adding the same amount? #- flag server bridge.arenas..bridgelocation: - else: - narrate "<&c>No area is selected!" ##PITS on player left clicks brsetpit1 in bridgesetupinv: - if != null: - narrate "<&a>Pit set <&7>()<&a>!" - note as:bridge.arenas..pit1 #- flag server bridge.arenas..pit1: - else: - narrate "<&c>No area is selected!" on player left clicks brsetpit2 in bridgesetupinv: - if != null: - narrate "<&a>Pit set <&7>()<&a>!" - note as:bridge.arenas..pit2 # - flag server bridge.arenas..pit2: - else: - narrate "<&c>No area is selected!" ##CAGES #only make notables for pits, don't need em for cages on player left clicks brsetcage1 in bridgesetupinv: - if != null: - narrate "<&a>Cage set <&7>()<&a>!" - if .cage1]>: - schematic unload name:bridge.arenas..cage1 - schematic create name:bridge.arenas..cage1 - ~schematic save name:bridge.arenas..cage1 - flag server bridge.arenas..cage1center: - flag server bridge.arenas..cage1location: - else: - narrate "<&c>No area is selected!" on player left clicks brsetcage2 in bridgesetupinv: - if != null: - narrate "<&a>Cage set <&7>()<&a>!" - if .cage2]>: - schematic unload name:bridge.arenas..cage2 - schematic create name:bridge.arenas..cage2 - ~schematic save name:bridge.arenas..cage2 - flag server bridge.arenas..cage2center: - flag server bridge.arenas..cage2location: - else: - narrate "<&c>No area is selected!" ##CENTER on player left clicks brcenter in bridgesetupinv: - if != null: - narrate "<&a>Center set <&7>()<&a>!" - flag server bridge.arenas..center: - else: - narrate "<&c>No area is selected!" ##SPAWN LOCATIONS on player left clicks brspawnlocation1 in bridgesetupinv: - narrate "<&a>Spawn set <&7>()<&a>!" - flag server bridge.arenas..spawn1: on player left clicks brspawnlocation2 in bridgesetupinv: - narrate "<&a>Spawn set <&7>()<&a>!" - flag server bridge.arenas..spawn2: ##RESPAWN LOCATIONS on player left clicks brrespawnlocation1 in bridgesetupinv: - narrate "<&a>Respawn set <&7>()<&a>!" - flag server bridge.arenas..respawn1: on player left clicks brrespawnlocation2 in bridgesetupinv: - narrate "<&a>Respawn set <&7>()<&a>!" - flag server bridge.arenas..respawn2: ##LOBBY LOCATION ##MAKE ONE UNIVERSAL LOBBY LOCATION SET IN SETTINGS/BY ONE COMMAND? #on player left clicks brsetlobby in bridgesetupinv: #- if != null: #- narrate "<&a>Respawn set <&7>()<&a>!" #- flag server bridge.arenas..lobby: on player closes bridgesetupinv: #- ~yaml savefile:Bridge/Arenas/.yml id: - narrate "<&e>Closed the BreadBridge setup menu!" - flag player bridgearenaselection:! on shutdown: #ONLY GETTING YELLOW TEAM, SO THAT OTHER HALF WONT NEED DATA <--- this is dumb, because then only half of the people's flags,etc will be affected - foreach as:player: - modifyblock .pit1].blocks[end_portal]> air - modifyblock .pit2].blocks[end_portal]> air - modifyblock .cage1location].blocks> air - modifyblock .cage2location].blocks> air - remove armor_stand world:.respawn1].as_location.world> - schematic paste name:bridge.arenas..location .bridgecenter]> - foreach as:player: - inventory clear d:<[player].inventory> - sidebar remove players:<[player]> - teleport <[player]> - flag <[player]> playingbridge:! - flag <[player]> bridgescore:! - flag <[player]> bridgeteamcolor:! - flag <[player]> bridgekills:! - flag <[player]> bridgearena:! on server start: - if : - foreach as:arena: - if !.cage1]>: - schematic load name:bridge.arenas.<[arena]>.cage1 - if !.cage2]>: - schematic load name:bridge.arenas.<[arena]>.cage2 - if !.location]>: - schematic load name:bridge.arenas.<[arena]>.location #do i really need to check? brgameplay: type: world debug: false events: on player enters notable cuboid: #- if : - if == playing: - if == yellow: - if .pit2]>]>: - wait 2t - inject bridgenextgame - else if .pit1]>]>: - wait 5t - narrate "<&c>Congratulations, you just played yourself." - if == pink: - if .pit1]>]>: - wait 2t - inject bridgenextgame - else if .pit2]>]>: - wait 5t - narrate "<&c>Congratulations, you just played yourself." #- if .location]>]>: #- flag player bridgecanbuild #on player exits notable cuboid: # if == playing: #- if .location]>]>: #- flag player bridgecanbuild:! on player places block: - if == playing: - if !.location].blocks.contains[]>: - determine passively cancelled - narrate "<&c>You can't place blocks here!" - if == waiting: - determine cancelled #######CHECK HERE on player breaks block: - if == playing: - if != && != && != || !.location].blocks.contains[]>: - determine passively cancelled - narrate "<&c>You can't break blocks here!" - else: - determine NOTHING - if == waiting: - determine cancelled ##NOT WORKING? on player quit: - if == playing: - foreach as:player: - inventory clear d:<[player].inventory> - sidebar remove - adjust clear_body_arrows - flag player playingbridge:! - if == 1: - modifyblock .pit1].blocks[end_portal]> air - modifyblock .pit2].blocks[end_portal]> air - remove armor_stand world:.respawn1].as_location.world> - if == 0: - schematic paste name:bridge.arenas..location .bridgecenter]> - flag player bridgescore:! - flag player bridgekills:! - flag player bridgeteamcolor:! - flag player bridgearena:! ##DO THE WINNING STUFF HERE - foreach as:player: - flag <[player]> playingbridge:waiting - if <[player].flag[bridgeteamcolor]> == yellow: - title "title:<&6><[player].name> Won!" targets:<[player].world.players.filter[has_flag[playingbridge]]> fade_in:0.2s fade_out:0.2s stay:3s - firework .bridgecenter].as_location.add[0,10,0]> primary: fade: trail - if <[player].flag[bridgeteamcolor]> == pink: - title "title:<&d><[player].name> Won!" targets:<[player].world.players.filter[has_flag[playingbridge]]> fade_in:0.2s fade_out:0.2s stay:3s - firework .bridgecenter].as_location.add[0,10,0]> primary: fade: trail #should i change to "You Won!"? - inventory clear d:<[player].inventory> - adjust <[player]> clear_body_arrows - adjust <[player]> remove_effects - if <[player].flag[bridgeteamcolor]> == yellow: - teleport <[player]> .respawn1]> - if <[player].flag[bridgeteamcolor]> == pink: - teleport <[player]> .respawn2]> - playsound sound:ENTITY_PLAYER_LEVELUP - wait 3s - sidebar remove players:<[player].world.players.filter[has_flag[playingbridge]]> - teleport <[player].world.players.filter[has_flag[playingbridge]]> - schematic paste name:bridge.arenas.<[player].flag[bridgearena]>.location .bridgecenter]> - flag <[player]> playingbridge:! - flag <[player]> bridgekills:! - flag <[player]> bridgearena:! - flag <[player]> bridgescore:! - flag <[player]> bridgeteamcolor:! - if == waiting: - inventory clear d: - sidebar remove - flag player playingbridge:! - flag player bridgescore:! - flag player bridgekills:! - flag player bridgeteamcolor:! - flag player bridgearena:! - if == 1: - sidebar set_line scores:6 "values:<&f>Players: <&a>/2" players: - narrate "> <&e>has quit (<&b><&e>/<&b>2<&e>)!" targets: - teleport ##MAKE THE CODE AFTER SECOND CHECK IN THIS EVENT AN INJECT SO IT DOESN'T HAVE TO BE COPY AND PASTED? ##MAKE SURE TO DELAY THE DUEL PLAY AGAIN BECAUSE IF PLAYER'S BRIDGE FLAGS DELETE AFTER STARTING NEW GAME on player damaged by fall: - if : - determine cancelled on player damaged by projectile: - if : - if == yellow: #should i use heart symbol, or HP - if ].round_to[1]> >= 0.1: - narrate "<&d> <&7>now has <&c>].round_to[1]> <&7>HP!" - if == pink: - if ].round_to[1]> >= 0.1: - narrate "<&6> <&7>now has <&c>].round_to[1]> <&7>HP!" on player consumes goldenbread: - adjust potion_effects:REGENERATION,1,100,false,true,true|ABSORPTION,0,2400,false,true,true on player right clicks with goldenbread: - wait 1t - animate animation:START_USE_MAINHAND_ITEM on player drops item: - if : - determine cancelled #on player item takes damage: #- if : #- determine cancelled on player changes food level: - if : - determine cancelled on player death: - if : - determine passively NO_DROPS_OR_XP - determine passively KEEP_INV on player damaged by player: - if == waiting: - determine cancelled - if == playing: - flag bridgehit: duration:3s #- if ].round_to[1]> <= 0: #- flag [] #- if == yellow: #- teleport .respawn2]> #- health heal 20 #- if == pink: #- teleport .respawn1]> #- health heal 20 on player killed: - if == playing: - determine passively cancelled - playeffect effect:CRIT_MAGIC at: visibility:100 quantity:15 - flag bridgekills:++ - playsound sound:ENTITY_EXPERIENCE_ORB_PICKUP - sidebar set_line scores:4 "values:<&f>Kills: <&f>" players: - playsound sound:ENTITY_PLAYER_HURT - health heal 20 - if == yellow: #say with what item later? - narrate "<&6> <&7>was killed by <&d><&7>!" targets: - inventory set d: o:bridgeyellowteaminv - if ! || !: - give arrow quantity:1 to: slot:9 - teleport .respawn1]> - if == pink: - narrate "<&d> <&7>was killed by <&6><&7>!" targets: - inventory set d: o:bridgepinkteaminv - if ! || !: - give arrow quantity:1 to: slot:9 - teleport .respawn2]> on player shoots bow: - if == playing: - inject exp_countdown - give arrow quantity:1 slot:9 on player picks up item: - if == playing: - determine cancelled on player clicks leather_boots|leather_leggings|leather_chestplate|leather_helmet in inventory: - if == playing: - determine cancelled on spawn command: - if : - if == playing: - foreach as:player: - inventory clear d:<[player].inventory> - sidebar remove - adjust clear_body_arrows - flag player playingbridge:! - if == 1: - modifyblock .pit1].blocks[end_portal]> air - modifyblock .pit2].blocks[end_portal]> air - remove armor_stand world:.respawn1].as_location.world> #just making sure it's the right world, in case they remove the spawn's armor stands - modifyblock .cage1location].blocks> air - modifyblock .cage2location].blocks> air - if == 0: - schematic paste name:bridge.arenas..location .bridgecenter]> - flag player bridgescore:! - flag player bridgekills:! - flag player bridgeteamcolor:! - flag player bridgearena:! ##DO THE WINNING STUFF HERE - foreach as:player: - flag <[player]> playingbridge:waiting - if <[player].flag[bridgeteamcolor]> == yellow: - title "title:<&6><[player].name> Won!" targets:<[player].world.players.filter[has_flag[playingbridge]]> fade_in:0.2s fade_out:0.2s stay:3s - firework .bridgecenter].as_location.add[0,10,0]> primary: fade: trail - if <[player].flag[bridgeteamcolor]> == pink: - title "title:<&d><[player].name> Won!" targets:<[player].world.players.filter[has_flag[playingbridge]]> fade_in:0.2s fade_out:0.2s stay:3s - firework .bridgecenter].as_location.add[0,10,0]> primary: fade: trail #should i change to "You Won!"? - adjust <[player]> clear_body_arrows - inventory clear d:<[player].inventory> - adjust <[player]> remove_effects - if <[player].flag[bridgeteamcolor]> == yellow: - teleport <[player]> .respawn1]> - if <[player].flag[bridgeteamcolor]> == pink: - teleport <[player]> .respawn2]> - schematic paste name:bridge.arenas.<[player].flag[bridgearena]>.location .bridgecenter]> - playsound sound:ENTITY_PLAYER_LEVELUP - wait 3s - sidebar remove players:<[player].world.players.filter[has_flag[playingbridge]]> - teleport <[player].world.players.filter[has_flag[playingbridge]]> - flag <[player]> playingbridge:! - flag <[player]> bridgekills:! - flag <[player]> bridgearena:! - flag <[player]> bridgescore:! - flag <[player]> bridgeteamcolor:! - else if == waiting: - inventory clear d: - sidebar remove - flag player playingbridge:! - if == 1: - modifyblock .pit1].blocks[end_portal]> air - modifyblock .pit2].blocks[end_portal]> air - remove armor_stand world:.respawn1].as_location.world> - sidebar set_line scores:6 "values:<&f>Players: <&a>/2" players: - narrate "> <&e>has quit (<&b><&e>/<&b>2<&e>)!" targets: - if == 0: - schematic paste name:bridge.arenas..location .bridgecenter]> - flag player bridgescore:! - flag player bridgekills:! - flag player bridgeteamcolor:! - flag player bridgearena:! #setting lobby to normal even though not affected, just in case ##give the return to lobby item in slot 1 or 9? on player right clicks with bridgereturntolobby: - determine passively cancelled - wait 1t - inventory clear d: - sidebar remove - flag player playingbridge:! - flag player bridgescore:! - flag player bridgekills:! - flag player bridgeteamcolor:! - flag player bridgearena:! - if == 1: - sidebar set_line scores:6 "values:<&f>Players: <&a>/2" players: - narrate "> <&e>has quit (<&b><&e>/<&b>2<&e>)!" targets: - teleport #make sure to have the main lobby in a different world #use an inject script for all the parts that need to end game on player right clicks *trapdoor: - if : - determine cancelled on player opens bridge_solo_map_gui: - foreach as:arena: - inventory set d: o:paper[display_name=<&a><[arena]>;lore=<&8>Duels] slot:].add[10]> on player clicks bridge_go_back in bridge_solo_map_gui: - inventory open d: on player clicks brclose in bridge_solo_join_gui: - inventory close ##make join game go to the first available one, and random go to random? on player clicks bridge_solo_join_game in bridge_solo_join_gui: - if == null: - if != null: - foreach ]> as:arena: - if .respawn1].as_location.world.players.filter[has_flag[playingbridge]].size> < 2: - flag player playingbridge:waiting - flag player bridgearena:<[arena]> - foreach stop - if != null: - inject bridge_joingame - else: - narrate "<&c>All arenas are full!" - else: - narrate "<&c>No arenas have been created!" - else: - narrate "<&c>You're already in a match!" on player clicks bridge_random_map in bridge_solo_map_gui: - if == null: - if != null: - foreach ]> as:arena: - if .respawn1].as_location.world.players.filter[has_flag[playingbridge]].size> < 2: - flag player playingbridge:waiting - flag player bridgearena:<[arena]> - foreach stop - if != null: - inject bridge_joingame - else: - narrate "<&c>All arenas are full!" - else: - narrate "<&c>No arenas have been created!" - else: - narrate "<&c>You're already in a match!" on player clicks paper in bridge_solo_map_gui: - if == null: - if != null: - if .respawn1].as_location.world.players.filter[has_flag[playingbridge]].size> < 2: - flag player playingbridge:waiting - flag player bridgearena: - else: - flag player bridgearena:! - narrate "<&c>The arena is full!" - stop - inject bridge_joingame - else: - narrate "<&c>No arenas have been created!" - else: - narrate "<&c>You're already in a match!" on player clicks bridge_map_selector in bridge_solo_join_gui: - inventory open d: on player clicks in bridge_solo_map_gui priority:10000: - determine cancelled on player clicks in bridge_solo_join_gui priority:10000: - determine cancelled exp_countdown: type: task debug: false script: #- repeat 20: #- adjust fake_experience:<>|0 #- wait 3t - flag player exp_countdown - repeat 60: - define num ].div[100]> - if <[value]> >= 0 && <[value]> < 20: - adjust fake_experience:<[num]>|3 - if <[value]> >= 20 && <[value]> < 40: - adjust fake_experience:<[num]>|2 - if <[value]> >= 40 && <[value]> < 60: - adjust fake_experience:<[num]>|1 - if <[value]> == 60: - adjust fake_experience - wait 1t - flag player exp_countdown:! #run 30 times with 2 tick waits, or 60 times with 1 tick? # type: world # debug: false # events: #on player shoots bow: #have a yellow/pink dye trail mixed in? #########- if : #- displayitem bread duration:10t #why doesn't ! work? ########- wait 1t ########- while == false: #location = player's cursor, velocity = projectile direction? #######- displayitem bread duration:5t #######- wait 1t ##feature allowing enabling/disabling breadeffect (breffect) #- wait 1t ###### = lines of code voidrespawn: type: world debug: false events: #specify if the player was hit or shot into the void using context.cause? on player enters notable cuboid: - if : - if .void]>]>: - if == yellow: - if == playing: - if : - flag ]> bridgekills:++ - playsound ]> sound:ENTITY_EXPERIENCE_ORB_PICKUP - sidebar set_line scores:4 "values:<&f>Kills: <&f>].flag[bridgekills]>" players:]> - playsound sound:ENTITY_PLAYER_HURT - narrate "<&6> <&7>was knocked in the void by <&d>].name><&7>!" targets: - else: - playsound sound:ENTITY_PLAYER_HURT - narrate "<&6> <&7>fell in the void." targets: ########- wait 1t FOR ARMOR STANDS - flag player bridgehit:! - playsound sound:ENTITY_PLAYER_HURT - inventory set d: o:bridgeyellowteaminv - if ! || !: - give arrow quantity:1 to: slot:9 - teleport .respawn1]> - health heal 20 - if == pink: - if == playing: - if : - flag ]> bridgekills:++ - playsound ]> sound:ENTITY_EXPERIENCE_ORB_PICKUP - sidebar set_line scores:4 "values:<&f>Kills: <&f>].flag[bridgekills]>" players:]> - playsound sound:ENTITY_PLAYER_HURT - narrate "<&d> <&7>was knocked in the void by <&6>].name><&7>!" targets: - else: - playsound sound:ENTITY_PLAYER_HURT - narrate "<&d> <&7>fell in the void." targets: #########- wait 1t FOR ARMOR STANDS - flag player bridgehit:! - playsound sound:ENTITY_PLAYER_HURT - inventory set d: o:bridgepinkteaminv - if ! || !: - give arrow quantity:1 to: slot:9 - teleport .respawn2]> - health heal 20 bridgestartgame: type: task debug: false script: - wait 1s - foreach 5|4|3|2|1 as:countdown: - if == 2: - narrate "<&e>The game is starting in <&c><[countdown]><&r><&e> seconds!" targets: - title title:<[countdown]> targets: fade_in:0s fade_out:0s - playsound sound:BLOCK_NOTE_BLOCK_HAT - wait 1s - else: - title title:CANCELLED! targets: fade_in:0s fade_out:0s - playsound sound:ENTITY_VILLAGER_NO pitch:1 - foreach as:player: - flag <[player]> playingbridge:waiting - sidebar set_line scores:6 "values:<&f>Players: <&a>/2" players: - stop - if == 2: - schematic paste name:bridge.arenas..cage1 .cage1center]> - schematic paste name:bridge.arenas..cage2 .cage2center]> - teleport .spawn1]> - teleport .spawn2]> #the armor stand commands don't necessarily have to be in the foreach commabd - foreach as:player: - inventory clear d:<[player].inventory> - if <[player].flag[bridgeteamcolor]> == yellow: - adjust <[player]> equipment:leather_boots[color=;unbreakable=true]|leather_leggings[color=;unbreakable=true]|leather_chestplate[color=;unbreakable=true]|leather_helmet[color=;unbreakable=true] - inventory set d:<[player].inventory> o:bridgeyellowteaminv - give arrow quantity:1 to:<[player].inventory> slot:9 #- fakeitem bread[display_name=<&6>Baguette] slot: - define pinkteam - spawn ARMOR_STAND[custom_name=<&6><&l>Your<&sp>Goal;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] .pit1].center> save:holo1 - adjust <[pinkteam]> hide_entity: - spawn ARMOR_STAND[custom_name=<&7><&o>Defend!;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] save:holo2 - adjust <[pinkteam]> hide_entity: - spawn ARMOR_STAND[custom_name=<&d><&l>Pink<&sp>Goal;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] .pit2].center> save:holo3 - adjust <[pinkteam]> hide_entity: - spawn ARMOR_STAND[custom_name=<&e><&o>Jump<&sp>in<&sp>to<&sp>score!;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] save:holo4 - adjust <[pinkteam]> hide_entity: - if <[player].flag[bridgeteamcolor]> == pink: - adjust <[player]> equipment:leather_boots[color=;unbreakable=true]|leather_leggings[color=;unbreakable=true]|leather_chestplate[color=;unbreakable=true]|leather_helmet[color=;unbreakable=true] - inventory set d:<[player].inventory> o:bridgepinkteaminv - give arrow quantity:1 to:<[player].inventory> slot:9 #- fakeitem bread[display_name=<&d>Baguette] slot: - define yellowteam - spawn ARMOR_STAND[custom_name=<&d><&l>Your<&sp>Goal;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] .pit2].center> save:holo1 - adjust <[yellowteam]> hide_entity: - spawn ARMOR_STAND[custom_name=<&7><&o>Defend!;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] save:holo2 - adjust <[yellowteam]> hide_entity: - spawn ARMOR_STAND[custom_name=<&6><&l>Gold<&sp>Goal;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] .pit1].center> save:holo3 - adjust <[yellowteam]> hide_entity: - spawn ARMOR_STAND[custom_name=<&e><&o>Jump<&sp>in<&sp>to<&sp>score!;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] save:holo4 - adjust <[yellowteam]> hide_entity: - modifyblock .pit1].blocks[air]> end_portal - modifyblock .pit2].blocks[air]> end_portal ##armor stand - should i flag armor stand locations to specifically only remove those armor stands instead of removing all the armor stands in that world? ##armor stand - foreach as:player: - flag <[player]> playingbridge:playing - sidebar set title:<&6><&l>BREAD<&d><&l>BRIDGE "values:<&b>|<&6>[G]<&f>: █ █ █ █ █|<&d>[P]<&f>: █ █ █ █ █||<&f>Kills: 0|<&f>Score: |<&f>|<&e>mc.breadpixel.net" players: - foreach 5|4|3|2|1 as:countdown: - if == 2: - title "subtitle:Cages open in <[countdown]>s..." targets: fade_in:0s fade_out:0s #fade_out:0.1s SHOULD I FADE OUT OR NO - playsound sound:UI_BUTTON_CLICK - wait 1s - else: - title title:CANCELLED! targets: fade_in:0s fade_out:0s - playsound sound:ENTITY_VILLAGER_NO pitch:1 #FADE OUT OR NO? - foreach as:player: - flag <[player]> playingbridge:waiting - sidebar set_line scores:6 "values:<&f>Players: <&a>/2" players: - stop - modifyblock .cage1location]>].blocks> air - modifyblock .cage2location]>].blocks> air - title subtitle:Fight! targets: fade_in:0s fade_out:0.2s - playsound sound:BLOCK_NOTE_BLOCK_PLING ####################- run playerhealthstand player: - else: - title title:CANCELLED! targets: fade_in:0.1s - playsound sound:ENTITY_VILLAGER_NO pitch:1 - foreach as:player: - flag <[player]> playingbridge:waiting - sidebar set_line scores:6 "values:<&f>Players: <&a>/2" players: - stop ##CREATE AN INJECT COMMAND FOR THE FOREACHES? #MAKE ONE INJECT AND SPLIT THE REST OF THE CODE TO THE JOIN SCRIPT?? #].pad_right[5].with[<&chr[4200]>].replace[<&chr[6969]>].with[█].replace[<&chr[4200]>].with[█]> bridgenextgame: type: task debug: false script: ##SHOULD I HAVE A WAIT BEFORE THIS? LIKE ONE SECOND? #should i make the score less than or equal to 5, so that it narrates when a player scored final time too or no? - flag player bridgescore:++ ##set scores value for player with individual line, or scores? - sidebar set_line score:3 "values:<&f>Score: " - if == yellow: - if < 5: - narrate "<&8><&l>---------------------------------------------<&nl><&6> <&e>scored <&7>(<&a><&c>❤<&7>)<&e>! <&e>Goal No. <&a><&nl><&8><&l>---------------------------------------------" targets: ####- sidebar set_line scores:7 "values:<&6>[G]<&f>: ].with[<&chr[6969]>].pad_right[5].with[<&chr[4200]><&sp>].replace[<&chr[6969]>].with[█].replace[<&chr[4200]>].with[<&sp>█]>" players: ##- sidebar set_line scores:7 "values:<&6>[G]<&f>: ].with[<&chr[6969]>].pad_right[5].with[<&chr[4200]>].replace[<&chr[6969]>].with[█].replace[<&chr[4200]>].with[█]>" players: <--- this one is w/out spaces - if == 1: - sidebar set_line scores:7 "values:<&6>[G]<&f>: █ █ █ █" players: - if == 2: - sidebar set_line scores:7 "values:<&6>[G]<&f>: █ █ █ █ █" players: - if == 3: - sidebar set_line scores:7 "values:<&6>[G]<&f>: █ █ █ █ █" players: - if == 4: - sidebar set_line scores:7 "values:<&6>[G]<&f>: █ █ █ █ █" players: - if == 5: - sidebar set_line scores:7 "values:<&6>[G]<&f>: █ █ █ █ █" players: ##DO STUFF HERE! - if == pink: - if < 5: - narrate "<&8><&l>---------------------------------------------<&nl><&d> <&e>scored <&7>(<&a><&c>❤<&7>)<&e>! <&e>Goal No. <&a><&nl><&8><&l>---------------------------------------------" targets: ####- sidebar set_line scores:6 "values:<&d>[P]<&f>: ].with[<&chr[6969]>].pad_right[5].with[<&chr[4200]><&sp>].replace[<&chr[6969]>].with[<&d>█].replace[<&chr[4200]>].with[<&sp>█]>" players: ##- sidebar set_line scores:6 "values:<&d>[P]<&f>: ].with[<&chr[6969]>].pad_right[5].with[<&chr[4200]>].replace[<&chr[6969]>].with[<&d>█].replace[<&chr[4200]>].with[█]>" players: <--- this one is w/out spaces - if == 1: - sidebar set_line scores:6 "values:<&d>[P]<&f>: <&d>█ █ █ █ █" players: - if == 2: - sidebar set_line scores:6 "values:<&d>[P]<&f>: <&d>█ █ █ █ █" players: - if == 3: - sidebar set_line scores:6 "values:<&d>[P]<&f>: <&d>█ █ █ █ █" players: - if == 4: - sidebar set_line scores:6 "values:<&d>[P]<&f>: <&d>█ █ █ █ █" players: - if == 5: - sidebar set_line scores:6 "values:<&d>[P]<&f>: <&d>█ █ █ █ █" players: ##DO STUFF HERE! - if < 5: - schematic paste name:bridge.arenas..cage1 .cage1center]> - schematic paste name:bridge.arenas..cage2 .cage2center]> - teleport .spawn1]> - teleport .spawn2]> - foreach as:player: - health <[player]> heal 20 - if <[player].flag[bridgeteamcolor]> == yellow: - inventory set d:<[player].inventory> o:bridgeyellowteaminv - if ! || !: - give arrow quantity:1 to:<[player].inventory> slot:9 - if <[player].flag[bridgeteamcolor]> == pink: - inventory set d:<[player].inventory> o:bridgepinkteaminv - if ! || !: - give arrow quantity:1 to:<[player].inventory> slot:9 - foreach 5|4|3|2|1 as:countdown: - if == yellow: - title "title:<&6> Scored!" "subtitle:Cages open in <[countdown]>s..." targets: fade_in:0s fade_out:0s - firework .bridgecenter].as_location.add[0,10,0]> primary: fade: trail - if == pink: - title "title:<&d> Scored!" "subtitle:Cages open in <[countdown]>s..." targets: fade_in:0s fade_out:0s - firework .bridgecenter].as_location.add[0,10,0]> primary: fade: trail #fade_out:0.1s SHOULD I FADE OUT OR NO - playsound sound:UI_BUTTON_CLICK - wait 1s - title subtitle:Fight! targets: fade_in:0s fade_out:0s - playsound sound:BLOCK_NOTE_BLOCK_PLING - modifyblock .cage1location]>].blocks> air - modifyblock .cage2location]>].blocks> air #- title subtitle:Fight! targets: fade_in:0s fade_out:0s #- playsound sound:BLOCK_NOTE_BLOCK_PLING - else if == 5: - inject bridge_endgame #hypixel uses this for cage sounds /ex playsound sound:BLOCK_NOTE_BLOCK_XYLOPHONE bridge_endgame: type: task debug: false script: - foreach as:player: - flag <[player]> playingbridge:waiting - health <[player]> heal 20 - adjust <[player]> clear_body_arrows - modifyblock .pit1].blocks[end_portal]> air - modifyblock .pit2].blocks[end_portal]> air - remove armor_stand world:.respawn1].as_location.world> - if == yellow: - define opponent - title "title:<&6> Won!" targets: fade_in:0.2s fade_out:0.2s stay:3s - firework .bridgecenter].as_location.add[0,10,0]> primary: fade: trail #####SHOULD I ADD WHERE IT SAYS 1 KILL AND WHEN IT SAYS KILLS ####################I FEEL LIKE THERE'S A MUCH MORE EFFICIENT WAY... - if == 1 && <[opponent].flag[bridgekills]||0> == 1: #should i just put 1 instead of ? #narrate as different commands? - narrate "<&8><&l>---------------------------------------------<&nl><&nl> <&r>> <&b><&l>WINS!<&nl><&nl> <&6><&l> <&8><&l>- <&d><&l><[opponent].flag[bridgescore]||0><&nl><&nl> <&6><&f>: kill<&nl> <&d><[opponent].name||null><&f>: <[opponent].flag[bridgekills]||0> kill<&nl><&nl><&8><&l>---------------------------------------------" targets: - else if == 1 && <[opponent].flag[bridgekills]||0> != 1: - narrate "<&8><&l>---------------------------------------------<&nl><&nl> <&r>> <&b><&l>WINS!<&nl><&nl> <&6><&l> <&8><&l>- <&d><&l><[opponent].flag[bridgescore]||0><&nl><&nl> <&6><&f>: kill<&nl> <&d><[opponent].name||null><&f>: <[opponent].flag[bridgekills]||0> kills<&nl><&nl><&8><&l>---------------------------------------------" targets: - else if <[opponent].flag[bridgekills]> == 1 && != 1: - narrate "<&8><&l>---------------------------------------------<&nl><&nl> <&r>> <&b><&l>WINS!<&nl><&nl> <&6><&l> <&8><&l>- <&d><&l><[opponent].flag[bridgescore]||0><&nl><&nl> <&6><&f>: kills<&nl> <&d><[opponent].name||null><&f>: <[opponent].flag[bridgekills]||0> kill<&nl><&nl><&8><&l>---------------------------------------------" targets: - else: - narrate "<&8><&l>---------------------------------------------<&nl><&nl> <&r>> <&b><&l>WINS!<&nl><&nl> <&6><&l> <&8><&l>- <&d><&l><[opponent].flag[bridgescore]||0><&nl><&nl> <&6><&f>: kills<&nl> <&d><[opponent].name||null><&f>: <[opponent].flag[bridgekills]||0> kills<&nl><&nl><&8><&l>---------------------------------------------" targets: # add this #"<&8><&l>---------------------------------------------<&nl><&6> <&e>scored <&7>(<&a><&c>❤<&7>)<&e>! <&e>Goal No. <&a><&nl><&8><&l>---------------------------------------------" targets: - if == pink: - define opponent - title "title:<&d> Won!" targets: fade_in:0.2s fade_out:0.2s stay:3s - firework .bridgecenter].as_location.add[0,10,0]> primary: fade: trail - if == 1 && <[opponent].flag[bridgekills]||0> == 1: - narrate "<&8><&l>---------------------------------------------<&nl><&nl> <&r>> <&b><&l>WINS!<&nl><&nl> <&d><&l> <&8><&l>- <&6><&l><[opponent].flag[bridgescore]||0><&nl><&nl> <&d><&f>: kill<&nl> <&6><[opponent].name||null><&f>: <[opponent].flag[bridgekills]||0> kill<&nl><&nl><&8><&l>---------------------------------------------" targets: - else if == 1 && <[opponent].flag[bridgekills]||0> != 1: - narrate "<&8><&l>---------------------------------------------<&nl><&nl> <&r>> <&b><&l>WINS!<&nl><&nl> <&d><&l> <&8><&l>- <&6><&l><[opponent].flag[bridgescore]||0><&nl><&nl> <&d><&f>: kill<&nl> <&6><[opponent].name||null><&f>: <[opponent].flag[bridgekills]||0> kills<&nl><&nl><&8><&l>---------------------------------------------" targets: - else if <[opponent].flag[bridgekills]> == 1 && != 1: - narrate "<&8><&l>---------------------------------------------<&nl><&nl> <&r>> <&b><&l>WINS!<&nl><&nl> <&d><&l> <&8><&l>- <&6><&l><[opponent].flag[bridgescore]||0><&nl><&nl> <&d><&f>: kills<&nl> <&6><[opponent].name||null><&f>: <[opponent].flag[bridgekills]||0> kill<&nl><&nl><&8><&l>---------------------------------------------" targets: - else: - narrate "<&8><&l>---------------------------------------------<&nl><&nl> <&r>> <&b><&l>WINS!<&nl><&nl> <&d><&l> <&8><&l>- <&6><&l><[opponent].flag[bridgescore]||0><&nl><&nl> <&d><&f>: kills<&nl> <&6><[opponent].name||null><&f>: <[opponent].flag[bridgekills]||0> kills<&nl><&nl><&8><&l>---------------------------------------------" targets: ##how does this work? - foreach as:player: - inventory clear d:<[player].inventory> - adjust <[player]> remove_effects - if == yellow: - teleport .respawn1]> - if == pink: - teleport .respawn2]> - playsound sound:ENTITY_PLAYER_LEVELUP - wait 3s - sidebar remove players: #should i have it in the same tag as when the flags are removed? - teleport - schematic paste name:bridge.arenas..location .bridgecenter]> - foreach as:player: - flag <[player]> playingbridge:! - flag <[player]> bridgekills:! - flag <[player]> bridgearena:! - flag <[player]> bridgescore:! - flag <[player]> bridgeteamcolor:! playerhealthstand: type: task debug: false script: - foreach as:player: - spawn armor_stand[invulnerable=true;gravity=false;visible=false;collidable=false;custom_name=<[player].health.round_to[1]><&c>❤;custom_name_visible=false] <[player].location.add[0,0.7,0]> save:HealthStand - adjust <[player]> hide_entity: - mount |<[player]> - flag <[player]> healthstand: #should i widen the holograms even more? hypixel has it more... 0.3 and 0.4 look good holographic displays have it much closer bridge_pit_text: type: task debug: false script: - foreach as:player: - if <[player].flag[bridgeteamcolor]> == yellow: - spawn ARMOR_STAND[custom_name=<&6>Your<&sp>Goal;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] .pit1].center> save:holo1 - adjust hide_entity: - spawn ARMOR_STAND[custom_name=<&7><&o>Defend!;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] save:holo2 - adjust hide_entity: - spawn ARMOR_STAND[custom_name=<&d>Opponent<&sp>Goal;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] .pit2].center> save:holo3 - adjust hide_entity: - spawn ARMOR_STAND[custom_name=<&o>Jump<&sp>in!;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] save:holo4 - adjust hide_entity: - if <[player].flag[bridgeteamcolor]> == pink: - spawn ARMOR_STAND[custom_name=<&d>Your<&sp>Goal;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] .pit2].center> save:holo1 - adjust hide_entity: - spawn ARMOR_STAND[custom_name=<&7><&o>Defend!;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] save:holo2 - adjust hide_entity: - spawn ARMOR_STAND[custom_name=<&6>Opponent<&sp>Goal;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] .pit1].center> save:holo3 - adjust hide_entity: - spawn ARMOR_STAND[custom_name=<&o>Jump<&sp>in!;custom_name_visibility=true;gravity=false;collidable=false;invulnerable=true;visible=false] save:holo4 - adjust hide_entity: bridge_joingame: type: task debug: false script: - inventory set d: o:bridgelobbyinv #|| == 1 - if .respawn1].as_location.world.players.filter[has_flag[playingbridge]].filter[flag[playingbridge].is[==].to[waiting]].size> == 0: - if <= 50: - flag player bridgeteamcolor:yellow - teleport .respawn1]> - else: - flag player bridgeteamcolor:pink - teleport .respawn2]> - narrate "> <&e>joined the arena (<&b><&e>/<&b>2<&e>)!" targets: - sidebar set title:<&6><&l>BREAD<&d><&l>BRIDGE "values:<&b>|<&f>Players: <&a>/2|<&f>Map: <&b>||<&f>Waiting for players...|<&f>|<&e>mc.breadpixel.net" # || == 2 - else if .respawn1].as_location.world.players.filter[has_flag[playingbridge]].filter[flag[playingbridge].is[==].to[waiting]].size> == 1: - if .respawn1].as_location.world.players.filter[has_flag[bridgeteamcolor]].filter[flag[bridgeteamcolor].is[==].to[yellow]].size> == 1: - flag player bridgeteamcolor:pink - teleport .respawn2]> - else if .respawn1].as_location.world.players.filter[has_flag[bridgeteamcolor]].filter[flag[bridgeteamcolor].is[==].to[pink]].size> == 1: - flag player bridgeteamcolor:yellow - teleport .respawn1]> - sidebar set title:<&6><&l>BREAD<&d><&l>BRIDGE "values:<&b>|<&f>Players: <&a>/2|<&f>Map: <&b>||<&f>Waiting for players...|<&f>|<&e>mc.breadpixel.net" - sidebar set_line scores:6 "values:<&f>Players: <&a>/2" players: - narrate "> <&e>joined the arena (<&b><&e>/<&b>2<&e>)!" targets: - if !.cage1]>: - schematic load name:bridge.arenas..cage1 - if !.cage2]>: - schematic load name:bridge.arenas..cage2 - if !.location]>: - schematic load name:bridge.arenas..location - inject bridgestartgame