mirror of
https://git.rip/DMCA_FUCKER/re3.git
synced 2024-12-23 08:20:00 +00:00
54 lines
1,007 B
C++
54 lines
1,007 B
C++
#include "common.h"
|
|
|
|
#include "ModelInfo.h"
|
|
#include "AnimManager.h"
|
|
#include "VisibilityPlugins.h"
|
|
|
|
void
|
|
CWeaponModelInfo::SetAnimFile(const char *file)
|
|
{
|
|
if(strcasecmp(file, "null") == 0)
|
|
return;
|
|
|
|
m_animFileName = new char[strlen(file)+1];
|
|
strcpy(m_animFileName, file);
|
|
}
|
|
|
|
void
|
|
CWeaponModelInfo::ConvertAnimFileIndex(void)
|
|
{
|
|
if(m_animFileIndex != -1){
|
|
// we have a string pointer in that union
|
|
int32 index = CAnimManager::GetAnimationBlockIndex(m_animFileName);
|
|
delete[] m_animFileName;
|
|
m_animFileIndex = index;
|
|
}
|
|
}
|
|
|
|
void
|
|
CWeaponModelInfo::Init(void)
|
|
{
|
|
CSimpleModelInfo::Init();
|
|
SetWeaponInfo(0);
|
|
}
|
|
|
|
void
|
|
CWeaponModelInfo::SetWeaponInfo(int32 weaponId)
|
|
{
|
|
m_atomics[2] = (RpAtomic*)weaponId;
|
|
}
|
|
|
|
eWeaponType
|
|
CWeaponModelInfo::GetWeaponInfo(void)
|
|
{
|
|
return (eWeaponType)(uintptr)m_atomics[2];
|
|
}
|
|
|
|
void
|
|
CWeaponModelInfo::SetAtomic(int n, RpAtomic *atomic)
|
|
{
|
|
CSimpleModelInfo::SetAtomic(n, atomic);
|
|
CVisibilityPlugins::SetAtomicRenderCallback(atomic, CVisibilityPlugins::RenderWeaponCB);
|
|
}
|
|
|