/**
* Strength in numbers
*
*
Elie Zananiri
* CART 253, Winter 2008
*/
// ----------------------------------------------------------------------
// GLOBAL CONSTANTS
// ----------------------------------------------------------------------
int MAX_SOLDIERS = 200;
// ----------------------------------------------------------------------
// GLOBAL VARIABLES
// ----------------------------------------------------------------------
int numSoldiers = 0;
Soldier army[] = new Soldier[MAX_SOLDIERS];
// ----------------------------------------------------------------------
// BUILT-IN FUNCTIONS
// ----------------------------------------------------------------------
void setup() {
size(400, 400);
smooth();
noStroke();
}
void draw() {
background(0);
step();
// draw all the soldiers
for (int i=0; i < numSoldiers; i++) {
army[i].draw();
}
}
void mousePressed() {
addSoldier(mouseX, mouseY);
}
void mouseDragged() {
addSoldier(mouseX, mouseY);
}
void keyPressed() {
if (key == ' ') {
// clear all
numSoldiers = 0;
}
}
// ----------------------------------------------------------------------
// USER FUNCTIONS
// ----------------------------------------------------------------------
/* adds a new soldier to the display */
void addSoldier(int newX, int newY) {
if (numSoldiers < MAX_SOLDIERS) {
army[numSoldiers] = new Soldier(newX, newY);
numSoldiers++;
}
}
/* moves all the soldiers */
void step() {
for (int i=0; i < numSoldiers; i++) {
army[i].move();
}
}