From de20d8ba8931b4ad752805d62c92efdddf77c518 Mon Sep 17 00:00:00 2001 From: Harry Young Date: Mon, 12 Dec 2011 00:36:04 +0100 Subject: [PATCH] *Reintegrated the schimmery thing and prepped for some other fx. --There's a warning (other that '/*') in cgame that I dont know how to resolve *added floder maps for mapping resources -- first in is a map for testing all the fx in all their functionality (fxtest) --- cgame/cg_env.c | 69 ++- cgame/cg_event.c | 28 +- cgame/cg_local.h | 19 +- cgame/fx_lib.c | 74 +++ cgame/fx_local.h | 3 + game/g_fx.c | 14 +- maps/fxtest.bsp | Bin 0 -> 65312 bytes maps/fxtest.map | 1128 ++++++++++++++++++++++++++++++++++++++++++++++ 8 files changed, 1270 insertions(+), 65 deletions(-) create mode 100644 maps/fxtest.bsp create mode 100644 maps/fxtest.map 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 0000000000000000000000000000000000000000..fd607ecdb73dbfc4359db06719ac14de508bf93c GIT binary patch literal 65312 zcmeHwf0SL-b>2mYpB8w)V2d9%4JXM!t$MkMk`Py+)Rj}mRUPb57bEeYt`d_}afu^4t~*YsOI(twspHU;*xldR z=R0?w^X|QGM!MoJ&RR$JzI(p&?Qie1_qq4IH#}}#c}MSpEX!toC(B;CG|LXjIr`q? zvaIjqENjlmvK^;qS=Xsq);&ARHe4s?r)1gqO@b55>RYnxmE*JQneHrmbVin~T9joC z!7g5%WxGEln4e{tK-^Id*-K9dk6>WWHok8BT(92RSpEJF-PpM8uEqxz-L|5)r_r8I8{*^KR>(9$; znaB3}4Lpl+xax2d@%5*Z`A?_w6MdQ3N28BTzV;fLg69};2NM1R!f(fSCF8r2@jc1- zo@9I^86Qc;A5F#|O~$*E@$O{2HyQ6u#wX#giT|X;!}`~i%bAT|Sy|m#=30K*E0@;YU4L{jT23 z{8y6kSCaXMlJP^y_{?N~nJN2=jn8Yz{MVBCXC?E`O6Jc>#%CqtbCdD8$@uxn`1#5B z;$(brGCnUEpO=iUO2$_uk3Q26;rzfTtc{ zsRc(g>ghIk%uV@$2RCAb)@AUROMI7%LCaeJl16^SlX@_hctt55{P5W|!Jtt;=AxY= z9a`k^)HU*RefP@+#1s6O>tPNL?VdKA91slS1N=pT0l&NjaZN6{#);r39&+$zEyg9iO@>_~9{j}9AK-v5iYM_F3q10|>c=%S z=c8zA$~ijQd2*8CLp(e_ycX;`r9;n2(%YKgfkl_Mn%OGp?~;z@-F10_@kzM=-d zgp2`mp>#C*J7VydOT3~K4}R`Ly#|lD#Q%z5z(2=NB!9QTV=nO?=J4R>KGbFKm`nU; z1q1$z{6z8}mgHdkF_(A`b9nG`A3A98m`nU`3I_ah{Y3KbHF(S=-oqRo{HOT~I}ILl ziGNbY!T)ZLBmaoOV=nO?=J4R>KG$pTm`nWc3I_Za`-$Z5Hh9b>-oqRo{MhHvx(pt3 ziT|36f&UVKq>=xyOb+okctt55{9XRSL4(I!^6!&z@L%e2d_XGp}EBr+AAC}jQ59Si@VGa-ev;2jF29LSK|D~LRf1Y$S^6!;%@?$RX zz@PySe%xo!c1kCHubdPAs+@x#_dPW7kH|UkJLQ~sV9xs@e+OPj>yl19j>OBym5%>PIiist=fqq!~)Zl zZePDgUPI6M($UDTuM`XX69U4s$+dnU==XYX8FQO*L}vqDZkxehV8Ayi1i&=$k7>*0 z+{Wjy;E;pFTkV+Elny+e%g_!QJmwO=UqGne6%Li_*=z8aOT33UJoxz>x6|M;m-s*M z{3{dw5rfBE;>iy@`0*Tv)@$&XOZ>Mz{|yQY@$5Eu%q8B#GT_1A@E5ua9&?HRbI-rZ z<7CLS!?IqCKjsqeVXo%Ef1$r{(BLtb_?JEZjS2r=gU4Lr$qzjE=lBad4IXoe|7*`L zUk|zF<^O!d;4znY56gfD|3&@+@{|5zF7ZDV5Z>e5>~ZAJ44(P#A?^VD4C%x(|M$xU z0GiU7+jxDebl~UWg*58no&Y_-zb<-^lkWpan&pRn@&nJgzyS|`iKl+xsee+=fkj&_ z9rerSN?>rEoUnyIzvskDzvhn`N2 z__YF@4!&=i`2K0)*G&_@ewz3V)5H%<6Tfkq_)XKqZ=NQ8%QW%#OcQ_aH1UJe#BZG@ zerTHb;c4PWris6An)uOa;>V_m$6rTGr{1@D{DeQc=LxfCP0ZB&zbWGnOUE|E_g>uB zEanjz$9~o&9q*TlFtc?iJIP~k0M7E@^DB|@^AijPrxpVn|0ozdN5B>vF}SbbbC}l! z^Z%q<3_cre$`~>KAmi>cKhI^N`cDO8zca8r56SpzGXD3{@m)d@4>bQD8GoxB zi~NFJe3tUJa{S-YErzy$nJt(zq`S{8#MXYfh7RA+n$i)M!*b1iHsdjJDf%2A^WP@@ zuLTEN;IJ6P2%7(wT>l%7;r*Akhdw%;q*!gBKh|ep+ZQqN_C8xhB2Xy4${}9ZNpvN}P1K;u9 z6a9KKZf)T*@(}Owo;N&`IQKljz}A14Yrvv0e=KIZTz^?G7dS+Wffh8pM{h`f!P_Fw zVc95%!M=5&^f}V8zC{@9oqs7De<6LZ%q_xPBbbY%Unkx208d*ZGB#H_p22&ilgDC) zZQ2*!hn1Zez=0J}4M`_Jz-zED!Lsb*GG> zHvWt795l8p=0h_6r!xMM^ur~XHG=uJjQ@#rYYUvT)hn2TGX9^X_ZlAHiCHa}KbG-7 zlHO%7z!P(eU|y8*Z%Mbg0X#9Q1oMY7{s+=`$~o5ycw(Azj(z(-N$)in;E6$9eN)E& zqx3F=0iGD_&&#E|{Y{Q&cCSPIVjpYC@j2-ZApf{~hTrRenJw2=NWZ}Yz(F2dYD&lc zyicyLlp~rO$BFQuHKpU8@~mLKAze<}FwhOnh|$*##@do0$McMg{|AGiW{jgfA|18b zC*8i!#LK4d@atyjs54-2pzfxeqvIZkb^RJ_d5pYttttPa!}otLcM5)yO4``ZwySg98wH4-zNPFUNbP0IG5JMKhmJ*t8xu> z4?RT~XnIO8_}nDLUpSqoGz7Cp#{ac+yB5F`gWSMA z{)AwP@&|c>-1t{={FofcV{;4`)ajFQ{Fl;G3~UjzR?h#0VA6cXI-x<&Z_D^@gK@Pi z*NK@e=l#+*NCywJpyMT4Q#yFoN&ijHW5?yP!=O$-FXQXw2+c(p>`}iZn8&3TVc;8V z;j@unGqzGL#0Sq4y9`f?fvw+=@n1I>`YuDEo#@YS51R8)bH3f2f6|;|KPTs7=6t6= zms@Q1tLFT1bN+-m-($|dY|fwZ=QHH^b#uPooPX1tzi7_CZO#vw^B59TN5m zG`wFzL;j&XsE6!+f4smS%kcQD1r51?)(MZ#me7Xu&=HT%($MbFLq|M5J48dyqIJ@P z{Qzy99y;RtJD7Fs7f?vZF8(nCi)?w4pE)I&!+?&oN?>!Bka&m(B> z)k8--o~6)k(nCl5jUKmhiue^Ccl{Lc*LmDEQ^eyv8`=^*bkvXcLufsE=!nPrJ+uXS z=!nPrQMAkT&=HUK(`Xm#p(7rj7og42Lr46D9(V2(@uvt*wj+1%#Sx#6;)p#F$J6{# z4(>JaGyQAganGF&KIK2t&p*Q-Q~ne$utGifOz}wclOLaxVm=y<7fQz%;)&xg`Qy9% z5&JW)V}HgG>xJVSf9!-uJ^+t=z_Ak^`34;FZ7O)=GjPb~so+sBz@c8If=4|9hkBd} z9`z0!>U}Es6&{EEWGZ;fS$$Ndhtk4zEY?{T=FPKAHK;(>z=JilYFJyH4z(y>2cJ+Mci5hEYXwp~A2uBCG=4&0qE0?B?+ zI_(foE#w1khji!$FU~O!=kx{d?UAp@b-cepuA@$RrQ?_ww$7j`7OJ61(pMzpwS}Yx(uVPQbeu&S0u^(bDohKc8DfZz@ zrC%cb-O}euzexHV=?&?4F2tVyPU+`KKUexW(q~J5yY#cA;~t3bk8W-*510$3H>6vC?L1&E zmY&AQ&I9HO>1kZ;JYc$|r)y#70dtk~bp7l+V6KsVwRF4Yb{;UxrKfpf=K-@ydYW5y z9x%9Hr1@y)0fW6h&0#wa7<}HA=DnQ<%$?HHTCwvwjkBICFKf!`VO?22R*3DUbn8Fs z%f^j0X5-B|v+KlKv+K)xvw6Xqv-!ljvw3)qXhZGU{AK;wyk`yCdSM;fI>R1iWBv>B zdX03(JB?);$25j%{L0{DIrH@D-mOdnXtMq%N-y?mC^v%*YN*|EELHc^>{nGoSua*9B>32*2sPvCW zzf1aurQ;p}dmodYj@#S^W}Wnu)6N5Clk`-Fod?XI^i;c@2h4raQ-AF|U=XAGrP~rDH0t*N0;{77}! zHK!J=JM=IId5*ZeQ~LSR&r6QHcCH_jgL^gt4%g5z7q8FpM|+NOTqhRiv;}VTGPyxFIyn}O6lFw7fQ!|w@CV8=~qdY_Cn@<(`BM1-$JdD^Of4O z?2|g~G|0E8&x;Bf%LIqtY-r*7xb86197BgV}MxZN^FzGfTlqJYEigb+8eBIQH;)h_H1w_DEfI*$w1NO6+}hu;W^ zaac#i;rBfn;AqK{c^eLEtvLLS2XXk#kC+enpg8VP9DeH}=0j~N z4!=`D+{0}+)UV?3dlbasw<}^k)VSg>*5~qS#}BVt{_b1PT%Kk7n=&kozg?k!%bsO{ zr*+eFb3Ask>7a#J$D4syF}o|Ust>%LuOqhku?v>Zz4grN1;0Y)@ZX8$@>S!{vkWm% z-iiC(cfH4Y-V__+kbzf6CrYs3Ro}p?*zOVyA!de`F~dy#y^ch03%t4(O{1X@o8=m8 z94t0yXu&t-?J{~THu&Z=sBh`N6Z?wvYJ4p(<`Em>>oh21!)QpcZrvPKdG|MU4*w-@ z&};H6^H}u@Gg7^I{^oo<%du{aTX|iu9!hz$Jb$@vDHb)G^6vC;AV2j2t8vKn?yA5# zUK58$E3l5&=*7JZtyDv{^P@L)s5k6Q%G>wV-}Cj>=XsSK{2Jd72gj?U)R1DqtGv&DQ^>*Sl`O9@nd2ugIc@L7; z@AIs;aNjlew?h@!G!6$Uu+5c-WWGP_?}(keYioyk!!v{OX5Y;`cCY6R>$Y6iEyN)M zuZ~hfiUqIw23{TQuHaP-IWJ>|nYM<4-WGVZE}k~Lg;@EcUTVlnu=%<{Lv_6c-<$^Z zZMWf7%^I^%ltx86Uy z#A6SqYwYVS#32K(UsbOmtg**}SA7Goj+WJ1h?(JK%rH~eL-RN2ZGl(o;x(hU5S!&1 z%IYm>Xu-GYdJDce4eHyZ(V&`(^j6nfh_BP2yk+$k>s4Onq|VIiE$B6Q#x+iJJ&$i* zZ}hDQ>(tZ$aW)ojr^{lSjY|k6k&0|9xGVuC*D8YhPeFLvz%jzw}%l>*9Q)p%CkQQw?SH7BsZrTXnq!-<$^J?J^ovv({Uzx4Pa!e4Pg6EvvU!uktb{ zy{F-MGUzq+#x+iJJ=dGp8+|Lnx-~X+ah8um5jM?Vu3L&-#oRHxw~&|nynnw5tm8HH zwz>kVIhohnstRnXS6{c^V}l0Cvllwl+qKl2WzWs|hOXN(uOY0PueT5f$E%~%kYd5B zzJXUq%jzxGt60ViuXH^$e}mo@c(pFBHF^uN&Nt;PtGA#*YUqUy^%i_{8kD!&Xi&{X zdaLU##Mfz1-m-d&^(rrO(t8@}E$B7%#x+iJJ&$i*Z}hDQ>(2MtG>Sl-<$^J?KK)yv*uZ>x4Pa!e4Pg6EvvU!uktb{y{Dnxf?iW^T;nv?bG>=J z(YGS3TVqofYnZ=Dy#-#Azg)MJcP?|s@IFG`q~3sSV$9Urrz)_TlX<;8T!D4GM(;#N zY~KgEJJj3x)GPln)-U^e;daj()@`}wPKZMWULB=|6boMU4ZJ#9R&OC@hLTp578^9Q;9GUQ1>c+o~a~A-+z7@|M+GtXFxN zlit%%Z$YoAH?DD->$%>%-soEq)~&Iri*e>;Qg4CRXZ5H)rdw=UseZ76!^M-Zv^%mlgfmcVVA;p4M zeFLwKmepH`nc-#3Fw@pW(Axs9*2O~a~A-+z7@|M+GtXFxNlit%%Z$YoAH?DD->$%>%-soEq)~&Iri^rIgNxcPLlfPWI zly@d`$M8N$-lX1ub#-Ct?F$uH&B?spo~Xb&UZZz+M{IWcCp**|{5d=cy+X_-a^a_FJp$8wuXY<7I?KTK5z6EVzXRB+4E%3 z(1LH(^%i_{8q~L4MuTeBdW-c|*IS6M)1bU%^%m<@Ugo6EMBH)>x)yn!agEbl&-Lc@ zM&F9Cj@Q)1Z}>PAVViCYysD7vmSXX@Kq>E2Q#k0-NgH+YvkW z3!m*!Z-+v?jeKjF$9~E4hIRAx7UGbBS4XKK#e!FT1Fw#j)mw;};bqJ)Q`bXtC+KZ~ zSL@=-MsFcD%QckMThP#gZ`Jh{d~+Jqw>?IKYA(`SU2h@2PJ{B6)myArd6|0CUIG@eAZl>J3;|7pC66S%KA@ z%=evE1=jHzz56?2yZ`yF4xdjxO}+R|_*q@IXFM+>#?MPa95V3gC^e*5@Tza%)zPwg z3o$dij2ULy8VY*xUGuYA7tb2Kg;?jCS6K2q88o!uTXnq!-<$^JecEVH&6;Pi-s*Y_ z@pT%Mx2)b`y~@j+^qz+MThMFjjcc6ddagIGH~LnDb!%+u;_J-Gq}~Fr$zQHp%DacT zV|ZU8Z&Gi-HZf-E?K>4%&B?spzFmQJyhiWAj@X0$>_;8yZ5Q=s*^KXAtLyfn=MC$& zTyrPHAp@_DQbURbulfdF9WAT35HrKem|>=^p`f<~UagBiHhK%O&Nr{Hq~3yt7JRF& zx8R%8pu7i+2Gy)Fi}hC5TZpgIpuA=E7VA}B=A`#D)LYPN>Wyoh=6bF-uQ&Qugmr6d z>f#TXlS#b=UX#CEx0Lr$=8oZgnY>B80qg3*)Z33Lu$q&3z5PW6*6|v>lO3^(Z$7uf z^CbRuUwKE)S?X)^`<^$fo3FPJhYY+rN)0I%ynT)bygFJ|Zy{!emodXkTSGx_3%ptv zKQMX=v01L6?0GV1Xu-GYdJDce4eHw=qd_%my~TQ~>n+6BX;9v>dW-ccFLP37=FgKs zuc(M>*83}8^!4_t=MC%T>n+3~1Fw!!Ly85j`UYMdEvvT> zGsDZ6VWzH!=5Ns30m({O(adQH7?jniBQ*5#SWU;0*rRlUexjoFWxll!P5iG#UcaNSbg zt`LWucZOU;OaFcn*i`TF6OVF3SK+@U0B@h;0k4jh)mw;};bqJ))7DVX+XAny@z0FjLTr|6D7(J} z4K2j1y553sPJ{aPn$e(|HP2$b)%6zQ>oh2DS-r)2m6tiGGxPgf&};IHYn}z}dfOd%^Ei~% z8?ed?tnxA^VIR$E=z|86XI$en*TJd0dA-rMBCO*z^>zYtGP%D6Ub7Zlx0H86oh?{7gv_LbxA>hO69{@ZZn73{ORZl`-* zWe30JdWeJL)lq6_!wRqZ23{R4tG8IMVi_~MvNaU+w!o`(@m8a^5DUFtLniCP7GcA> z3D(~?yUMWi&1q1!Sw;h{FxO+f)%6zQ3tsl z>+KyzZz0zC<`tU!wb-Dc1>dUgZ^1XGL3z(I8dS6HQL*0YdV>ZRGp9j$%jzxGtGvuf z?`f#{px5l{T;nv?bG`ZfjlLCORd4=2>uly^Qg4CRo#ZU0s;{ z;i3wx<|KGEN*7jO9k0>b=!iY}x|toGC-GY<$~*DHZ}`7gewXJB>*nh%#32K(&xaB$ zc-1%XDz>cNLd*;=V}_Z!9-6;FZwtIy7Z(@}h1e|DPo#Z9j~dkD=M&>lX<;eR)J0RUfL0R=XUiA&UI$Bn5A!de`F~dw<56$18w*_9Ui%X2&Lag)6D=fLc1r06u zR$XtwH>W{)=Nb*Fxkztyy+MPEnbV-WW%U;8RbJ+#_cYw!f?iW^T;nv?fpvLi@|V69 zVO4K_A9}ZsLlM^Tn)?OUEya$6IOM!N;;^s+o9gZEh<)i zfmiF|N~2fTF2QEGhO+xx(9nW!)%6y9a~hycer3*Rz-zvLi}hC5TZpgI02cW@t2Ac& z)VEl#@-ioNW~?F2Gp=!(>$%?i{zl)5u#VTbz^e+mZYdVOm6!5fL*As` z!td&t{oy?o*fb7TS71}U%Q|8YFMY5>z3q9P^)~zWXL;-r&l}clxvp`DLk3 zUiA&UI$Cyr3o$dij2UL?dZ>n=w*_9Ui={?yAvVi3l+|0%(1LH(^%i_{8q~MNMuTcD z(pz0`A-+z7@|M+GtXFxNlR7i6x1iVT>s;eB*Yo)1^+w-{uxVXf<>OFlq*W2}; zw+O4e!0KpO4TU&l(4hHXa~-pJe}jfJ4%CpYMbK;FdoAOzkBT+d1Fu=P>ngBme3w^X zo!(X+2Wp@K-rsV)d3?J{?pcVL^5*MSR&OD`tvtTW$y7tYy0y?z<|JNejPsbeI5^*Q z-(eg|u`YL%*RHYU4H}%@>iz69{=dgTEcztR`ea>iFIfwR#pf&Nf&+ea6&9Spf>-)& zRaoGF2e0&7tFWH;c3E5SzRzRRn7#hI=M?VSpHu8jC0H8=$157Bx0F|OI9|cNe;T|N ztK6CoPOoT19H{rbhSy@lS^(?gz;y!-jdc;?Kwi;%V<%qGLEc+Ztl!UqUSNHEZ!W=x z_>xyNFn3gKzDEVU5+L%o&2Rex_d1cJ{X0d^ndIigzRQm+z@E z7kEZH_?`87{E62EHqdAXzq4MC9Y-tw#P(MLTn4 zq#l1_erHntp&k5|c|GeBuS;qNze!$?9WuxE=nsBdyq>thPJ8TV2fqB=z_cuM2FT(N0s&>#+k?wAdc)tdbGfIo9`uTfCiPy&tTu&7bN#=&jA4 zcwL0nHLlMZdG$u*!JXdDvCf0L>-VQ{Kj^E?pXxl=P@6y1d9b-QJ3{1IY>)XiC}VHL zelX(g9P9mHyf%NT^I&^z{>1Adw61Y|cF3zYVn3Mhc8>La@JRjs6z&I)*5*%j9(=ks zf2#9fXKi+b$hFuW^X+po_D1XnyS$xay&pVYn?Kcgu)8*Y;&l;P*SJ1U%BweGKiK2# z9P9nyOZEFxxF77T&7bN#c&avks`KFK+Uy9CYq34%+cPruM(hXsy`5vdAG}bTKh=3~ zpf-QvbrD+ExIQn+t2bglIOy#h>;2%R`u!=~4-VDlPjw!AzczoW^I))Z& zvW&eE`@t*T&avJPUaifa>O44Hn?Lco2(4>epP$I9H)20{&D%NF`@!q=`%}0d;D12%*Jh-$rf7*S4hxBJ&ZT?i}L3eF-pdKx@ zM}HRA7B^=jS{q!Uon`g=6WOAjYiskTIuDw)`4g`TVunV4R@G)ldCT(PmfGS5JMFQf zKdbBar!WtCYxAew7kEg2*3{-tbspSVn;ob}i|x^$yK9S^vk|QguFy_j{r*I@XlFxh z{#56|=Gy#;*99>{qd$YS*-_rIJQ%4hZm`oHJNh$Tzdwa}u)Q{a+I@kC^k+wH{#56| zL~VAU9xb*7NkJj%`WQ%q_U7J7Ed9brKf8upP%+To1=W4T~yk&W? ztG2koPJ8U=&*Sy`QO9y}n;ob}i|x^$FVz+|XCqo0T%n!4 z_4^aqqMfH|^QSrwp03TGcwG=PH2U*QZFZEmED!eA7B|>wj~)Gap?-e~^WZ>j{2M25O2kOycd-Ug}+U!)v?NDuTQ*Y9oqd(uT%^w%DDA$BKHRh z{*j)w_YaJYZ5bY#)0oq<;Hm`+mk!MzyMJhLch8(0vVQA^!7W1r0-3*cV7y;O)(`fN zjScm0#kB{9M+Y~Ijr2b-H0RV$oGQ%2qgys@0pa|`il*AVwzLC-1M9~}x2*3UTsyFRWN_GJg7vQiP=k)EB7Zk-8I{QAf%dO!u(Kq# zGrVnRykD}@+RCrhU~g$;Z$$EV%lg5AwW)*YKn<3W)Omf3Z0;W$7`1+eD>c}<+7gd# z9ljTyarl)q4iDQqhyUfV`D_OBm^iZE>M)0mC--=Kw0~%9WO#Hu&e8btk(*V&{2j`WuJsO^ zyHw##D%`k4w7uE6o7B+o_|Ue&L4T)+Oqshh8>K#|df zSMveSJoFuD`r)=&Xr!m$$?`~z$fM!ty#-ck^(4CC7Z?kr8cvS5X7xs2V582QbGP^c z8w=}P8MB?*o0Yj-prCMU6 zyLV7>Z`?4v)xUAs(7#pR@!*jmXD_Pl3U+-1;n;&S)fF8%R|JjZ6xB+FoMOIMUR?W; z9RD<(N24g~D$MKr#9Z5E9h=PGCFEuc3aZL#polG(Yz>k52xB83wu^95p&(&NWVm+> zc|pbY`F0{WKRw_1<|8(lY$B0GzJ~|~r@6*{zA@+@2iS5- zv`9++#v~U|@Z46hR)N8!2h8U0N=oX$AZ!&Dy@{wYpWE@C*Oo9=)luZjn|dUW_MM+R zDA;;>Gd^#|XU?1T6>ZDDKJtguH{3X79QPaF}Y{)*C;po z?~NKaCEwc&_;+SCIp*k!{91Z+pFZY(#b4LlG%Q~uHdg98`H-_4@vdJIrY5HxU4c_e z7KgWR;pE8DF#aZ}SH7&>if?U$L-H-FUa83=uae0e;p^~TQz;==3F4eV;N?7FG)irG|mL7P_|V=r)+>At*d_1ZSr8*ii9l#(I6uiQXSarukG5 zEKldYUSSxYBDZ~%>p$h=O*`0}&TY5C=0-dstkoPaA0BzD;m#V&PV3%SVVBJ9HhG7# zCCF<9S+%s_u2o@oz};$PZS_{$ZrLiGKmA_WDz zeuaYY=TU3@eW^VV`JNukPj6SQFpphgtzQbgaX9;;qrn{3?Xv(Sd t22c=@e76h&rn}!&2yj7RCAvS=#NSWOaA$fv-kV literal 0 HcmV?d00001 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" +}