Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Metodi joka luo pelikentän pelin alussa/kilven tuhoutuessa
- public static char[][] luoKentta(char[] rivi){
- char[][] kentta = new char[15][11];
- //piirretään kentän reunat
- for( int j = 0; j<15; j++)
- kentta[j][0] = REUNA;
- for(int i = 1; i<11; i++)
- kentta[0][i] = REUNA;
- for(int i = 1; i<11; i++)
- kentta[14][i] = REUNA;
- for (int j = 0; j<15; j++)
- kentta[j][10] = REUNA;
- //piirretään avaruus
- for(int j = 1; j<10; j++)
- for(int i = 1; i<13; i++)
- kentta[i][j] = AVARUUS;
- //piirretään alus lähtöpaikkaansa
- kentta[13][5] = ALUS;
- //luodaan ensimmäinen rivi asteroideja
- for(int j = 1; j<9; j++)
- kentta[1][j] = rivi[j];
- return kentta;
- }
- //Vieritetään kenttää alaspäin
- public static char[][] vierita(char[][] kentta, char[] asteroidirivi) {
- //tarkistetaan ettei kenttä ole null
- if (kentta != null){
- // Rivien ja sarakkeiden lukumäärät.
- int rivienmr = kentta.length;
- int sarkmr = kentta[0].length;
- // Siirretään kentän toiseksi alimmasta rivistä alkaen.
- //tarkistetaan ettei siirrettä merkki ole alus
- for (int sarake = 1; sarake < sarkmr -1; sarake++)
- if (kentta[13][sarake] != ALUS)
- kentta[13][sarake] = AVARUUS;
- for (int rivi = rivienmr - 4; rivi >= 1; rivi--)
- // Käydään rivi läpi merkki merkiltä.
- for (int sarake = 1; sarake < sarkmr - 1; sarake++) {
- // Merkki siirrettävältä riviltä.
- char merkki = kentta[rivi][sarake];
- // Sijoitetaan merkki seuraavalle riville.
- kentta[rivi + 1][sarake] = merkki;
- }
- //luodaan rivi asteroideja
- for(int j = 1; j<9; j++)
- kentta[1][j] = asteroidirivi[j];
- return kentta;
- }
- else
- return kentta;
- }
Add Comment
Please, Sign In to add comment