2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-09 03:07:41 +00:00

New code style refactor

This commit is contained in:
Jack Andersen
2018-12-07 19:30:43 -10:00
parent 41ae32be31
commit 636c82a568
1451 changed files with 171430 additions and 203303 deletions

View File

@@ -3,74 +3,62 @@
#include "Character/CPASAnimParmData.hpp"
#include "CStateManager.hpp"
namespace urde
{
namespace urde {
bool CGSComboFire::Update(CAnimData& data, float dt, CStateManager& mgr)
{
if (x8_cueAnimId != -1)
{
x0_delay -= dt;
if (x0_delay <= 0.f)
{
data.EnableLooping(x4_loopState == 1);
CAnimPlaybackParms aparms(x8_cueAnimId, -1, 1.f, true);
data.SetAnimation(aparms, false);
x0_delay = 0.f;
x8_cueAnimId = -1;
}
bool CGSComboFire::Update(CAnimData& data, float dt, CStateManager& mgr) {
if (x8_cueAnimId != -1) {
x0_delay -= dt;
if (x0_delay <= 0.f) {
data.EnableLooping(x4_loopState == 1);
CAnimPlaybackParms aparms(x8_cueAnimId, -1, 1.f, true);
data.SetAnimation(aparms, false);
x0_delay = 0.f;
x8_cueAnimId = -1;
}
else if (!data.IsAnimTimeRemaining(0.001f, "Whole Body"))
{
switch (x4_loopState)
{
case 0:
SetAnim(data, xc_gunId, 1, mgr, 0.f);
switch (xc_gunId)
{
case 4:
case 0:
case 1:
x10_24_over = true;
break;
default:
break;
}
break;
case 2:
x4_loopState = -1;
return true;
default:
break;
}
} else if (!data.IsAnimTimeRemaining(0.001f, "Whole Body")) {
switch (x4_loopState) {
case 0:
SetAnim(data, xc_gunId, 1, mgr, 0.f);
switch (xc_gunId) {
case 4:
case 0:
case 1:
x10_24_over = true;
break;
default:
break;
}
break;
case 2:
x4_loopState = -1;
return true;
default:
break;
}
return false;
}
return false;
}
s32 CGSComboFire::SetAnim(CAnimData& data, s32 gunId, s32 loopState, CStateManager& mgr, float delay)
{
s32 useLoopState = 2;
if (!x10_25_idle)
useLoopState = loopState;
x10_25_idle = false;
const CPASDatabase& pas = data.GetCharacterInfo().GetPASDatabase();
CPASAnimParmData parms(4, CPASAnimParm::FromInt32(gunId), CPASAnimParm::FromEnum(useLoopState));
auto anim = pas.FindBestAnimation(parms, *mgr.GetActiveRandom(), -1);
x10_24_over = false;
xc_gunId = gunId;
x4_loopState = useLoopState;
if (delay != 0.f)
{
x0_delay = delay;
x8_cueAnimId = anim.second;
}
else
{
data.EnableLooping(loopState == 1);
CAnimPlaybackParms aparms(anim.second, -1, 1.f, true);
data.SetAnimation(aparms, false);
}
return anim.second;
s32 CGSComboFire::SetAnim(CAnimData& data, s32 gunId, s32 loopState, CStateManager& mgr, float delay) {
s32 useLoopState = 2;
if (!x10_25_idle)
useLoopState = loopState;
x10_25_idle = false;
const CPASDatabase& pas = data.GetCharacterInfo().GetPASDatabase();
CPASAnimParmData parms(4, CPASAnimParm::FromInt32(gunId), CPASAnimParm::FromEnum(useLoopState));
auto anim = pas.FindBestAnimation(parms, *mgr.GetActiveRandom(), -1);
x10_24_over = false;
xc_gunId = gunId;
x4_loopState = useLoopState;
if (delay != 0.f) {
x0_delay = delay;
x8_cueAnimId = anim.second;
} else {
data.EnableLooping(loopState == 1);
CAnimPlaybackParms aparms(anim.second, -1, 1.f, true);
data.SetAnimation(aparms, false);
}
return anim.second;
}
}
} // namespace urde