diff --git a/cgame/cg_env.c b/cgame/cg_env.c index 6028469..725e99f 100644 --- a/cgame/cg_env.c +++ b/cgame/cg_env.c @@ -1458,7 +1458,7 @@ Creates a basic cooking steam effect VectorScale( dir, random() * 5 + 2, dir ); FX_AddSprite( origin, dir, qfalse, radius, radius * 2, 0.4F, 0.0, 0, 0, 1000, cgs.media.steamShader ); -}*/ +} /* ====================== CG_ElectricFire @@ -1612,7 +1612,7 @@ bool ForgeBoltPulse( FXPrimitive *fx, centity_t *ent ) } //----------------------------- -void CG_ForgeBolt( centity_t *cent ) +/*void CG_ForgeBolt( centity_t *cent ) { qboolean pulse; int effects; @@ -1799,12 +1799,12 @@ The particles will accelerate up to the half-way point of the cylinder, then dec { vec3_t vel, accel, dir, pos, right, up; float len, time, acceleration, scale, dis, vf; - + int t; VectorSubtract( cent->currentState.origin2, cent->lerpOrigin, dir ); len = VectorNormalize( dir ); MakeNormalVectors( dir, right, up ); - for ( int t=0; t < 3; t++ ) + for ( t=0; t < 3; t++ ) { // Create start offset within a circular radius VectorMA( cent->lerpOrigin, 8 * crandom(), right, pos ); @@ -1824,7 +1824,7 @@ The particles will accelerate up to the half-way point of the cylinder, then dec // These will spawn at the base and accelerate towards the middle if ( rand() & 1 ) { - FX_AddSprite( pos, vel, accel, + FX_AddSprite3( pos, vel, accel, scale, 0.0f, 1.0f, 0.0f, 0.0f, @@ -1834,7 +1834,7 @@ The particles will accelerate up to the half-way point of the cylinder, then dec } else { - FX_AddSprite( pos, vel, accel, + FX_AddSprite3( pos, vel, accel, scale, 0.0f, 1.0f, 0.0f, 0.0f, @@ -1852,7 +1852,7 @@ The particles will accelerate up to the half-way point of the cylinder, then dec if ( rand() & 1 ) { - FX_AddSprite( pos, vel, accel, + FX_AddSprite3( pos, vel, accel, scale, 0.0f, 0.0f, 1.0f, 0.0f, @@ -1862,7 +1862,7 @@ The particles will accelerate up to the half-way point of the cylinder, then dec } else { - FX_AddSprite( pos, vel, accel, + FX_AddSprite3( pos, vel, accel, scale, 0.0f, 0.0f, 1.0f, 0.0f, @@ -1879,7 +1879,7 @@ CG_ExplosionTrail ------------------------- */ -/*bool explosionTrailThink( FXPrimitive *fx, centity_t *ent ) +/*qboolean explosionTrailThink( localEntity_t *fx ) { localEntity_t *le=0; vec3_t direction, origin, new_org, angles, dir; @@ -1901,7 +1901,7 @@ CG_ExplosionTrail // Maybe something else should be done as well... remove = qtrue; //FIXME: FX_RemoveEffect( fx ); - return false; + return qfalse; } scale = 80 * 0.03f; @@ -1931,7 +1931,7 @@ CG_ExplosionTrail CG_ExplosionEffects( origin, 3.0f, 600 ); G_RadiusDamage( origin, ent->gent, 150, 80, NULL, MOD_UNKNOWN ); - return true; + return qtrue; } //------------------------------------------------------------------------------ @@ -1940,12 +1940,12 @@ void CG_ExplosionTrail( centity_t *cent ) vec3_t dir; float len; - VectorSubtract( cent->currentState.origin2, cent->lerpOrigin, dir ); + VectorSubtract( cent->currentState.origin2, cent->currentState.origin, dir ); len = VectorNormalize( dir ); VectorScale( dir, 325, dir ); - FX_AddParticle( cent, cent->lerpOrigin, dir, NULL, 16, 0.0, 1.0, 1.0, - 0.0, 0.0, 6000, cgs.media.ltblueParticleShader, FXF_NODRAW, explosionTrailThink ); + FX_AddParticle( cent->currentState.origin, dir, qfalse, 16, 0.0, 1.0, 1.0, + 0.0, 0.0, 6000, cgs.media.ltblueParticleShader, explosionTrailThink ); } /* @@ -1966,7 +1966,7 @@ A scanning type beam vectoangles( normal, angles ); alpha = Vector4to3( cent->gent->startRGBA, rgb ); -/* // Code to make the thing "snap" when it's doing the beam slices + // Code to make the thing "snap" when it's doing the beam slices if ( abs( cent->gent->pos2[0] ) >= cent->gent->radius ) { // Snap back to start and move to the next slice @@ -1982,9 +1982,9 @@ A scanning type beam // Always move across the slice cent->gent->pos2[0] -= ( cg.frametime * 0.001 * cent->gent->speed ); -*/ - /*if ( cent->gent->spawnflags & 2 ) + + if ( cent->gent->spawnflags & 2 ) { // Trace a cone angles[2] = cent->gent->angle; @@ -2029,32 +2029,34 @@ Kind of looks like a teleporter effect ---------------------- */ -/*void CG_ShimmeryThing( vec3_t start, vec3_t end, float radius, qboolean taper ) +void CG_ShimmeryThing( vec3_t start, vec3_t end, vec3_t content ) { vec3_t normal, angles, base, top, dir; float len; + int i; + int taper = content[2]; VectorSubtract( end, start, normal ); len = VectorNormalize( normal ); vectoangles( normal, angles ); - for ( int i=0; i < 2; i++) + for ( i=0; i < 2; i++) { // Spawn the shards of light around a cylinder angles[2] = crandom() * 360; AngleVectors( angles, NULL, dir, NULL ); // See if the effect should be tapered at the top - if ( taper ) + if ( taper = 2 ) { - VectorMA( start, radius * 0.25f, dir, top ); + VectorMA( start, content[1] * 0.25f, dir, top ); } else { - VectorMA( start, radius, dir, top ); + VectorMA( start, content[1], dir, top ); } - VectorMA( end, radius, dir, base ); + VectorMA( end, content[1], dir, base ); // Use a couple of different kinds to break up the monotony.. if ( rand() & 1 ) @@ -2068,24 +2070,6 @@ Kind of looks like a teleporter effect } } -/* -------------------------- -CG_ShimmeryThing_Spawner -------------------------- -*/ - -/*void CG_Shimmer( vec3_t position, vec3_t dest, vec3_t dir, vec3_t other ) -{ - CG_ShimmeryThing( position, dest, other[0], (qboolean) other[1] ); -} - -void CG_ShimmeryThing_Spawner( vec3_t start, vec3_t end, float radius, qboolean taper, int duration ) -{ - vec3_t packed = { radius, (float) taper, 0 }; - - FX_AddSpawner( start, end, NULL, packed, 100, 0, duration, (void *) CG_Shimmer, NULL, 512 ); -} - /* ---------------------- CG_Borg_Bolt @@ -2093,12 +2077,13 @@ CG_Borg_Bolt Yellow bolts that spark when the endpoints get close together ---------------------- */ + /*void CG_Borg_Bolt( centity_t *cent ) { vec3_t diff, neworg, start, end; float len; - if (!cent->gent->enemy){ + if (!cent->gent->enemy){ // need sth to trace target return;//we lost him } VectorCopy( cent->gent->enemy->currentOrigin, end ); diff --git a/cgame/cg_event.c b/cgame/cg_event.c index af7fea4..7fdbf8f 100644 --- a/cgame/cg_event.c +++ b/cgame/cg_event.c @@ -1791,60 +1791,60 @@ case EV_SHAKE_SOUND: // Additional ports from SP by Harry Young - /*case EV_FX_COOKING_STEAM: + case EV_FX_COOKING_STEAM: DEBUGNAME("EV_FX_COOKING_STEAM"); - CG_CookingSteam( cent->lerpOrigin, cent->currentState.angles[0] ); + //CG_CookingSteam( cent->lerpOrigin, cent->currentState.angles[0] ); break; - /*case EV_FX_ELECFIRE: + case EV_FX_ELECFIRE: DEBUGNAME("EV_FX_ELECFIRE"); // Don't play this sound quite so much... if ( rand() & 1 ) { - cgi_S_StartSound (NULL, es->number, CHAN_BODY, cgi_S_RegisterSound ( va("sound/ambience/spark%d.wav", Q_irand(1,6)) )); + //cgi_S_StartSound (NULL, es->number, CHAN_BODY, cgi_S_RegisterSound ( va("sound/ambience/spark%d.wav", Q_irand(1,6)) )); } - CG_ElectricFire( cent->lerpOrigin, cent->currentState.angles ); + //CG_ElectricFire( cent->lerpOrigin, cent->currentState.angles ); break; case EV_FX_FORGE_BOLT: DEBUGNAME("EV_FX_FORGE_BOLT"); - CG_ForgeBolt( cent ); + //CG_ForgeBolt( cent ); break; case EV_FX_PLASMA: DEBUGNAME("EV_FX_PLASMA"); - CG_Plasma( cent->lerpOrigin, cent->currentState.origin2, cent->gent->startRGBA, cent->gent->finalRGBA ); + //CG_Plasma( cent->currentState.origin, cent->currentState.origin2, cent->currentState.angles, cent->currentState.angles2 ); // RGBA's break; case EV_FX_STREAM: DEBUGNAME("EV_FX_STREAM"); - CG_ParticleStream( cent ); + //CG_ParticleStream( cent ); break; case EV_FX_TRANSPORTER_STREAM: DEBUGNAME("EV_FX_TRANSPORTER_STREAM"); - CG_TransporterStream( cent ); + //CG_TransporterStream( cent ); break; case EV_FX_EXPLOSION_TRAIL: DEBUGNAME("EV_FX_EXPLOSION_TRAIL"); - CG_ExplosionTrail( cent ); + //CG_ExplosionTrail( cent ); break; case EV_FX_BORG_ENERGY_BEAM: DEBUGNAME("EV_FX_BORG_ENERGY_BEAM"); - CG_BorgEnergyBeam( cent ); + //CG_BorgEnergyBeam( cent ); break; case EV_FX_SHIMMERY_THING: DEBUGNAME("EV_FX_SHIMMERY_THING"); - CG_ShimmeryThing( cent->lerpOrigin, cent->currentState.origin2, cent->gent->radius, cent->gent->spawnflags & 2 ); + CG_ShimmeryThing( cent->currentState.origin, cent->currentState.origin2, cent->currentState.angles ); // Radius and spawnflags break; case EV_FX_BORG_BOLT: DEBUGNAME("EV_FX_BORG_BOLT"); - CG_Borg_Bolt( cent ); - break;*/ + //CG_Borg_Bolt( cent ); + break; // Default diff --git a/cgame/cg_local.h b/cgame/cg_local.h index 1820984..b209ebc 100644 --- a/cgame/cg_local.h +++ b/cgame/cg_local.h @@ -2042,6 +2042,11 @@ void CG_Drip(centity_t *cent, int killTime ); void CG_Chunks( vec3_t origin, vec3_t dir, float size, material_type_t type ); void CG_FireLaser( vec3_t start, vec3_t end, vec3_t normal, vec3_t laserRGB, float alpha ); void CG_AimLaser( vec3_t start, vec3_t end, vec3_t normal ); +// Stasis_door-stuff +// Stasis_door-stuff +// Stasis_door-stuff +// Stasis_door-stuff +// Stasis_door-stuff //TiM void CG_FountainSpurt( vec3_t org, vec3_t end ); @@ -2055,7 +2060,19 @@ void CG_ParticleFire(vec3_t origin, int size); void CG_ShowTrigger(centity_t *cent); // Additional ports from SP by Harry Young -//void CG_CookingSteam( vec3_t origin, float radius ); +void CG_CookingSteam( vec3_t origin, float radius ); +void CG_ElectricFire( vec3_t origin, vec3_t normal ); +void ForgeBoltFireback( vec3_t start, vec3_t end, vec3_t velocity, vec3_t user ); +void CG_ForgeBolt( centity_t *cent ); +void CG_Plasma( vec3_t start, vec3_t end, vec4_t startRGBA, vec4_t endRGBA ); +void CG_ParticleStream( centity_t *cent ); +void CG_TransporterStream( centity_t *cent ); +void CG_ExplosionTrail( centity_t *cent ); +void CG_BorgEnergyBeam( centity_t *cent ); +void CG_ShimmeryThing( vec3_t start, vec3_t end, vec3_t content ); +void CG_Shimmer( vec3_t position, vec3_t dest, vec3_t dir, vec3_t other ); +void CG_ShimmeryThing_Spawner( vec3_t start, vec3_t end, float radius, qboolean taper, int duration ); +void CG_Borg_Bolt( centity_t *cent ); // // cg_weapons.c diff --git a/cgame/fx_lib.c b/cgame/fx_lib.c index 83b73dc..261eec5 100644 --- a/cgame/fx_lib.c +++ b/cgame/fx_lib.c @@ -536,6 +536,80 @@ localEntity_t *FX_AddSprite2(vec3_t origin, vec3_t velocity, qboolean gravity, f return(le); } + +/* +=============== +FX_AddSprite3 + +Adds a view oriented sprite to the FX wrapper render list +=============== +*/ + +localEntity_t *FX_AddSprite3(vec3_t origin, vec3_t velocity, vec3_t acceleration, float scale, float dscale, + float startalpha, float endalpha, float roll, float elasticity, + float killTime, qhandle_t shader) +{ + localEntity_t *le; + +#ifdef _DEBUG + if (!shader) + { + Com_Printf("FX_AddSprite: NULL shader\n"); + } +#endif + + // Glow mark + + le = CG_AllocLocalEntity(); + le->leType = LE_VIEWSPRITE; + le->refEntity.data.sprite.rotation = roll; + + le->startTime = cg.time; + le->endTime = le->startTime + killTime; + + le->data.sprite.radius = scale; + le->data.sprite.dradius = dscale; + + le->alpha = startalpha; + le->dalpha = endalpha - startalpha; + VectorSet(le->data.sprite.startRGB, 1, 1, 1); + VectorSet(le->data.sprite.dRGB, 0, 0, 0); + +// le->refEntity.hModel = 0; + le->refEntity.customShader = shader; + + // set origin + VectorCopy ( origin, le->refEntity.origin); + VectorCopy ( origin, le->refEntity.oldorigin ); + + le->color[0] = 1.0; + le->color[1] = 1.0; + le->color[2] = 1.0; + le->color[3] = startalpha; + le->lifeRate = 1.0 / ( le->endTime - le->startTime ); + + if (velocity) + { + le->leFlags |= LEF_MOVE; + VectorCopy (origin, le->pos.trBase); + VectorCopy (velocity, le->pos.trDelta); + if (acceleration) //how do i make this accellerate in the given direction?... lol, bee-fountain on forge3 now ^^ + le->pos.trType = TR_GRAVITY; + else + le->pos.trType = TR_LINEAR; + le->pos.trTime = cg.time; + le->pos.trDuration = killTime; + + if (elasticity > 0) + { + le->leFlags |= LEF_USE_COLLISION; + le->bounceFactor = elasticity; + } + } + + return(le); +} + /* =============== FX_AddBezier diff --git a/cgame/fx_local.h b/cgame/fx_local.h index d066976..26083ea 100644 --- a/cgame/fx_local.h +++ b/cgame/fx_local.h @@ -26,6 +26,9 @@ localEntity_t *FX_AddSprite(vec3_t origin, vec3_t velocity, qboolean gravity, fl localEntity_t *FX_AddSprite2(vec3_t origin, vec3_t velocity, qboolean gravity, float scale, float dscale, float startalpha, float endalpha, vec3_t startRGB, vec3_t endRGB, float roll, float elasticity, float killTime, qhandle_t shader); +localEntity_t *FX_AddSprite3(vec3_t origin, vec3_t velocity, vec3_t acceleration, float scale, float dscale, + float startalpha, float endalpha, float roll, float elasticity, + float killTime, qhandle_t shader); localEntity_t *FX_AddBezier(vec3_t start, vec3_t end, vec3_t cpoint1, vec3_t cpoint2, vec3_t cpointvel1, vec3_t cpointvel2,vec3_t cpointacc1, vec3_t cpointacc2, float width, float killTime, qhandle_t shader); diff --git a/game/g_fx.c b/game/g_fx.c index 5319cf1..e072c6d 100644 --- a/game/g_fx.c +++ b/game/g_fx.c @@ -1803,12 +1803,11 @@ Creates a shimmering cone or cylinder of colored light that stretches between tw STARTOFF - Effect turns on when used. TAPER - Cylinder tapers toward the top, creating a conical effect - NO_AUTO_SHUTOFF - Tells the effect that it should never try to shut itself off. "radius" - radius of the cylinder or of the base of the cone. (default 10) "target" (required) End point for stream. "targetname" - fires only when used - "wait" - how long to stay on before turning itself off ( default 2 seconds, -1 to disable auto shut off ) + "wait" - how long in ms to stay on before turning itself off ( default 2 seconds (200 ms), -1 to disable auto shut off ) */ @@ -1817,7 +1816,7 @@ void shimmery_thing_think( gentity_t *ent ) { G_AddEvent( ent, EV_FX_SHIMMERY_THING, 0 ); if ( ent->wait >= 0 ) - ent->nextthink = level.time + ent->wait * 1000; + ent->nextthink = level.time + ent->wait; else ent->nextthink = -1; } @@ -1827,7 +1826,7 @@ void shimmery_thing_use( gentity_t *self, gentity_t *other, gentity_t *activator { if ( self->count ) { - self->think = borg_energy_beam_think; + self->think = shimmery_thing_think; self->nextthink = level.time + 200; } else @@ -1862,6 +1861,7 @@ void shimmery_thing_link( gentity_t *ent ) } ent->count = !(ent->spawnflags & 1); + if (ent->spawnflags & 2) ent->s.angles[2] = 2; if (!ent->targetname || !(ent->spawnflags & 1) ) { @@ -1883,14 +1883,12 @@ void shimmery_thing_link( gentity_t *ent ) //------------------------------------------ void SP_fx_shimmery_thing( gentity_t *ent ) { - G_SpawnFloat( "radius", "10", &ent->distance ); + G_SpawnFloat( "radius", "10", &ent->s.angles[1] ); if ( !ent->wait ) - ent->wait = 2; + ent->wait = 2000; // ent->svFlags |= SVF_BROADCAST; - VectorCopy( ent->s.origin, ent->s.pos.trBase ); - ent->think = shimmery_thing_link; ent->nextthink = level.time + 1000; diff --git a/maps/fxtest.bsp b/maps/fxtest.bsp new file mode 100644 index 0000000..fd607ec Binary files /dev/null and b/maps/fxtest.bsp differ diff --git a/maps/fxtest.map b/maps/fxtest.map new file mode 100644 index 0000000..6dd6415 --- /dev/null +++ b/maps/fxtest.map @@ -0,0 +1,1128 @@ + +// entity 0 +{ +"classname" "worldspawn" +// brush 0 +{ +( 0 64 64 ) ( 0 -64 64 ) ( -128 64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 0 64 64 ) ( -128 64 64 ) ( 0 64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 1152 64 64 ) ( 1152 64 -64 ) ( 1152 -64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -128 -64 -64 ) ( -128 -64 64 ) ( 0 -64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -512 -64 -64 ) ( -512 64 -64 ) ( -512 -64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -128 64 56 ) ( 0 -64 56 ) ( 0 64 56 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +} +// brush 1 +{ +( 0 64 64 ) ( 0 -64 64 ) ( -128 64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 0 64 64 ) ( -128 64 64 ) ( 0 64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 1152 64 64 ) ( 1152 64 -64 ) ( 1152 -64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -128 -64 -64 ) ( 0 -64 -64 ) ( -128 64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -512 -64 -64 ) ( -512 64 -64 ) ( -512 -64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 640 56 -64 ) ( 512 56 64 ) ( 640 56 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +} +// brush 2 +{ +( 640 64 64 ) ( 640 -64 64 ) ( 512 64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 640 64 64 ) ( 512 64 64 ) ( 640 64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 1152 64 64 ) ( 1152 64 -64 ) ( 1152 -64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 512 -64 -64 ) ( 640 -64 -64 ) ( 512 64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 512 -64 -64 ) ( 512 -64 64 ) ( 640 -64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 1144 -64 64 ) ( 1144 64 -64 ) ( 1144 64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +} +// brush 3 +{ +( 0 64 64 ) ( -128 64 64 ) ( 0 64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 1152 64 64 ) ( 1152 64 -64 ) ( 1152 -64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -128 -64 -64 ) ( 0 -64 -64 ) ( -128 64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -128 -64 -64 ) ( -128 -64 64 ) ( 0 -64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -512 -64 -64 ) ( -512 64 -64 ) ( -512 -64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -128 64 -56 ) ( 0 -64 -56 ) ( -128 -64 -56 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +} +// brush 4 +{ +( 0 64 64 ) ( 0 -64 64 ) ( -128 64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 1152 64 64 ) ( 1152 64 -64 ) ( 1152 -64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -128 -64 -64 ) ( 0 -64 -64 ) ( -128 64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -128 -64 -64 ) ( -128 -64 64 ) ( 0 -64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -512 -64 -64 ) ( -512 64 -64 ) ( -512 -64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 640 -56 -64 ) ( 512 -56 64 ) ( 512 -56 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +} +// brush 5 +{ +( 0 64 64 ) ( 0 -64 64 ) ( -128 64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( 0 64 64 ) ( -128 64 64 ) ( 0 64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -128 -64 -64 ) ( 0 -64 -64 ) ( -128 64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -128 -64 -64 ) ( -128 -64 64 ) ( 0 -64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -512 -64 -64 ) ( -512 64 -64 ) ( -512 -64 64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +( -504 -64 64 ) ( -504 64 -64 ) ( -504 -64 -64 ) common/greysquare1 0 0 0 0.5 0.5 0 0 0 +} +// brush 6 +{ +( -368 56 0 ) ( -368 48 0 ) ( -400 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -368 56 -16 ) ( -400 56 -16 ) ( -368 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -368 56 -16 ) ( -368 56 -24 ) ( -368 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -400 48 -32 ) ( -368 48 -32 ) ( -400 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -400 48 -24 ) ( -400 48 -16 ) ( -368 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -400 48 -24 ) ( -400 56 -24 ) ( -400 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 7 +{ +( -304 56 0 ) ( -304 48 0 ) ( -336 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -304 56 -16 ) ( -336 56 -16 ) ( -304 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -304 56 -16 ) ( -304 56 -24 ) ( -304 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -336 48 -32 ) ( -304 48 -32 ) ( -336 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -336 48 -24 ) ( -336 48 -16 ) ( -304 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -336 48 -24 ) ( -336 56 -24 ) ( -336 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 8 +{ +( -240 56 0 ) ( -240 48 0 ) ( -272 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -240 56 -16 ) ( -272 56 -16 ) ( -240 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -240 56 -16 ) ( -240 56 -24 ) ( -240 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -272 48 -32 ) ( -240 48 -32 ) ( -272 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -272 48 -24 ) ( -272 48 -16 ) ( -240 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -272 48 -24 ) ( -272 56 -24 ) ( -272 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 9 +{ +( -176 56 0 ) ( -176 48 0 ) ( -208 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -176 56 -16 ) ( -208 56 -16 ) ( -176 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -176 56 -16 ) ( -176 56 -24 ) ( -176 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -208 48 -32 ) ( -176 48 -32 ) ( -208 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -208 48 -24 ) ( -208 48 -16 ) ( -176 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -208 48 -24 ) ( -208 56 -24 ) ( -208 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 10 +{ +( -112 56 0 ) ( -112 48 0 ) ( -144 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -112 56 -16 ) ( -144 56 -16 ) ( -112 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -112 56 -16 ) ( -112 56 -24 ) ( -112 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -144 48 -32 ) ( -112 48 -32 ) ( -144 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -144 48 -24 ) ( -144 48 -16 ) ( -112 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -144 48 -24 ) ( -144 56 -24 ) ( -144 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 11 +{ +( -48 56 0 ) ( -48 48 0 ) ( -80 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -48 56 -16 ) ( -80 56 -16 ) ( -48 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -48 56 -16 ) ( -48 56 -24 ) ( -48 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -80 48 -32 ) ( -48 48 -32 ) ( -80 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -80 48 -24 ) ( -80 48 -16 ) ( -48 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -80 48 -24 ) ( -80 56 -24 ) ( -80 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 12 +{ +( 16 56 0 ) ( 16 48 0 ) ( -16 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 16 56 -16 ) ( -16 56 -16 ) ( 16 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 16 56 -16 ) ( 16 56 -24 ) ( 16 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -16 48 -32 ) ( 16 48 -32 ) ( -16 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -16 48 -24 ) ( -16 48 -16 ) ( 16 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( -16 48 -24 ) ( -16 56 -24 ) ( -16 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 13 +{ +( 80 56 0 ) ( 80 48 0 ) ( 48 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 80 56 -16 ) ( 48 56 -16 ) ( 80 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 80 56 -16 ) ( 80 56 -24 ) ( 80 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 48 48 -32 ) ( 80 48 -32 ) ( 48 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 48 48 -24 ) ( 48 48 -16 ) ( 80 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 48 48 -24 ) ( 48 56 -24 ) ( 48 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 14 +{ +( 144 56 0 ) ( 144 48 0 ) ( 112 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 144 56 -16 ) ( 112 56 -16 ) ( 144 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 144 56 -16 ) ( 144 56 -24 ) ( 144 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 112 48 -32 ) ( 144 48 -32 ) ( 112 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 112 48 -24 ) ( 112 48 -16 ) ( 144 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 112 48 -24 ) ( 112 56 -24 ) ( 112 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 15 +{ +( 208 56 0 ) ( 208 48 0 ) ( 176 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 208 56 -16 ) ( 176 56 -16 ) ( 208 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 208 56 -16 ) ( 208 56 -24 ) ( 208 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 176 48 -32 ) ( 208 48 -32 ) ( 176 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 176 48 -24 ) ( 176 48 -16 ) ( 208 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 176 48 -24 ) ( 176 56 -24 ) ( 176 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 16 +{ +( 272 56 0 ) ( 272 48 0 ) ( 240 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 272 56 -16 ) ( 240 56 -16 ) ( 272 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 272 56 -16 ) ( 272 56 -24 ) ( 272 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 240 48 -32 ) ( 272 48 -32 ) ( 240 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 240 48 -24 ) ( 240 48 -16 ) ( 272 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 240 48 -24 ) ( 240 56 -24 ) ( 240 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 17 +{ +( 336 56 0 ) ( 336 48 0 ) ( 304 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 336 56 -16 ) ( 304 56 -16 ) ( 336 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 336 56 -16 ) ( 336 56 -24 ) ( 336 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 304 48 -32 ) ( 336 48 -32 ) ( 304 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 304 48 -24 ) ( 304 48 -16 ) ( 336 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 304 48 -24 ) ( 304 56 -24 ) ( 304 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 18 +{ +( 400 56 0 ) ( 400 48 0 ) ( 368 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 400 56 -16 ) ( 368 56 -16 ) ( 400 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 400 56 -16 ) ( 400 56 -24 ) ( 400 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 368 48 -32 ) ( 400 48 -32 ) ( 368 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 368 48 -24 ) ( 368 48 -16 ) ( 400 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 368 48 -24 ) ( 368 56 -24 ) ( 368 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 19 +{ +( 464 56 0 ) ( 464 48 0 ) ( 432 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 464 56 -16 ) ( 432 56 -16 ) ( 464 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 464 56 -16 ) ( 464 56 -24 ) ( 464 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 432 48 -32 ) ( 464 48 -32 ) ( 432 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 432 48 -24 ) ( 432 48 -16 ) ( 464 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 432 48 -24 ) ( 432 56 -24 ) ( 432 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 20 +{ +( 528 56 0 ) ( 528 48 0 ) ( 496 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 528 56 -16 ) ( 496 56 -16 ) ( 528 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 528 56 -16 ) ( 528 56 -24 ) ( 528 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 496 48 -32 ) ( 528 48 -32 ) ( 496 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 496 48 -24 ) ( 496 48 -16 ) ( 528 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 496 48 -24 ) ( 496 56 -24 ) ( 496 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 21 +{ +( 592 56 0 ) ( 592 48 0 ) ( 560 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 592 56 -16 ) ( 560 56 -16 ) ( 592 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 592 56 -16 ) ( 592 56 -24 ) ( 592 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 560 48 -32 ) ( 592 48 -32 ) ( 560 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 560 48 -24 ) ( 560 48 -16 ) ( 592 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 560 48 -24 ) ( 560 56 -24 ) ( 560 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 22 +{ +( 656 56 0 ) ( 656 48 0 ) ( 624 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 656 56 -16 ) ( 624 56 -16 ) ( 656 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 656 56 -16 ) ( 656 56 -24 ) ( 656 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 624 48 -32 ) ( 656 48 -32 ) ( 624 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 624 48 -24 ) ( 624 48 -16 ) ( 656 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 624 48 -24 ) ( 624 56 -24 ) ( 624 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 23 +{ +( 720 56 0 ) ( 720 48 0 ) ( 688 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 720 56 -16 ) ( 688 56 -16 ) ( 720 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 720 56 -16 ) ( 720 56 -24 ) ( 720 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 688 48 -32 ) ( 720 48 -32 ) ( 688 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 688 48 -24 ) ( 688 48 -16 ) ( 720 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 688 48 -24 ) ( 688 56 -24 ) ( 688 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 24 +{ +( 784 56 0 ) ( 784 48 0 ) ( 752 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 784 56 -16 ) ( 752 56 -16 ) ( 784 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 784 56 -16 ) ( 784 56 -24 ) ( 784 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 752 48 -32 ) ( 784 48 -32 ) ( 752 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 752 48 -24 ) ( 752 48 -16 ) ( 784 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 752 48 -24 ) ( 752 56 -24 ) ( 752 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 25 +{ +( 848 56 0 ) ( 848 48 0 ) ( 816 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 848 56 -16 ) ( 816 56 -16 ) ( 848 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 848 56 -16 ) ( 848 56 -24 ) ( 848 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 816 48 -32 ) ( 848 48 -32 ) ( 816 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 816 48 -24 ) ( 816 48 -16 ) ( 848 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 816 48 -24 ) ( 816 56 -24 ) ( 816 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 26 +{ +( 912 56 0 ) ( 912 48 0 ) ( 880 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 912 56 -16 ) ( 880 56 -16 ) ( 912 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 912 56 -16 ) ( 912 56 -24 ) ( 912 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 880 48 -32 ) ( 912 48 -32 ) ( 880 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 880 48 -24 ) ( 880 48 -16 ) ( 912 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 880 48 -24 ) ( 880 56 -24 ) ( 880 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 27 +{ +( 976 56 0 ) ( 976 48 0 ) ( 944 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 976 56 -16 ) ( 944 56 -16 ) ( 976 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 976 56 -16 ) ( 976 56 -24 ) ( 976 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 944 48 -32 ) ( 976 48 -32 ) ( 944 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 944 48 -24 ) ( 944 48 -16 ) ( 976 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 944 48 -24 ) ( 944 56 -24 ) ( 944 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 28 +{ +( 1040 56 0 ) ( 1040 48 0 ) ( 1008 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 1040 56 -16 ) ( 1008 56 -16 ) ( 1040 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 1040 56 -16 ) ( 1040 56 -24 ) ( 1040 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 1008 48 -32 ) ( 1040 48 -32 ) ( 1008 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 1008 48 -24 ) ( 1008 48 -16 ) ( 1040 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 1008 48 -24 ) ( 1008 56 -24 ) ( 1008 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +// brush 29 +{ +( 1104 56 0 ) ( 1104 48 0 ) ( 1072 56 0 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 1104 56 -16 ) ( 1072 56 -16 ) ( 1104 56 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 1104 56 -16 ) ( 1104 56 -24 ) ( 1104 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 1072 48 -32 ) ( 1104 48 -32 ) ( 1072 56 -32 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 1072 48 -24 ) ( 1072 48 -16 ) ( 1104 48 -24 ) common/rot 0 0 0 0.5 0.5 0 0 0 +( 1072 48 -24 ) ( 1072 56 -24 ) ( 1072 48 -16 ) common/rot 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 1 +{ +"classname" "info_player_start" +"origin" "-448.000000 0.000000 -32.000000" +} +// entity 2 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "blow_chunks" +"message" "blow_chunks" +// brush 0 +{ +( -368 48 0 ) ( -368 40 0 ) ( -400 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -368 48 -16 ) ( -400 48 -16 ) ( -368 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -368 48 -16 ) ( -368 48 -24 ) ( -368 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -400 40 -32 ) ( -368 40 -32 ) ( -400 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -400 40 -24 ) ( -400 40 -16 ) ( -368 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -400 40 -24 ) ( -400 48 -24 ) ( -400 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 3 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"message" "bolt" +"target" "bolt" +// brush 0 +{ +( -304 48 0 ) ( -304 40 0 ) ( -336 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -304 48 -16 ) ( -336 48 -16 ) ( -304 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -304 48 -16 ) ( -304 48 -24 ) ( -304 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -336 40 -32 ) ( -304 40 -32 ) ( -336 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -336 40 -24 ) ( -336 40 -16 ) ( -304 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -336 40 -24 ) ( -336 48 -24 ) ( -336 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 4 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "drip" +"message" "drip" +// brush 0 +{ +( -240 48 0 ) ( -240 40 0 ) ( -272 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -240 48 -16 ) ( -272 48 -16 ) ( -240 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -240 48 -16 ) ( -240 48 -24 ) ( -240 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -272 40 -32 ) ( -240 40 -32 ) ( -272 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -272 40 -24 ) ( -272 40 -16 ) ( -240 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -272 40 -24 ) ( -272 48 -24 ) ( -272 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 5 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"message" "electrical_explosion" +"target" "electrical_explosion" +// brush 0 +{ +( -176 48 0 ) ( -176 40 0 ) ( -208 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -176 48 -16 ) ( -208 48 -16 ) ( -176 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -176 48 -16 ) ( -176 48 -24 ) ( -176 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -208 40 -32 ) ( -176 40 -32 ) ( -208 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -208 40 -24 ) ( -208 40 -16 ) ( -176 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -208 40 -24 ) ( -208 48 -24 ) ( -208 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 6 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "fire" +"message" "fire" +// brush 0 +{ +( -112 48 0 ) ( -112 40 0 ) ( -144 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -112 48 -16 ) ( -144 48 -16 ) ( -112 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -112 48 -16 ) ( -112 48 -24 ) ( -112 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -144 40 -32 ) ( -112 40 -32 ) ( -144 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -144 40 -24 ) ( -144 40 -16 ) ( -112 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -144 40 -24 ) ( -144 48 -24 ) ( -144 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 7 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "fountain" +"message" "fountain" +// brush 0 +{ +( -48 48 0 ) ( -48 40 0 ) ( -80 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -48 48 -16 ) ( -80 48 -16 ) ( -48 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -48 48 -16 ) ( -48 48 -24 ) ( -48 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -80 40 -32 ) ( -48 40 -32 ) ( -80 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -80 40 -24 ) ( -80 40 -16 ) ( -48 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -80 40 -24 ) ( -80 48 -24 ) ( -80 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 8 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "particle_fire" +"message" "particle_fire" +// brush 0 +{ +( 16 48 0 ) ( 16 40 0 ) ( -16 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 16 48 -16 ) ( -16 48 -16 ) ( 16 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 16 48 -16 ) ( 16 48 -24 ) ( 16 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -16 40 -32 ) ( 16 40 -32 ) ( -16 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -16 40 -24 ) ( -16 40 -16 ) ( 16 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( -16 40 -24 ) ( -16 48 -24 ) ( -16 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 9 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "phaser" +"message" "phaser" +// brush 0 +{ +( 80 48 0 ) ( 80 40 0 ) ( 48 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 80 48 -16 ) ( 48 48 -16 ) ( 80 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 80 48 -16 ) ( 80 48 -24 ) ( 80 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 48 40 -32 ) ( 80 40 -32 ) ( 48 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 48 40 -24 ) ( 48 40 -16 ) ( 80 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 48 40 -24 ) ( 48 48 -24 ) ( 48 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 10 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"message" "smoke" +"target" "smoke" +// brush 0 +{ +( 144 48 0 ) ( 144 40 0 ) ( 112 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 144 48 -16 ) ( 112 48 -16 ) ( 144 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 144 48 -16 ) ( 144 48 -24 ) ( 144 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 112 40 -32 ) ( 144 40 -32 ) ( 112 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 112 40 -24 ) ( 112 40 -16 ) ( 144 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 112 40 -24 ) ( 112 48 -24 ) ( 112 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 11 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "spark" +"message" "spark" +// brush 0 +{ +( 208 48 0 ) ( 208 40 0 ) ( 176 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 208 48 -16 ) ( 176 48 -16 ) ( 208 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 208 48 -16 ) ( 208 48 -24 ) ( 208 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 176 40 -32 ) ( 208 40 -32 ) ( 176 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 176 40 -24 ) ( 176 40 -16 ) ( 208 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 176 40 -24 ) ( 176 48 -24 ) ( 176 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 12 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "steam" +"message" "steam" +// brush 0 +{ +( 272 48 0 ) ( 272 40 0 ) ( 240 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 272 48 -16 ) ( 240 48 -16 ) ( 272 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 272 48 -16 ) ( 272 48 -24 ) ( 272 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 240 40 -32 ) ( 272 40 -32 ) ( 240 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 240 40 -24 ) ( 240 40 -16 ) ( 272 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 240 40 -24 ) ( 240 48 -24 ) ( 240 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 13 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "surface_explosion" +"message" "surface_explosion" +// brush 0 +{ +( 336 48 0 ) ( 336 40 0 ) ( 304 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 336 48 -16 ) ( 304 48 -16 ) ( 336 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 336 48 -16 ) ( 336 48 -24 ) ( 336 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 304 40 -32 ) ( 336 40 -32 ) ( 304 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 304 40 -24 ) ( 304 40 -16 ) ( 336 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 304 40 -24 ) ( 304 48 -24 ) ( 304 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 14 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"message" "torpedo" +"target" "torpedo" +// brush 0 +{ +( 400 48 0 ) ( 400 40 0 ) ( 368 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 400 48 -16 ) ( 368 48 -16 ) ( 400 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 400 48 -16 ) ( 400 48 -24 ) ( 400 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 368 40 -32 ) ( 400 40 -32 ) ( 368 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 368 40 -24 ) ( 368 40 -16 ) ( 400 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 368 40 -24 ) ( 368 48 -24 ) ( 368 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 15 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "transporter" +"message" "transporter" +// brush 0 +{ +( 464 48 0 ) ( 464 40 0 ) ( 432 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 464 48 -16 ) ( 432 48 -16 ) ( 464 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 464 48 -16 ) ( 464 48 -24 ) ( 464 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 432 40 -32 ) ( 464 40 -32 ) ( 432 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 432 40 -24 ) ( 432 40 -16 ) ( 464 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 432 40 -24 ) ( 432 48 -24 ) ( 432 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 16 +{ +"classname" "info_notnull" +"origin" "448.000000 0.000000 -48.000000" +"targetname" "transporter_target" +} +// entity 17 +{ +"classname" "info_notnull" +"origin" "-384.000000 0.000000 -48.000000" +"targetname" "blow_chunks_target" +} +// entity 18 +{ +"classname" "info_notnull" +"origin" "-320.000000 0.000000 -48.000000" +"targetname" "bolt_target" +} +// entity 19 +{ +"classname" "info_notnull" +"origin" "256.000000 0.000000 -48.000000" +"targetname" "steam_target" +} +// entity 20 +{ +"classname" "info_notnull" +"origin" "320.000000 0.000000 -48.000000" +"targetname" "surface_explosion_target" +} +// entity 21 +{ +"classname" "info_notnull" +"origin" "384.000000 0.000000 -48.000000" +"targetname" "torpedo_target" +} +// entity 22 +{ +"classname" "info_notnull" +"origin" "-64.000000 0.000000 -48.000000" +"targetname" "fountain_target" +} +// entity 23 +{ +"classname" "info_notnull" +"origin" "-256.000000 0.000000 -48.000000" +"targetname" "drip_target" +} +// entity 24 +{ +"classname" "info_notnull" +"origin" "-192.000000 0.000000 -48.000000" +"targetname" "electrical_explosion_target" +} +// entity 25 +{ +"classname" "info_notnull" +"origin" "-128.000000 0.000000 -48.000000" +"targetname" "fire_target" +} +// entity 26 +{ +"classname" "info_notnull" +"origin" "192.000000 0.000000 -48.000000" +"targetname" "spark_target" +} +// entity 27 +{ +"classname" "info_notnull" +"origin" "0.000000 0.000000 -48.000000" +"targetname" "particle_fire_target" +} +// entity 28 +{ +"classname" "info_notnull" +"origin" "64.000000 0.000000 -48.000000" +"targetname" "phaser_target" +} +// entity 29 +{ +"classname" "info_notnull" +"origin" "128.000000 0.000000 -48.000000" +"targetname" "smoke_target" +} +// entity 30 +{ +"classname" "fx_blow_chunks" +"origin" "-384.000000 0.000000 48.000000" +"target" "blow_chunks_target" +"targetname" "blow_chunks" +} +// entity 31 +{ +"classname" "fx_bolt" +"origin" "-320.000000 0.000000 48.000000" +"targetname" "bolt" +"target" "bolt_target" +"spawnflags" "1" +} +// entity 32 +{ +"classname" "fx_drip" +"origin" "-256.000000 0.000000 48.000000" +"damage" "2" +"random" "1" +} +// entity 33 +{ +"classname" "fx_electrical_explosion" +"origin" "-192.000000 0.000000 48.000000" +"targetname" "electrical_explosion" +"target" "electrical_explosion_target" +} +// entity 34 +{ +"classname" "fx_fire" +"origin" "-128.000000 0.000000 48.000000" +"targetname" "fire" +"target" "fire_target" +} +// entity 35 +{ +"classname" "fx_fountain" +"origin" "-64.000000 0.000000 48.000000" +"targetname" "fountain" +"target" "fountain_target" +} +// entity 36 +{ +"classname" "fx_particle_fire" +"origin" "0.000000 0.000000 48.000000" +"targetname" "particle_fire" +"target" "particle_fire_target" +} +// entity 37 +{ +"classname" "fx_phaser" +"origin" "64.000000 0.000000 48.000000" +"targetname" "phaser" +"target" "phaser_target" +} +// entity 38 +{ +"classname" "fx_smoke" +"origin" "128.000000 0.000000 48.000000" +"targetname" "smoke" +"target" "smoke_target" +} +// entity 39 +{ +"classname" "fx_spark" +"origin" "192.000000 0.000000 48.000000" +"target" "spark_target" +"targetname" "spark" +} +// entity 40 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam2" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 41 +{ +"classname" "fx_surface_explosion" +"origin" "320.000000 0.000000 48.000000" +"targetname" "surface_explosion" +"target" "surface_explosion_target" +"spawnflags" "7" +} +// entity 42 +{ +"classname" "fx_torpedo" +"origin" "384.000000 0.000000 48.000000" +"targetname" "torpedo" +"target" "torpedo_target" +} +// entity 43 +{ +"classname" "fx_transporter" +"origin" "448.000000 0.000000 48.000000" +"targetname" "transporter" +"target" "transporter_target" +} +// entity 44 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 45 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 46 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 47 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 48 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 49 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 50 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 51 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 52 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 53 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 54 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 55 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 56 +{ +"classname" "fx_steam" +"origin" "256.000000 0.000000 48.000000" +"targetname" "steam" +"target" "steam_target" +"spawnflags" "2" +"damage" "10" +} +// entity 57 +{ +"classname" "info_notnull" +"origin" "448.000000 0.000000 -48.000000" +"targetname" "transporter_target1" +} +// entity 58 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "csteam" +"message" "Cooking Steam" +// brush 0 +{ +( 528 48 0 ) ( 528 40 0 ) ( 496 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 528 48 -16 ) ( 496 48 -16 ) ( 528 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 528 48 -16 ) ( 528 48 -24 ) ( 528 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 496 40 -32 ) ( 528 40 -32 ) ( 496 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 496 40 -24 ) ( 496 40 -16 ) ( 528 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 496 40 -24 ) ( 496 48 -24 ) ( 496 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 59 +{ +"classname" "info_notnull" +"origin" "512.000000 0.000000 -48.000000" +"targetname" "csteam_target" +} +// entity 60 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "efire" +"message" "Electric Fire" +// brush 0 +{ +( 592 48 0 ) ( 592 40 0 ) ( 560 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 592 48 -16 ) ( 560 48 -16 ) ( 592 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 592 48 -16 ) ( 592 48 -24 ) ( 592 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 560 40 -32 ) ( 592 40 -32 ) ( 560 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 560 40 -24 ) ( 560 40 -16 ) ( 592 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 560 40 -24 ) ( 560 48 -24 ) ( 560 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 61 +{ +"classname" "info_notnull" +"origin" "576.000000 0.000000 -48.000000" +"targetname" "efire_target" +} +// entity 62 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "fbolt" +"message" "Forge Bolt" +// brush 0 +{ +( 656 48 0 ) ( 656 40 0 ) ( 624 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 656 48 -16 ) ( 624 48 -16 ) ( 656 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 656 48 -16 ) ( 656 48 -24 ) ( 656 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 624 40 -32 ) ( 656 40 -32 ) ( 624 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 624 40 -24 ) ( 624 40 -16 ) ( 656 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 624 40 -24 ) ( 624 48 -24 ) ( 624 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 63 +{ +"classname" "info_notnull" +"origin" "640.000000 0.000000 -48.000000" +"targetname" "fbolt_target" +} +// entity 64 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "plasma" +"message" "Plasma" +// brush 0 +{ +( 720 48 0 ) ( 720 40 0 ) ( 688 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 720 48 -16 ) ( 688 48 -16 ) ( 720 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 720 48 -16 ) ( 720 48 -24 ) ( 720 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 688 40 -32 ) ( 720 40 -32 ) ( 688 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 688 40 -24 ) ( 688 40 -16 ) ( 720 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 688 40 -24 ) ( 688 48 -24 ) ( 688 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 65 +{ +"classname" "info_notnull" +"origin" "704.000000 0.000000 -48.000000" +"targetname" "plasma_target" +} +// entity 66 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "enstream" +"message" "Energy Stream" +// brush 0 +{ +( 784 48 0 ) ( 784 40 0 ) ( 752 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 784 48 -16 ) ( 752 48 -16 ) ( 784 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 784 48 -16 ) ( 784 48 -24 ) ( 784 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 752 40 -32 ) ( 784 40 -32 ) ( 752 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 752 40 -24 ) ( 752 40 -16 ) ( 784 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 752 40 -24 ) ( 752 48 -24 ) ( 752 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 67 +{ +"classname" "info_notnull" +"origin" "768.000000 0.000000 -48.000000" +"targetname" "enstream_target" +} +// entity 68 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "transstream" +"message" "Transporter Stream" +// brush 0 +{ +( 848 48 0 ) ( 848 40 0 ) ( 816 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 848 48 -16 ) ( 816 48 -16 ) ( 848 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 848 48 -16 ) ( 848 48 -24 ) ( 848 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 816 40 -32 ) ( 848 40 -32 ) ( 816 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 816 40 -24 ) ( 816 40 -16 ) ( 848 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 816 40 -24 ) ( 816 48 -24 ) ( 816 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 69 +{ +"classname" "info_notnull" +"origin" "832.000000 0.000000 -48.000000" +"targetname" "transstream_target" +} +// entity 70 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "extrail" +"message" "Explosion Trail" +// brush 0 +{ +( 912 48 0 ) ( 912 40 0 ) ( 880 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 912 48 -16 ) ( 880 48 -16 ) ( 912 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 912 48 -16 ) ( 912 48 -24 ) ( 912 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 880 40 -32 ) ( 912 40 -32 ) ( 880 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 880 40 -24 ) ( 880 40 -16 ) ( 912 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 880 40 -24 ) ( 880 48 -24 ) ( 880 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 71 +{ +"classname" "info_notnull" +"origin" "896.000000 0.000000 -48.000000" +"targetname" "extrail_target" +} +// entity 72 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "benbeam" +"message" "Borg Energy Beam" +// brush 0 +{ +( 976 48 0 ) ( 976 40 0 ) ( 944 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 976 48 -16 ) ( 944 48 -16 ) ( 976 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 976 48 -16 ) ( 976 48 -24 ) ( 976 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 944 40 -32 ) ( 976 40 -32 ) ( 944 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 944 40 -24 ) ( 944 40 -16 ) ( 976 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 944 40 -24 ) ( 944 48 -24 ) ( 944 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 73 +{ +"classname" "info_notnull" +"origin" "960.000000 0.000000 -48.000000" +"targetname" "benbeam_target" +} +// entity 74 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "shimmery" +"message" "Shimmery Thing" +// brush 0 +{ +( 1040 48 0 ) ( 1040 40 0 ) ( 1008 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 1040 48 -16 ) ( 1008 48 -16 ) ( 1040 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 1040 48 -16 ) ( 1040 48 -24 ) ( 1040 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 1008 40 -32 ) ( 1040 40 -32 ) ( 1008 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 1008 40 -24 ) ( 1008 40 -16 ) ( 1040 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 1008 40 -24 ) ( 1008 48 -24 ) ( 1008 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 75 +{ +"classname" "info_notnull" +"origin" "1024.000000 0.000000 -48.000000" +"targetname" "shimmery_target" +} +// entity 76 +{ +"classname" "func_usable" +"spawnflags" "8" +"wait" "1" +"target" "borgbolt" +"message" "borg bolt" +// brush 0 +{ +( 1104 48 0 ) ( 1104 40 0 ) ( 1072 48 0 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 1104 48 -16 ) ( 1072 48 -16 ) ( 1104 48 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 1104 48 -16 ) ( 1104 48 -24 ) ( 1104 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 1072 40 -32 ) ( 1104 40 -32 ) ( 1072 48 -32 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 1072 40 -24 ) ( 1072 40 -16 ) ( 1104 40 -24 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +( 1072 40 -24 ) ( 1072 48 -24 ) ( 1072 40 -16 ) common/trigger 0 0 0 0.5 0.5 0 0 0 +} +} +// entity 77 +{ +"classname" "info_notnull" +"origin" "1088.000000 0.000000 -48.000000" +"targetname" "borgbolt_target" +} +// entity 78 +{ +"classname" "fx_cooking_steam" +"origin" "512.000000 0.000000 48.000000" +"target" "csteam_target" +"targetname" "csteam" +} +// entity 79 +{ +"classname" "fx_elecfire" +"origin" "576.000000 0.000000 48.000000" +"target" "efire_target" +"targetname" "efire" +} +// entity 80 +{ +"classname" "fx_forge_bolt" +"origin" "640.000000 0.000000 48.000000" +"target" "fbolt_target" +"targetname" "fbolt" +} +// entity 81 +{ +"classname" "fx_plasma" +"origin" "704.000000 0.000000 48.000000" +"target" "plasma_target" +"targetname" "plasma" +} +// entity 82 +{ +"classname" "fx_energy_stream" +"origin" "768.000000 0.000000 48.000000" +"target" "enstream_target" +"targetname" "enstream" +} +// entity 83 +{ +"classname" "fx_transporter_stream" +"origin" "832.000000 0.000000 48.000000" +"target" "transstream_target" +"targetname" "transstream" +} +// entity 84 +{ +"classname" "fx_explosion_trail" +"origin" "896.000000 0.000000 48.000000" +"target" "extrail_target" +"targetname" "extrail" +} +// entity 85 +{ +"classname" "fx_borg_energy_beam" +"origin" "960.000000 0.000000 48.000000" +"target" "benbeam_target" +"targetname" "benbeam" +} +// entity 86 +{ +"classname" "fx_shimmery_thing" +"origin" "1024.000000 0.000000 48.000000" +"target" "shimmery_target" +"targetname" "shimmery" +"spawnflags" "3" +} +// entity 87 +{ +"classname" "fx_borg_bolt" +"origin" "1088.000000 0.000000 48.000000" +"target" "borgbolt_target" +"targetname" "borgbolt" +}