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
429 lines
17 KiB
C++
429 lines
17 KiB
C++
#include "UI/Window/UIAccountLimitedToolWnd.h"
|
|
#include "UI/Window/UIEnums.h"
|
|
|
|
#include "Client/Mode/CMode.h"
|
|
#include "Client/Mode/ModeMessage.h"
|
|
#include "Client/Mode/ModeMgr.h"
|
|
#include "Contents/Tables/MessageTable.h"
|
|
#include "Network/Connection/Connection.h"
|
|
#include "Network/Packets/PacketLengths.h"
|
|
#include "UI/Buttons/UIBitmapButton.h"
|
|
#include "UI/Buttons/UIButton.h"
|
|
#include "UI/Edit/UIEditCtrl.h"
|
|
#include "UI/Text/UIStaticText.h"
|
|
#include "UI/Text/UITextViewer.h"
|
|
#include "Utility/Text/FormatString.h"
|
|
|
|
#include "Resource/MSGSTRINGID.h"
|
|
#include "Network/Packets/PacketId.h"
|
|
#include <cstdint>
|
|
#include <cstdlib>
|
|
#include <cstring>
|
|
#include <ctime>
|
|
#include <string>
|
|
|
|
#pragma pack(push, 1)
|
|
struct AccountLimitedSearchPacket {
|
|
/* 0000 */ std::int16_t id;
|
|
/* 0002 */ char name[50];
|
|
};
|
|
|
|
struct AccountLimitedDeletePacket {
|
|
/* 0000 */ std::int16_t id;
|
|
/* 0002 */ int accountId;
|
|
};
|
|
|
|
struct AccountLimitedAddPacket {
|
|
/* 0000 */ std::int16_t id;
|
|
/* 0002 */ int accountId;
|
|
/* 0006 */ int itemId;
|
|
/* 000A */ __time32_t start;
|
|
/* 000E */ __time32_t end;
|
|
/* 0012 */ __time32_t period;
|
|
};
|
|
#pragma pack(pop)
|
|
|
|
static_assert(sizeof(AccountLimitedSearchPacket) == 52);
|
|
static_assert(sizeof(AccountLimitedDeletePacket) == 6);
|
|
static_assert(sizeof(AccountLimitedAddPacket) == 22);
|
|
|
|
struct AccountLimitedRange {
|
|
/* 0000 */ int minimum;
|
|
/* 0004 */ int maximum;
|
|
};
|
|
|
|
// OFFSET: 0x0094A450
|
|
// FUNCTION: fn_12890
|
|
void UIAccountLimitedToolWnd::OnCreate(int, int) {
|
|
this->AddCloseButton("", 0);
|
|
|
|
const int editPositions[15][2] = {
|
|
{90, 25}, {90, 77}, {90, 99}, {125, 99}, {160, 99}, {268, 99}, {305, 99}, {90, 121},
|
|
{125, 121}, {160, 121}, {268, 121}, {305, 121}, {90, 151}, {240, 151}, {285, 151},
|
|
};
|
|
for (int i = 0; i < 15; ++i) {
|
|
this->m_edits[i] = new UIEditCtrl();
|
|
this->m_edits[i]->flat = 1;
|
|
UIEditCtrl* edit = this->m_edits[i];
|
|
edit->disabled = 1;
|
|
edit->Invalidate();
|
|
|
|
switch (i) {
|
|
case 0: {
|
|
this->m_edits[i]->SetSize(200, 17);
|
|
this->m_edits[i]->flat = 0;
|
|
UIEditCtrl* nameEdit = this->m_edits[i];
|
|
nameEdit->disabled = 0;
|
|
nameEdit->Invalidate();
|
|
break;
|
|
}
|
|
case 1:
|
|
this->m_edits[i]->SetSize(60, 17);
|
|
break;
|
|
case 2:
|
|
case 3:
|
|
case 4:
|
|
case 5:
|
|
case 6:
|
|
case 7:
|
|
case 8:
|
|
case 9:
|
|
case 10:
|
|
case 11:
|
|
this->m_edits[i]->SetSize(25, 17);
|
|
break;
|
|
case 12:
|
|
this->m_edits[i]->SetSize(80, 17);
|
|
break;
|
|
case 13:
|
|
case 14:
|
|
this->m_edits[i]->SetSize(35, 17);
|
|
break;
|
|
}
|
|
|
|
this->m_edits[i]->maximum = 24;
|
|
this->m_edits[i]->Move(editPositions[i][0], editPositions[i][1]);
|
|
this->m_edits[i]->Background(242, 242, 242);
|
|
this->AddChild(this->m_edits[i]);
|
|
}
|
|
|
|
this->m_accountIdText = new UIStaticText();
|
|
this->m_accountIdText->SetSize(200, 17);
|
|
this->m_accountIdText->Move(90, 47);
|
|
UIStaticText* accountIdText = this->m_accountIdText;
|
|
accountIdText->background = 0xFF969696;
|
|
accountIdText->Invalidate();
|
|
this->AddChild(this->m_accountIdText);
|
|
|
|
const int buttonPositions[3][2] = {{this->geometry.width - 70, 22}, {15, 184}, {260, 184}};
|
|
this->m_message0 = 561;
|
|
{
|
|
const char* buttonNames[3][4] = {
|
|
{"btn_search", "btn_search_a", "btn_search_b", "btn_search_c"},
|
|
{"btn_AddItem", "btn_AddItem_a", "btn_AddItem_b", "btn_AddItem_c"},
|
|
{"btn_deleteItem", "btn_deleteItem_a", "btn_deleteItem_b", "btn_deleteItem_c"},
|
|
};
|
|
const int buttonIds[3] = {321, 561, 211};
|
|
const std::string prefix = "유저인터페이스\\";
|
|
for (int i = 0; i < 3; ++i) {
|
|
this->m_buttons[i] = new UIBitmapButton();
|
|
this->m_buttons[i]->SetBitmap((prefix + buttonNames[i][0] + ".bmp").c_str(), 0, 0);
|
|
this->m_buttons[i]->SetBitmap((prefix + buttonNames[i][1] + ".bmp").c_str(), 1, 0);
|
|
this->m_buttons[i]->SetBitmap((prefix + buttonNames[i][2] + ".bmp").c_str(), 2, 0);
|
|
this->m_buttons[i]->SetBitmap((prefix + buttonNames[i][3] + ".bmp").c_str(), 3, 0);
|
|
this->m_buttons[i]->SetSize(this->m_buttons[i]->BitmapWidth(), this->m_buttons[i]->BitmapHeight());
|
|
this->m_buttons[i]->Move(buttonPositions[i][0], buttonPositions[i][1]);
|
|
this->m_buttons[i]->SetId(buttonIds[i]);
|
|
this->m_buttons[i]->Enable(1);
|
|
this->AddChild(this->m_buttons[i]);
|
|
UIBitmapButton* button = this->m_buttons[i];
|
|
button->SetDisabled(i == 0 ? 0 : 1);
|
|
button->Invalidate();
|
|
}
|
|
}
|
|
|
|
this->m_viewer = new UITextViewer();
|
|
const int buttonHeight = this->m_buttons[1]->geometry.height;
|
|
this->m_viewer->Configure(10, buttonHeight + 189, this->geometry.width - 20, this->geometry.height - buttonHeight - 199, 0);
|
|
UITextViewer* viewer = this->m_viewer;
|
|
viewer->backgroundColor = 0xFF969696;
|
|
viewer->Invalidate();
|
|
this->AddChild(this->m_viewer);
|
|
}
|
|
|
|
// OFFSET: 0x0094CF50
|
|
// FUNCTION: fn_12901
|
|
void UIAccountLimitedToolWnd::Paint() {
|
|
this->DrawTitleBar(false, LookupMessage(MSI_ACCOUNT_LIMITED_TOOL_SELL_COUNT), 0);
|
|
this->DrawPanelBackground(17, 0, "");
|
|
this->DrawTextAt(5, 28, LookupMessage(MSI_ACCOUNT_LIMITED_TOOL_SELL_STARTTIME), 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(5, 50, LookupMessage(MSI_ACCOUNT_LIMITED_TOOL_SELL_ENDTIME), 0, 0, 12, 0, 0, 0);
|
|
this->FillRegion(3, 70, this->geometry.width - 6, 2, 0x99938A);
|
|
this->DrawTextAt(5, 80, LookupMessage(MSI_ACCOUNT_LIMITED_SALE_ITEM), 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(5, 102, LookupMessage(MSI_ACCOUNT_LIMITED_SALE_ITEM_START_DATE), 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(117, 102, "/", 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(152, 102, "/", 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(187, 102, "(YY/MM/DD)", 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(296, 102, ":", 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(335, 102, "(HH:MM)", 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(5, 124, LookupMessage(MSI_ACCOUNT_LIMITED_SALE_ITEM_NUM), 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(117, 124, "/", 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(152, 124, "/", 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(187, 124, "(YY/MM/DD)", 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(296, 124, ":", 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(335, 124, "(HH:MM)", 0, 0, 12, 0, 0, 0);
|
|
this->FillRegion(3, 144, this->geometry.width - 6, 2, 0x99938A);
|
|
this->DrawTextAt(5, 154, LookupMessage(MSI_ZEROQUEST_QUESTVIEWWND_ON), 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(172, 154, "(DD)", 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(278, 154, ":", 0, 0, 12, 0, 0, 0);
|
|
this->DrawTextAt(322, 154, "(HH:MM)", 0, 0, 12, 0, 0, 0);
|
|
this->FillRegion(3, 174, this->geometry.width - 6, 2, 0x99938A);
|
|
}
|
|
|
|
// OFFSET: 0x0094F410
|
|
// FUNCTION: fn_12938
|
|
int UIAccountLimitedToolWnd::SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) {
|
|
switch (message) {
|
|
case UM_PARAM:
|
|
switch (argument1) {
|
|
case 2:
|
|
if (argument2 == 1) {
|
|
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BARGAINSALE_CASHSHOP_REFRESH_BTN_TOOLTIP)), 60, 0, 0);
|
|
UITextViewer* viewer = this->m_viewer;
|
|
if (viewer->verticalOverflow != 0) {
|
|
const int lineCount = viewer->LineCount();
|
|
viewer->SendMsg(nullptr, UM_SCROLLVERT, lineCount, 0, 0, 0);
|
|
}
|
|
} else {
|
|
this->m_viewer->SendMsg(
|
|
nullptr, 29, reinterpret_cast<std::intptr_t>(FormatOwnedString(LookupMessage(MSI_BARGAINSALE_CASHSHOP_TIMER), this->m_edits[0]->Text()).c_str()), 60, 0, 0
|
|
);
|
|
UITextViewer* viewer = this->m_viewer;
|
|
if (viewer->verticalOverflow != 0) {
|
|
const int lineCount = viewer->LineCount();
|
|
viewer->SendMsg(nullptr, UM_SCROLLVERT, lineCount, 0, 0, 0);
|
|
}
|
|
this->m_edits[0]->SetText("");
|
|
this->m_accountIdText->SetText("", 0);
|
|
for (int i = 1; i < 15; ++i) {
|
|
this->m_edits[i]->SetText("");
|
|
this->m_edits[i]->flat = 1;
|
|
UIEditCtrl* edit = this->m_edits[i];
|
|
edit->disabled = 1;
|
|
edit->Invalidate();
|
|
}
|
|
UIBitmapButton* addButton = this->m_buttons[1];
|
|
addButton->SetDisabled(1);
|
|
addButton->Invalidate();
|
|
UIBitmapButton* deleteButton = this->m_buttons[2];
|
|
deleteButton->SetDisabled(1);
|
|
deleteButton->Invalidate();
|
|
this->InvalidateChildren();
|
|
}
|
|
break;
|
|
case 1:
|
|
switch (argument2) {
|
|
case 3: {
|
|
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BARGAINSALE_TOOLWND_DELETE_SUCCESS_MSG)), 60, 0, 0);
|
|
UITextViewer* viewer = this->m_viewer;
|
|
if (viewer->verticalOverflow != 0) {
|
|
const int lineCount = viewer->LineCount();
|
|
viewer->SendMsg(nullptr, UM_SCROLLVERT, lineCount, 0, 0, 0);
|
|
}
|
|
UIBitmapButton* addButton = this->m_buttons[1];
|
|
addButton->SetDisabled(1);
|
|
addButton->Invalidate();
|
|
UIBitmapButton* deleteButton = this->m_buttons[2];
|
|
deleteButton->SetDisabled(1);
|
|
deleteButton->Invalidate();
|
|
break;
|
|
}
|
|
case 1: {
|
|
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BARGAINSALE_TOOLWND_DELETE_SUCCESS_MSG)), 60, 0, 0);
|
|
UITextViewer* viewer = this->m_viewer;
|
|
if (viewer->verticalOverflow != 0) {
|
|
const int lineCount = viewer->LineCount();
|
|
viewer->SendMsg(nullptr, UM_SCROLLVERT, lineCount, 0, 0, 0);
|
|
}
|
|
UIBitmapButton* addButton = this->m_buttons[1];
|
|
addButton->SetDisabled(1);
|
|
addButton->Invalidate();
|
|
UIBitmapButton* deleteButton = this->m_buttons[2];
|
|
deleteButton->SetDisabled(1);
|
|
deleteButton->Invalidate();
|
|
break;
|
|
}
|
|
case 0: {
|
|
const std::string text = FormatOwnedString(
|
|
LookupMessage(MSI_RETRY_AFTER_PROCESS), this->m_edits[0]->Text(), std::atoi(this->m_edits[1]->Text()), std::atoi(this->m_edits[3]->Text()),
|
|
std::atoi(this->m_edits[4]->Text()), std::atoi(this->m_edits[5]->Text()), std::atoi(this->m_edits[6]->Text()), std::atoi(this->m_edits[7]->Text()),
|
|
std::atoi(this->m_edits[8]->Text()), std::atoi(this->m_edits[9]->Text()), std::atoi(this->m_edits[10]->Text()), std::atoi(this->m_edits[11]->Text())
|
|
);
|
|
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(text.c_str()), 60, 0, 0);
|
|
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BARGAINSALE_TOOLWND_DELETE_FAILED_MSG)), 60, 0, 0);
|
|
UITextViewer* viewer = this->m_viewer;
|
|
if (viewer->verticalOverflow != 0) {
|
|
const int lineCount = viewer->LineCount();
|
|
viewer->SendMsg(nullptr, UM_SCROLLVERT, lineCount, 0, 0, 0);
|
|
}
|
|
UIBitmapButton* deleteButton = this->m_buttons[2];
|
|
deleteButton->SetDisabled(0);
|
|
deleteButton->Invalidate();
|
|
for (int i = 1; i < 15; ++i) {
|
|
this->m_edits[i]->flat = 1;
|
|
UIEditCtrl* edit = this->m_edits[i];
|
|
edit->disabled = 1;
|
|
edit->Invalidate();
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case 0: {
|
|
this->m_accountIdText->SetNumber(argument2);
|
|
UIBitmapButton* addButton = this->m_buttons[1];
|
|
addButton->SetDisabled(0);
|
|
addButton->Invalidate();
|
|
UIBitmapButton* deleteButton = this->m_buttons[2];
|
|
deleteButton->SetDisabled(0);
|
|
deleteButton->Invalidate();
|
|
for (int i = 1; i < 15; ++i) {
|
|
this->m_edits[i]->flat = 0;
|
|
UIEditCtrl* edit = this->m_edits[i];
|
|
edit->disabled = 0;
|
|
edit->Invalidate();
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case UM_COMMAND:
|
|
switch (argument1) {
|
|
case ID_DELETE: {
|
|
AccountLimitedDeletePacket packet;
|
|
packet.id = ID_CZ_DEL_ACCOUNT_LIMTIED_SALE_ITEM;
|
|
packet.accountId = std::atoi(this->m_accountIdText->GetText().c_str());
|
|
GetRagConnection().Send(g_packetLengths.FixedLength(packet.id), &packet);
|
|
break;
|
|
}
|
|
case ID_CLOSE:
|
|
g_modeMgr.GetGameMode()->SendMsg(MM_CLOSE_ACCOUNT_LIMITED_TOOL, 0, 0, 0, 0);
|
|
break;
|
|
case ID_SEARCH: {
|
|
const std::string name = this->m_edits[0]->Text();
|
|
if (name.empty()) {
|
|
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BARGAINSALE_TOOLWND_APPLY_SUCCESS_MSG)), 60, 0, 0);
|
|
UITextViewer* viewer = this->m_viewer;
|
|
if (viewer->verticalOverflow != 0) {
|
|
const int lineCount = viewer->LineCount();
|
|
viewer->SendMsg(nullptr, UM_SCROLLVERT, lineCount, 0, 0, 0);
|
|
}
|
|
this->m_edits[0]->SelectAll();
|
|
} else if (name.size() < 50) {
|
|
AccountLimitedSearchPacket packet;
|
|
packet.id = ID_CZ_SEARCH_ACCOUNT_LIMTIED_SALE_ITEM;
|
|
std::memset(packet.name, 0, sizeof(packet.name));
|
|
strncpy_s(packet.name, sizeof(packet.name), name.c_str(), name.size());
|
|
GetRagConnection().Send(g_packetLengths.FixedLength(packet.id), &packet);
|
|
}
|
|
break;
|
|
}
|
|
case 561: {
|
|
if (std::atoi(this->m_edits[1]->Text()) < 1) {
|
|
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BARGAINSALE_TOOLWND_INPUT_PERIODTIME_MSG)), 60, 0, 0);
|
|
UITextViewer* viewer = this->m_viewer;
|
|
if (viewer->verticalOverflow != 0) {
|
|
const int lineCount = viewer->LineCount();
|
|
viewer->SendMsg(nullptr, UM_SCROLLVERT, lineCount, 0, 0, 0);
|
|
}
|
|
this->m_edits[1]->SelectAll();
|
|
return 0;
|
|
}
|
|
|
|
const AccountLimitedRange ranges[5] = {{23, 999}, {1, 12}, {1, 31}, {0, 23}, {0, 59}};
|
|
for (int i = 2; i < 12; ++i) {
|
|
if (this->m_edits[i]->Length() == 0) {
|
|
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BARGAINSALE_TOOLWND_INPUT_ITEMDBNAME_MSG)), 60, 0, 0);
|
|
UITextViewer* viewer = this->m_viewer;
|
|
if (viewer->verticalOverflow != 0) {
|
|
const int lineCount = viewer->LineCount();
|
|
viewer->SendMsg(nullptr, UM_SCROLLVERT, lineCount, 0, 0, 0);
|
|
this->m_edits[i]->SelectAll();
|
|
return 0;
|
|
}
|
|
|
|
const AccountLimitedRange& range = ranges[i % 5 - 2];
|
|
if (std::atoi(this->m_edits[i]->Text()) < range.minimum || std::atoi(this->m_edits[i]->Text()) > range.maximum) {
|
|
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_BARGAINSALE_TOOLWND_ITEMID_CHECK_FAILED_MSG)), 60, 0, 0);
|
|
UITextViewer* rangeViewer = this->m_viewer;
|
|
if (rangeViewer->verticalOverflow != 0) {
|
|
const int lineCount = rangeViewer->LineCount();
|
|
rangeViewer->SendMsg(nullptr, UM_SCROLLVERT, lineCount, 0, 0, 0);
|
|
}
|
|
this->m_edits[i]->SelectAll();
|
|
return 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
if (std::atoi(this->m_edits[12]->Text()) > 14) {
|
|
this->m_viewer->SendMsg(nullptr, UM_SETTEXT, reinterpret_cast<std::intptr_t>(LookupMessage(MSI_ZEROQUEST_QUESTVIEWWND_OFF)), 60, 0, 0);
|
|
this->m_edits[12]->SelectAll();
|
|
return 0;
|
|
}
|
|
|
|
__time32_t startTime = _time32(nullptr);
|
|
tm* startDate = _localtime32(&startTime);
|
|
const int startYear = std::atoi(this->m_edits[2]->Text());
|
|
startDate->tm_year = startYear > 2000 ? startYear - 1900 : startYear + 100;
|
|
startDate->tm_mon = std::atoi(this->m_edits[3]->Text()) - 1;
|
|
startDate->tm_mday = std::atoi(this->m_edits[4]->Text());
|
|
startDate->tm_hour = std::atoi(this->m_edits[5]->Text());
|
|
startDate->tm_min = std::atoi(this->m_edits[6]->Text());
|
|
startDate->tm_sec = 0;
|
|
startTime = _mktime32(startDate);
|
|
|
|
__time32_t endTime = _time32(nullptr);
|
|
tm* endDate = _localtime32(&endTime);
|
|
const int endYear = std::atoi(this->m_edits[7]->Text());
|
|
startDate->tm_year = endYear > 2000 ? endYear - 1900 : endYear + 100;
|
|
endDate->tm_mon = std::atoi(this->m_edits[8]->Text()) - 1;
|
|
endDate->tm_mday = std::atoi(this->m_edits[9]->Text());
|
|
endDate->tm_hour = std::atoi(this->m_edits[10]->Text());
|
|
endDate->tm_min = std::atoi(this->m_edits[11]->Text());
|
|
endDate->tm_sec = 0;
|
|
endTime = _mktime32(endDate);
|
|
|
|
__time32_t period = _time32(nullptr);
|
|
tm* periodDate = _localtime32(&period);
|
|
const time_t days = std::atoi(this->m_edits[12]->Text());
|
|
periodDate->tm_mday = days != 0 ? static_cast<int>(days) : 15;
|
|
periodDate->tm_hour = std::atoi(this->m_edits[13]->Text());
|
|
periodDate->tm_min = std::atoi(this->m_edits[14]->Text());
|
|
periodDate->tm_sec = 0;
|
|
period = _mktime32(periodDate);
|
|
|
|
AccountLimitedAddPacket packet;
|
|
packet.id = ID_CZ_ADD_ACCOUNT_LIMTIED_SALE_ITEM2;
|
|
packet.accountId = std::atoi(this->m_accountIdText->GetText().c_str());
|
|
packet.itemId = std::atoi(this->m_edits[1]->Text());
|
|
packet.start = startTime;
|
|
packet.end = endTime;
|
|
packet.period = period;
|
|
GetRagConnection().Send(g_packetLengths.FixedLength(packet.id), &packet);
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
}
|
|
|
|
return 0;
|
|
}
|
|
|
|
// OFFSET: 0x00946800
|
|
// FUNCTION: fn_12846
|
|
UIAccountLimitedToolWnd::UIAccountLimitedToolWnd()
|
|
: UIFrameWnd(0), m_accountIdText(nullptr), m_viewer(nullptr) {
|
|
SecureZeroMemory(this->m_edits, sizeof(this->m_edits));
|
|
SecureZeroMemory(this->m_buttons, sizeof(this->m_buttons));
|
|
}
|