xxxxxxxxxx
ArrayList < Bullet > bullets = new ArrayList();
ArrayList < Enemy > mob = new ArrayList();
Player player;
int cycle1 = 0;
int cycle2 = 0;
String keysHeld = "";
float sinceSpawn;
float spawnInterval = 100;
void setup() {
fullScreen();
player = new Player();
}
void draw() {
background(250);
for (Bullet instance: bullets) {
instance.render();
if (abs(instance.xPos) > width || abs(instance.yPos) > height) bullets.remove(instance);
}
if (millis() - sinceSpawn > spawnInterval) {
mob.add(new Enemy());
sinceSpawn = millis();
}
for (Enemy instance: mob) {
instance.render();
}
if (mousePressed) {
if (cycle1 >= 10) {
bullets.add(new Bullet(2.5, player.size * 14 / 10, 7.5));
bullets.add(new Bullet(3, player.size * 16 / 10, 8));
cycle1 = 0;
}
if (cycle2 >= 40) {
bullets.add(new Bullet(1.25, player.size * 12 / 10, 6));
cycle2 = 0;
}
}
player.direction = atan2((mouseY - player.yPos), (mouseX - player.xPos));
player.render();
if (isHeld('w'))
player.yPos -= 5;
if (isHeld('a'))
player.xPos -= 5;
if (isHeld('s'))
player.yPos += 5;
if (isHeld('d'))
player.xPos += 5;
cycle1 += 1 / (frameRate / 30);
cycle2 += 1 / (frameRate / 30);
}
boolean isHeld(char _key) {
return keysHeld.contains(String(_key));
}
void keyPressed() {
keysHeld += String(key);
}
void keyReleased() {
keysHeld = keysHeld.replace(String(key), "");
}