Show kobject3d.h syntax highlighted
/*
Copyright (C) 2003, 2004, 2005 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 __KOBJECT_H__
#define __KOBJECT_H__
struct iEngine;
struct iGraphics3D;
struct iMaterialWrapper;
struct iMeshWrapper;
class csTransform;
struct iPolygon3D;
struct iCollideSystem;
class csVector3;
class BlockId;
class KFlags;
class csBox3;
SCF_VERSION (KObject3D, 0, 0, 1);
class KObject3D : public csObject
{
private:
csVector3 m_position;
bool m_visible;
float m_yRotation;
KSprite3DList* m_s3dList;
csArray<csVector3> m_offsets;//this contains csVector3 objects.
csRef<iString> m_name;
public:
KObject3D (const char* p_name);
~KObject3D ();
iString* GetName ();
void AddKSprite3D (KSprite3D* p_sprite, const csVector3& p_offset =csVector3(0,0,0));
csVector3 GetOffset (int p_i);
void SetPosition (csVector3&);
csVector3& GetPosition ();
float GetYRotation ();
void SetYRotation (float);
void SetSector (iSector* p_sector);
void SetVisible (bool p_visible);
bool IsVisible ();
SCF_DECLARE_IBASE_EXT (csObject);
};
#endif
See more files for this project here