Attack Track

Overview

This is designed to hold a single track for an attack. Many attacks will only have one track but some will have several, making this format a necessity.

Instead of holding an array of vertices, this holds a 2 dimensional array of linked lists, effectively making it a 3 dimensional array with 'time' being the last index. Each vertex will point to a future 'vertex' and interpolation may be needed to get values in between keyframes like this.

void c_AttkTrack::ResetHits()

Resets the hit array for this attack. This boolean array prevents the same player from being hits twice by the same track.


void c_AttkTrack::TranslateTrack(SPoint t)

Translates the entire track over, according to 't'.


void c_AttkTrack::SetBreak(bool val, int iInd, int jInd)

Sets .break, a boolean value on the vertex to true. This denotes the end of a defined polygon.


int c_AttkTrack::FetchNextBreak(int tInd, int lastB, bool isRight)

For track tInd, this fetches the first break past the index implied by 'lastB'.


void c_AttkTrack::Set*

Set functions to change the value of a specified variable of a speficied vertex.


AttkVtx* c_AttkTrack::GetVertSPointer(int iInd, int jInd)

returns a pointer to the specified vertex


AttkVtx* c_AttkTrack::GetCtrSPointer(int iInd)

Returns a pointer to the center vertex


SPoint* c_AttkTrack::FetchRenderingFrame(float frameInd, int tInd, SPoint loc, bool isRight)

returns an array specifically conditioned to be rendered for debug display.