mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-04-03 20:03:50 +00:00
- split applyUpdateObjectBlock into handleCreateObject, handleValuesUpdate, handleMovementUpdate - extract concern helpers — createEntityFromBlock, applyPlayerTransportState, applyUnitFieldsOnCreate/OnUpdate, applyPlayerStatFields, dispatchEntitySpawn, trackItemOnCreate, updateItemOnValuesUpdate, syncClassicAurasFromFields, detectPlayerMountChange, updateNonPlayerTransportAttachment - UnitFieldIndices, PlayerFieldIndices, UnitFieldUpdateResult structs with static resolve() — eliminate repeated fieldIndex() calls - IObjectTypeHandler strategy interface; concrete handlers UnitTypeHandler, PlayerTypeHandler, GameObjectTypeHandler, ItemTypeHandler, CorpseTypeHandler registered in typeHandlers_ map; handleCreateObject and handleValuesUpdate now dispatch via getTypeHandler() — adding a new object type requires zero changes to existing handler methods - PendingEvents member bus; all 27 inline owner_.fireAddonEvent() calls in the update path replaced with pendingEvents_.emit(); events flushed via flushPendingEvents() at the end of each handler, decoupling field-parse logic from the addon callback system entity_controller.cpp: 1520-line monolith → longest method ~200 lines, cyclomatic complexity ~180 → ~5; zero duplicated CREATE/VALUES blocks |
||
|---|---|---|
| .. | ||
| character.hpp | ||
| chat_handler.hpp | ||
| combat_handler.hpp | ||
| entity.hpp | ||
| entity_controller.hpp | ||
| expansion_profile.hpp | ||
| game_handler.hpp | ||
| game_utils.hpp | ||
| group_defines.hpp | ||
| handler_types.hpp | ||
| inventory.hpp | ||
| inventory_handler.hpp | ||
| movement_handler.hpp | ||
| opcode_aliases_generated.inc | ||
| opcode_enum_generated.inc | ||
| opcode_names_generated.inc | ||
| opcode_table.hpp | ||
| opcodes.hpp | ||
| packet_parsers.hpp | ||
| player.hpp | ||
| quest_handler.hpp | ||
| social_handler.hpp | ||
| spell_defines.hpp | ||
| spell_handler.hpp | ||
| transport_manager.hpp | ||
| update_field_table.hpp | ||
| warden_crypto.hpp | ||
| warden_emulator.hpp | ||
| warden_handler.hpp | ||
| warden_memory.hpp | ||
| warden_module.hpp | ||
| world.hpp | ||
| world_packets.hpp | ||
| zone_manager.hpp | ||