Add variant support for Skylanders (#9424)

* Update skylander_dialog.cpp

Co-authored-by: RipleyTom <RipleyTom@users.noreply.github.com>
This commit is contained in:
Fro Zen 2020-12-13 05:30:38 -06:00 committed by GitHub
parent cb8ef46ec7
commit 8e07b19bc7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 401 additions and 269 deletions

View File

@ -13,268 +13,396 @@
skylander_dialog* skylander_dialog::inst = nullptr;
const std::map<const u16, const std::string> list_skylanders = {
{0, "Whirlwind"},
{1, "Sonic Boom"},
{2, "Warnado"},
{3, "Lightning Rod"},
{4, "Bash"},
{5, "Terrafin"},
{6, "Dino-Rang"},
{7, "Prism Break"},
{8, "Sunburn"},
{9, "Eruptor"},
{10, "Ignitor"},
{11, "Flameslinger"},
{12, "Zap"},
{13, "Wham-Shell"},
{14, "Gill Grunt"},
{15, "Slam Bam"},
{16, "Spyro"},
{17, "Voodood"},
{18, "Double Trouble"},
{19, "Trigger Happy"},
{20, "Drobot"},
{21, "Drill Sergeant"},
{22, "Boomer"},
{23, "Wrecking Ball"},
{24, "Camo"},
{25, "Zook"},
{26, "Stealth Elf"},
{27, "Stump Smash"},
{28, "Dark Spyro"},
{29, "Hex"},
{30, "Chop Chop"},
{31, "Ghost Roaster"},
{32, "Cynder"},
{100, "Jet Vac"},
{101, "Swarm"},
{102, "Crusher"},
{103, "Flashwing"},
{104, "Hot Head"},
{105, "Hot Dog"},
{106, "Chill"},
{107, "Thumpback"},
{108, "Pop Fizz"},
{109, "Ninjini"},
{110, "Bouncer"},
{111, "Sprocket"},
{112, "Tree Rex"},
{113, "Shroomboom"},
{114, "Eye-Brawl"},
{115, "Fright Rider"},
{200, "Anvil Rain"},
{201, "Treasure Chest"},
{202, "Healing Elixer"},
{203, "Ghost Swords"},
{204, "Time Twister"},
{205, "Sky-Iron Shield"},
{206, "Winged Boots"},
{207, "Sparx Dragonfly"},
{208, "Dragonfire Cannon"},
{209, "Scorpion Striker Catapult"},
{210, "Magic Traps"},
{211, "Water Traps"},
{212, "Air Traps"},
{213, "Undead Traps"},
{214, "Tech Traps"},
{215, "Fire Traps"},
{216, "Earth Traps"},
{217, "Life Traps"},
{218, "Dark Traps"},
{219, "Light Traps"},
{220, "Kaos Traps"},
{230, "Hand Of Fate"},
{231, "Piggy Bank"},
{232, "Rocket Ram"},
{233, "Tiki Speaky"},
{300, "Dragons Peak"},
{301, "Empire of Ice"},
{302, "Pirate Seas"},
{303, "Darklight Crypt"},
{304, "Volcanic Vault"},
{305, "Mirror Of Mystery"},
{306, "Nightmare Express"},
{307, "Sunscraper Spire"},
{308, "Midnight Museum"},
{404, "Legendary Bash"},
{416, "Legendary Spyro"},
{419, "Legendary Trigger Happy"},
{430, "Legendary Chop Chop"},
{450, "Gusto"},
{451, "Thunderbolt"},
{452, "Fling Kong"},
{453, "Blades"},
{454, "Wallop"},
{455, "Head Rush"},
{456, "Fist Bump"},
{457, "Rocky Roll"},
{458, "Wildfire"},
{459, "Ka Boom"},
{460, "Trail Blazer"},
{461, "Torch"},
{462, "Snap Shot"},
{463, "Lob Star"},
{464, "Flip Wreck"},
{465, "Echo"},
{466, "Blastermind"},
{467, "Enigma"},
{468, "Deja Vu"},
{469, "Cobra Cadabra"},
{470, "Jawbreaker"},
{471, "Gearshift"},
{472, "Chopper"},
{473, "Tread Head"},
{474, "Bushwhack"},
{475, "Tuff Luck"},
{476, "Food Fight"},
{477, "High Five"},
{478, "Krypt King"},
{479, "Short Cut"},
{480, "Bat Spin"},
{481, "Funny Bone"},
{482, "Knight light"},
{483, "Spotlight"},
{484, "Knight Mare"},
{485, "Blackout"},
{502, "Bop"},
{503, "Spry"},
{504, "Hijinx"},
{505, "Terrabite"},
{506, "Breeze"},
{507, "Weeruptor"},
{508, "Pet Vac"},
{509, "Small Fry"},
{510, "Drobit"},
{514, "Gill Runt"},
{519, "Trigger Snappy"},
{526, "Whisper Elf"},
{540, "Barkley"},
{541, "Thumpling"},
{542, "Mini Jini"},
{543, "Eye Small"},
{601, "King Pen"},
{602, "Tri-Tip"},
{603, "Chopscotch"},
{604, "Boom Bloom"},
{605, "Pit Boss"},
{606, "Barbella"},
{607, "Air Strike"},
{608, "Ember"},
{609, "Ambush"},
{610, "Dr. Krankcase"},
{611, "Hood Sickle"},
{612, "Tae Kwon Crow"},
{613, "Golden Queen"},
{614, "Wolfgang"},
{615, "Pain-Yatta"},
{616, "Mysticat"},
{617, "Starcast"},
{618, "Buckshot"},
{619, "Aurora"},
{620, "Flare Wolf"},
{621, "Chompy Mage"},
{622, "Bad Juju"},
{623, "Grave Clobber"},
{624, "Blaster-Tron"},
{625, "Ro-Bow"},
{626, "Chain Reaction"},
{627, "Kaos"},
{628, "Wild Storm"},
{629, "Tidepool"},
{630, "Crash Bandicoot"},
{631, "Dr. Neo Cortex"},
{1000, "Boom Jet (Bottom)"},
{1001, "Free Ranger (Bottom)"},
{1002, "Rubble Rouser (Bottom)"},
{1003, "Doom Stone (Bottom)"},
{1004, "Blast Zone (Bottom)"},
{1005, "Fire Kraken (Bottom)"},
{1006, "Stink Bomb (Bottom)"},
{1007, "Grilla Drilla (Bottom)"},
{1008, "Hoot Loop (Bottom)"},
{1009, "Trap Shadow (Bottom)"},
{1010, "Magna Charge (Bottom)"},
{1011, "Spy Rise (Bottom)"},
{1012, "Night Shift (Bottom)"},
{1013, "Rattle Shake (Bottom)"},
{1014, "Freeze Blade (Bottom)"},
{1015, "Wash Buckler (Bottom)"},
{2000, "Boom Jet (Top)"},
{2001, "Free Ranger (Top)"},
{2002, "Rubble Rouser (Top)"},
{2003, "Doom Stone (Top)"},
{2004, "Blast Zone (Top)"},
{2005, "Fire Kraken (Top)"},
{2006, "Stink Bomb (Top)"},
{2007, "Grilla Drilla (Top)"},
{2008, "Hoot Loop (Top)"},
{2009, "Trap Shadow (Top)"},
{2010, "Magna Charge (Top)"},
{2011, "Spy Rise (Top)"},
{2012, "Night Shift (Top)"},
{2013, "Rattle Shake (Top)"},
{2014, "Freeze Blade (Top)"},
{2015, "Wash Buckler (Top)"},
{3000, "Scratch"},
{3001, "Pop Thorn"},
{3002, "Slobber Tooth"},
{3003, "Scorp"},
{3004, "Fryno"},
{3005, "Smolderdash"},
{3006, "Bumble Blast"},
{3007, "Zoo Lou"},
{3008, "Dune Bug"},
{3009, "Star Strike"},
{3010, "Countdown"},
{3011, "Wind Up"},
{3012, "Roller Brawl"},
{3013, "Grim Creeper"},
{3014, "Rip Tide"},
{3015, "Punk Shock"},
{3220, "Jet Stream"},
{3221, "Tomb Buggy"},
{3222, "Reef Ripper"},
{3223, "Burn Cycle"},
{3224, "Hot Streak"},
{3225, "Shark Tank"},
{3226, "Thump Truck"},
{3227, "Crypt Crusher"},
{3228, "Stealth Stinger"},
{3231, "Dive Bomber"},
{3232, "Sky Slicer"},
//{3233, "Clown Cruiser"},
{3234, "Gold Rusher"},
{3235, "Shield Striker"},
{3236, "Sun Runner"},
{3237, "Sea Shadow"},
{3238, "Splatter Splasher"},
{3239, "Soda Skimmer"},
//{3240, "Barrel Blaster"},
{3241, "Buzz Wing"},
{3400, "Fiesta"},
{3401, "High Volt"},
{3406, "Splat"},
{3411, "Smash Hit"},
{3412, "Spitfire"},
{3413, "Hurricane Jet Vac"},
{3414, "Double Dare Trigger Happy"},
{3415, "Super Shot Stealth Elf"},
{3416, "Shark Shooter Terrafin"},
{3417, "Bone Bash Roller Brawl"},
{3420, "Big Bubble Pop Fizz"},
{3421, "Lava Lance Eruptor"},
{3422, "Deep Dive Gill Grunt"},
//{3423, "Turbo Charge Donkey Kong"},
//{3424, "Hammer Slam Bowser"},
{3425, "Dive-Clops"},
{3426, "Astroblast"},
{3427, "Nightfall"},
{3428, "Thrillipede"},
{3500, "Sky Trophy"},
{3501, "Land Trophy"},
{3502, "Sea Trophy"},
{3503, "Kaos Trophy"},
const std::map<const std::pair<const u16, const u16>, const std::string> list_skylanders = {
{{0, 0}, "Whirlwind"},
{{0, 6145}, "Series 2 Whirlwind"},
{{0, 10245}, "Horn Blast Whirlwind"},
{{1, 0}, "Sonic Boom"},
{{1, 6145}, "Series 2 Sonic Boom"},
{{2, 0}, "Warnado"},
{{2, 4614}, "LightCore Warnado"},
{{3, 0}, "Lightning Rod"},
{{3, 6145}, "Series 2 Lightning Rod"},
{{4, 0}, "Bash"},
{{4, 6145}, "Series 2 Bash"},
{{5, 0}, "Terrafin"},
{{5, 6145}, "Series 2 Terrafin"},
{{5, 10245}, "Knockout Terrafin"},
{{6, 0}, "Dino Rang"},
{{7, 0}, "Prism Break"},
{{7, 4614}, "LightCore Prism Break"},
{{7, 6145}, "Series 2 Prism Break"},
{{7, 10245}, "Hyper Beam Prism Break"},
{{8, 0}, "Sunburn"},
{{9, 0}, "Eruptor"},
{{9, 4614}, "LightCore Eruptor"},
{{9, 6145}, "Series 2 Eruptor"},
{{9, 10245}, "Lava Barf Eruptor"},
{{10, 0}, "Ignitor"},
{{10, 6145}, "Series 2 Ignitor"},
{{11, 0}, "Flameslinger"},
{{11, 6145}, "Series 2 Flameslinger"},
{{12, 0}, "Zap"},
{{12, 6145}, "Series 2 Zap"},
{{13, 0}, "Wham Shell"},
{{13, 4614}, "LightCore Wham Shell"},
{{14, 0}, "Gill Grunt"},
{{14, 6145}, "Series 2 Gill Grunt"},
{{14, 10245}, "Anchors Away Gill Grunt"},
{{15, 0}, "Slam Bam"},
{{15, 6145}, "Series 2 Slam Bam"},
{{16, 0}, "Spyro"},
{{16, 6145}, "Series 2 Spyro"},
{{16, 10245}, "Mega Ram Spyro"},
{{16, 11266}, "Dark Mega Ram Spyro"},
{{17, 0}, "Voodood"},
{{18, 0}, "Double Trouble"},
{{18, 6145}, "Series 2 Double Trouble"},
{{19, 0}, "Trigger Happy"},
{{19, 6145}, "Series 2 Trigger Happy"},
{{20, 0}, "Drobot"},
{{20, 4614}, "LightCore Drobot"},
{{20, 6145}, "Series 2 Drobot"},
{{21, 0}, "Drill Seargeant"},
{{21, 6145}, "Series 2 Drill Seargeant"},
{{22, 0}, "Boomer"},
{{23, 0}, "Wrecking Ball"},
{{23, 6145}, "Series 2 Wrecking Ball"},
{{24, 0}, "Camo"},
{{24, 10245}, "Thorn Horn Camo"},
{{25, 0}, "Zook"},
{{25, 6145}, "Series 2 Zook"},
{{26, 0}, "Stealth Elf"},
{{26, 6145}, "Series 2 Stealth Elf"},
{{26, 10245}, "Ninja Stealth Elf"},
{{26, 11266}, "Dark Stealth Elf"},
{{27, 0}, "Stump Smash"},
{{27, 6145}, "Series 2 Stump Smash"},
{{28, 0}, "Dark Spyro"},
{{28, 6145}, "Series 2 Dark Spyro"},
{{29, 0}, "Hex"},
{{29, 6145}, "Series 2 Hex"},
{{30, 0}, "Chop Chop"},
{{30, 6145}, "Series 2 Chop Chop"},
{{30, 10245}, "Twin Blade Chop Chop"},
{{31, 0}, "Ghost Roaster"},
{{32, 0}, "Cynder"},
{{32, 6145}, "Series 2 Cynder"},
{{32, 10245}, "Phantom Cynder"},
{{100, 0}, "Jet Vac"},
{{100, 4614}, "LightCore Jet Vac"},
{{100, 10245}, "Turbo Jet Vac"},
{{101, 0}, "Swarm"},
{{102, 0}, "Crusher"},
{{103, 0}, "Flashwing"},
{{103, 4614}, "LightCore Flashwing"},
{{103, 13314}, "Jade Flash Wing"},
{{104, 0}, "Hot Head"},
{{105, 0}, "Hot Dog"},
{{105, 10245}, "Fire Bone Hot Dog"},
{{106, 0}, "Chill"},
{{106, 4614}, "LightCore Chill"},
{{106, 10245}, "Blizzard Chill"},
{{107, 0}, "Thumpback"},
{{108, 0}, "Pop Fizz"},
{{108, 4614}, "LightCore Pop Fizz"},
{{108, 10245}, "Super Gulp Pop Fizz"},
{{108, 15362}, "Love Potion Pop Fizz"},
{{109, 0}, "Ninjini"},
{{109, 13314}, "Scarlet Ninjini"},
{{110, 0}, "Bouncer"},
{{111, 0}, "Sprocket"},
{{111, 10245}, "Heavy Duty Sprocket"},
{{112, 0}, "Tree Rex"},
{{112, 13314}, "Gnarly Tree Rex"},
{{113, 0}, "Shroomboom"},
{{113, 4614}, "LightCore Shroomboom"},
{{114, 0}, "Eye Brawl"},
{{115, 0}, "Fright Rider"},
{{200, 0}, "Anvil Rain"},
{{201, 0}, "Hidden Treasure"},
{{202, 0}, "Healing Elixir"},
{{203, 0}, "Ghost Pirate Swords"},
{{204, 0}, "Time Twist Hourglass"},
{{205, 0}, "Sky Iron Shield"},
{{206, 0}, "Winged Boots"},
{{207, 0}, "Sparx the Dragonfly"},
{{208, 0}, "Dragonfire Cannon"},
{{209, 0}, "Scorpion Striker"},
{{210, 12290}, "Biter's Bane"},
{{210, 12296}, "Sorcerous Skull"},
{{210, 12299}, "Axe of Illusion"},
{{210, 12302}, "Arcane Hourglass"},
{{210, 12306}, "Spell Slapper"},
{{210, 12308}, "Rune Rocket"},
{{211, 12289}, "Tidal Tiki"},
{{211, 12290}, "Wet Walter"},
{{211, 12294}, "Flood Flask"},
{{211, 12295}, "Soaking Staff"},
{{211, 12299}, "Aqua Axe"},
{{211, 12310}, "Frost Helm"},
{{212, 12291}, "Breezy Bird"},
{{212, 12294}, "Drafty Decanter"},
{{212, 12301}, "Tempest Timer"},
{{212, 12304}, "Cloudy Cobra"},
{{212, 12305}, "Storm Warning"},
{{212, 12312}, "Cyclone Saber"},
{{213, 12292}, "Spirit Sphere"},
{{213, 12296}, "Spectral Skull"},
{{213, 12299}, "Haunted Hatchet"},
{{213, 12300}, "Grim Gripper"},
{{213, 12304}, "Spooky Snake"},
{{213, 12311}, "Dream Piercer"},
{{214, 12288}, "Tech Totem"},
{{214, 12295}, "Automatic Angel"},
{{214, 12297}, "Factory Flower"},
{{214, 12300}, "Grabbing Gadget"},
{{214, 12310}, "Makers Mana"},
{{214, 12314}, "Topsy Techy"},
{{215, 12293}, "Eternal Flame"},
{{215, 12297}, "Fire Flower"},
{{215, 12305}, "Scorching Stopper"},
{{215, 12306}, "Searing Spinner"},
{{215, 12311}, "Spark Spear"},
{{215, 12315}, "Blazing Belch"},
{{216, 12288}, "Banded Boulder"},
{{216, 12291}, "Rock Hawk"},
{{216, 12298}, "Slag Hammer"},
{{216, 12302}, "Dust Of Time"},
{{216, 12307}, "Spinning Sandstorm"},
{{216, 12314}, "Rubble Trouble"},
{{217, 12291}, "Oak Eagle"},
{{217, 12293}, "Emerald Energy"},
{{217, 12298}, "Weed Whacker"},
{{217, 12304}, "Seed Serpent"},
{{217, 12312}, "Jade Blade"},
{{217, 12315}, "Shrub Shrieker"},
{{218, 12288}, "Dark Dagger"},
{{218, 12308}, "Shadow Spider"},
{{218, 12314}, "Ghastly Grimace"},
{{219, 12288}, "Shining Ship"},
{{219, 12303}, "Heavenly Hawk"},
{{219, 12315}, "Beam Scream"},
{{220, 12336}, "Kaos Trap"},
{{220, 12337}, "Ultimate Kaos Trap"},
{{230, 0}, "Hand of Fate"},
{{231, 0}, "Piggy Bank"},
{{232, 0}, "Rocket Ram"},
{{233, 0}, "Tiki Speaky"},
{{300, 0}, "Dragons Peak"},
{{301, 0}, "Empire of Ice"},
{{302, 0}, "Pirate Seas"},
{{303, 0}, "Darklight Crypt"},
{{304, 0}, "Volcanic Vault"},
{{305, 0}, "Mirror of Mystery"},
{{306, 0}, "Nightmare Express"},
{{307, 0}, "Sunscraper Spire"},
{{308, 0}, "Midnight Museum"},
{{404, 0}, "Legendary Bash"},
{{416, 0}, "Legendary Spyro"},
{{419, 0}, "Legendary Trigger Happy"},
{{430, 0}, "Legendary Chop Chop"},
{{450, 0}, "Gusto"},
{{451, 0}, "Thunderbolt"},
{{452, 0}, "Fling Kong"},
{{453, 0}, "Blades"},
{{454, 0}, "Wallop"},
{{455, 0}, "Head Rush"},
{{456, 0}, "Fist Bump"},
{{457, 0}, "Rocky Roll"},
{{458, 0}, "Wildfire"},
{{458, 11266}, "Dark Wildfire"},
{{459, 0}, "Ka Boom"},
{{460, 0}, "Trail Blazer"},
{{461, 0}, "Torch"},
{{462, 0}, "Snap Shot"},
{{462, 11266}, "Dark Snap Shot"},
{{463, 0}, "Lob Star"},
{{464, 0}, "Flip Wreck"},
{{465, 0}, "Echo"},
{{466, 0}, "Blastermind"},
{{467, 0}, "Enigma"},
{{468, 0}, "Deja Vu"},
{{469, 0}, "Cobra Candabra"},
{{470, 0}, "Jawbreaker"},
{{471, 0}, "Gearshift"},
{{472, 0}, "Chopper"},
{{473, 0}, "Tread Head"},
{{474, 0}, "Bushwack"},
{{475, 0}, "Tuff Luck"},
{{476, 0}, "Food Fight"},
{{476, 11266}, "Dark Food Fight"},
{{477, 0}, "High Five"},
{{478, 0}, "Krypt King"},
{{479, 0}, "Short Cut"},
{{480, 0}, "Bat Spin"},
{{481, 0}, "Funny Bone"},
{{482, 0}, "Knight Light"},
{{483, 0}, "Spotlight"},
{{484, 0}, "Knight Mare"},
{{485, 0}, "Blackout"},
{{502, 0}, "Bop"},
{{505, 0}, "Terrabite"},
{{506, 0}, "Breeze"},
{{508, 0}, "Pet Vac"},
{{507, 0}, "Weeruptor"},
{{509, 0}, "Small Fry"},
{{510, 0}, "Drobit"},
{{519, 0}, "Trigger Snappy"},
{{526, 0}, "Whisper Elf"},
{{540, 0}, "Barkley"},
{{540, 13314}, "Gnarly Barkley"},
{{541, 0}, "Thumpling"},
{{514, 0}, "Gill Runt"},
{{542, 0}, "Mini-Jini"},
{{503, 0}, "Spry"},
{{504, 0}, "Hijinx"},
{{543, 0}, "Eye Small"},
{{601, 0}, "King Pen"},
{{601, 11266}, "Dark King Pen"},
{{602, 0}, "Tri-Tip"},
{{603, 0}, "Chopscotch"},
{{604, 0}, "Boom Bloom"},
{{605, 0}, "Pit Boss"},
{{606, 0}, "Barbella"},
{{607, 0}, "Air Strike"},
{{608, 0}, "Ember"},
{{609, 0}, "Ambush"},
{{610, 0}, "Dr. Krankcase"},
{{611, 0}, "Hood Sickle"},
{{612, 0}, "Tae Kwon Crow"},
{{613, 0}, "Golden Queen"},
{{613, 11266}, "Dark Golden Queen"},
{{614, 0}, "Wolfgang"},
{{614, 11266}, "Dark Wolfgang"},
{{615, 0}, "Pain-Yatta"},
{{616, 0}, "Mysticat"},
{{617, 0}, "Starcast"},
{{618, 0}, "Buckshot"},
{{619, 0}, "Aurora"},
{{620, 0}, "Flare Wolf"},
{{621, 0}, "Chompy Mage"},
{{622, 0}, "Bad Juju"},
{{623, 0}, "Grave Clobber"},
{{624, 0}, "Blaster-Tron"},
{{625, 0}, "Ro-Bow"},
{{626, 0}, "Chain Reaction"},
{{627, 0}, "Kaos"},
{{628, 0}, "Wild Storm"},
{{629, 0}, "Tidepool"},
{{630, 0}, "Crash Bandicoot"},
{{631, 0}, "Dr. Neo Cortex"},
{{3000, 0}, "Scratch"},
{{3001, 0}, "Pop Thorn"},
{{3002, 0}, "Slobber Tooth"},
{{3002, 11266}, "Dark Slobber Tooth"},
{{3003, 0}, "Scorp"},
{{3004, 0}, "Fryno"},
{{3005, 0}, "Smolderdash"},
{{3005, 4614}, "LightCore Smolderdash"},
{{3006, 0}, "Bumble Blast"},
{{3006, 4614}, "LightCore Bumble Blast"},
{{3007, 0}, "Zoo Lou"},
{{3008, 0}, "Dune Bug"},
{{3009, 0}, "Star Strike"},
{{3009, 4614}, "LightCore Star Strike"},
{{3010, 0}, "Countdown"},
{{3010, 4614}, "LightCore Countdown"},
{{3011, 0}, "Wind Up"},
{{3012, 0}, "Roller Brawl"},
{{3013, 0}, "Grim Creeper"},
{{3013, 4614}, "LightCore Grim Creeper"},
{{3014, 0}, "Rip Tide"},
{{3015, 0}, "Punk Shock"},
{{1000, 0}, "Boom Jet (Bottom)"},
{{1001, 0}, "Free Ranger (Bottom)"},
{{1002, 0}, "Rubble Rouser (Bottom)"},
{{1003, 0}, "Doom Stone (Bottom)"},
{{1004, 0}, "Blast Zone (Bottom)"},
{{1004, 11266}, "Dark Blast Zone (Bottom)"},
{{1005, 0}, "Fire Kraken (Bottom)"},
{{1006, 0}, "Stink Bomb (Bottom)"},
{{1007, 0}, "Grilla Drilla (Bottom)"},
{{1008, 0}, "Hoot Loop (Bottom)"},
{{1008, 9218}, "Enchanted Hoot Loop (Bottom)"},
{{1009, 0}, "Trap Shadow (Bottom)"},
{{1010, 0}, "Magna Charge (Bottom)"},
{{1011, 0}, "Spy Rise (Bottom)"},
{{1012, 0}, "Night Shift (Bottom)"},
{{1013, 0}, "Rattle Shake (Bottom)"},
{{1014, 0}, "Freeze Blade (Bottom)"},
{{1015, 0}, "Wash Buckler (Bottom)"},
{{1015, 11266}, "Dark Wash Buckler (Bottom)"},
{{2000, 0}, "Boom Jet (Top)"},
{{2001, 0}, "Free Ranger (Top)"},
{{2002, 0}, "Rubble Rouser (Top)"},
{{2003, 0}, "Doom Stone (Top)"},
{{2004, 0}, "Blast Zone (Top)"},
{{2004, 11266}, "Dark Blast Zone (Top)"},
{{2005, 0}, "Fire Kraken (Top)"},
{{2006, 0}, "Stink Bomb (Top)"},
{{2007, 0}, "Grilla Drilla (Top)"},
{{2008, 0}, "Hoot Loop (Top)"},
{{2008, 9218}, "Enchanted Hoot Loop (Top)"},
{{2009, 0}, "Trap Shadow (Top)"},
{{2010, 0}, "Magna Charge (Top)"},
{{2011, 0}, "Spy Rise (Top)"},
{{2012, 0}, "Night Shift (Top)"},
{{2013, 0}, "Rattle Shake (Top)"},
{{2014, 0}, "Freeze Blade (Top)"},
{{2015, 0}, "Wash Buckler (Top)"},
{{2015, 11266}, "Dark Wash Buckler (Top)"},
{{3220, 0}, "Jet Stream"},
{{3221, 0}, "Tomb Buggy"},
{{3222, 0}, "Reef Ripper"},
{{3223, 0}, "Burn Cycle"},
{{3224, 0}, "Hot Streak"},
{{3225, 0}, "Shark Tank"},
{{3226, 0}, "Thump Truck"},
{{3227, 0}, "Crypt Crusher"},
{{3228, 0}, "Stealth Stinger"},
{{3231, 0}, "Dive Bomber"},
{{3232, 0}, "Sky Slicer"},
//{{3233, 0}, "Clown Cruiser (Nintendo Only)"},
//{{3233, 11266}, "Dark Clown Cruiser (Nintendo Only)"},
{{3234, 0}, "Gold Rusher"},
{{3235, 0}, "Shield Striker"},
{{3236, 0}, "Sun Runner"},
{{3237, 0}, "Sea Shadow"},
{{3237, 11266}, "Dark Sea Shadow"},
{{3238, 0}, "Splatter Splasher"},
{{3239, 0}, "Soda Skimmer"},
//{{3240, 0}, "Barrel Blaster (Nintendo Only)"},
//{{3240, 11266}, "Dark Barrel Blaster (Nintendo Only)"},
{{3241, 0}, "Buzz Wing"},
{{3400, 0}, "Fiesta"},
{{3401, 0}, "High Volt"},
{{3402, 0}, "Splat"},
{{3406, 0}, "Stormblade"},
{{3411, 0}, "Smash Hit"},
{{3412, 0}, "Spitfire"},
{{3412, 11266}, "Dark Spitfire"},
{{3413, 0}, "Hurricane Jet Vac"},
{{3414, 0}, "Double Dare Trigger Happy"},
{{3415, 0}, "Super Shot Stealth Elf"},
{{3415, 11266}, "Dark Super Shot Stealth Elf"},
{{3416, 0}, "Shark Shooter Terrafin"},
{{3417, 0}, "Bone Bash Roller Brawl"},
{{3420, 0}, "Big Bubble Pop Fizz"},
{{3421, 0}, "Lava Lance Eruptor"},
{{3422, 0}, "Deep Dive Gill Grunt"},
//{{3423, 0}, "Turbo Charge Donkey Kong (Nintendo Only)"},
//{{3423, 11266}, "Dark Turbo Charge Donkey Kong (Nintendo Only)"},
//{{3424, 0}, "Hammer Slam Bowser (Nintendo Only)"},
//{{3424, 11266}, "Dark Hammer Slam Bowser (Nintendo Only)"},
{{3425, 0}, "Dive-Clops"},
{{3426, 0}, "Astroblast"},
{{3427, 0}, "Nightfall"},
{{3428, 0}, "Thrillipede"},
{{3500, 0}, "Sky Trophy"},
{{3501, 0}, "Land Trophy"},
{{3502, 0}, "Sea Trophy"},
{{3503, 0}, "Kaos Trophy"},
};
QString cur_sky_file_path;
@ -304,12 +432,13 @@ skylander_dialog::skylander_dialog(QWidget* parent)
QGroupBox* group_skyinfo = new QGroupBox(tr("Skylander Info"));
QVBoxLayout* vbox_group = new QVBoxLayout();
combo_skylist = new QComboBox();
for (auto& entry : list_skylanders)
for (const auto& entry : list_skylanders)
{
combo_skylist->addItem(QString::fromStdString(entry.second), QVariant(int{entry.first}));
uint qvar = (entry.first.first << 16) | entry.first.second;
combo_skylist->addItem(QString::fromStdString(entry.second), QVariant(qvar));
}
combo_skylist->addItem(tr("--Unknown--"), QVariant(0xFFFF));
combo_skylist->addItem(tr("--Unknown--"), QVariant(0xFFFFFFFF));
QLabel* label_skyid = new QLabel(tr("Skylander ID:"));
edit_skyid = new QLineEdit();
@ -348,13 +477,16 @@ skylander_dialog::skylander_dialog(QWidget* parent)
// clang-format off
connect(combo_skylist, &QComboBox::currentTextChanged, this, [&]()
{
u16 sky_id = combo_skylist->itemData(combo_skylist->currentIndex()).toInt();
if (sky_id != 0xFFFF)
const u32 sky_info = combo_skylist->itemData(combo_skylist->currentIndex()).toUInt();
if (sky_info != 0xFFFFFFFF)
{
const u16 sky_id = sky_info >> 16;
const u16 sky_var = sky_info & 0xFFFF;
{
std::lock_guard lock(g_skylander.sky_mutex);
reinterpret_cast<le_t<u32>&>(g_skylander.sky_dump[0]) = combo_skylist->itemData(combo_skylist->currentIndex()).toInt() & 0xffff;
reinterpret_cast<le_t<u16>&>(g_skylander.sky_dump[0x10]) = combo_skylist->itemData(combo_skylist->currentIndex()).toInt() & 0xffff;
reinterpret_cast<le_t<u32>&>(g_skylander.sky_dump[0]) = sky_info;
reinterpret_cast<le_t<u16>&>(g_skylander.sky_dump[0x10]) = sky_id;
reinterpret_cast<le_t<u16>&>(g_skylander.sky_dump[0x1C]) = sky_var;
reinterpret_cast<le_t<u16>&>(g_skylander.sky_dump[0x1E]) = skylander_crc16(0xFFFF, g_skylander.sky_dump, 0x1E);
}