Serious-Engine/Sources/EntitiesMP/GradientMarker.cpp
2016-03-11 15:57:17 +02:00

126 lines
5.3 KiB
C++

/*
* This file is generated by Entity Class Compiler, (c) CroTeam 1997-98
*/
#line 4 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
#include "StdH.h"
#include <EntitiesMP/GradientMarker.h>
#include <EntitiesMP/GradientMarker_tables.h>
void CGradientMarker::SetDefaultProperties(void) {
m_fHeight = -10.0f;
m_bDarkLight = TRUE ;
m_colColor0 = (C_GRAY | CT_OPAQUE );
m_colColor1 = (C_WHITE | CT_OPAQUE );
CMarker::SetDefaultProperties();
}
#line 29 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
const CTString & CGradientMarker::GetGradientName(void)
#line 30 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
{
#line 31 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
return m_strName ;
#line 32 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
}
#line 34 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
BOOL CGradientMarker::GetGradient(INDEX iGradient,class CGradientParameters & gpGradient)
#line 35 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
{
#line 36 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
const FLOATmatrix3D & m = GetRotationMatrix ();
#line 37 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
gpGradient . gp_vGradientDir (1) = m (1 , 2);
#line 38 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
gpGradient . gp_vGradientDir (2) = m (2 , 2);
#line 39 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
gpGradient . gp_vGradientDir (3) = m (3 , 2);
#line 40 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
FLOAT fPos = gpGradient . gp_vGradientDir % GetPlacement () . pl_PositionVector ;
#line 41 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
gpGradient . gp_bDark = m_bDarkLight ;
#line 42 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
if(m_fHeight >= 0 && m_fHeight < + 0.001f){m_fHeight = + 0.001f;}
#line 43 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
if(m_fHeight <= 0 && m_fHeight > - 0.001f){m_fHeight = - 0.001f;}
#line 44 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
gpGradient . gp_fH0 = fPos ;
#line 45 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
gpGradient . gp_fH1 = fPos + m_fHeight ;
#line 46 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
gpGradient . gp_col0 = m_colColor0 ;
#line 47 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
gpGradient . gp_col1 = m_colColor1 ;
#line 48 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
return TRUE ;
#line 49 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
}
#line 51 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
void CGradientMarker::UncacheShadowsForGradient(void)
#line 52 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
{
#line 54 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
FOREACHINDYNAMICCONTAINER (GetWorld () -> wo_cenEntities , CEntity , iten ){
#line 56 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
if(IsOfClass (& * iten , "WorldBase")){
#line 58 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
((CWorldBase *) & * iten ) -> UncacheShadowsForGradient (this );
#line 59 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
}
#line 60 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
}
#line 61 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
}
#line 63 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
void CGradientMarker::SetPlacement_internal(const CPlacement3D & plNew,const FLOATmatrix3D & mRotation,BOOL bNear)
#line 64 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
{
#line 65 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
CEntity :: SetPlacement_internal (plNew , mRotation , bNear );
#line 66 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
UncacheShadowsForGradient ();
#line 67 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
}
#line 69 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
void CGradientMarker::OnEnd(void)
#line 70 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
{
#line 71 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
UncacheShadowsForGradient ();
#line 72 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
CEntity :: OnEnd ();
#line 73 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
}
BOOL CGradientMarker::
#line 77 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
Main(const CEntityEvent &__eeInput) {
#undef STATE_CURRENT
#define STATE_CURRENT STATE_CGradientMarker_Main
ASSERTMSG(__eeInput.ee_slEvent==EVENTCODE_EVoid, "CGradientMarker::Main expects 'EVoid' as input!"); const EVoid &e = (const EVoid &)__eeInput;
#line 79 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
InitAsEditorModel ();
#line 80 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
SetPhysicsFlags (EPF_MODEL_IMMATERIAL );
#line 81 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
SetCollisionFlags (ECF_IMMATERIAL );
#line 84 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
SetModel (MODEL_MARKER );
#line 85 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
SetModelMainTexture (TEXTURE_MARKER );
#line 88 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
if(m_strName == "Marker"){
#line 89 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
m_strName = "Gradient marker";
#line 90 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
}
#line 92 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
UncacheShadowsForGradient ();
#line 93 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
Return(STATE_CURRENT,EVoid());
#line 93 "D:/SE1_GPL/Sources/EntitiesMP/GradientMarker.es"
return TRUE; ASSERT(FALSE); return TRUE;};