📄 ch21p1_plasmagun.h
字号:
#include "Ch21p1_Gun.h"
#include "Ch21p1_Bullet.h"
#include "RecyclingArrayDyn.h"
#include "Sprite.h"
class CPlasmaBullet : public CBullet
{
public:
CPlasmaBullet() { }
virtual ~CPlasmaBullet() { }
CSprite m_Sprite;
};
class CPlasmaBulletArray
{
public:
CPlasmaBulletArray();
virtual ~CPlasmaBulletArray();
static const int NUMBULLETS;
HRESULT RestoreDeviceObjects(LPDIRECT3DDEVICE8 pDev);
HRESULT InvalidateDeviceObjects();
void UpdateAll(float fElapsedTime);
void RenderAll(CCamera &camera);
void AddBullet(D3DXVECTOR3 vPos, D3DXVECTOR3 vVelocity);
protected:
LPDIRECT3DDEVICE8 m_pd3dDevice;
LPDIRECT3DVERTEXBUFFER8 m_pVB;
CAnimSequence *m_pAnim;
CRecyclingArrayDyn<CPlasmaBullet> *m_pBullets;
};
class CPlasmaGun : public CGun
{
public:
CPlasmaGun();
virtual ~CPlasmaGun();
virtual HRESULT RestoreDeviceObjects(LPDIRECT3DDEVICE8 pDev, const char *strMeshFilename);
virtual void InvalidateDeviceObjects();
virtual void Render(CCamera &camera);
virtual void Update(float fElapsedTime) { }
virtual bool CanFire();
virtual void Fire(CCamera &camera);
void SetBulletArray(CPlasmaBulletArray *array) { m_pBulletArray = array; }
protected:
CPlasmaBulletArray *m_pBulletArray;
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -