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

Additive animation integration

This commit is contained in:
Jack Andersen
2017-02-28 20:02:54 -10:00
parent 5277d445d3
commit 7334074798
26 changed files with 204 additions and 59 deletions

View File

@@ -1,10 +1,33 @@
#include "CParticleDatabase.hpp"
#include "CSimplePool.hpp"
#include "GameGlobalObjects.hpp"
namespace urde
{
void CParticleDatabase::CacheParticleDesc(const CCharacterInfo::CParticleResData& desc)
{
for (ResId id : desc.x0_part)
{
auto search = x0_particleDescs.find(id);
if (search == x0_particleDescs.cend())
x0_particleDescs[id] = std::make_shared<TLockedToken<CGenDescription>>(
g_SimplePool->GetObj(SObjectTag{FOURCC('PART'), id}));
}
for (ResId id : desc.x10_swhc)
{
auto search = x14_swooshDescs.find(id);
if (search == x14_swooshDescs.cend())
x14_swooshDescs[id] = std::make_shared<TLockedToken<CSwooshDescription>>(
g_SimplePool->GetObj(SObjectTag{FOURCC('SWHC'), id}));
}
for (ResId id : desc.x20_elsc)
{
auto search = x28_electricDescs.find(id);
if (search == x28_electricDescs.cend())
x28_electricDescs[id] = std::make_shared<TLockedToken<CElectricDescription>>(
g_SimplePool->GetObj(SObjectTag{FOURCC('ELSC'), id}));
}
}
void CParticleDatabase::SetModulationColorAllActiveEffects(const zeus::CColor& color)