mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-09-10 19:06:51 -04:00
Achievements improvements v2 (#1553)
* make LJA achievement more attainable glitchlessly * update loach achievement description * 3 kill rollstab achievement * update gone fishin description * gorge skip achievement * early city achievement * make goats and snowboarding safety check stage * fix indomitable requirement, add hero mode achievement * properly check skybook completion when returned * prototype ganondorf achievement * Autospin Annihilation
This commit is contained in:
@@ -1165,6 +1165,10 @@ int daAlink_c::procCutFinishInit(int i_type) {
|
||||
const daAlink_cutParamTbl* cutParams = &cutParamTable[i_type];
|
||||
BOOL is_proc_frontRoll = mProcID == PROC_FRONT_ROLL;
|
||||
|
||||
#if TARGET_PC
|
||||
mIsRollstab = (is_proc_frontRoll != FALSE) && (i_type == CUT_FINISH_PARAM_STAB);
|
||||
#endif
|
||||
|
||||
commonProcInit(PROC_CUT_FINISH);
|
||||
setCutType(cutParams->m_cutType);
|
||||
field_0x3198 = cutParams->m_recoilAnmID;
|
||||
|
||||
@@ -2192,6 +2192,9 @@ static void damage_check(b_gnd_class* i_this) {
|
||||
i_this->mDamageInvulnerabilityTimer = 100;
|
||||
}
|
||||
}
|
||||
#if TARGET_PC
|
||||
dusk::AchievementSystem::get().signal("ganondorf_hit");
|
||||
#endif
|
||||
}
|
||||
|
||||
cXyz hitmark_size(1.0f, 1.0f, 1.0f);
|
||||
@@ -2218,6 +2221,7 @@ static void damage_check(b_gnd_class* i_this) {
|
||||
i_this->field_0xc7c = 0;
|
||||
dScnPly_c::setPauseTimer(7);
|
||||
a_this->health = 100;
|
||||
dusk::AchievementSystem::get().signal("ganondorf_knocked_down");
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
#if TARGET_PC
|
||||
#include "dusk/achievements.h"
|
||||
#include "dusk/settings.h"
|
||||
#include "d/actor/d_a_alink.h"
|
||||
#endif
|
||||
|
||||
static int plCutLRC[58] = {
|
||||
@@ -448,6 +449,10 @@ fopAc_ac_c* cc_at_check(fopAc_ac_c* i_enemy, dCcU_AtInfo* i_AtInfo) {
|
||||
#if TARGET_PC
|
||||
if (fopAcM_GetGroup(i_enemy) == fopAc_ENEMY_e) {
|
||||
dusk::AchievementSystem::get().signal("enemy_killed");
|
||||
const auto* link = static_cast<const daAlink_c*>(daPy_getPlayerActorClass());
|
||||
if (link != nullptr && link->mProcID == daAlink_c::PROC_CUT_FINISH && link->mIsRollstab) {
|
||||
dusk::AchievementSystem::get().signal("rollstab_kill");
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user