rodecomp/Source/UI/EntryQueue/UIEntryQueueWnd.cpp
ragnarok-clanker 20ae1c861d Maintenance: Source reorganisation, part 1 of 3: Source/Contents into feature folders (375 units/headers moved). Path-only; includes
Batch #16619 by ragnarok-clanker: forced by an admin (1 lower score(s), 13 changed function(s)); checked with 460 compiled unit(s), including every includer of Source/Client/Mode/CGameMode.h, Source/Contents/Achievement/AchievementMgr.h, Source/Contents/Actors/ActorNameCard.h, Source/Contents/Actors/GameActor.h, Source/Contents/Actors/GndRiser.h, Source/Contents/Actors/GroundScope.h, Source/Contents/Actors/Item.h, Source/Contents/Actors/PlayerNameDictionary.h, Source/Contents/Actors/Resources/EquipmentResourceMgr.h, Source/Contents/AdventureGuide/AdventureGuideMgr.h, Source/Contents/CashEmotion/CashEmotionMgr.h, Source/Contents/Clan/ClanInfo.h, Source/Contents/CombatTypes.h, Source/Contents/Configuration/ConfigMgr.h, Source/Contents/Effects/Core/CellRangeEffect.h, Source/Contents/Effects/Core/ChangeSizeEffect.h, Source/Contents/Effects/Core/DummyEffectLauncher.h, Source/Contents/Effects/Core/Effect.h, Source/Contents/Effects/Core/EffectActor.h, Source/Contents/Effects/Core/EffectLists.h, Source/Contents/Effects/Core/EffectMaker.h, Source/Contents/Effects/Core/EffectMemoryMgr.h, Source/Contents/Effects/Core/EffectMessageId.h, Source/Contents/Effects/Core/EffectPoint.h, Source/Contents/Effects/Core/EffectPrimId.h, Source/Contents/Effects/Core/EffectTypes.h, Source/Contents/Effects/Core/MsgEffect.h, Source/Contents/Effects/Core/RagEffect.h, Source/Contents/Effects/Core/RagEffectState.h, Source/Contents/Effects/Core/ShowEffect.h, Source/Contents/Effects/Core/SquareRangeEffect.h, Source/Contents/Effects/EffectResourceSwitcher.h, Source/Contents/Effects/Particles/AnimatedEmitterEffect.h, Source/Contents/Effects/Particles/CharacterParticleBundle.h, Source/Contents/Effects/Particles/EZ2STREffect.h, Source/Contents/Effects/Particles/EZ2STREffectEx.h, Source/Contents/Effects/Particles/EffectEmitter.h, Source/Contents/Effects/Particles/EmitterEffect.h, Source/Contents/Effects/Particles/Particle.h, Source/Contents/Effects/Particles/ParticlePool.h, Source/Contents/Effects/Particles/SpriteEffect.h, Source/Contents/Effects/Particles/SpriteParticle.h, Source/Contents/Effects/Primitives/EffectPrim.h, Source/Contents/Effects/Primitives/EffectPrimitiveMotion.h, Source/Contents/Effects/Primitives/EffectPrimitiveState.h, Source/Contents/Effects/RDamageVar.h, Source/Contents/Effects/Skills/AMachineEffect.h, Source/Contents/Effects/Skills/AcidifiedThrow.h, Source/Contents/Effects/Skills/ArrowEffect.h, Source/Contents/Effects/Skills/AstralStrikeEffect.h, Source/Contents/Effects/Skills/AxeBoomerang.h, Source/Contents/Effects/Skills/Bash.h, Source/Contents/Effects/Skills/BezierArcThrowEffect.h, Source/Contents/Effects/Skills/BindTrapEffect.h, Source/Contents/Effects/Skills/BlastForge.h, Source/Contents/Effects/Skills/CaneOfEvilEyeEffect.h, Source/Contents/Effects/Skills/CartCannon.h, Source/Contents/Effects/Skills/ChargingPierceEffect.h, Source/Contents/Effects/Skills/CherryBlossomEffect.h, Source/Contents/Effects/Skills/ClimaxEffect.h, Source/Contents/Effects/Skills/CloudEffect.h, Source/Contents/Effects/Skills/CloudKillEffect.h, Source/Contents/Effects/Skills/CommonFloorEffect.h, Source/Contents/Effects/Skills/Competentia.h, Source/Contents/Effects/Skills/CresciveBolt.h, Source/Contents/Effects/Skills/ElectricEffect.h, Source/Contents/Effects/Skills/EnergyOrbEffect.h, Source/Contents/Effects/Skills/EvilLandEffect.h, Source/Contents/Effects/Skills/EvilsPawEffect.h, Source/Contents/Effects/Skills/FlowerCastingEffect.h, Source/Contents/Effects/Skills/FortuneKissEffect.h, Source/Contents/Effects/Skills/FriggSongEffect.h, Source/Contents/Effects/Skills/FuumaShouakuEffect.h, Source/Contents/Effects/Skills/GlassWallEffect.h, Source/Contents/Effects/Skills/GravityControlEffect.h, Source/Contents/Effects/Skills/HealEffect.h, Source/Contents/Effects/Skills/HealSpEffect.h, Source/Contents/Effects/Skills/HitLineEffect.h, Source/Contents/Effects/Skills/JupitelThunderStormEffect.h, Source/Contents/Effects/Skills/Level150Effect.h, Source/Contents/Effects/Skills/Level99Effect.h, Source/Contents/Effects/Skills/Level99Orb1Effect.h, Source/Contents/Effects/Skills/Level99Orb2Effect.h, Source/Contents/Effects/Skills/LightSphereEffect.h, Source/Contents/Effects/Skills/MagicFloorEffect.h, Source/Contents/Effects/Skills/MagnumBreak.h, Source/Contents/Effects/Skills/MandraAttackEffect.h, Source/Contents/Effects/Skills/MapChainEffect.h, Source/Contents/Effects/Skills/MapMagicZoneEffect.h, Source/Contents/Effects/Skills/MappillarEffect.h, Source/Contents/Effects/Skills/MonsterSkillEffects.h, Source/Contents/Effects/Skills/NyanggrassEffect.h, Source/Contents/Effects/Skills/PartyMemberEffects.h, Source/Contents/Effects/Skills/PokJukEffect.h, Source/Contents/Effects/Skills/PowderingEffect.h, Source/Contents/Effects/Skills/RainbowEffect.h, Source/Contents/Effects/Skills/RectUpEffect.h, Source/Contents/Effects/Skills/RedLineEffect.h, Source/Contents/Effects/Skills/RichManKim.h, Source/Contents/Effects/Skills/RotateBgEffect.h, Source/Contents/Effects/Skills/RotateItemEffect.h, Source/Contents/Effects/Skills/RotateLineEffect.h, Source/Contents/Effects/Skills/SaintCastingEffect.h, Source/Contents/Effects/Skills/ScatterEffect.h, Source/Contents/Effects/Skills/ShadowExceedEffect.h, Source/Contents/Effects/Skills/SkillEffects.h, Source/Contents/Effects/Skills/SmokeEffect.h, Source/Contents/Effects/Skills/SoulCollectEffect.h, Source/Contents/Effects/Skills/SoulUnityEffect.h, Source/Contents/Effects/Skills/SphereWind2Effect.h, Source/Contents/Effects/Skills/SphereWindEffect.h, Source/Contents/Effects/Skills/StarEffect.h, Source/Contents/Effects/Skills/StarEmperorEffect.h, Source/Contents/Effects/Skills/StealEffect.h, Source/Contents/Effects/Skills/StormCannonEffect.h, Source/Contents/Effects/Skills/StormGustEffect.h, Source/Contents/Effects/Skills/StormKickEffect.h, Source/Contents/Effects/Skills/SunStanceEffect.h, Source/Contents/Effects/Skills/TalismanMarkEffect.h, Source/Contents/Effects/Skills/TetraBallEffect.h, Source/Contents/Effects/Skills/ThrowEffects.h, Source/Contents/Effects/Skills/TriangleShotArrow.h, Source/Contents/Effects/Skills/ViolentQuakeEffect.h, Source/Contents/Effects/Skills/WhirlwindEffect.h, Source/Contents/Effects/Skills/WindEffect.h, Source/Contents/EntryQueue/EntryQueueMgr.h, Source/Contents/Events/CheckAttendanceMgr.h, Source/Contents/Events/RouletteMgr.h, Source/Contents/Events/ShowRankingScheduler.h, Source/Contents/Events/SpecialPopupMgr.h, Source/Contents/Guild/GuildInfo.h, Source/Contents/Guild/GuildMgr.h, Source/Contents/Guild/GuildTip.h, Source/Contents/Items/ClientItemLists.h, Source/Contents/Items/EnchantMgr.h, Source/Contents/Items/ItemDBToIDMgr.h, Source/Contents/Items/JobCodeForItem.h, Source/Contents/Map/FlyingShipRouteInfo.h, Source/Contents/Map/MapInfoMgr.h, Source/Contents/Map/MapPropertyMgr.h, Source/Contents/Map/MapSkyMgr.h, Source/Contents/Map/PrivateAirplaneMgr.h, Source/Contents/Map/TownInfoMgr.h, Source/Contents/Monster/ChampionMonsterMgr.h, Source/Contents/Movement/MovementRouteInterpolation.h, Source/Contents/Movement/TerrainPathSearch.h, Source/Contents/Navigation/NavigationManager.h, Source/Contents/Pet/PetEnums.h, Source/Contents/Pet/PetEvolutionMgr.h, Source/Contents/Quest/RenewQuestMgr.h, Source/Contents/Repute/ReputeMgr.h, Source/Contents/Repute/ReputeRecords.h, Source/Contents/Rodex/RodexMailStore.h, Source/Contents/RuneSystem/RuneSystem.h, Source/Contents/Skills/GraffiSkill.h, Source/Contents/Skin/SkinMgr.h, Source/Contents/Sprites/SpriteLayerDrawing.h, Source/Contents/Sprites/SpriteLayerOrder.h, Source/Contents/Sprites/SpriteRidingOffset.h, Source/Contents/Sprites/SpriteRidingPolicy.h, Source/Contents/Tables/ForbiddenWords.h, Source/Contents/Tables/MessageTable.h, Source/Contents/Tables/SimpleStringMgr.h, Source/Contents/Tables/TableMng.h, Source/Contents/Tables/TipBoxTitles.h, Source/Contents/Tables/TipOfTheDay.h, Source/Contents/Time/ServerTimeManager.h, Source/Contents/World/WorldViewData.h, Source/UI/Guild/UIGuildWnd.h, Source/UI/Lists/UIScrollBarVariants.h, Source/UI/Rodex/UIRodexInboxWnd.h, Source/UI/RuneSystem/UIRuneSystemWindows.h, Source/UI/RuneSystem/UIRuneSystemWnd.h, Source/UI/Text/UIAchWnd.h, Source/UI/UIReputeWnd.h, Source/UI/Window/UINewMakeCharWnd.h, Source/UI/Window/UIRoMapWnd.h, Source/Utility/JsonCppLoader.h, Source/Contents/AchievementMgr.h, Source/Contents/ActorNameCard.h, Source/Contents/Actors/GraffiSkill.h, Source/Contents/Actors/PetEnums.h, Source/Contents/AdventureGuideMgr.h, Source/Contents/CashEmotionMgr.h, Source/Contents/ChampionMonsterMgr.h, Source/Contents/CheckAttendanceMgr.h, Source/Contents/ClanInfo.h, Source/Contents/ClientItemLists.h, Source/Contents/Combat/CombatTypes.h, Source/Contents/ConfigMgr.h, Source/Contents/EffectResourceSwitcher.h, Source/Contents/Effects/AMachineEffect.h, Source/Contents/Effects/AcidifiedThrow.h, Source/Contents/Effects/AnimatedEmitterEffect.h, Source/Contents/Effects/ArrowEffect.h, Source/Contents/Effects/AstralStrikeEffect.h, Source/Contents/Effects/AxeBoomerang.h, Source/Contents/Effects/Bash.h, Source/Contents/Effects/BezierArcThrowEffect.h, Source/Contents/Effects/BindTrapEffect.h, Source/Contents/Effects/BlastForge.h, Source/Contents/Effects/CaneOfEvilEyeEffect.h, Source/Contents/Effects/CartCannon.h, Source/Contents/Effects/CellRangeEffect.h, Source/Contents/Effects/ChangeSizeEffect.h, Source/Contents/Effects/CharacterParticleBundle.h, Source/Contents/Effects/ChargingPierceEffect.h, Source/Contents/Effects/CherryBlossomEffect.h, Source/Contents/Effects/ClimaxEffect.h, Source/Contents/Effects/CloudEffect.h, Source/Contents/Effects/CloudKillEffect.h, Source/Contents/Effects/CommonFloorEffect.h, Source/Contents/Effects/Competentia.h, Source/Contents/Effects/CresciveBolt.h, Source/Contents/Effects/DummyEffectLauncher.h, Source/Contents/Effects/EZ2STREffect.h, Source/Contents/Effects/EZ2STREffectEx.h, Source/Contents/Effects/Effect.h, Source/Contents/Effects/EffectActor.h, Source/Contents/Effects/EffectEmitter.h, Source/Contents/Effects/EffectLists.h, Source/Contents/Effects/EffectMaker.h, Source/Contents/Effects/EffectMemoryMgr.h, Source/Contents/Effects/EffectMessageId.h, Source/Contents/Effects/EffectPoint.h, Source/Contents/Effects/EffectPrim.h, Source/Contents/Effects/EffectPrimId.h, Source/Contents/Effects/EffectPrimitiveMotion.h, Source/Contents/Effects/EffectPrimitiveState.h, Source/Contents/Effects/EffectTypes.h, Source/Contents/Effects/ElectricEffect.h, Source/Contents/Effects/EmitterEffect.h, Source/Contents/Effects/EnergyOrbEffect.h, Source/Contents/Effects/EvilLandEffect.h, Source/Contents/Effects/EvilsPawEffect.h, Source/Contents/Effects/FlowerCastingEffect.h, Source/Contents/Effects/FortuneKissEffect.h, Source/Contents/Effects/FriggSongEffect.h, Source/Contents/Effects/FuumaShouakuEffect.h, Source/Contents/Effects/GlassWallEffect.h, Source/Contents/Effects/GravityControlEffect.h, Source/Contents/Effects/HealEffect.h, Source/Contents/Effects/HealSpEffect.h, Source/Contents/Effects/HitLineEffect.h, Source/Contents/Effects/JupitelThunderStormEffect.h, Source/Contents/Effects/Level150Effect.h, Source/Contents/Effects/Level99Effect.h, Source/Contents/Effects/Level99Orb1Effect.h, Source/Contents/Effects/Level99Orb2Effect.h, Source/Contents/Effects/LightSphereEffect.h, Source/Contents/Effects/MagicFloorEffect.h, Source/Contents/Effects/MagnumBreak.h, Source/Contents/Effects/MandraAttackEffect.h, Source/Contents/Effects/MapChainEffect.h, Source/Contents/Effects/MapMagicZoneEffect.h, Source/Contents/Effects/MappillarEffect.h, Source/Contents/Effects/MonsterSkillEffects.h, Source/Contents/Effects/MsgEffect.h, Source/Contents/Effects/NyanggrassEffect.h, Source/Contents/Effects/Particle.h, Source/Contents/Effects/ParticlePool.h, Source/Contents/Effects/PartyMemberEffects.h, Source/Contents/Effects/PokJukEffect.h, Source/Contents/Effects/PowderingEffect.h, Source/Contents/Effects/RagEffect.h, Source/Contents/Effects/RagEffectState.h, Source/Contents/Effects/RainbowEffect.h, Source/Contents/Effects/RectUpEffect.h, Source/Contents/Effects/RedLineEffect.h, Source/Contents/Effects/RichManKim.h, Source/Contents/Effects/RotateBgEffect.h, Source/Contents/Effects/RotateItemEffect.h, Source/Contents/Effects/RotateLineEffect.h, Source/Contents/Effects/SaintCastingEffect.h, Source/Contents/Effects/ScatterEffect.h, Source/Contents/Effects/ShadowExceedEffect.h, Source/Contents/Effects/ShowEffect.h, Source/Contents/Effects/SkillEffects.h, Source/Contents/Effects/SmokeEffect.h, Source/Contents/Effects/SoulCollectEffect.h, Source/Contents/Effects/SoulUnityEffect.h, Source/Contents/Effects/SphereWind2Effect.h, Source/Contents/Effects/SphereWindEffect.h, Source/Contents/Effects/SpriteEffect.h, Source/Contents/Effects/SpriteParticle.h, Source/Contents/Effects/SquareRangeEffect.h, Source/Contents/Effects/StarEffect.h, Source/Contents/Effects/StarEmperorEffect.h, Source/Contents/Effects/StealEffect.h, Source/Contents/Effects/StormCannonEffect.h, Source/Contents/Effects/StormGustEffect.h, Source/Contents/Effects/StormKickEffect.h, Source/Contents/Effects/SunStanceEffect.h, Source/Contents/Effects/TalismanMarkEffect.h, Source/Contents/Effects/TetraBallEffect.h, Source/Contents/Effects/ThrowEffects.h, Source/Contents/Effects/TriangleShotArrow.h, Source/Contents/Effects/ViolentQuakeEffect.h, Source/Contents/Effects/WhirlwindEffect.h, Source/Contents/Effects/WindEffect.h, Source/Contents/EnchantMgr.h, Source/Contents/EntryQueueMgr.h, Source/Contents/EquipmentResourceMgr.h, Source/Contents/FlyingShipRouteInfo.h, Source/Contents/ForbiddenWords.h, Source/Contents/GuildInfo.h, Source/Contents/GuildMgr.h, Source/Contents/GuildTip.h, Source/Contents/ItemDBToIDMgr.h, Source/Contents/Items/RuneSystem.h, Source/Contents/JobCodeForItem.h, Source/Contents/MapInfoMgr.h, Source/Contents/MapPropertyMgr.h, Source/Contents/MapSkyMgr.h, Source/Contents/MessageTable.h, Source/Contents/MovementRouteInterpolation.h, Source/Contents/NavigationManager.h, Source/Contents/PetEvolutionMgr.h, Source/Contents/PlayerNameDictionary.h, Source/Contents/PrivateAirplaneMgr.h, Source/Contents/RDamageVar.h, Source/Contents/RenewQuestMgr.h, Source/Contents/ReputeMgr.h, Source/Contents/ReputeRecords.h, Source/Contents/RodexMailStore.h, Source/Contents/RouletteMgr.h, Source/Contents/ServerTimeManager.h, Source/Contents/ShowRankingScheduler.h, Source/Contents/SimpleStringMgr.h, Source/Contents/SkinMgr.h, Source/Contents/SpecialPopupMgr.h, Source/Contents/SpriteLayerDrawing.h, Source/Contents/SpriteLayerOrder.h, Source/Contents/SpriteRidingOffset.h, Source/Contents/SpriteRidingPolicy.h, Source/Contents/TableMng.h, Source/Contents/TerrainPathSearch.h, Source/Contents/TipBoxTitles.h, Source/Contents/TipOfTheDay.h, Source/Contents/TownInfoMgr.h, Source/Contents/WorldView/WorldViewData.h.
Adds to the build: Source/Contents/Achievement/AchievementMgr.cpp, Source/Contents/Actors/ActorGeometry.cpp, Source/Contents/Actors/ActorNameCache.cpp, Source/Contents/Actors/ActorNameCard.cpp, Source/Contents/Actors/ActorNameDirectory.cpp, Source/Contents/Actors/ActorNameRequests.cpp, Source/Contents/Actors/PlayerNameDictionary.cpp, Source/Contents/Actors/Resources/BodyResources.cpp, Source/Contents/Actors/Resources/EquipmentResources.cpp, Source/Contents/Actors/Resources/HeadResources.cpp, Source/Contents/Actors/Resources/MonsterResources.cpp, Source/Contents/Actors/Resources/RobeResources.cpp, Source/Contents/Actors/Resources/StatusIconImages.cpp, Source/Contents/AdventureGuide/AdventureGuideMgr.cpp, Source/Contents/CashEmotion/CashEmotionMgr.cpp, Source/Contents/Clan/ClanInfo.cpp, Source/Contents/Configuration/ConfigMgr.cpp, Source/Contents/Effects/Core/CellRangeEffect.cpp, Source/Contents/Effects/Core/ChangeSizeEffect.cpp, Source/Contents/Effects/Core/DummyEffectLauncher.cpp, Source/Contents/Effects/Core/Effect.cpp, Source/Contents/Effects/Core/EffectActor.cpp, Source/Contents/Effects/Core/EffectAttachments.cpp, Source/Contents/Effects/Core/EffectForceRender.cpp, Source/Contents/Effects/Core/EffectLists.cpp, Source/Contents/Effects/Core/EffectMaker.cpp, Source/Contents/Effects/Core/EffectMemoryMgr.cpp, Source/Contents/Effects/Core/EffectTypes.cpp, Source/Contents/Effects/Core/EffectVisibility.cpp, Source/Contents/Effects/Core/MsgEffect.cpp, Source/Contents/Effects/Core/RagEffect.cpp, Source/Contents/Effects/Core/RagEffectInitialization.cpp, Source/Contents/Effects/Core/ShowEffect.cpp, Source/Contents/Effects/Core/SquareRangeEffect.cpp, Source/Contents/Effects/EffectResourceSwitcher.cpp, Source/Contents/Effects/Particles/AnimatedEmitterEffect.cpp, Source/Contents/Effects/Particles/CharacterParticleBundle.cpp, Source/Contents/Effects/Particles/EZ2STREffect.cpp, Source/Contents/Effects/Particles/EZ2STREffectEx.cpp, Source/Contents/Effects/Particles/EmitterEffect.cpp, Source/Contents/Effects/Particles/Particle.cpp, Source/Contents/Effects/Particles/ParticlePool.cpp, Source/Contents/Effects/Particles/SpriteEffect.cpp, Source/Contents/Effects/Particles/SpriteParticle.cpp, Source/Contents/Effects/Primitives/EffectPrim.cpp, Source/Contents/Effects/Primitives/EffectPrimitiveArcs.cpp, Source/Contents/Effects/Primitives/EffectPrimitiveColor.cpp, Source/Contents/Effects/Primitives/EffectPrimitiveGlowSquares.cpp, Source/Contents/Effects/Primitives/EffectPrimitiveMotion.cpp, Source/Contents/Effects/Primitives/EffectPrimitivePanels.cpp, Source/Contents/Effects/Primitives/EffectPrimitiveRecords.cpp, Source/Contents/Effects/Primitives/EffectPrimitiveRendering.cpp, Source/Contents/Effects/Primitives/EffectPrimitiveSprites.cpp, Source/Contents/Effects/Primitives/EffectPrimitiveState.cpp, Source/Contents/Effects/Primitives/EffectPrimitiveSweeps.cpp, Source/Contents/Effects/RDamageVar.cpp, Source/Contents/Effects/Skills/AMachineEffect.cpp, Source/Contents/Effects/Skills/AcidifiedThrow.cpp, Source/Contents/Effects/Skills/ArrowEffect.cpp, Source/Contents/Effects/Skills/AstralStrikeEffect.cpp, Source/Contents/Effects/Skills/AxeBoomerang.cpp, Source/Contents/Effects/Skills/Bash.cpp, Source/Contents/Effects/Skills/BezierArcThrowEffect.cpp, Source/Contents/Effects/Skills/BindTrapEffect.cpp, Source/Contents/Effects/Skills/BlastForge.cpp, Source/Contents/Effects/Skills/CaneOfEvilEyeEffect.cpp, Source/Contents/Effects/Skills/CartCannon.cpp, Source/Contents/Effects/Skills/ChargingPierceEffect.cpp, Source/Contents/Effects/Skills/CherryBlossomEffect.cpp, Source/Contents/Effects/Skills/ClimaxEffect.cpp, Source/Contents/Effects/Skills/CloudEffect.cpp, Source/Contents/Effects/Skills/CloudKillEffect.cpp, Source/Contents/Effects/Skills/CommonFloorEffect.cpp, Source/Contents/Effects/Skills/Competentia.cpp, Source/Contents/Effects/Skills/CresciveBolt.cpp, Source/Contents/Effects/Skills/ElectricEffect.cpp, Source/Contents/Effects/Skills/EnergyOrbEffect.cpp, Source/Contents/Effects/Skills/EvilLandEffect.cpp, Source/Contents/Effects/Skills/EvilsPawEffect.cpp, Source/Contents/Effects/Skills/FlowerCastingEffect.cpp, Source/Contents/Effects/Skills/FortuneKissEffect.cpp, Source/Contents/Effects/Skills/FriggSongEffect.cpp, Source/Contents/Effects/Skills/FuumaShouakuEffect.cpp, Source/Contents/Effects/Skills/GlassWallEffect.cpp, Source/Contents/Effects/Skills/HealEffect.cpp, Source/Contents/Effects/Skills/HealSpEffect.cpp, Source/Contents/Effects/Skills/HitLineEffect.cpp, Source/Contents/Effects/Skills/JupitelThunderStormEffect.cpp, Source/Contents/Effects/Skills/Level150Effect.cpp, Source/Contents/Effects/Skills/Level99Effect.cpp, Source/Contents/Effects/Skills/Level99Orb1Effect.cpp, Source/Contents/Effects/Skills/Level99Orb2Effect.cpp, Source/Contents/Effects/Skills/LightSphereEffect.cpp, Source/Contents/Effects/Skills/MagicFloorEffect.cpp, Source/Contents/Effects/Skills/MagnumBreak.cpp, Source/Contents/Effects/Skills/MandraAttackEffect.cpp, Source/Contents/Effects/Skills/MapChainEffect.cpp, Source/Contents/Effects/Skills/MapMagicZoneEffect.cpp, Source/Contents/Effects/Skills/MappillarEffect.cpp, Source/Contents/Effects/Skills/MeteorEffect.cpp, Source/Contents/Effects/Skills/MonsterSkillEffects.cpp, Source/Contents/Effects/Skills/NyanggrassEffect.cpp, Source/Contents/Effects/Skills/PartyMemberEffects.cpp, Source/Contents/Effects/Skills/PokJukEffect.cpp, Source/Contents/Effects/Skills/PowderingEffect.cpp, Source/Contents/Effects/Skills/RainbowEffect.cpp, Source/Contents/Effects/Skills/RectUpEffect.cpp, Source/Contents/Effects/Skills/RedLineEffect.cpp, Source/Contents/Effects/Skills/RichManKim.cpp, Source/Contents/Effects/Skills/RotateBgEffect.cpp, Source/Contents/Effects/Skills/RotateItemEffect.cpp, Source/Contents/Effects/Skills/RotateLineEffect.cpp, Source/Contents/Effects/Skills/SaintCastingEffect.cpp, Source/Contents/Effects/Skills/ScatterEffect.cpp, Source/Contents/Effects/Skills/ShadowExceedEffect.cpp, Source/Contents/Effects/Skills/ShadowExceedNewEffect.cpp, Source/Contents/Effects/Skills/SmokeEffect.cpp, Source/Contents/Effects/Skills/SoulCollectEffect.cpp, Source/Contents/Effects/Skills/SoulUnityEffect.cpp, Source/Contents/Effects/Skills/SphereWind2Effect.cpp, Source/Contents/Effects/Skills/SphereWindEffect.cpp, Source/Contents/Effects/Skills/StarEffect.cpp, Source/Contents/Effects/Skills/StarEmperorEffect.cpp, Source/Contents/Effects/Skills/StealEffect.cpp, Source/Contents/Effects/Skills/StormCannonEffect.cpp, Source/Contents/Effects/Skills/StormGustEffect.cpp, Source/Contents/Effects/Skills/StormKickEffect.cpp, Source/Contents/Effects/Skills/SunStanceEffect.cpp, Source/Contents/Effects/Skills/TalismanMarkEffect.cpp, Source/Contents/Effects/Skills/TetraBallEffect.cpp, Source/Contents/Effects/Skills/ThrowEffects.cpp, Source/Contents/Effects/Skills/TriangleShotArrow.cpp, Source/Contents/Effects/Skills/ViolentQuakeEffect.cpp, Source/Contents/Effects/Skills/WindEffect.cpp, Source/Contents/Emblems/EmblemCacheRaw.cpp, Source/Contents/Emblems/GuildEmblemLookup.cpp, Source/Contents/Emblems/GuildEmblemState.cpp, Source/Contents/EntryQueue/EntryQueueMgr.cpp, Source/Contents/Events/CheckAttendanceMgr.cpp, Source/Contents/Events/RouletteMgr.cpp, Source/Contents/Events/ShowRankingScheduler.cpp, Source/Contents/Events/SpecialPopupMgr.cpp, Source/Contents/Guild/GuildInfo.cpp, Source/Contents/Guild/GuildMgr.cpp, Source/Contents/Guild/GuildTip.cpp, Source/Contents/Items/ClientItemLists.cpp, Source/Contents/Items/EnchantMgr.cpp, Source/Contents/Items/ItemDBToIDMgr.cpp, Source/Contents/Items/JobCodeForItem.cpp, Source/Contents/Map/FlyingShipRouteInfo.cpp, Source/Contents/Map/MapInfoMgr.cpp, Source/Contents/Map/MapNameTable.cpp, Source/Contents/Map/MapPropertyMgr.cpp, Source/Contents/Map/MapSkyMgr.cpp, Source/Contents/Map/PrivateAirplaneMgr.cpp, Source/Contents/Map/TownInfoMgr.cpp, Source/Contents/Models/ModelKeyframes.cpp, Source/Contents/Monster/ChampionMonsterMgr.cpp, Source/Contents/Monster/EnemyMonsterTalk.cpp, Source/Contents/Monster/MonsterSpeech.cpp, Source/Contents/Monster/MonsterXmlActions.cpp, Source/Contents/Movement/ActorMovementRoute.cpp, Source/Contents/Movement/MovementRoute.cpp, Source/Contents/Movement/MovementRouteInterpolation.cpp, Source/Contents/Movement/MovementTraversal.cpp, Source/Contents/Movement/Pathfinding.cpp, Source/Contents/Movement/TerrainPathSearch.cpp, Source/Contents/Navigation/NavigationCandidates.cpp, Source/Contents/Navigation/NavigationDestinations.cpp, Source/Contents/Navigation/NavigationGraph.cpp, Source/Contents/Navigation/NavigationLink.cpp, Source/Contents/Navigation/NavigationRequest.cpp, Source/Contents/Navigation/NavigationRoute.cpp, Source/Contents/Navigation/NavigationSource.cpp, Source/Contents/Navigation/NpcLocationRadius.cpp, Source/Contents/Navigation/WorldNavigation.cpp, Source/Contents/Pet/PetEvolutionMgr.cpp, Source/Contents/Pet/PetStatus.cpp, Source/Contents/Pet/PetStrings.cpp, Source/Contents/Pet/PetTalk.cpp, Source/Contents/Pet/PetTalkNames.cpp, Source/Contents/Quest/RenewQuestMgr.cpp, Source/Contents/Repute/ReputeMgr.cpp, Source/Contents/Rodex/RodexMailStore.cpp, Source/Contents/RuneSystem/RuneSystem.cpp, Source/Contents/Skills/GraffiSkill.cpp, Source/Contents/Skin/SkinCatalog.cpp, Source/Contents/Skin/SkinInfo.cpp, Source/Contents/Skin/SkinMgr.cpp, Source/Contents/Sound/HitSounds.cpp, Source/Contents/Sprites/RobeOpacity.cpp, Source/Contents/Sprites/RobeTopLayer.cpp, Source/Contents/Sprites/SpriteFrameSynchronization.cpp, Source/Contents/Sprites/SpriteJob.cpp, Source/Contents/Sprites/SpriteLayerDepth.cpp, Source/Contents/Sprites/SpriteLayerDrawing.cpp, Source/Contents/Sprites/SpriteLayerOrder.cpp, Source/Contents/Sprites/SpriteRidingOffset.cpp, Source/Contents/Sprites/SpriteRidingPolicy.cpp, Source/Contents/Sprites/SpriteRobe.cpp, Source/Contents/Sprites/SpriteRobeCommands.cpp, Source/Contents/Sprites/SpriteShadow.cpp, Source/Contents/Tables/ClientXmlTables.cpp, Source/Contents/Tables/ForbiddenWords.cpp, Source/Contents/Tables/MessageTable.cpp, Source/Contents/Tables/SimpleStringMgr.cpp, Source/Contents/Tables/TableMng.cpp, Source/Contents/Tables/TipBoxTitles.cpp, Source/Contents/Tables/TipOfTheDay.cpp, Source/Contents/Time/ClientTiming.cpp, Source/Contents/Time/ServerTimeManager.cpp, Source/Contents/World/WorldViewData.cpp
Deletes: Source/Contents/AchievementMgr.cpp, Source/Contents/AchievementMgr.h, Source/Contents/ActorGeometry.cpp, Source/Contents/ActorMovementRoute.cpp, Source/Contents/ActorNameCache.cpp, Source/Contents/ActorNameCard.cpp, Source/Contents/ActorNameCard.h, Source/Contents/ActorNameDirectory.cpp, Source/Contents/ActorNameRequests.cpp, Source/Contents/Actors/GraffiSkill.cpp, Source/Contents/Actors/GraffiSkill.h, Source/Contents/Actors/PetEnums.h, Source/Contents/AdventureGuideMgr.cpp, Source/Contents/AdventureGuideMgr.h, Source/Contents/BodyResources.cpp, Source/Contents/CashEmotionMgr.cpp, Source/Contents/CashEmotionMgr.h, Source/Contents/ChampionMonsterMgr.cpp, Source/Contents/ChampionMonsterMgr.h, Source/Contents/CheckAttendanceMgr.cpp, Source/Contents/CheckAttendanceMgr.h, Source/Contents/ClanInfo.cpp, Source/Contents/ClanInfo.h, Source/Contents/ClientItemLists.cpp, Source/Contents/ClientItemLists.h, Source/Contents/ClientTiming.cpp, Source/Contents/ClientXmlTables.cpp, Source/Contents/Combat/CombatTypes.h, Source/Contents/ConfigMgr.cpp, Source/Contents/ConfigMgr.h, Source/Contents/EffectResourceSwitcher.cpp, Source/Contents/EffectResourceSwitcher.h, Source/Contents/Effects/AMachineEffect.cpp, Source/Contents/Effects/AMachineEffect.h, Source/Contents/Effects/AcidifiedThrow.cpp, Source/Contents/Effects/AcidifiedThrow.h, Source/Contents/Effects/AnimatedEmitterEffect.cpp, Source/Contents/Effects/AnimatedEmitterEffect.h, Source/Contents/Effects/ArrowEffect.cpp, Source/Contents/Effects/ArrowEffect.h, Source/Contents/Effects/AstralStrikeEffect.cpp, Source/Contents/Effects/AstralStrikeEffect.h, Source/Contents/Effects/AxeBoomerang.cpp, Source/Contents/Effects/AxeBoomerang.h, Source/Contents/Effects/Bash.cpp, Source/Contents/Effects/Bash.h, Source/Contents/Effects/BezierArcThrowEffect.cpp, Source/Contents/Effects/BezierArcThrowEffect.h, Source/Contents/Effects/BindTrapEffect.cpp, Source/Contents/Effects/BindTrapEffect.h, Source/Contents/Effects/BlastForge.cpp, Source/Contents/Effects/BlastForge.h, Source/Contents/Effects/CaneOfEvilEyeEffect.cpp, Source/Contents/Effects/CaneOfEvilEyeEffect.h, Source/Contents/Effects/CartCannon.cpp, Source/Contents/Effects/CartCannon.h, Source/Contents/Effects/CellRangeEffect.cpp, Source/Contents/Effects/CellRangeEffect.h, Source/Contents/Effects/ChangeSizeEffect.cpp, Source/Contents/Effects/ChangeSizeEffect.h, Source/Contents/Effects/CharacterParticleBundle.cpp, Source/Contents/Effects/CharacterParticleBundle.h, Source/Contents/Effects/ChargingPierceEffect.cpp, Source/Contents/Effects/ChargingPierceEffect.h, Source/Contents/Effects/CherryBlossomEffect.cpp, Source/Contents/Effects/CherryBlossomEffect.h, Source/Contents/Effects/ClimaxEffect.cpp, Source/Contents/Effects/ClimaxEffect.h, Source/Contents/Effects/CloudEffect.cpp, Source/Contents/Effects/CloudEffect.h, Source/Contents/Effects/CloudKillEffect.cpp, Source/Contents/Effects/CloudKillEffect.h, Source/Contents/Effects/CommonFloorEffect.cpp, Source/Contents/Effects/CommonFloorEffect.h, Source/Contents/Effects/Competentia.cpp, Source/Contents/Effects/Competentia.h, Source/Contents/Effects/CresciveBolt.cpp, Source/Contents/Effects/CresciveBolt.h, Source/Contents/Effects/DummyEffectLauncher.cpp, Source/Contents/Effects/DummyEffectLauncher.h, Source/Contents/Effects/EZ2STREffect.cpp, Source/Contents/Effects/EZ2STREffect.h, Source/Contents/Effects/EZ2STREffectEx.cpp, Source/Contents/Effects/EZ2STREffectEx.h, Source/Contents/Effects/Effect.cpp, Source/Contents/Effects/Effect.h, Source/Contents/Effects/EffectActor.cpp, Source/Contents/Effects/EffectActor.h, Source/Contents/Effects/EffectAttachments.cpp, Source/Contents/Effects/EffectEmitter.h, Source/Contents/Effects/EffectForceRender.cpp, Source/Contents/Effects/EffectLists.cpp, Source/Contents/Effects/EffectLists.h, Source/Contents/Effects/EffectMaker.cpp, Source/Contents/Effects/EffectMaker.h, Source/Contents/Effects/EffectMemoryMgr.cpp, Source/Contents/Effects/EffectMemoryMgr.h, Source/Contents/Effects/EffectMessageId.h, Source/Contents/Effects/EffectPoint.h, Source/Contents/Effects/EffectPrim.cpp, Source/Contents/Effects/EffectPrim.h, Source/Contents/Effects/EffectPrimId.h, Source/Contents/Effects/EffectPrimitiveArcs.cpp, Source/Contents/Effects/EffectPrimitiveColor.cpp, Source/Contents/Effects/EffectPrimitiveGlowSquares.cpp, Source/Contents/Effects/EffectPrimitiveMotion.cpp, Source/Contents/Effects/EffectPrimitiveMotion.h, Source/Contents/Effects/EffectPrimitivePanels.cpp, Source/Contents/Effects/EffectPrimitiveRecords.cpp, Source/Contents/Effects/EffectPrimitiveRendering.cpp, Source/Contents/Effects/EffectPrimitiveSprites.cpp, Source/Contents/Effects/EffectPrimitiveState.cpp, Source/Contents/Effects/EffectPrimitiveState.h, Source/Contents/Effects/EffectPrimitiveSweeps.cpp, Source/Contents/Effects/EffectTypes.cpp, Source/Contents/Effects/EffectTypes.h, Source/Contents/Effects/EffectVisibility.cpp, Source/Contents/Effects/ElectricEffect.cpp, Source/Contents/Effects/ElectricEffect.h, Source/Contents/Effects/EmitterEffect.cpp, Source/Contents/Effects/EmitterEffect.h, Source/Contents/Effects/EnergyOrbEffect.cpp, Source/Contents/Effects/EnergyOrbEffect.h, Source/Contents/Effects/EvilLandEffect.cpp, Source/Contents/Effects/EvilLandEffect.h, Source/Contents/Effects/EvilsPawEffect.cpp, Source/Contents/Effects/EvilsPawEffect.h, Source/Contents/Effects/FlowerCastingEffect.cpp, Source/Contents/Effects/FlowerCastingEffect.h, Source/Contents/Effects/FortuneKissEffect.cpp, Source/Contents/Effects/FortuneKissEffect.h, Source/Contents/Effects/FriggSongEffect.cpp, Source/Contents/Effects/FriggSongEffect.h, Source/Contents/Effects/FuumaShouakuEffect.cpp, Source/Contents/Effects/FuumaShouakuEffect.h, Source/Contents/Effects/GlassWallEffect.cpp, Source/Contents/Effects/GlassWallEffect.h, Source/Contents/Effects/GravityControlEffect.h, Source/Contents/Effects/HealEffect.cpp, Source/Contents/Effects/HealEffect.h, Source/Contents/Effects/HealSpEffect.cpp, Source/Contents/Effects/HealSpEffect.h, Source/Contents/Effects/HitLineEffect.cpp, Source/Contents/Effects/HitLineEffect.h, Source/Contents/Effects/JupitelThunderStormEffect.cpp, Source/Contents/Effects/JupitelThunderStormEffect.h, Source/Contents/Effects/Level150Effect.cpp, Source/Contents/Effects/Level150Effect.h, Source/Contents/Effects/Level99Effect.cpp, Source/Contents/Effects/Level99Effect.h, Source/Contents/Effects/Level99Orb1Effect.cpp, Source/Contents/Effects/Level99Orb1Effect.h, Source/Contents/Effects/Level99Orb2Effect.cpp, Source/Contents/Effects/Level99Orb2Effect.h, Source/Contents/Effects/LightSphereEffect.cpp, Source/Contents/Effects/LightSphereEffect.h, Source/Contents/Effects/MagicFloorEffect.cpp, Source/Contents/Effects/MagicFloorEffect.h, Source/Contents/Effects/MagnumBreak.cpp, Source/Contents/Effects/MagnumBreak.h, Source/Contents/Effects/MandraAttackEffect.cpp, Source/Contents/Effects/MandraAttackEffect.h, Source/Contents/Effects/MapChainEffect.cpp, Source/Contents/Effects/MapChainEffect.h, Source/Contents/Effects/MapMagicZoneEffect.cpp, Source/Contents/Effects/MapMagicZoneEffect.h, Source/Contents/Effects/MappillarEffect.cpp, Source/Contents/Effects/MappillarEffect.h, Source/Contents/Effects/MeteorEffect.cpp, Source/Contents/Effects/MonsterSkillEffects.cpp, Source/Contents/Effects/MonsterSkillEffects.h, Source/Contents/Effects/MsgEffect.cpp, Source/Contents/Effects/MsgEffect.h, Source/Contents/Effects/NyanggrassEffect.cpp, Source/Contents/Effects/NyanggrassEffect.h, Source/Contents/Effects/Particle.cpp, Source/Contents/Effects/Particle.h, Source/Contents/Effects/ParticlePool.cpp, Source/Contents/Effects/ParticlePool.h, Source/Contents/Effects/PartyMemberEffects.cpp, Source/Contents/Effects/PartyMemberEffects.h, Source/Contents/Effects/PokJukEffect.cpp, Source/Contents/Effects/PokJukEffect.h, Source/Contents/Effects/PowderingEffect.cpp, Source/Contents/Effects/PowderingEffect.h, Source/Contents/Effects/RagEffect.cpp, Source/Contents/Effects/RagEffect.h, Source/Contents/Effects/RagEffectInitialization.cpp, Source/Contents/Effects/RagEffectState.h, Source/Contents/Effects/RainbowEffect.cpp, Source/Contents/Effects/RainbowEffect.h, Source/Contents/Effects/RectUpEffect.cpp, Source/Contents/Effects/RectUpEffect.h, Source/Contents/Effects/RedLineEffect.cpp, Source/Contents/Effects/RedLineEffect.h, Source/Contents/Effects/RichManKim.cpp, Source/Contents/Effects/RichManKim.h, Source/Contents/Effects/RotateBgEffect.cpp, Source/Contents/Effects/RotateBgEffect.h, Source/Contents/Effects/RotateItemEffect.cpp, Source/Contents/Effects/RotateItemEffect.h, Source/Contents/Effects/RotateLineEffect.cpp, Source/Contents/Effects/RotateLineEffect.h, Source/Contents/Effects/SaintCastingEffect.cpp, Source/Contents/Effects/SaintCastingEffect.h, Source/Contents/Effects/ScatterEffect.cpp, Source/Contents/Effects/ScatterEffect.h, Source/Contents/Effects/ShadowExceedEffect.cpp, Source/Contents/Effects/ShadowExceedEffect.h, Source/Contents/Effects/ShadowExceedNewEffect.cpp, Source/Contents/Effects/ShowEffect.cpp, Source/Contents/Effects/ShowEffect.h, Source/Contents/Effects/SkillEffects.h, Source/Contents/Effects/SmokeEffect.cpp, Source/Contents/Effects/SmokeEffect.h, Source/Contents/Effects/SoulCollectEffect.cpp, Source/Contents/Effects/SoulCollectEffect.h, Source/Contents/Effects/SoulUnityEffect.cpp, Source/Contents/Effects/SoulUnityEffect.h, Source/Contents/Effects/SphereWind2Effect.cpp, Source/Contents/Effects/SphereWind2Effect.h, Source/Contents/Effects/SphereWindEffect.cpp, Source/Contents/Effects/SphereWindEffect.h, Source/Contents/Effects/SpriteEffect.cpp, Source/Contents/Effects/SpriteEffect.h, Source/Contents/Effects/SpriteParticle.cpp, Source/Contents/Effects/SpriteParticle.h, Source/Contents/Effects/SquareRangeEffect.cpp, Source/Contents/Effects/SquareRangeEffect.h, Source/Contents/Effects/StarEffect.cpp, Source/Contents/Effects/StarEffect.h, Source/Contents/Effects/StarEmperorEffect.cpp, Source/Contents/Effects/StarEmperorEffect.h, Source/Contents/Effects/StealEffect.cpp, Source/Contents/Effects/StealEffect.h, Source/Contents/Effects/StormCannonEffect.cpp, Source/Contents/Effects/StormCannonEffect.h, Source/Contents/Effects/StormGustEffect.cpp, Source/Contents/Effects/StormGustEffect.h, Source/Contents/Effects/StormKickEffect.cpp, Source/Contents/Effects/StormKickEffect.h, Source/Contents/Effects/SunStanceEffect.cpp, Source/Contents/Effects/SunStanceEffect.h, Source/Contents/Effects/TalismanMarkEffect.cpp, Source/Contents/Effects/TalismanMarkEffect.h, Source/Contents/Effects/TetraBallEffect.cpp, Source/Contents/Effects/TetraBallEffect.h, Source/Contents/Effects/ThrowEffects.cpp, Source/Contents/Effects/ThrowEffects.h, Source/Contents/Effects/TriangleShotArrow.cpp, Source/Contents/Effects/TriangleShotArrow.h, Source/Contents/Effects/ViolentQuakeEffect.cpp, Source/Contents/Effects/ViolentQuakeEffect.h, Source/Contents/Effects/WhirlwindEffect.h, Source/Contents/Effects/WindEffect.cpp, Source/Contents/Effects/WindEffect.h, Source/Contents/EmblemCacheRaw.cpp, Source/Contents/EnchantMgr.cpp, Source/Contents/EnchantMgr.h, Source/Contents/EnemyMonsterTalk.cpp, Source/Contents/EntryQueueMgr.cpp, Source/Contents/EntryQueueMgr.h, Source/Contents/EquipmentResourceMgr.h, Source/Contents/EquipmentResources.cpp, Source/Contents/FlyingShipRouteInfo.cpp, Source/Contents/FlyingShipRouteInfo.h, Source/Contents/ForbiddenWords.cpp, Source/Contents/ForbiddenWords.h, Source/Contents/GuildEmblemLookup.cpp, Source/Contents/GuildEmblemState.cpp, Source/Contents/GuildInfo.cpp, Source/Contents/GuildInfo.h, Source/Contents/GuildMgr.cpp, Source/Contents/GuildMgr.h, Source/Contents/GuildTip.cpp, Source/Contents/GuildTip.h, Source/Contents/HeadResources.cpp, Source/Contents/HitSounds.cpp, Source/Contents/ItemDBToIDMgr.cpp, Source/Contents/ItemDBToIDMgr.h, Source/Contents/Items/RuneSystem.cpp, Source/Contents/Items/RuneSystem.h, Source/Contents/JobCodeForItem.cpp, Source/Contents/JobCodeForItem.h, Source/Contents/MapInfoMgr.cpp, Source/Contents/MapInfoMgr.h, Source/Contents/MapNameTable.cpp, Source/Contents/MapPropertyMgr.cpp, Source/Contents/MapPropertyMgr.h, Source/Contents/MapSkyMgr.cpp, Source/Contents/MapSkyMgr.h, Source/Contents/MessageTable.cpp, Source/Contents/MessageTable.h, Source/Contents/ModelKeyframes.cpp, Source/Contents/MonsterResources.cpp, Source/Contents/MonsterSpeech.cpp, Source/Contents/MonsterXmlActions.cpp, Source/Contents/MovementRoute.cpp, Source/Contents/MovementRouteInterpolation.cpp, Source/Contents/MovementRouteInterpolation.h, Source/Contents/MovementTraversal.cpp, Source/Contents/NavigationCandidates.cpp, Source/Contents/NavigationDestinations.cpp, Source/Contents/NavigationGraph.cpp, Source/Contents/NavigationLink.cpp, Source/Contents/NavigationManager.h, Source/Contents/NavigationRequest.cpp, Source/Contents/NavigationRoute.cpp, Source/Contents/NavigationSource.cpp, Source/Contents/NpcLocationRadius.cpp, Source/Contents/Pathfinding.cpp, Source/Contents/PetEvolutionMgr.cpp, Source/Contents/PetEvolutionMgr.h, Source/Contents/PetStatus.cpp, Source/Contents/PetStrings.cpp, Source/Contents/PetTalk.cpp, Source/Contents/PetTalkNames.cpp, Source/Contents/PlayerNameDictionary.cpp, Source/Contents/PlayerNameDictionary.h, Source/Contents/PrivateAirplaneMgr.cpp, Source/Contents/PrivateAirplaneMgr.h, Source/Contents/RDamageVar.cpp, Source/Contents/RDamageVar.h, Source/Contents/RenewQuestMgr.cpp, Source/Contents/RenewQuestMgr.h, Source/Contents/ReputeMgr.cpp, Source/Contents/ReputeMgr.h, Source/Contents/ReputeRecords.h, Source/Contents/RobeOpacity.cpp, Source/Contents/RobeResources.cpp, Source/Contents/RobeTopLayer.cpp, Source/Contents/RodexMailStore.cpp, Source/Contents/RodexMailStore.h, Source/Contents/RouletteMgr.cpp, Source/Contents/RouletteMgr.h, Source/Contents/ServerTimeManager.cpp, Source/Contents/ServerTimeManager.h, Source/Contents/ShowRankingScheduler.cpp, Source/Contents/ShowRankingScheduler.h, Source/Contents/SimpleStringMgr.cpp, Source/Contents/SimpleStringMgr.h, Source/Contents/SkinCatalog.cpp, Source/Contents/SkinInfo.cpp, Source/Contents/SkinMgr.cpp, Source/Contents/SkinMgr.h, Source/Contents/SpecialPopupMgr.cpp, Source/Contents/SpecialPopupMgr.h, Source/Contents/SpriteFrameSynchronization.cpp, Source/Contents/SpriteJob.cpp, Source/Contents/SpriteLayerDepth.cpp, Source/Contents/SpriteLayerDrawing.cpp, Source/Contents/SpriteLayerDrawing.h, Source/Contents/SpriteLayerOrder.cpp, Source/Contents/SpriteLayerOrder.h, Source/Contents/SpriteRidingOffset.cpp, Source/Contents/SpriteRidingOffset.h, Source/Contents/SpriteRidingPolicy.cpp, Source/Contents/SpriteRidingPolicy.h, Source/Contents/SpriteRobe.cpp, Source/Contents/SpriteRobeCommands.cpp, Source/Contents/SpriteShadow.cpp, Source/Contents/StatusIconImages.cpp, Source/Contents/TableMng.cpp, Source/Contents/TableMng.h, Source/Contents/TerrainPathSearch.cpp, Source/Contents/TerrainPathSearch.h, Source/Contents/TipBoxTitles.cpp, Source/Contents/TipBoxTitles.h, Source/Contents/TipOfTheDay.cpp, Source/Contents/TipOfTheDay.h, Source/Contents/TownInfoMgr.cpp, Source/Contents/TownInfoMgr.h, Source/Contents/WorldNavigation.cpp, Source/Contents/WorldView/WorldViewData.cpp, Source/Contents/WorldView/WorldViewData.h
2026-11-10 23:40:35 +00:00

