You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.2 KiB
C++

//
// G A M E.O.N.E - LOW LEVEL LIB V1.0
// Copyright (C) 2001 LEVEL ONE ENTERTAINMENT,
// Licensed under the terms of LGPL.
//:---------------------------------------------------------------------------
//:Description
//
// FRAMEWORK Layerfactory base class - creates layer objects
// Container for created layers
//
// CActor
// +--CLayerFactory
//
//:---------------------------------------------------------------------------
//////////////////////////////////////////////////////////////////////
#if !defined(_LAYER_FACTORY_H)
#define _LAYER_FACTORY_H
#include "llfrm_layer.h"
class CLayerFactory : public CActor
{
public:
CLayerFactory();
~CLayerFactory();
virtual void Action(float delta);
virtual void Draw(llgfx_id id);
virtual bool Message(const char * Type);
virtual CLayer * CreateAddLayer( const char * classname ); // game implementation
virtual CLayer * FindLayer(const char * name );
virtual CActor * IsActor( const char * name );
queue<CLayer> m_layers;
protected:
static int SortZorder( const void * left, const void * right );
virtual void DeleteLayer(const char * Type );
virtual void CreateNewLayer(const char * Type );
};
#endif // !defined(_LAYER_FACTORY_H)