Exemplo n.º 1
0
void SP_pos_location( gentity_t *self )
{
	char       *message;
	self->s.eType = entityType_t::ET_LOCATION;
	self->r.svFlags = SVF_BROADCAST;
	trap_LinkEntity( self );  // make the server send them to the clients

	if ( G_SpawnInt( "count", "", &self->customNumber) )
	{
		if ( self->customNumber < 0 )
		{
			self->customNumber = 0;
		}

		if ( self->customNumber > 7 )
		{
			self->customNumber = 7;
		}

		message = va( "%c%c%s^7", Color::Constants::ESCAPE, self->customNumber + '0',
		              self->message );
	}
	else
	{
		message = self->message;
	}

	self->nextPathSegment = level.locationHead;
	self->s.generic1 = G_LocationIndex(message);
	level.locationHead = self;

	G_SetOrigin( self, self->s.origin );
}
Exemplo n.º 2
0
void G_SpawnFakeEntities()
{
	level.fakeLocation = G_NewEntity();
	level.fakeLocation->s.origin[ 0 ] =
	level.fakeLocation->s.origin[ 1 ] =
	level.fakeLocation->s.origin[ 2 ] = 1.7e19f; // well out of range
	level.fakeLocation->message = nullptr;

	level.fakeLocation->s.eType = entityType_t::ET_LOCATION;
	level.fakeLocation->r.svFlags = SVF_BROADCAST;

	level.fakeLocation->nextPathSegment = level.locationHead;
	level.fakeLocation->s.generic1 = G_LocationIndex( "" );
	level.locationHead = level.fakeLocation;

	G_SetOrigin( level.fakeLocation, level.fakeLocation->s.origin );
}