rodecomp/Source/Contents/EffectResourceSwitcher.h
ragnarok-clanker 16cf1dce90 Decompile 29 functions in Source/Contents/Skills/SkillInfo.cpp, Source/Contents/EffectResourceSwitcher.cpp, ...
Batch #2141 by ragnarok-clanker: 0 byte-identical, 29 confirmed by peer review.

- fn_08336 CSkillAction_RA_UNLIMIT::Slot11: logic confirmed by peer review
- fn_08340 CSkillAction_AG_ENERGY_CONVERSION::Slot08: logic confirmed by peer review
- fn_08342 CSkillAction_CD_DIVINUS_FLOS::Slot08: logic confirmed by peer review
- fn_08343 CSkillAction_CD_DIVINUS_FLOS::Slot11: logic confirmed by peer review
- fn_08345 CSkillAction_SHC_ENCHANTING_SHADOW::Slot08: logic confirmed by peer review
- fn_08349 CSkillAction_SHC_IMPACT_CRATER::Slot11: logic confirmed by peer review
- fn_08350 CSkillAction_SHC_IMPACT_CRATER::Slot16: logic confirmed by peer review
- fn_08352 CSkillAction_SHC_CROSS_SLASH::Slot11: logic confirmed by peer review
- fn_08353 CSkillAction_SHC_CROSS_SLASH::Slot16: logic confirmed by peer review
- fn_08355 CSkillAction_SHC_DANCING_KNIFE::Slot08: logic confirmed by peer review
- fn_08356 CSkillAction_SHC_DANCING_KNIFE::Slot16: logic confirmed by peer review
- fn_08363 CSkillAction_SHC_SHADOW_EXCEED::Slot08: logic confirmed by peer review
- fn_08373 CSkillAction_ABC_CHASING_BREAK::Slot16: logic confirmed by peer review
- fn_08376 CSkillAction_ABC_CHASING_SHOT::Slot08: logic confirmed by peer review
- fn_08378 CSkillAction_ABC_CHASING_SHOT::Slot15: logic confirmed by peer review
- fn_08379 CSkillAction_ABC_CHASING_SHOT::Slot16: logic confirmed by peer review
- fn_08381 CSkillAction_ABC_HIT_AND_SLIDING::Slot16: logic confirmed by peer review
- fn_08382 CSkillAction_ABC_ABYSS_FLAME::Slot08: logic confirmed by peer review
- fn_08383 CSkillAction_ABC_ABYSS_FLAME::Slot11: logic confirmed by peer review
- fn_08384 CSkillAction_ABC_ABYSS_FLAME::Slot16: logic confirmed by peer review
- fn_08386 CSkillAction_ABC_ABYSS_FLAME_ATK::Slot11: logic confirmed by peer review
- fn_08387 CSkillAction_ABC_ABYSS_FLAME_ATK::Slot16: logic confirmed by peer review
- fn_08388 CSkillAction_EM_PSYCHIC_STREAM::Slot08: logic confirmed by peer review
- fn_08389 CSkillAction_EM_PSYCHIC_STREAM::Slot11: logic confirmed by peer review
- fn_08390 CSkillAction_EM_PSYCHIC_STREAM::Slot16: logic confirmed by peer review
- fn_08392 CSkillAction_IQ_BLAZING_FLAME_BLAST::Slot08: logic confirmed by peer review
- fn_08394 CSkillAction_IQ_BLAZING_FLAME_BLAST::Slot16: logic confirmed by peer review
- fn_08344 CSkillAction_CD_DIVINUS_FLOS::Slot16: logic confirmed by peer review
- fn_06989 CEZ2STREffectMgr::EffectId: logic confirmed by peer review

Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-10-29 14:22:12 +00:00

46 lines
1.2 KiB
C++

#ifndef RAGNAROK_SOURCE_CONTENTS_EFFECTRESOURCESWITCHER_H
#define RAGNAROK_SOURCE_CONTENTS_EFFECTRESOURCESWITCHER_H
#include "Contents/Effects/Effect.h"
#include "Utility/Singleton.h"
#include <cstddef>
#include <map>
#include <string>
struct EZ2STREffectInfo {
/* 0000 */ int id;
/* 0004 */ std::string name;
/* 001C */ int unknown_001C[3];
/* 0028 */ std::string unknown_0028;
/* 0040 */ int unknown_0040[2];
};
class CEZ2STREffectMgr : public Singleton<CEZ2STREffectMgr> {
public:
/* 0004 */ std::map<std::string, EZ2STREffectInfo> effects;
int EffectId(const std::string& name);
};
class EffectResourceSwitcher : public CEffect {
public:
/* 00CC */ unsigned char active;
/* 00CD */ unsigned char unknown_00CD[3];
/* 00D0 */ CEffect* effect;
/* 00D4 */ int unknown_00D4[3];
/* 00E0 */ std::string sourceName;
/* 00F8 */ std::string targetName;
void Slot16(int argument) override;
};
#if defined(_WIN32) && !defined(_WIN64)
static_assert(sizeof(EZ2STREffectInfo) == 0x48);
static_assert(sizeof(CEZ2STREffectMgr) == 0xC);
static_assert(offsetof(EffectResourceSwitcher, effect) == 0xD0);
static_assert(offsetof(EffectResourceSwitcher, targetName) == 0xF8);
static_assert(sizeof(EffectResourceSwitcher) == 0x110);
#endif
#endif