Show ksign.h syntax highlighted
/*
Copyright (C) 2003, 2004 by Luca Cappa
Written by Luca Cappa groton@users.sourceforge.net
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifndef __KSIGN_H__
#define __KSIGN_H__
struct iEngine;
struct iGraphics3D;
struct iLoader;
struct iMaterialWrapper;
struct iMeshWrapper;
struct iSprite3DState;
struct iSprite3DFactoryState;
class csTransform;
struct iPolygon3D;
struct iCollideSystem;
struct iGeneralMeshState;
class csVector3;
class BlockId;
class KCamera;
class KFlags;
class csBox3;
class KSign
{
public:
/**
States in which this object could be. Basically, a state indentify an image to display.
*/
enum KSIGN_STATE
{
NONE = 0,
LOOK_TOWARDS,
TIME_EXPIRED,
WRONG_WAY,
TARGET_REACHED,
PATH_COMPLETED,
MISSION_TERMINATED
};
private:
Simple* m_simple;
csRef<iGraphics3D> m_g3d;
csRef<iEngine> m_engine;
csRef<iFontServer> m_fontServer;
csRef<iGeneralMeshState> m_genMeshState;
csRef<iMeshWrapper> m_genMW;
csRef<iMaterialWrapper> m_lookTowards;
csRef<iMaterialWrapper> m_wrongWay;
csRef<iMaterialWrapper> m_timeExpired;
csRef<iMaterialWrapper> m_targetReached;
csRef<iMaterialWrapper> m_pathCompleted;
csRef<iMaterialWrapper> m_missionTerminated;
public:
KSign ();
virtual ~KSign ();
void Initialize ();
void SetDisplay (KSIGN_STATE);
void SetupFrame (KCamera* p_kcam, float);
};
#endif
See more files for this project here