This commit is contained in:
Paul 2001-01-16 16:20:45 +00:00
parent f1d84d4f85
commit 8da90f27df
9 changed files with 60 additions and 38 deletions

View File

@ -51,7 +51,8 @@ CD_FILESYS_LIB := CMXBoot
backend_src := gameover \
complete
enemy_src := enemy
enemy_src := 2denemy \
enemy
fileio_src := fileio \
$($(FILE_SYSTEM)_FILESYS_SRC)

View File

@ -14,12 +14,19 @@
#include "gfx\font.h"
#include "gfx\fdata.h"
#ifndef __PLAYER_PLAYER_H__
#include "player\player.h"
#endif
#ifndef __ENEMY_2DENEMY_H__
#include "enemy\2denemy.h"
#endif
#ifndef __GFX_FADER_H__
#include "gfx\fader.h"
#endif
#include "level\level.h"
#include "player\player.h"
#include "gfx\anim.h"
#ifndef __GFX_BUBICLES__
@ -52,7 +59,14 @@ void CGameScene::init()
VidSetClearScreen(1);
m_conversation.init();
Level.init();
Player.init();
m_player=new ("player") CPlayer();
m_player->init();
C2dEnemy *enemy;
enemy=new ("test enemy") C2dEnemy;
enemy->init();
CAnimDB::LoadAnims();
SetIdentNoTrans(&CamMtx);
@ -65,6 +79,8 @@ void CGameScene::init()
void CGameScene::shutdown()
{
m_player->shutdown(); delete m_player;
Level.shutdown();
m_conversation.shutdown();
s_genericFont->dump(); delete s_genericFont;
@ -76,7 +92,7 @@ void CGameScene::render()
CamMtx.t[2]=ZPos; // Temp
m_conversation.render();
Player.render();
CThing::renderAllThings();
Level.render();
}
@ -84,15 +100,16 @@ void CGameScene::render()
void CGameScene::think(int _frames)
{
m_conversation.think(_frames);
Player.think(_frames);
Level.setCameraCentre(Player.getMapPos());
CThing::thinkAllThings(_frames);
Level.setCameraCentre(m_player->getPos());
Level.think(_frames);
#ifdef __USER_paul__
if(!m_conversation.isActive()&&PadGetDown(0)&PAD_START)
{
m_conversation.trigger(SCRIPTS_SPEECHTEST_DAT);
}
#endif
}
/*****************************************************************************/

View File

@ -7,7 +7,6 @@
#include "system\gstate.h"
#include "level\level.h"
#include "player\player.h"
#ifndef __GAME_CONVO_H__
#include "game\convo.h"
@ -35,7 +34,7 @@ virtual ~CGameScene() {;}
private:
CLevel Level;
CPlayer Player;
class CPlayer *m_player;
CConversation m_conversation;
static FontBank *s_genericFont;
static MATRIX CamMtx;

View File

@ -5,8 +5,10 @@
#ifndef __LAYER_TILE_H__
#define __LAYER_TILE_H__
#include <dstructs.h>
#include "gfx\prim.h"
/*****************************************************************************/
struct sPrimGridElem
{

View File

@ -18,6 +18,9 @@
#include "pad\pads.h"
DVECTOR CLevel::MapPos;
/*****************************************************************************/
CLevel::CLevel()
{

View File

@ -5,6 +5,7 @@
#ifndef __LEVEL_LEVEL_H__
#define __LEVEL_LEVEL_H__
#include "system\global.h"
#include "level/layertile.h"
/*****************************************************************************/
@ -21,13 +22,14 @@ public:
void render();
void think(int _frames);
void setCameraCentre(DVECTOR _pos) {MapPos=_pos;}
void setCameraCentre(DVECTOR _pos) {MapPos=_pos;}
static DVECTOR getCameraPos() {return MapPos;}
private:
void initLayers();
sLvlHdr *LevelHdr;
DVECTOR MapPos;
sLvlHdr *LevelHdr;
static DVECTOR MapPos;
// Tile Layers

View File

@ -26,41 +26,33 @@
/*****************************************************************************/
/*****************************************************************************/
/*****************************************************************************/
CPlayer::CPlayer()
{
// SetControlObj(&m_playerControl);
// SetRenderObj(&m_skel);
};
/*****************************************************************************/
CPlayer::~CPlayer()
{
}
/*****************************************************************************/
void CPlayer::init()
{
sActor3dHdr *Hdr=m_skel.Load(ACTORS_SPONGEBOB_A3D);
m_skel.Init(Hdr);
TPLoadTex(ACTORS_SPONGEBOB_TEX);
m_skel.setAnimDatabase(CAnimDB::GetPlayerAnimBank());
CThing::init();
sActor3dHdr *Hdr=m_skel.Load(ACTORS_SPONGEBOB_A3D);
m_skel.Init(Hdr);
TPLoadTex(ACTORS_SPONGEBOB_TEX);
m_skel.setAnimDatabase(CAnimDB::GetPlayerAnimBank());
setState(STATE_IDLE);
m_facing=-1;
setState(STATE_IDLE);
m_runVel=0;
m_facing=-1;
}
/*****************************************************************************/
void CPlayer::shutdown()
{
CThing::shutdown();
}
/*****************************************************************************/
void CPlayer::think(int _frames)
{
CThing::think(_frames);
int padInput;
if(_frames>=3)_frames=2;
@ -193,6 +185,8 @@ if(_frames>=3)_frames=2;
/*****************************************************************************/
void CPlayer::render()
{
CThing::render();
// Render
m_skel.setFrame(m_frame);
m_skel.setAnimNo(m_animNo);
@ -213,7 +207,6 @@ int CPlayer::s_stateAnims[NUM_STATES]=
int panim=-1;
void CPlayer::setState(PLAYER_STATE _state)
{
PAUL_DBGMSG("set state %d",_state);
m_state=_state;
m_animNo=s_stateAnims[_state];
if(panim!=-1)m_animNo=panim;

View File

@ -2,8 +2,8 @@
/*** Player ***/
/**************/
#ifndef __PLAYER_H__
#define __PLAYER_H__
#ifndef __PLAYER_PLAYER_H__
#define __PLAYER_PLAYER_H__
#include <dstructs.h>
#include "Game/Thing.h"
@ -15,9 +15,6 @@
class CPlayer : public CThing
{
public:
CPlayer();
virtual ~CPlayer();
void init();
void shutdown();
void think(int _frames);

View File

@ -109,6 +109,14 @@ SOURCE=..\..\..\source\backend\gameover.h
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\..\..\source\enemy\2denemy.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\source\enemy\2denemy.h
# End Source File
# Begin Source File
SOURCE=..\..\..\source\enemy\enemy.cpp
# End Source File
# Begin Source File