summaryrefslogtreecommitdiffstats
path: root/src/modelinfo/WeaponModelInfo.h
blob: 8dc9baf13c60b62843c915449b69af09194013d3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#pragma once

#include "SimpleModelInfo.h"
#include "WeaponType.h"

class CWeaponModelInfo : public CSimpleModelInfo
{
	union {
		int32 m_animFileIndex;
		char *m_animFileName;
	};

	static base::cRelocatableChunkClassInfo msClassInfo;
	static CWeaponModelInfo msClassInstance;

public:
	CWeaponModelInfo(void) : CSimpleModelInfo(MITYPE_WEAPON) { m_animFileIndex = -1; }

	virtual void SetAnimFile(const char *file);
	virtual void ConvertAnimFileIndex(void);
	virtual int GetAnimFileIndex(void) { return m_animFileIndex; }

	virtual void RcWriteThis(base::cRelocatableChunkWriter &writer);
	virtual void RcWriteEmpty(base::cRelocatableChunkWriter &writer);

	//virtual void SetAtomic(int n, RpAtomic *atomic);
	
	void Init(void);
	void SetWeaponInfo(int32 weaponId);
	eWeaponType GetWeaponInfo(void);
};