Ammukset
Lisätään mukaan ammuksia.
// Ohjelman tehnyt e-Oppi Oy
// 30.8.2017
PImage alus1; // Kuva-muuttuja
PImage ammus1;
PImage ammus2;
int a = 0; // Aluksen vaakakoordinaatti
int b = 0; // Aluksen pystykoordinaatti
int ammus_x1 = 0; // 1. ammuksen vaakakoordinaatti
int ammus_y1 = 0; // 1. ammuksen pystykoordinaatti
int ammus_x2 = 0; // 2. ammuksen vaakakoordinaatti
int ammus_y2 = 0; // 2. ammuksen pystykoordinaatti
int laskuri1 = 0; // Liikuta 1. ammusta laskurilla
int laskuri2 = 0; // Liikuta 2. ammusta laskurilla
boolean tulta1 = false; // Ei vielä ammuttu 1. tykillä
boolean tulta2 = false; // Ei vielä ammuttu 2. tykillä
void setup () {
size(600,600); // ikkunan koko
frameRate(100); // Ikkunan päivitysnopeus
alus1 = loadImage("alus1.png"); // Sijoitetaan kuva-muuttujalle kuva
ammus1 = loadImage("ammus.png");
ammus2 = loadImage("ammus.png");
}
void draw () {
translate(width/2,height/2); // Origo (0,0) keskelle ikkunaa
background(0); // taustan väri musta
// Aluksen liikuttelu
if (keyPressed == true){ // Jos on näppäintä painettu
if (keyCode == RIGHT) { // Jos painetaan nuoli oikealle
if (a < 200) { // Jos oikeaa reunaa ei ole vielä saavutettu
a++; // niin kasvata laskuria eli liiku oikealle
}
}
if (keyCode == LEFT) { // Jos painetaan nuoli vasemalle
if (a > -300) { // Jos vasenta reunaa ei ole vielä saavutettu
a--; // niin pienennä laskuria eli liiku vasemmalle
}
}
if (keyCode == DOWN) { // Jos painetaan nuoli alas
if (b < 200) { // Jos alareunaa ei ole vielä saavutettu
b++; // niin kasvata laskuria eli liiku alas
}
}
if (keyCode == UP) { // Jos painetaan nuoli ylös
if (b > -300) { // Jos yläreunaa ei ole vielä saavutettu
b--; // niin pienennä laskuria eli liiku ylös
}
}
if (keyCode == CONTROL) { // Jos painetaan CTRL-painike
tulta1 = true; // 1. tykin ammus liikkeelle
laskuri1 = 0; // Aseta laskurille alkuarvo
ammus_x1 = a+15; // Aseta 1. ammuksen vaakakoordinaatti
ammus_y1 = b+20; // Aseta 1. ammuksen pystykoordinaatti
}
if (key == 32) { // Jos painetaan Välilyönti-painike
tulta2 = true; // 2. tykin ammus liikkeelle
laskuri2 = 0; // Aseta laskurille alkuarvo
ammus_x2 = a+66; // Aseta 2. ammuksen vaakakoordinaatti
ammus_y2 = b+20; // Aseta 2. ammuksen pystykoordinaatti
}
}
if (tulta1 == true) { // Jos 1. tykillä ammuttu
laskuri1--; // niin kasvata laskuria
image(ammus1,ammus_x1,ammus_y1+laskuri1,20,20); // Näytä 1. ammus
}
if (tulta2 == true) { // Jos 2. tykillä ammuttu
laskuri2--; // niin kasvata laskuria
image(ammus2,ammus_x2,ammus_y2+laskuri2,20,20); // Näytä 2. ammus
}
if (laskuri1 < -300) { // 1. ammuksen kantama saavutettu
tulta1 = false; // Tuhoa 1. ammus
}
if (laskuri2 < -300) { // 2. ammuksen kantama saavutettu
tulta2 = false; // Tuhoa 2. ammus
}
image(alus1,a,b,100,100); // Näytetään aluksen kuva
}
Seuraavaksi olisi meteoriittien lisääminen. Jolloin saisimme rakennettua kokonaisen pelin. Sen voit tehdä itse. Apua saat aikaisemmista peliesimerkeistä. Katso edellisen kappaleen lisämateriaalien esimerkki.
