spartacus04 / jext-reborn

Level up your server with custom music discs - "Just like vanilla jukebox, but better!". I mantain this in my free time.
https://spartacus04.github.io/jext-reborn/
Other
34 stars 7 forks source link

[Bug]: [Spigot 1.20] Two Music Discs Play Alongside Each Other When You Manually Put A Music Disc After Using A Dropper #113

Closed MonstaDash closed 1 year ago

MonstaDash commented 1 year ago

Describe the bug

When playing the discs normally after using a dropper to put the discs in, the jukebox plays the song and a random other song alongside it and the player is no longer able to remove the disc manually, only breaking the jukebox works and even then the song combination keeps playing. It only happens with a jukebox that has interacted with a hopper, breaking the jukebox with no record playing and manually playing tracks works normally. This is in 1.20.

Steps to reproduce

  1. Play the disc using a dropper.
  2. Change the disc manually.
  3. The new song and a random song plays alongside each other. The jukebox can no longer be interacted with.
  4. Breaking the jukebox does not change the audio, as it persists.

Expected behaviour

  1. Play the disc using a dropper.
  2. Change the disc manually.
  3. The new song plays by itself.

Logs

No response

Server Version

1.19.4

Server Type

Spigot

Discs.json

[
  {
    "title": "Coconut Mall",
    "author": "Shiho Fujii, Atsuko Asahi Ryo Nagamatsu, Yasuaki Iwata",
    "duration": 136,
    "disc-namespace": "music_disc.coconutmallshihofujiiatsukoasahiryonagamatsuyasuakiiwatazero",
    "model-data": 1,
    "creeper-drop": true,
    "lores": [
      "Mario Kart 8 Deluxe Booster Pack"
    ],
    "loot-tables": [],
    "fragment-loot-tables": [
      "chests/underwater_ruin_big",
      "chests/underwater_ruin_small"
    ]
  },
  {
    "title": "Route 47",
    "author": "Takuto Kitsuta",
    "duration": 75,
    "disc-namespace": "music_disc.routefourseventakutokitsutaone",
    "model-data": 2,
    "creeper-drop": true,
    "lores": [
      "Pokémon HeartGold and SoulSilver"
    ],
    "loot-tables": [
      "chests/village/village_plains_house",
      "chests/village/village_savanna_house",
      "chests/village/village_desert_house",
      "chests/village/village_snowy_house",
      "chests/village/village_taiga_house"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Tears Of Father ~Overseas Edition~",
    "author": "Hidenori Shoji",
    "duration": 275,
    "disc-namespace": "music_disc.tearsoffatheroverseaseditionhidenorishojitwo",
    "model-data": 3,
    "creeper-drop": false,
    "lores": [
      "Yakuza 3"
    ],
    "loot-tables": [
      "chests/end_city_treasure"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "A Spartan Rises",
    "author": "Martin O'Donnell, Michael Salvatori, Paul Lipson, Lennie Moore, Tom Salta, Brian Trifon, Brian Lee White",
    "duration": 131,
    "disc-namespace": "music_disc.aspartanrisesmartinodonnellmichaelsalvatoripaullipsonlenniemooretomsaltabriantrifonbrianleewhitethree",
    "model-data": 4,
    "creeper-drop": false,
    "lores": [
      "Halo 2 Anniversary"
    ],
    "loot-tables": [
      "chests/stronghold_corridor",
      "chests/stronghold_crossing"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Masked and Wild: D.D.D.",
    "author": "Hirokazu Ando, Yuuta Ogasawara, Jun Ishikawa, Yuki Shimooka",
    "duration": 82,
    "disc-namespace": "music_disc.maskedandwilddddhirokazuandoyuutaogasawarajunishikawayukishimookafour",
    "model-data": 5,
    "creeper-drop": true,
    "lores": [
      "Kirby and The Forgotten Land"
    ],
    "loot-tables": [
      "chests/desert_pyramid"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "The Battle of Blizzard Bridge",
    "author": "Hirokazu Ando, Yuuta Ogasawara, Jun Ishikawa, Yuki Shimooka",
    "duration": 664,
    "disc-namespace": "music_disc.thebattleofblizzardbridgehirokazuandoyuutaogasawarajunishikawayukishimookafive",
    "model-data": 6,
    "creeper-drop": true,
    "lores": [
      "Kirby and The Forgotten Land"
    ],
    "loot-tables": [
      "chests/igloo_chest",
      "chests/village/village_snowy_house",
      "chests/village/village_taiga_house"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "It Has To Be This Way",
    "author": "Jimmy Gnecco",
    "duration": 176,
    "disc-namespace": "music_disc.ithastobethiswayjimmygneccosix",
    "model-data": 7,
    "creeper-drop": true,
    "lores": [
      "Metal Gear Rising Revengeance"
    ],
    "loot-tables": [
      "chests/ancient_city",
      "chests/ancient_city_ice_box"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Break Off",
    "author": "Yuri Fukuda",
    "duration": 291,
    "disc-namespace": "music_disc.breakoffyurifukudaseven",
    "model-data": 8,
    "creeper-drop": true,
    "lores": [
      "Yakuza Kiwami 2"
    ],
    "loot-tables": [
      "chests/bastion_bridge",
      "chests/bastion_hoglin_treasure",
      "chests/bastion_other",
      "chests/bastion_treasure",
      "chests/ruined_portal",
      "chests/nether_bridge"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Knight of the Wind",
    "author": "Crush 40",
    "duration": 232,
    "disc-namespace": "music_disc.knightofthewindcrushfourzeroeight",
    "model-data": 9,
    "creeper-drop": true,
    "lores": [
      "Sonic and The Black Knight"
    ],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Watch Me Fly...",
    "author": "Crush 40",
    "duration": 312,
    "disc-namespace": "music_disc.watchmeflycrushfourzeronine",
    "model-data": 10,
    "creeper-drop": false,
    "lores": [],
    "loot-tables": [
      "chests/end_city_treasure"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Banana Jungle",
    "author": "Minako Hamano, Masaru Tajima, Shinji Ushiroda, Daisuke Matsuoka",
    "duration": 157,
    "disc-namespace": "music_disc.bananajungleminakohamanomasarutajimashinjiushirodadaisukematsuokaonezero",
    "model-data": 11,
    "creeper-drop": true,
    "lores": [
      "Donkey Kong Country Returns"
    ],
    "loot-tables": [
      "chests/jungle_temple"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Lake",
    "author": "Shota Kageyama",
    "duration": 146,
    "disc-namespace": "music_disc.lakeshotakageyamaoneone",
    "model-data": 12,
    "creeper-drop": true,
    "lores": [
      "Pokémon Brilliant Diamond and Shining Pearl"
    ],
    "loot-tables": [
      "chests/shipwreck_map",
      "chests/shipwreck_supply",
      "chests/shipwreck_treasure",
      "chests/village/village_plains_house",
      "chests/village/village_savanna_house",
      "chests/village/village_desert_house",
      "chests/village/village_snowy_house",
      "chests/village/village_taiga_house"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Alabaster Icelands 1 (Alternate Ver.)",
    "author": "Go Ichinose, Hitomi Sato, Hiromitsu Maeba & GAME FREAK",
    "duration": 158,
    "disc-namespace": "music_disc.alabastericelandsonealternatevergoichinosehitomisatohiromitsumaebagamefreakonetwo",
    "model-data": 13,
    "creeper-drop": true,
    "lores": [
      "Pokémon Legends: Arceus"
    ],
    "loot-tables": [
      "chests/igloo_chest",
      "chests/village/village_snowy_house",
      "chests/village/village_taiga_house"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Menu - Super Smash Bros. Melee (Brawl)",
    "author": "Motoi Sakuraba",
    "duration": 208,
    "disc-namespace": "music_disc.menusupersmashbrosmeleebrawlmotoisakurabaonethree",
    "model-data": 14,
    "creeper-drop": true,
    "lores": [
      "Super Smash Bros. Brawl"
    ],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Let the Battles Begin! - Battle Medley",
    "author": "Shotaro Shima",
    "duration": 198,
    "disc-namespace": "music_disc.letthebattlesbeginbattlemedleyshotaroshimaonefour",
    "model-data": 15,
    "creeper-drop": true,
    "lores": [
      "Final Fantasy VII Remake Orchestral Arrangement"
    ],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Arise in Valor",
    "author": "Martin O'Donnell, Michael Salvatori, Paul Lipson, Lennie Moore, Tom Salta, Brian Trifon, Brian Lee White",
    "duration": 190,
    "disc-namespace": "music_disc.ariseinvalormartinodonnellmichaelsalvatoripaullipsonlenniemooretomsaltabriantrifonbrianleewhiteonefive",
    "model-data": 16,
    "creeper-drop": false,
    "lores": [
      "Halo 2 Anniversary"
    ],
    "loot-tables": [
      "chests/woodland_mansion",
      "chests/pillager_outpost"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Wreckage",
    "author": "Kazuma Jinnouchi",
    "duration": 204,
    "disc-namespace": "music_disc.wreckagekazumajinnouchionesix",
    "model-data": 17,
    "creeper-drop": true,
    "lores": [
      "Halo 4"
    ],
    "loot-tables": [
      "chests/bastion_bridge",
      "chests/bastion_hoglin_treasure",
      "chests/bastion_other",
      "chests/bastion_treasure",
      "chests/ancient_city",
      "chests/ancient_city_ice_box",
      "chests/abandoned_mineshaft",
      "chests/stronghold_corridor",
      "chests/stronghold_crossing",
      "chests/underwater_ruin_big",
      "chests/underwater_ruin_small",
      "chests/ruined_portal"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "King Dedede's Theme (Brawl)",
    "author": "Yoko Shimomura",
    "duration": 201,
    "disc-namespace": "music_disc.kingdededesthemebrawlyokoshimomuraoneseven",
    "model-data": 18,
    "creeper-drop": true,
    "lores": [
      "Super Smash Bros. Brawl"
    ],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Theme of Skyward Sword ~ Staff Roll",
    "author": "Mahito Yokota, Hajime Wakai, Koji Kondo",
    "duration": 429,
    "disc-namespace": "music_disc.themeofskywardswordstaffrollmahitoyokotahajimewakaikojikondooneeight",
    "model-data": 19,
    "creeper-drop": false,
    "lores": [
      "Legend of Zelda: Skyward Sword"
    ],
    "loot-tables": [
      "chests/end_city_treasure"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Great Fairy's Fountain",
    "author": "Kosuke Yamashita, Chad Seiter",
    "duration": 184,
    "disc-namespace": "music_disc.greatfairysfountainkosukeyamashitachadseiteronenine",
    "model-data": 20,
    "creeper-drop": true,
    "lores": [
      "Legend of Zelda: Skyward Sword"
    ],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Blue Team",
    "author": "Kazuma Jinnouchi",
    "duration": 278,
    "disc-namespace": "music_disc.blueteamkazumajinnouchitwozero",
    "model-data": 21,
    "creeper-drop": true,
    "lores": [
      "Halo 5: Guardians"
    ],
    "loot-tables": [
      "chests/igloo_chest"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Halo Canticles",
    "author": "Kazuma Jinnouchi",
    "duration": 254,
    "disc-namespace": "music_disc.halocanticleskazumajinnouchitwoone",
    "model-data": 22,
    "creeper-drop": true,
    "lores": [
      "Halo 5: Guardians"
    ],
    "loot-tables": [
      "chests/simple_dungeon",
      "chests/shipwreck_map",
      "chests/shipwreck_supply",
      "chests/shipwreck_treasure"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Follow Our Brothers",
    "author": "Martin O'Donnell, Michael Salvatori",
    "duration": 206,
    "disc-namespace": "music_disc.followourbrothersmartinodonnellmichaelsalvatoritwotwo",
    "model-data": 23,
    "creeper-drop": true,
    "lores": [
      "Halo 3"
    ],
    "loot-tables": [
      "chests/ancient_city",
      "chests/ancient_city_ice_box",
      "chests/stronghold_corridor",
      "chests/stronghold_crossing",
      "chests/ruined_portal",
      "chests/end_city_treasure",
      "chests/bastion_bridge",
      "chests/bastion_hoglin_treasure",
      "chests/bastion_other",
      "chests/bastion_treasure",
      "chests/nether_bridge",
      "chests/pillager_outpost",
      "chests/woodland_mansion"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Finale",
    "author": "Curtis Schweitzer",
    "duration": 199,
    "disc-namespace": "music_disc.finalecurtisschweitzertwothree",
    "model-data": 24,
    "creeper-drop": false,
    "lores": [
      "Halo Infinite"
    ],
    "loot-tables": [
      "chests/end_city_treasure"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "For Face",
    "author": "Hidenori Shoji",
    "duration": 175,
    "disc-namespace": "music_disc.forfacehidenorishojitwofour",
    "model-data": 25,
    "creeper-drop": true,
    "lores": [
      "Yakuza 4"
    ],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "A Scattered, Eternal Moment",
    "author": "Hidenori Shoji",
    "duration": 250,
    "disc-namespace": "music_disc.ascatteredeternalmomenthidenorishojitwofive",
    "model-data": 26,
    "creeper-drop": true,
    "lores": [
      "Yakuza Kiwami 2"
    ],
    "loot-tables": [
      "chests/end_city_treasure"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "Rip & Tear",
    "author": "Mick Gordon",
    "duration": 258,
    "disc-namespace": "music_disc.riptearmickgordontwosix",
    "model-data": 27,
    "creeper-drop": false,
    "lores": [
      "Doom 2016"
    ],
    "loot-tables": [
      "chests/bastion_bridge",
      "chests/bastion_hoglin_treasure",
      "chests/bastion_other",
      "chests/bastion_treasure"
    ],
    "fragment-loot-tables": []
  },
  {
    "title": "No Sleep Till Brooklyn",
    "author": "Beastie Boys",
    "duration": 247,
    "disc-namespace": "music_disc.nosleeptillbrooklynbeastieboyszero",
    "model-data": 1,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Runaway",
    "author": "Bon Jovi",
    "duration": 231,
    "disc-namespace": "music_disc.runawaybonjovione",
    "model-data": 2,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Runaway",
    "author": "Linkin Park",
    "duration": 185,
    "disc-namespace": "music_disc.runawaylinkinparktwo",
    "model-data": 3,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Never Gonna Give You Up",
    "author": "Rick Astley",
    "duration": 213,
    "disc-namespace": "music_disc.nevergonnagiveyouuprickastleythree",
    "model-data": 4,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Run to the Hills (2015 Remaster)",
    "author": "Iron Maiden",
    "duration": 234,
    "disc-namespace": "music_disc.runtothehillstwozeroonefiveremasterironmaidenfour",
    "model-data": 5,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Hallowed Be Thy Name (2015 Remaster)",
    "author": "Iron Maiden",
    "duration": 432,
    "disc-namespace": "music_disc.hallowedbethynametwozeroonefiveremasterironmaidenfive",
    "model-data": 6,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "The Trooper (2015 Remaster)",
    "author": "Iron Maiden",
    "duration": 253,
    "disc-namespace": "music_disc.thetroopertwozeroonefiveremasterironmaidensix",
    "model-data": 7,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Numb",
    "author": "Linkin Park",
    "duration": 185,
    "disc-namespace": "music_disc.numblinkinparkseven",
    "model-data": 8,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Tick Tock",
    "author": "Joji",
    "duration": 133,
    "disc-namespace": "music_disc.ticktockjojieight",
    "model-data": 9,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Still Loving You",
    "author": "Scorpions",
    "duration": 387,
    "disc-namespace": "music_disc.stilllovingyouscorpionsnine",
    "model-data": 10,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "What I've Done",
    "author": "Linkin park",
    "duration": 206,
    "disc-namespace": "music_disc.whativedonelinkinparkonezero",
    "model-data": 11,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Cemetery Gates",
    "author": "Pantera",
    "duration": 423,
    "disc-namespace": "music_disc.cemeterygatespanteraoneone",
    "model-data": 12,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Crazy Train",
    "author": "Ozzy Osbourne",
    "duration": 294,
    "disc-namespace": "music_disc.crazytrainozzyosbourneonetwo",
    "model-data": 13,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Paranoid",
    "author": "Black Sabbath",
    "duration": 169,
    "disc-namespace": "music_disc.paranoidblacksabbathonethree",
    "model-data": 14,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  },
  {
    "title": "Sharp Dressed Man (2008 Remaster)",
    "author": "ZZ Top",
    "duration": 259,
    "disc-namespace": "music_disc.sharpdressedmantwozerozeroeightremasterzztoponefour",
    "model-data": 15,
    "creeper-drop": true,
    "lores": [],
    "loot-tables": [],
    "fragment-loot-tables": []
  }
]

Resource pack

https://www.dropbox.com/s/fblzwndlwtnkyha/sounds.zip?dl=0

This issue is unique

spartacus04 commented 1 year ago

Hi, I was able to fix the bug in d8e4f32 , it should be implemented in the next update