Decompile 9 functions in Source/Contents/Skills/SkillActionAlitea.cpp
Batch #17814 by eAthena: 0 byte-identical, 9 confirmed by peer review. - fn_03158 CSkillAction_ThunderingBasic::PlayThunderEffect: logic confirmed by peer review - fn_03180 CSkillAction_Thundering::OnSkillCast: logic confirmed by peer review - fn_03185 CEfstAction_AnimalForm::ResetAnimalForm: logic confirmed by peer review - fn_03210 CSkillAction_AT_NATURE_HARMONY::OnSkillEffect: logic confirmed by peer review - fn_03226 CSkillAction_AT_GLACIER_SHARD::OnGroundSkillCast: logic confirmed by peer review - fn_03243 CSkillAction_AT_ALPHA_PHASE::OnSkillEffect: logic confirmed by peer review - fn_03247 CSkillAction_AT_APEX_PHASE::OnSkillEffect: logic confirmed by peer review - fn_03251 CSkillAction_AT_FLIP_FLAP::OnSkillEffect: logic confirmed by peer review - fn_03259 CEfstAction_FLIP_FLAP_TARGET::OnEfstBegin: logic confirmed by peer review Peer-reviewed-by: Yommy, alisonrag, cremane Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
This commit is contained in:
parent
94ead8d727
commit
e943a645bc
1 changed files with 18 additions and 27 deletions
|
|
@ -424,12 +424,11 @@ void CSkillAction_Icing::SpawnIcing(CGameActor* target) {
|
|||
// FUNCTION: fn_03158
|
||||
void CSkillAction_ThunderingBasic::PlayThunderEffect(CGameActor* source) {
|
||||
if (source) {
|
||||
EffectLists* effects = g_effectMgr;
|
||||
effects->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
g_effectMgr->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
constexpr std::array<char, 20> bytes = CRYPT_NAME("thundering_attack_g", 0x3FAF85D995034FD7ULL);
|
||||
thread_local EncryptedName<sizeof(bytes), 0x3FAF85D995034FD7ULL> name(bytes);
|
||||
return name.Text();
|
||||
}()), 0.0f, 0.0f, 0.0f, 0, -1, 0, 0);
|
||||
}()), vector3d{0.0f, 0.0f, 0.0f}, 0, -1, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -613,12 +612,11 @@ void CSkillAction_Icing::OnSkillCast(int level, CGameActor* source) {
|
|||
// FUNCTION: fn_03180
|
||||
void CSkillAction_Thundering::OnSkillCast(int level, CGameActor* source) {
|
||||
if (source) {
|
||||
EffectLists* effects = g_effectMgr;
|
||||
if (CEffect* effect = effects->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
if (CEffect* effect = g_effectMgr->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
constexpr std::array<char, 16> bytes = CRYPT_NAME("thundering_cast", 0x93E7A3A1F587CDC5ULL);
|
||||
thread_local EncryptedName<sizeof(bytes), 0x93E7A3A1F587CDC5ULL> name(bytes);
|
||||
return name.Text();
|
||||
}()), 0.0f, 0.0f, 0.0f, 0, -1, 0, 0)) {
|
||||
}()), vector3d{0.0f, 0.0f, 0.0f}, 0, -1, 0, 0)) {
|
||||
effect->SetLifeTime(level);
|
||||
}
|
||||
}
|
||||
|
|
@ -668,13 +666,12 @@ void CEfstAction_AnimalForm::ResetAnimalForm(CRenderObject* actor) {
|
|||
}
|
||||
gameActor->SetShapeShift(0);
|
||||
gameActor->SetSprJob(gameActor->GetShapeShiftJob());
|
||||
EffectLists* effects = g_effectMgr;
|
||||
effects->Spawn(actor->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
g_effectMgr->Spawn(actor->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
constexpr auto bytesText = CRYPT_NAME("return", 0x812BE72BCD5707B7ULL);
|
||||
const auto& bytes = bytesText.data;
|
||||
thread_local EncryptedName<sizeof(bytes), 0x812BE72BCD5707B7ULL> name(bytes);
|
||||
return name.Text();
|
||||
}()), 0.0f, 0.0f, 0.0f, 0, -1, 0, 0);
|
||||
}()), vector3d{0.0f, 0.0f, 0.0f}, 0, -1, 0, 0);
|
||||
gameActor->SetBodyPaletteName();
|
||||
}
|
||||
|
||||
|
|
@ -932,13 +929,12 @@ void CSkillAction_AT_NATURE_HARMONY::OnSkillCast(int level, CGameActor* source)
|
|||
// FUNCTION: fn_03210
|
||||
void CSkillAction_AT_NATURE_HARMONY::OnSkillEffect(int level, CGameActor* source, CGameActor* target) {
|
||||
if (source) {
|
||||
EffectLists* effects = g_effectMgr;
|
||||
effects->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
g_effectMgr->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
constexpr auto bytesText = CRYPT_NAME("nature_harmony", 0x490FFB43A12F0DB9ULL);
|
||||
const auto& bytes = bytesText.data;
|
||||
thread_local EncryptedName<sizeof(bytes), 0x490FFB43A12F0DB9ULL> name(bytes);
|
||||
return name.Text();
|
||||
}()), 0.0f, 0.0f, 0.0f, 0, -1, 0, 0);
|
||||
}()), vector3d{0.0f, 0.0f, 0.0f}, 0, -1, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1136,12 +1132,11 @@ void CSkillAction_AT_GLACIER_NOVA::OnGroundSkillEffect(vector3d position, int ar
|
|||
// FUNCTION: fn_03226
|
||||
void CSkillAction_AT_GLACIER_SHARD::OnGroundSkillCast(int level, CGameActor* source, int argument3, int argument4, int argument5) {
|
||||
if (source) {
|
||||
EffectLists* effects = g_effectMgr;
|
||||
if (CEffect* effect = effects->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
if (CEffect* effect = g_effectMgr->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
constexpr std::array<char, 21> bytes = CRYPT_NAME("glacier_shard_target", 0x151F77EBEBBB2147ULL);
|
||||
thread_local EncryptedName<sizeof(bytes), 0x151F77EBEBBB2147ULL> name(bytes);
|
||||
return name.Text();
|
||||
}()), 0.0f, 0.0f, 0.0f, 0, -1, 0, 0)) {
|
||||
}()), vector3d{0.0f, 0.0f, 0.0f}, 0, -1, 0, 0)) {
|
||||
effect->SetLifeTime(level);
|
||||
}
|
||||
}
|
||||
|
|
@ -1404,13 +1399,12 @@ void CSkillAction_AT_ALPHA_PHASE::OnSkillCast(int level, CGameActor* source) {
|
|||
// FUNCTION: fn_03243
|
||||
void CSkillAction_AT_ALPHA_PHASE::OnSkillEffect(int level, CGameActor* source, CGameActor* target) {
|
||||
if (source) {
|
||||
EffectLists* effects = g_effectMgr;
|
||||
effects->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
g_effectMgr->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
constexpr auto bytesText = CRYPT_NAME("alpha_phase", 0x4F1791FB1503C713ULL);
|
||||
const auto& bytes = bytesText.data;
|
||||
thread_local EncryptedName<sizeof(bytes), 0x4F1791FB1503C713ULL> name(bytes);
|
||||
return name.Text();
|
||||
}()), 0.0f, 0.0f, 0.0f, 0, -1, 0, 0);
|
||||
}()), vector3d{0.0f, 0.0f, 0.0f}, 0, -1, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1436,13 +1430,12 @@ int CSkillAction_AT_APEX_PHASE::GetSkillAttackMotion() {
|
|||
// FUNCTION: fn_03247
|
||||
void CSkillAction_AT_APEX_PHASE::OnSkillEffect(int level, CGameActor* source, CGameActor* target) {
|
||||
if (source) {
|
||||
EffectLists* effects = g_effectMgr;
|
||||
effects->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
g_effectMgr->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
constexpr auto bytesText = CRYPT_NAME("apex_phase", 0xA1A55B4D1597EDD3ULL);
|
||||
const auto& bytes = bytesText.data;
|
||||
thread_local EncryptedName<sizeof(bytes), 0xA1A55B4D1597EDD3ULL> name(bytes);
|
||||
return name.Text();
|
||||
}()), 0.0f, 0.0f, 0.0f, 0, -1, 0, 0);
|
||||
}()), vector3d{0.0f, 0.0f, 0.0f}, 0, -1, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1468,13 +1461,12 @@ int CSkillAction_AT_FLIP_FLAP::GetSkillAttackMotion() {
|
|||
// FUNCTION: fn_03251
|
||||
void CSkillAction_AT_FLIP_FLAP::OnSkillEffect(int level, CGameActor* source, CGameActor* target) {
|
||||
if (source) {
|
||||
EffectLists* effects = g_effectMgr;
|
||||
effects->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
g_effectMgr->Spawn(source->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
constexpr auto bytesText = CRYPT_NAME("flip_flap", 0x1BF915E1F37DFDFDULL);
|
||||
const auto& bytes = bytesText.data;
|
||||
thread_local EncryptedName<sizeof(bytes), 0x1BF915E1F37DFDFDULL> name(bytes);
|
||||
return name.Text();
|
||||
}()), 0.0f, 0.0f, 0.0f, 0, -1, 0, 0);
|
||||
}()), vector3d{0.0f, 0.0f, 0.0f}, 0, -1, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1543,13 +1535,12 @@ EfstActionMessage CEfstAction_FLIP_FLAP_TARGET::GetEfstEndMessage() {
|
|||
// FUNCTION: fn_03259
|
||||
void CEfstAction_FLIP_FLAP_TARGET::OnEfstBegin(int efstId, int value, int argument3, int argument4, CRenderObject* actor, bool argument6) {
|
||||
if (actor) {
|
||||
EffectLists* effects = g_effectMgr;
|
||||
effects->Spawn(actor->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
g_effectMgr->Spawn(actor->render.accountId, CEZ2STREffectMgr::GetInstance()->EffectId([] {
|
||||
constexpr auto bytesText = CRYPT_NAME("aero_sync_sync", 0x3F5315DFE32B4FAFULL);
|
||||
const auto& bytes = bytesText.data;
|
||||
thread_local EncryptedName<sizeof(bytes), 0x3F5315DFE32B4FAFULL> name(bytes);
|
||||
return name.Text();
|
||||
}()), 0.0f, 0.0f, 0.0f, 0, -1, 0, 0);
|
||||
}()), vector3d{0.0f, 0.0f, 0.0f}, 0, -1, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue