mirror of
https://github.com/ptitSeb/Serious-Engine
synced 2024-11-23 02:40:26 +01:00
177 lines
6.7 KiB
C
177 lines
6.7 KiB
C
|
/*
|
||
|
* This file is generated by Entity Class Compiler, (c) CroTeam 1997-98
|
||
|
*/
|
||
|
|
||
|
#ifndef _Engine_Classes_MovableEntity_INCLUDED
|
||
|
#define _Engine_Classes_MovableEntity_INCLUDED 1
|
||
|
extern "C" DECL_DLL CDLLEntityClass CMovableEntity_DLLClass;
|
||
|
class DECL_DLL CMovableEntity : public CRationalEntity {
|
||
|
public:
|
||
|
virtual void SetDefaultProperties(void);
|
||
|
FLOAT3D en_vDesiredTranslationRelative;
|
||
|
ANGLE3D en_aDesiredRotationRelative;
|
||
|
FLOAT3D en_vCurrentTranslationAbsolute;
|
||
|
ANGLE3D en_aCurrentRotationAbsolute;
|
||
|
CEntityPointer en_penReference;
|
||
|
FLOAT3D en_vReferencePlane;
|
||
|
INDEX en_iReferenceSurface;
|
||
|
CEntityPointer en_penLastValidReference;
|
||
|
FLOAT en_tmLastSignificantVerticalMovement;
|
||
|
FLOAT en_tmLastBreathed;
|
||
|
FLOAT en_tmMaxHoldBreath;
|
||
|
FLOAT en_fDensity;
|
||
|
FLOAT en_tmLastSwimDamage;
|
||
|
INDEX en_iUpContent;
|
||
|
INDEX en_iDnContent;
|
||
|
FLOAT en_fImmersionFactor;
|
||
|
FLOAT3D en_vGravityDir;
|
||
|
FLOAT en_fGravityA;
|
||
|
FLOAT en_fGravityV;
|
||
|
FLOAT3D en_vForceDir;
|
||
|
FLOAT en_fForceA;
|
||
|
FLOAT en_fForceV;
|
||
|
FLOAT en_tmJumped;
|
||
|
FLOAT en_tmMaxJumpControl;
|
||
|
FLOAT en_fJumpControlMultiplier;
|
||
|
FLOAT en_fAcceleration;
|
||
|
FLOAT en_fDeceleration;
|
||
|
FLOAT en_fStepUpHeight;
|
||
|
FLOAT en_fStepDnHeight;
|
||
|
FLOAT en_fBounceDampParallel;
|
||
|
FLOAT en_fBounceDampNormal;
|
||
|
FLOAT en_fCollisionSpeedLimit;
|
||
|
FLOAT en_fCollisionDamageFactor;
|
||
|
FLOATaabbox3D en_boxMovingEstimate;
|
||
|
FLOATaabbox3D en_boxNearCached;
|
||
|
FLOAT3D en_vIntendedTranslation;
|
||
|
FLOATmatrix3D en_mIntendedRotation;
|
||
|
CPlacement3D en_plLastPlacement;
|
||
|
CListNode en_lnInMovers;
|
||
|
CBrushPolygon * en_pbpoStandOn;
|
||
|
CStaticStackArray < CBrushPolygon * > en_apbpoNearPolygons;
|
||
|
FLOAT en_tmLastPredictionHead;
|
||
|
FLOAT3D en_vLastHead;
|
||
|
FLOAT3D en_vPredError;
|
||
|
FLOAT3D en_vPredErrorLast;
|
||
|
FLOAT3D en_vNextPosition;
|
||
|
FLOATmatrix3D en_mNextRotation;
|
||
|
FLOAT3D en_vMoveTranslation;
|
||
|
FLOATmatrix3D en_mMoveRotation;
|
||
|
FLOAT3D en_vAppliedTranslation;
|
||
|
FLOATmatrix3D en_mAppliedRotation;
|
||
|
|
||
|
#line 319 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
void ResetPredictionFilter(void);
|
||
|
CMovableEntity(void);
|
||
|
~ CMovableEntity(void);
|
||
|
void OnInitialize(const CEntityEvent & eeInput);
|
||
|
void OnEnd(void);
|
||
|
void Copy(CEntity & enOther,ULONG ulFlags);
|
||
|
|
||
|
#line 391 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
void ClearTemporaryData(void);
|
||
|
void ChecksumForSync(ULONG & ulCRC,INDEX iExtensiveSyncCheck);
|
||
|
void DumpSync_t(CTStream & strm,INDEX iExtensiveSyncCheck);
|
||
|
void Read_t(CTStream * istr);
|
||
|
void Write_t(CTStream * ostr);
|
||
|
CPlacement3D GetLerpedPlacement(void)const;
|
||
|
void AddToMovers(void);
|
||
|
void AddToMoversDuringMoving(void);
|
||
|
void SetDesiredRotation(const ANGLE3D & aRotation);
|
||
|
const ANGLE3D & GetDesiredRotation(void)const;
|
||
|
void SetDesiredTranslation(const FLOAT3D & vTranslation);
|
||
|
const FLOAT3D & GetDesiredTranslation(void)const;
|
||
|
void GiveImpulseTranslationRelative(const FLOAT3D & vImpulseSpeedRelative);
|
||
|
void GiveImpulseTranslationAbsolute(const FLOAT3D & vImpulseSpeed);
|
||
|
void LaunchAsPropelledProjectile(const FLOAT3D & vImpulseSpeedRelative,
|
||
|
#line 642 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
CMovableEntity * penLauncher);
|
||
|
void LaunchAsFreeProjectile(const FLOAT3D & vImpulseSpeedRelative,
|
||
|
#line 650 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
CMovableEntity * penLauncher);
|
||
|
void ForceStopTranslation(void);
|
||
|
void ForceStopRotation(void);
|
||
|
void ForceFullStop(void);
|
||
|
void FakeJump(const FLOAT3D & vOrgSpeed,const FLOAT3D & vDirection,FLOAT fStrength,
|
||
|
#line 680 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
FLOAT fParallelMultiplier,FLOAT fNormalMultiplier,FLOAT fMaxExitSpeed,TIME tmControl);
|
||
|
ANGLE GetRelativeHeading(const FLOAT3D & vDirection);
|
||
|
ANGLE GetRelativePitch(const FLOAT3D & vDirection);
|
||
|
void GetReferenceHeadingDirection(const FLOAT3D & vReference,ANGLE aH,FLOAT3D & vDirection);
|
||
|
void GetHeadingDirection(ANGLE aH,FLOAT3D & vDirection);
|
||
|
void GetPitchDirection(ANGLE aH,FLOAT3D & vDirection);
|
||
|
|
||
|
#line 781 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
CEntity * MiscDamageInflictor(void);
|
||
|
|
||
|
#line 798 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
void UpdateOneSectorForce(CBrushSector & bsc,FLOAT fRatio);
|
||
|
|
||
|
#line 847 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
void TestFields(INDEX & iUpContent,INDEX & iDnContent,FLOAT & fImmersionFactor);
|
||
|
|
||
|
#line 990 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
void TestBreathing(CContentType & ctUp);
|
||
|
|
||
|
#line 1026 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
void TestContentDamage(CContentType & ctDn,FLOAT fImmersion);
|
||
|
|
||
|
#line 1059 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
void TestSurfaceDamage(CSurfaceType & stDn);
|
||
|
|
||
|
#line 1085 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
void SendTouchEvent(const CClipMove & cmMove);
|
||
|
|
||
|
#line 1100 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
void SendBlockEvent(CClipMove & cmMove);
|
||
|
|
||
|
#line 1108 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
BOOL IsStandingOnPolygon(CBrushPolygon * pbpo);
|
||
|
|
||
|
#line 1171 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
BOOL IsPolygonBelowPoint(CBrushPolygon * pbpo,const FLOAT3D & vPoint,FLOAT fMaxDist);
|
||
|
virtual BOOL AllowForGroundPolygon(CBrushPolygon * pbpo);
|
||
|
|
||
|
#line 1261 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
BOOL IsSomeNearPolygonBelowPoint(const FLOAT3D & vPoint,FLOAT fMaxDist);
|
||
|
|
||
|
#line 1268 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
BOOL IsSomeSectorPolygonBelowPoint(CBrushSector * pbsc,const FLOAT3D & vPoint,FLOAT fMaxDist);
|
||
|
|
||
|
#line 1284 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
BOOL WouldFallInNextPosition(void);
|
||
|
|
||
|
#line 1394 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
void ClearNextPosition(void);
|
||
|
|
||
|
#line 1400 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
void SetPlacementFromNextPosition(void);
|
||
|
|
||
|
#line 1427 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
BOOL TryToGoUpstairs(const FLOAT3D & vTranslationAbsolute,const CSurfaceType & stHit,
|
||
|
#line 1428 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
BOOL bHitStairsOrg);
|
||
|
|
||
|
#line 1581 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
BOOL TryToMove(CMovableEntity * penPusher,BOOL bTranslate,BOOL bRotate);
|
||
|
void ClearMovingTemp(void);
|
||
|
void PreMoving(void);
|
||
|
|
||
|
#line 2012 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
void PreMovingNew(void);
|
||
|
|
||
|
#line 2428 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
void PreMovingOld(void);
|
||
|
void DoMoving(void);
|
||
|
void PostMoving(void);
|
||
|
void CacheNearPolygons(void);
|
||
|
|
||
|
#line 3091 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
SLONG GetUsedMemory(void);
|
||
|
#define STATE_CMovableEntity_Dummy 0x00010000
|
||
|
BOOL
|
||
|
#line 3105 "D:/SE1_GPL/Sources/Engine/Classes/MovableEntity.es"
|
||
|
Dummy(const CEntityEvent &__eeInput);
|
||
|
};
|
||
|
#endif // _Engine_Classes_MovableEntity_INCLUDED
|