32class GravPathNode :
public Entity
43 CLASS_PROTOTYPE(GravPathNode);
45 void SetSpeed(
Event *ev );
46 void SetMaxSpeed(
Event *ev );
47 void SetRadius(
Event *ev );
48 void CreatePath(
Event *ev );
49 void Activate(
Event *ev );
50 void Deactivate(
Event *ev );
52 float MaxSpeed(
void );
53 float Radius(
void ) {
return radius; };
54 void Archive(
Archiver &arc )
override;
57inline void GravPathNode::Archive
62 Entity::Archive( arc );
64 arc.ArchiveFloat( &speed );
65 arc.ArchiveFloat( &radius );
66 arc.ArchiveBoolean( &headnode );
67 arc.ArchiveBoolean( &active );
68 arc.ArchiveFloat( &max_speed );
73class GravPath :
public Listener
84 CLASS_PROTOTYPE( GravPath );
93 Vector ClosestPointOnPath(
Vector pos,
Entity &ent,
float *bestdist,
float *speed,
float *radius);
94 float DistanceAlongPath(
Vector pos,
float *speed);
95 Vector PointAtDistance(
Vector pos,
float dist, qboolean is_player,
float *max_distance );
96 void DrawPath(
float r,
float g,
float b);
101 void Archive(
Archiver &arc )
override;
109inline void GravPath::Archive
115 GravPathNodePtr *tempPtr;
118 Listener::Archive( arc );
126 num = pathlist.NumObjects();
128 arc.ArchiveInteger( &num );
131 pathlist.Resize( num );
134 for ( i = 1; i <= num; i++ )
136 tempPtr = pathlist.AddressOfObjectAt( i );
137 arc.ArchiveSafePointer( tempPtr );
140 arc.ArchiveFloat( &pathlength );
141 arc.ArchiveSafePointer( &from );
142 arc.ArchiveSafePointer( &to );
143 arc.ArchiveInteger( &nextnode );
144 arc.ArchiveVector( &mins );
145 arc.ArchiveVector( &maxs );
146 arc.ArchiveVector( &origin );
147 arc.ArchiveBoolean( &force );
161 Vector CalculateGravityPull(
Entity &ent,
Vector position, qboolean *force,
float *max_speed);
162 void DrawGravPaths(
void );
163 void Archive(
Archiver &arc )
override;
166inline void GravPathManager::Archive
174 Class::Archive( arc );
178 num = pathList.NumObjects();
184 arc.ArchiveInteger( &num );
185 for ( i = 1; i <= num; i++ )
189 ptr = pathList.ObjectAt( i );
195 arc.ArchiveObject( ptr );
198 pathList.AddObject( ptr );
Definition container.h:85
Definition listener.h:246
Definition gravpath.h:151