the decks were the visible half: LogicBattle carries one LogicSpellDeck per player and we wrote both as absent, so the client cleared them and the card bar came up empty. both sides get a real deck now - the player from their profile, the bot from the fullest row of predefined_decks. matchmaking no longer picks a row out of npcs.csv. it takes the location from the arena's PvpLocation column and builds an opponent avatar with its own name, arena and trophies, so the battle reads as a player match rather than a trainer one. StartMissionMessage still goes through the npc path unchanged. the battle type stays 1 on purpose. LogicGameMode::isImmediateMessageExecution is (type - 1) < 3, so 1, 2 and 3 let the client simulate locally while 0 makes it wait for the server to drive the sector - which needs the real tick loop we do not have yet. |
||
|---|---|---|
| .. | ||
| data_ref.rs | ||
| globals.rs | ||
| logic_data.rs | ||
| logic_data_table.rs | ||
| logic_data_tables.rs | ||
| mod.rs | ||
| tables.rs | ||
| typed.rs | ||