689 lines
24 KiB
C++

#include "UI/EntryQueue/UIEntryQueueWnd.h"
#include "UI/Window/WindowId.h"
#include "UI/Window/UIEnums.h"
#include "Client/Mode/CGameMode.h"
#include "Client/Mode/ModeMgr.h"
#include "Client/Replay.h"
#include "Client/Session.h"
#include "Contents/Guild/GuildInfo.h"
#include "Contents/Guild/GuildMgr.h"
#include "Contents/EntryQueue/EntryQueueMgr.h"
#include "Contents/Tables/MessageTable.h"
#include "Render/Renderer.h"
#include "Render/Text/FontCache.h"
#include "Render/Text/TextContext.h"
#include "Resource/Bitmap/BitmapResource.h"
#include "Resource/ResourceMgr.h"
#include "Resource/SkinPalette.h"
#include "Resource/TextureNames.h"
#include "UI/Buttons/UIBitmapButton.h"
#include "UI/Text/UIStaticText.h"
#include "UI/Text/UITextViewer.h"
#include "UI/Window/UIWindowMgr.h"
#include "UI/Window/WindowManagerWindows.h"
#include "Resource/MSGSTRINGID.h"
#include <cstddef>
#include <cstdio>
#include <cstring>
#include <map>
#include <string>
#include <utility>
#include <windows.h>
#include "Utility/StdStringCompare.h"
// OFFSET: 0x00BA3920
// FUNCTION: fn_19677
UIEntryQueueHelpWnd::UIEntryQueueHelpWnd() : UIFrameWnd(0), m_viewer(nullptr), m_close(nullptr) {
}
// OFFSET: 0x00BA4260
// FUNCTION: fn_19680
void UIEntryQueueHelpWnd::OnDestroy() {
}
// OFFSET: 0x00BA4270
// FUNCTION: fn_19681
void UIEntryQueueHelpWnd::Paint() {
this->DrawTitleBar(true, LookupMessage(MSI_BATTLEFIELD_WARNINGMSG1), 0);
this->DrawPanelBackground(17, 0, "");
}
// OFFSET: 0x00BA42A0
// FUNCTION: fn_19682
void UIEntryQueueHelpWnd::OnProcess() {
}
// OFFSET: 0x00BA42B0
// FUNCTION: fn_19683
int UIEntryQueueHelpWnd::SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) {
if (message == UM_COMMAND && a == 0) {
g_windowMgr.CloseWindow(WID_ENTRYQUEUEHELPWND);
}
return 0;
}
// OFFSET: 0x00BA42E0
// FUNCTION: fn_19684
__declspec(noinline) UIEntryQueueListBox::UIEntryQueueListBox() : UIListBox() {
}
// INLINED
UIEntryQueueListBox::~UIEntryQueueListBox() {
}
// OFFSET: 0x00BA4490
// FUNCTION: fn_19686
void UIEntryQueueListBox::AddEntry(const char* name, int value) {
if (this->m_entries.insert(std::map<std::string, int>::value_type(name, value)).second) {
this->AddLine(name);
}
}
// OFFSET: 0x00BA46A0
// FUNCTION: fn_19687
int UIEntryQueueListBox::EntryValue(int index) {
const std::string name = this->lines[index];
const auto it = this->m_entries.find(name);
if (it != this->m_entries.end()) {
return it->second;
}
return -1;
}
// OFFSET: 0x00BA4770
// FUNCTION: fn_19688
void UIEntryQueueListBox::OnLBtnUp(int x, int y) {
if (this->selected != -1) {
this->parent->SendMsg(this, UM_LIST_SELECTION, this->geometry.id, this->selected, 0, 0);
}
}
// OFFSET: 0x00BA47A0
// FUNCTION: fn_19689
UIEntryQueueRequestWnd::UIEntryQueueRequestWnd()
: UIFrameWnd(0), m_interval(1000), m_elapsed(0), m_delta(0), m_lastTick(0) {
}
// INLINED
UIEntryQueueRequestWnd::~UIEntryQueueRequestWnd() {
}
// OFFSET: 0x00BA48E0
// FUNCTION: fn_19691
bool UIEntryQueueRequestWnd::Create() {
this->Resize(300, 250);
this->AddBaseButton();
this->AddCloseButton("", 0);
this->SetSize(300, 250);
this->OnCreate(300, 250);
this->OnSize(300, 250);
this->Move((g_renderer->viewport.width - 640) / 2 + 185, (g_renderer->viewport.height - 480) / 2 + 180);
this->m_viewer = new UITextViewer();
this->m_viewer->Configure(10, 22, 280, 305, 0);
unsigned red, green, blue;
SkinPaletteChannels(ResourceMgr::Instance(), 2, 2, red, green, blue);
this->m_viewer->backgroundColor = 0xFF000000u | (blue << 16) | (green << 8) | red;
this->m_viewer->Invalidate();
this->AddChild(this->m_viewer);
char message[0x104];
std::memset(message, 0, sizeof(message));
if (g_entryQueueMgr->current) {
sprintf_s(message, sizeof(message), LookupMessage(MSI_BATTLEFIELD_WARNINGMSG2), g_entryQueueMgr->current->displayName);
}
this->m_viewer->Clear();
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(message), 38, 0, 0);
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BATTLEFIELD_WARNINGMSG3)), 38, 0, 0);
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(""), 38, 0, 0);
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BATTLEFIELD_WARNINGMSG4)), 38, 0, 0);
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BATTLEFIELD_WAIT_PLAYER)), 38, 0, 0);
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BATTLEFIELD_REQUEST_JOIN)), 38, 0, 0);
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BATTLEFIELD_WAITTIME_D)), 38, 0, 0);
const std::string path = "유저인터페이스\\";
this->m_ok = new UIBitmapButton();
this->m_ok->SetBitmap((path + "btn_ok" + ".bmp").c_str(), 0, 0);
this->m_ok->SetBitmap((path + "btn_ok_a" + ".bmp").c_str(), 1, 0);
this->m_ok->SetBitmap((path + "btn_ok_b" + ".bmp").c_str(), 2, 0);
this->m_ok->SetSize(this->m_ok->BitmapWidth(), this->m_ok->BitmapHeight());
this->m_ok->Move(209, 226);
this->m_ok->SetId(0);
this->AddChild(this->m_ok);
this->m_cancel = new UIBitmapButton();
this->m_cancel->SetBitmap((path + "btn_cancel" + ".bmp").c_str(), 0, 0);
this->m_cancel->SetBitmap((path + "btn_cancel_a" + ".bmp").c_str(), 1, 0);
this->m_cancel->SetBitmap((path + "btn_cancel_b" + ".bmp").c_str(), 2, 0);
this->m_cancel->SetSize(this->m_cancel->BitmapWidth(), this->m_cancel->BitmapHeight());
this->m_cancel->Move(254, 226);
this->m_cancel->SetId(1);
this->AddChild(this->m_cancel);
this->m_countdown = new UIStaticText();
this->m_countdown->SetSize(150, 20);
this->m_countdown->Move(10, this->geometry.height - 20);
this->AddChild(this->m_countdown);
return true;
}
// OFFSET: 0x00BA5380
// FUNCTION: fn_19692
void UIEntryQueueRequestWnd::OnDestroy() {
}
// OFFSET: 0x00BA5390
// FUNCTION: fn_19693
void UIEntryQueueRequestWnd::Paint() {
this->DrawTitleBar(true, LookupMessage(MSI_BATTLEFIELD_NAME_S), 0);
this->DrawPanelBackground(17, 0, "");
char text[100];
std::memset(text, 0, sizeof(text));
const int remaining = 20 - static_cast<int>(this->m_elapsed / 1000 % 60);
if (remaining <= 0) {
this->SendMsg(nullptr, UM_COMMAND, 1, 0, 0, 0);
}
std::sprintf(text, LookupMessage(MSI_BATTLEFIELD_MEMBER_D), remaining);
this->m_countdown->SetText(text, 0);
}
// OFFSET: 0x00BA5460
// FUNCTION: fn_19694
void UIEntryQueueRequestWnd::OnProcess() {
const DWORD now = GetTickCount();
const unsigned delta = now - this->m_lastTick;
this->m_delta = delta;
if (delta > this->m_interval) {
this->m_elapsed += this->m_interval;
this->m_lastTick = now;
this->Invalidate();
}
}
// OFFSET: 0x00BA54A0
// FUNCTION: fn_19695
int UIEntryQueueRequestWnd::SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) {
if (message == UM_COMMAND) {
this->RecordResponse(static_cast<int>(a), b, c, d);
switch (a) {
case 0:
g_entryQueueMgr->SendAdmissionReply(1);
g_windowMgr.CloseWindow(WID_ENTRYQUEUESTANDBYWND);
g_windowMgr.CloseWindow(WID_ENTRYQUEUEREQUESTWND);
g_windowMgr.SendNotice(UIM_PUSHINTOCHATHISTORY, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BATTLEFIELD_STATE_JOINWAIT)), 0x64FFFF, 0, 0, 0);
break;
case 1:
g_entryQueueMgr->SendAdmissionReply(2);
g_windowMgr.CloseWindow(WID_ENTRYQUEUESTANDBYWND);
g_windowMgr.CloseWindow(WID_ENTRYQUEUEREQUESTWND);
return 0;
}
}
return 0;
}
// OFFSET: 0x00BA5560
// FUNCTION: fn_19696
UIEntryQueueStandByWnd::UIEntryQueueStandByWnd()
: UIFrameWnd(0), m_waiting(0), m_ranking(0), m_viewer(nullptr), m_queueText(), m_waitingText(),
m_rankingText() {
}
// INLINED
UIEntryQueueStandByWnd::~UIEntryQueueStandByWnd() {
}
// OFFSET: 0x00BA5700
// FUNCTION: fn_19698
bool UIEntryQueueStandByWnd::Create() {
this->Resize(280, 120);
this->AddBaseButton();
this->SetSize(280, 120);
this->OnCreate(280, 120);
this->OnSize(280, 120);
this->Move((g_renderer->viewport.width - 640) / 2 + 185, (g_renderer->viewport.height - 480) / 2 + 180);
this->m_viewer = new UITextViewer();
this->m_viewer->Configure(10, 22, 260, 65, 0);
unsigned red, green, blue;
SkinPaletteChannels(ResourceMgr::Instance(), 2, 2, red, green, blue);
this->m_viewer->backgroundColor = 0xFF000000u | (blue << 16) | (green << 8) | red;
this->m_viewer->Invalidate();
this->AddChild(this->m_viewer);
const std::string path = "유저인터페이스\\";
this->m_cancel = new UIBitmapButton();
this->m_cancel->SetBitmap((path + "cancel_waiting" + ".bmp").c_str(), 0, 0);
this->m_cancel->SetBitmap((path + "cancel_waiting_a" + ".bmp").c_str(), 1, 0);
this->m_cancel->SetBitmap((path + "cancel_waiting_b" + ".bmp").c_str(), 2, 0);
this->m_cancel->SetSize(this->m_cancel->BitmapWidth(), this->m_cancel->BitmapHeight());
this->m_cancel->Move(159, 96);
this->m_cancel->SetId(0);
this->AddChild(this->m_cancel);
this->m_close = new UIBitmapButton();
this->m_close->SetBitmap((path + "btn_close" + ".bmp").c_str(), 0, 0);
this->m_close->SetBitmap((path + "btn_close_a" + ".bmp").c_str(), 1, 0);
this->m_close->SetBitmap((path + "btn_close_b" + ".bmp").c_str(), 2, 0);
this->m_close->SetSize(this->m_close->BitmapWidth(), this->m_close->BitmapHeight());
this->m_close->Move(234, 96);
this->m_close->SetId(1);
this->AddChild(this->m_close);
return true;
}
// OFFSET: 0x00BA5E50
// FUNCTION: fn_19699
void UIEntryQueueStandByWnd::OnDestroy() {
}
// OFFSET: 0x00BA5E60
// FUNCTION: fn_19700
void UIEntryQueueStandByWnd::Paint() {
this->DrawTitleBar(true, LookupMessage(MSI_BATTLEFIELD_MYRANK_D), 0);
this->DrawPanelBackground(17, 0, "");
}
// OFFSET: 0x00BA5E90
// FUNCTION: fn_19701
void UIEntryQueueStandByWnd::OnProcess() {
}
// OFFSET: 0x00BA5EA0
// FUNCTION: fn_19702
int UIEntryQueueStandByWnd::SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) {
if (message == UM_COMMAND) {
this->RecordResponse(static_cast<int>(a), b, c, d);
switch (a) {
case 0:
g_entryQueueMgr->SendCancel();
break;
case 1:
g_windowMgr.CloseWindow(WID_ENTRYQUEUESTANDBYWND);
return 0;
}
}
return 0;
}
// OFFSET: 0x00BA5EF0
// FUNCTION: fn_19703
void UIEntryQueueStandByWnd::SetInfo(const char* queueName, int waiting, int ranking) {
this->m_queueName = queueName;
this->m_waiting = waiting;
this->m_ranking = ranking;
sprintf_s(this->m_queueText, sizeof(this->m_queueText), LookupMessage(MSI_BATTLEFIELD_DP_TITLE), queueName);
sprintf_s(this->m_waitingText, sizeof(this->m_waitingText), LookupMessage(MSI_BATTLEFIELD_DP_AIM), waiting);
sprintf_s(this->m_rankingText, sizeof(this->m_rankingText), LookupMessage(MSI_BATTLEFIELD_DP_MEMBER), ranking);
if (this->m_viewer) {
this->m_viewer->Clear();
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(this->m_queueText), 38, 0, 0);
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(this->m_waitingText), 38, 0, 0);
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(this->m_rankingText), 38, 0, 0);
}
}
// OFFSET: 0x00BA6000
// FUNCTION: fn_19704
UIEntryQueueWnd::UIEntryQueueWnd() : UIFrameWnd(0) {
this->m_list = nullptr;
this->saved = nullptr;
this->m_helpButton = nullptr;
std::memset(this->m_applyButtons, 0, sizeof(this->m_applyButtons));
std::memset(this->m_labels, 0, sizeof(this->m_labels));
std::memset(this->m_values, 0, sizeof(this->m_values));
}
// INLINED
UIEntryQueueWnd::~UIEntryQueueWnd() {
}
// OFFSET: 0x00BA6410
// FUNCTION: fn_19706
int UIEntryQueueWnd::SelectedIndex() {
return this->m_list->selected;
}
// OFFSET: 0x00BA6420
// FUNCTION: fn_19707
void UIEntryQueueWnd::OnCreate(int width, int height) {
this->Resize(350, 350);
this->AddBaseButton();
this->AddCloseButton("", 0);
this->m_list = new UIEntryQueueListBox();
this->m_list->SetSize(130, 270);
this->m_list->Move(10, 40);
this->m_list->backgroundRed = 240;
this->m_list->backgroundGreen = 240;
this->m_list->backgroundBlue = 240;
this->AddChild(this->m_list);
const std::map<int, EntryQueueInfo*>::iterator end = g_entryQueueList.end();
for (std::map<int, EntryQueueInfo*>::iterator it = g_entryQueueList.begin(); it != end; ++it) {
this->m_list->AddEntry(it->second->displayName, it->second->id);
}
std::map<int, EntryQueueInfo*>::iterator first = g_entryQueueList.begin();
g_entryQueueMgr->current = first->second;
const char* labels[7] = {
LookupMessage(MSI_BATTLEFIELD_DP_REQUIRED), LookupMessage(MSI_BATTLEFIELD_DP_WIN), LookupMessage(MSI_BATTLEFIELD_DP_DRAW), LookupMessage(MSI_BATTLEFIELD_DP_LOSS),
LookupMessage(MSI_BATTLEFIELD_DOYOU_SINGLE), LookupMessage(MSI_BATTLEFIELD_DOYOU_PALTY), LookupMessage(MSI_BATTLEFIELD_DOYOU_GUILD),
};
int index = 0;
for (int y = 165; y < 305; ++index, y += 20) {
this->m_labels[index] = new UIStaticText();
if (this->m_labels[index]) {
const char* label = labels[index];
const int labelWidth = this->TextWidth(label, 0, 0, 12, 0, 0);
this->m_labels[index]->SetSize(labelWidth, 25);
this->m_labels[index]->SetText(label, 0);
this->m_labels[index]->Move(157, y);
this->AddChild(this->m_labels[index]);
}
}
for (int value = 0; value < 7; ++value) {
this->m_values[value] = new UIStaticText();
if (this->m_labels[value]) {
this->m_values[value]->SetSize(157, 25);
this->AddChild(this->m_values[value]);
}
}
this->SelectQueue(first->second);
const std::string path = "유저인터페이스\\battle_field\\";
const char* names[3][3] = {
{"apply_individual", "apply_individual_a", "apply_individual_b"},
{"apply_party", "apply_party_a", "apply_party_b"},
{"apply_guild", "apply_guild_a", "apply_guild_b"},
};
int id = 0;
for (int x = 8; x < 287; x += 93) {
this->m_applyButtons[id] = new UIBitmapButton();
this->m_applyButtons[id]->SetBitmap((path + names[id][0] + ".bmp").c_str(), 0, 0);
this->m_applyButtons[id]->SetBitmap((path + names[id][1] + ".bmp").c_str(), 1, 0);
this->m_applyButtons[id]->SetBitmap((path + names[id][2] + ".bmp").c_str(), 2, 0);
this->m_applyButtons[id]->SetSize(this->m_applyButtons[id]->BitmapWidth(), this->m_applyButtons[id]->BitmapHeight());
this->m_applyButtons[id]->Move(x, height - 24);
this->m_applyButtons[id]->SetId(id);
this->AddChild(this->m_applyButtons[id]);
++id;
}
this->m_helpButton = new UIBitmapButton();
this->m_helpButton->SetBitmap((path + "btn_help" + ".bmp").c_str(), 0, 0);
this->m_helpButton->SetBitmap((path + "btn_help" + "_a.bmp").c_str(), 1, 0);
this->m_helpButton->SetBitmap((path + "btn_help" + "_b.bmp").c_str(), 2, 0);
this->m_helpButton->SetSize(this->m_helpButton->BitmapWidth(), this->m_helpButton->BitmapHeight());
this->m_helpButton->Move(width - 62, height - 24);
this->m_helpButton->SetId(3);
this->AddChild(this->m_helpButton);
}
// OFFSET: 0x00BA7250
// FUNCTION: fn_19708
void UIEntryQueueWnd::Paint() {
this->DrawTitleBar(true, LookupMessage(MSI_BATTLEFIELD_LIST), 0);
this->DrawPanelBackground(17, 0, "");
this->DrawButtonBar(2, 0, 1);
EntryQueueInfo* info = g_entryQueueMgr->current;
if (info) {
const std::string path = "유저인터페이스\\battle_field\\";
CBitmapRes* bitmap = static_cast<CBitmapRes*>(ResourceMgr::Instance().Load(Resolve((path + info->bitmapName).c_str())));
if (bitmap) {
this->DrawBitmap(157, 25, bitmap, false);
}
}
this->DrawShadowedText(10, 23, LookupMessage(MSI_BATTLEFIELD_LEVELUP_D), static_cast<int>(std::strlen(LookupMessage(MSI_BATTLEFIELD_LEVELUP_D))), 0, 0xC0C0C0, 0, 12, 0);
}
// OFFSET: 0x00BA7440
// FUNCTION: fn_19709
void __stdcall Nullsub429() {
}
// OFFSET: 0x00BA7450
// FUNCTION: fn_19710
int UIEntryQueueWnd::SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) {
EntryQueueInfo* info = g_entryQueueMgr->current;
switch (message) {
case UM_COMMAND: {
int error;
switch (a) {
case 0:
if (g_session.GetMapProperty13() == 1) {
error = 0x86B;
} else if (static_cast<CGameMode*>(g_modeMgr.GetGameMode())->IsActiveSkillEffectId(0x29C)) {
error = 0x86C;
} else {
if (this->ConfirmApply(LookupMessage(MSI_BATTLEFIELD_LIST2))) {
g_entryQueueMgr->SendApply(1, info->name);
}
return 0;
}
break;
case 1:
if (g_session.GetMapProperty13() == 1) {
error = 0x86B;
} else if (static_cast<CGameMode*>(g_modeMgr.GetGameMode())->IsActiveSkillEffectId(0x29C)) {
error = 0x86C;
} else if (g_session.PartyCount() == 0) {
error = 0x86D;
} else if (g_session.partyLeader == 0) {
error = 0x86E;
} else if (static_cast<unsigned>(g_entryQueueMgr->current->minLevel) <
static_cast<unsigned>(g_session.OnlinePartyCount())) {
error = 0x86F;
} else {
if (this->ConfirmApply(LookupMessage(MSI_BATTLEFIELD_D_VS_D))) {
g_entryQueueMgr->SendApply(2, info->name);
}
return 0;
}
break;
case 2: {
GuildInfo* guild = &g_guildInfo;
if (g_session.GetMapProperty13() == 1) {
error = 0x86B;
} else if (static_cast<CGameMode*>(g_modeMgr.GetGameMode())->IsActiveSkillEffectId(0x29C)) {
error = 0x86C;
} else if (guild->m_guildId < 1) {
error = 0x870;
} else if (guild->isMaster == 0) {
error = 0x871;
} else if (static_cast<unsigned>(g_entryQueueMgr->current->minLevel) < static_cast<unsigned>(guild->onlineMemberCount)) {
error = 0x872;
} else {
if (this->ConfirmApply(LookupMessage(MSI_BATTLEFIELD_LEVELDOWN_D))) {
g_entryQueueMgr->SendApply(4, info->name);
}
return 0;
}
break;
}
case 3:
if (!g_windowMgr.CloseWindow(WID_ENTRYQUEUEHELPWND)) {
g_windowMgr.EnsureWindow(WID_ENTRYQUEUEHELPWND);
}
return 0;
case 4:
case ID_CLOSE:
this->RecordResponse(static_cast<int>(a), b, c, d);
g_windowMgr.CloseWindow(WID_JOINTO_BATTLEFIELDWND);
return 0;
default:
return 0;
}
g_windowMgr.Confirm(LookupMessage(error), 0, false, false, 0, "Message", 280, 120, 0);
return 0;
}
case UM_SETINFO:
this->saved = reinterpret_cast<EntryQueueWndInfo*>(a);
if (!this->saved->IsValid()) {
this->saved->Reset();
}
this->SendMsg(nullptr, UM_REFRESHITEM, 0, 0, 0, 0);
this->Move(this->saved->x, this->saved->y);
return 0;
case UM_LIST_SELECTION:
if (this->m_list) {
const int value = this->m_list->EntryValue(static_cast<int>(b));
std::map<int, EntryQueueInfo*>::iterator it = g_entryQueueList.find(value);
if (it != g_entryQueueList.end() && it->second) {
this->SelectQueue(it->second);
}
}
break;
}
return 0;
}
// OFFSET: 0x00BA78A0
// FUNCTION: fn_19711
void UIEntryQueueWnd::SelectQueue(EntryQueueInfo* info) {
g_entryQueueMgr->current = info;
char text[0x104];
std::memset(text, 0, sizeof(text));
for (int index = 0; index < 7; ++index) {
if (!this->m_values[index]) {
continue;
}
switch (index) {
case 0:
strcpy_s(text, sizeof(text), info->displayName);
break;
case 2:
sprintf_s(text, sizeof(text), LookupMessage(MSI_BATTLEFIELD_LEVEL_D_D), info->minLevel, info->maxLevel);
break;
case 3:
if (info->limitType == 1) {
sprintf_s(text, sizeof(text), LookupMessage(MSI_BATTLEFIELD_LIMITLESS), info->limitValue);
} else if (info->limitType == 2) {
sprintf_s(text, sizeof(text), LookupMessage(MSI_BATTLEFIELD_MSG_NOT_JOINMAP), info->limitValue);
} else if (info->limitType == 3) {
sprintf_s(text, sizeof(text), LookupMessage(MSI_BATTLEFIELD_MSG_WAIT_1MM), info->limitValue, info->limitValueEnd);
} else {
sprintf_s(text, sizeof(text), LookupMessage(MSI_BATTLEFIELD_MSG_PLZ_PALTYJOIN));
}
break;
case 4:
strcpy_s(text, sizeof(text), info->description);
break;
case 5:
strcpy_s(text, sizeof(text), info->rulesText);
break;
case 6:
strcpy_s(text, sizeof(text), info->rewardText);
break;
case 1:
strcpy_s(text, sizeof(text), info->extraText);
break;
}
UIWindow* label = this->m_labels[index];
const int x = label->geometry.x + label->geometry.width + 5;
const int y = label->geometry.y;
const int textWidth = this->TextWidth(text, 0, 0, 12, 0, 0);
this->m_values[index]->Resize(textWidth, 25);
this->m_values[index]->SetText(text, 0);
this->m_values[index]->Move(x, y);
this->m_values[index]->Invalidate();
}
this->Invalidate();
}
// OFFSET: 0x00BA7AE0
// FUNCTION: fn_19712
bool UIEntryQueueWnd::ConfirmApply(const char* type) {
EntryQueueInfo* info = g_entryQueueMgr->current;
if (info) {
char text[0x104];
std::memset(text, 0, sizeof(text));
sprintf_s(text, sizeof(text), "%s %s", info->displayName, type);
return g_windowMgr.Confirm(text, 2, false, false, 0, "Message", 280, 120, 0) == 187;
}
return false;
}
// OFFSET: 0x00BA7B90
// FUNCTION: fn_19713
void UIEntryQueueWnd::StoreInfo() {
if (this->saved) {
this->saved->x = this->geometry.x;
this->saved->y = this->geometry.y;
this->saved->width = this->geometry.width;
this->saved->height = this->geometry.height;
}
}
// OFFSET: 0x00BA3A50
// FUNCTION: fn_19679
void UIEntryQueueHelpWnd::OnCreate(int width, int height) {
this->Resize(280, 280);
this->m_viewer = new UITextViewer();
this->m_viewer->Configure(10, 22, 270, 225, 0);
unsigned red, green, blue;
SkinPaletteChannels(ResourceMgr::Instance(), 2, 2, red, green, blue);
this->m_viewer->backgroundColor = 0xFF000000u | (blue << 16) | (green << 8) | red;
this->m_viewer->Invalidate();
this->AddChild(this->m_viewer);
char message[0x104];
std::memset(message, 0, sizeof(message));
strcpy_s(message, sizeof(message), LookupMessage(MSI_BATTLEFIELD_HELP4));
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(message), 38, 0, 0);
strcpy_s(message, sizeof(message), LookupMessage(MSI_BATTLEFIELD_HELP5));
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(message), 38, 0, 0);
strcpy_s(message, sizeof(message), LookupMessage(MSI_BATTLEFIELD_HELP6));
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(message), 38, 0, 0);
strcpy_s(message, sizeof(message), LookupMessage(MSI_BATTLEFIELD_HELP7));
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(message), 38, 0, 0);
strcpy_s(message, sizeof(message), LookupMessage(MSI_BATTLEFIELD_HELP8));
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(message), 38, 0, 0);
strcpy_s(message, sizeof(message), LookupMessage(MSI_BATTLEFIELD_HELP9));
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(message), 38, 0, 0);
strcpy_s(message, sizeof(message), LookupMessage(MSI_BATTLEFIELD_HELP10));
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(message), 38, 0, 0);
strcpy_s(message, sizeof(message), LookupMessage(MSI_BATTLEFIELD_START));
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(message), 38, 0, 0);
strcpy_s(message, sizeof(message), LookupMessage(MSI_BATTLEFIELD_DOYOU_MOVE));
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(message), 38, 0, 0);
const std::string path = "유저인터페이스\\";
this->m_close = new UIBitmapButton();
this->m_close->SetBitmap((path + "btn_close" + ".bmp").c_str(), 0, 0);
this->m_close->SetBitmap((path + "btn_close_a" + ".bmp").c_str(), 1, 0);
this->m_close->SetBitmap((path + "btn_close_b" + ".bmp").c_str(), 2, 0);
this->m_close->SetSize(this->m_close->BitmapWidth(), this->m_close->BitmapHeight());
this->m_close->Move(234, 256);
this->m_close->SetId(0);
this->AddChild(this->m_close);
}