?? hgeresource.h
字號:
/*
** Haaf's Game Engine 1.5
** Copyright (C) 2003-2004, Relish Games
** hge.relishgames.com
**
** hgeResourceManager helper class header
*/
#ifndef HGERESOURCE_H
#define HGERESOURCE_H
#include "hge.h"
#include "hgesprite.h"
#include "hgeanim.h"
#include "hgefont.h"
#include "hgeparticle.h"
#include "hgedistort.h"
#include "hgestrings.h"
#define RESTYPES 13
#define MAXRESCHARS 128
class hgeResourceManager;
struct ResDesc
{
char name[MAXRESCHARS];
int resgroup;
DWORD handle;
ResDesc* next;
ResDesc() { hge=hgeCreate(HGE_VERSION); }
~ResDesc() { hge->Release(); }
virtual DWORD Get(hgeResourceManager *rm) = 0;
virtual void Free() = 0;
protected:
static HGE *hge;
};
/*
** HGE Resource manager class
*/
class hgeResourceManager
{
public:
hgeResourceManager(const char *scriptname=0);
~hgeResourceManager();
void ChangeScript(const char *scriptname=0);
bool Precache(int groupid=0);
void Purge(int groupid=0);
void* GetResource(const char *name);
HTEXTURE GetTexture(const char *name);
HEFFECT GetEffect(const char *name);
HMUSIC GetMusic(const char *name);
HSTREAM GetStream(const char *name);
HTARGET GetTarget(const char *name);
hgeSprite* GetSprite(const char *name);
hgeAnimation* GetAnimation(const char *name);
hgeFont* GetFont(const char *name);
hgeParticleSystem* GetParticleSystem(const char *name);
hgeDistortionMesh* GetDistortionMesh(const char *name);
hgeStringTable* GetStringTable(const char *name);
ResDesc* res[RESTYPES];
private:
hgeResourceManager(const hgeResourceManager &);
hgeResourceManager& operator= (const hgeResourceManager&);
void _remove_all();
void _parse_script(const char *scriptname=0);
static HGE *hge;
};
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -