28 for (i = 0; i <
balls.size(); i++)
31 for (i = 0; i <
bolts.size(); i++)
42 #define V( ii, xx, yy, zz, ss, \
43 tt ) vtx[ii].x = xx; vtx[ii].y = yy; vtx[ii].z = zz+beam_offset+.875; vtx[ii].i = 0; vtx[ii].j = 0; vtx[ii].k = 1; \
44 vtx[ii].s = ss; vtx[ii].t = tt;
45 V( 0, 0, 0, -.875, 0, .5 );
46 V( 1, 0, -1, 0, .875, 1 );
47 V( 2, 0, 0, .125, 1, .5 );
48 V( 3, 0, 1, 0, .875, 0 );
49 V( 4, 0, 0, -.875, 0, .5 );
50 V( 5, -1, 0, 0, .875, 1 );
51 V( 6, 0, 0, .125, 1, .5 );
52 V( 7, 1, 0, 0, .875, 0 );
53 V( 8, 1, 0, 0, .1875, 0 );
54 V( 9, 0, 1, 0, .375, .1875 );
55 V( 10, -1, 0, 0, .1875, .375 );
56 V( 11, 0, -1, 0, 0, .1875 );
70 if ( decal >= (
int) q->
bolts.size() ) {
71 q->
bolts.push_back( vector< Bolt > () );
73 if ( blargh >= (
int) q->
bolts.size() )
74 q->
bolts.push_back( vector< Bolt > () );
89 q->
animations.back()->SetPosition( cur_position );
90 q->
balls.push_back( vector< Bolt > () );
110 vector< vector< Bolt > >::iterator
i;
111 vector< Bolt >::iterator
j;
112 vector< Animation* >::iterator
k = qq->
animations.begin();
115 float pixel_angle = 2
119 pixel_angle *= pixel_angle;
123 for (i = qq->
balls.begin(); i != qq->
balls.end(); i++, k++) {
125 if ( i->begin() != i->end() ) {
126 float bolt_size = 2*i->begin()->type->Radius*2;
127 bolt_size *= bolt_size;
130 for (j = i->begin(); j != i->end(); j++) {
133 float distance = (bolt->cur_position-campos).MagnitudeSquared();
134 if (distance*pixel_angle < bolt_size) {
136 BlendTrans( bolt->drawmat, bolt->cur_position, bolt->prev_position );
150 if (blendbeams ==
true)
159 for (i = qq->
bolts.begin(); i != qq->
bolts.end(); decal++, i++) {
161 if ( dec && i->begin() != i->end() ) {
162 float bolt_size = 2*i->begin()->type->Radius+i->begin()->type->Length;
163 bolt_size *= bolt_size;
166 for (j = i->begin(); j != i->end(); j++) {
168 float distance = (bolt.cur_position-campos).MagnitudeSquared();
169 if (distance*pixel_angle < bolt_size) {
172 BlendTrans( bolt.drawmat, bolt.cur_position, bolt.prev_position );
173 Matrix drawmat( bolt.drawmat );
174 if (stretchbolts > 0)