aplikacja składa sie z dwóch klas start i oblicz chciałbym wprowadzic w niej wiele zmian i ja rozbudowac ale mam problem aby zrobic z niej zwykła aplikacje
Zawartosc 1 pliku :
package gra3;
import java.util.TimerTask;
public class Oblicz extends TimerTask{
int level=1;
int mapa[][] = new int[20][20];
//poczatkowe polozenie postaci (polpostaci) polozenie skrzyni(polpostaci2
int polpostaciy=17, polpostacix=2;
int polpostaciy2=17, polpostacix2=3;
//wywolania rysowania w klasie start
@Override
public void run() {
Start.applet.repaint();
}
//tablica mapy
//0-trawa
//1-sciana
//2-podloga
//3-drzwi
//4-gracz
//5-skrzynia
//6-drabinka
public void mapa(){
System.out.println("Poziom:"+level);
/*int mapa1[][] = {
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,6,2,1},
{1,0,4,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,1},
{1,2,2,2,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
};*/
if(level==1){
int mapa1[][] = {
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,1},
{1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
};
for(int i=0; i<mapa.length; i++){
for(int j=0; j<mapa[0].length; j++){
mapa[i][j] = mapa1[i][j];
}
}
}
else if(level==2)
{
int mapa2[][] = {
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //1
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //2
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //3
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //4
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, //13
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,1}, //14
{1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1}, //15
{1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,1}, //16
//17
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1}, //18
{1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1}, //19
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, //20//5
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //6
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //7
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //8
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //9
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //10
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //11
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //12
};
for(int i=0; i<mapa.length; i++){
for(int j=0; j<mapa[0].length; j++){
mapa[i][j] = mapa2[i][j];
}
}
}
else if(level==3)
{
int mapa3[][] = {
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //1
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //2
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //3
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //4
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, //13
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,1}, //14
{1,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1}, //15
{1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,1}, //16
//17
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1}, //18
{1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1}, //19
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},//5
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //6
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //7
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //8
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //9
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //10
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //11
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //12
//20
};
for(int i=0; i<mapa.length; i++){
for(int j=0; j<mapa[0].length; j++){
mapa[i][j] = mapa3[i][j];
}
}
}
else if(level==4)
{
int mapa4[][] = {
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //1
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //2
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //3
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //4
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, //13
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,1}, //14
{1,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1}, //15
{1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,1}, //16
//17
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1}, //18
{1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1}, //19
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},//5
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //6
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //7
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //8
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //9
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //10
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //11
{9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, //12
//20
};
for(int i=0; i<mapa.length; i++){
for(int j=0; j<mapa[0].length; j++){
mapa[i][j] = mapa4[i][j];
}
}
}
}
public void ruchpostaci(char klawisz){
System.out.println(polpostacix+" "+polpostaciy);
switch(klawisz){
case 'w':
if(mapa[polpostaciy-1][polpostacix]==6){
mapa[polpostaciy-1][polpostacix]=4;
mapa[polpostaciy][polpostacix]=0;
polpostaciy--;
}
else if(mapa[polpostaciy-1][polpostacix]==0){
mapa[polpostaciy-1][polpostacix]=4;
mapa[polpostaciy][polpostacix]=6;
polpostaciy--;
}
//break;
// jesli miejsce oddalone od postaci o 1 w dol to trawa
// to umieszcza w tym miejscu postac a w miejscu postaci trawe
// i powieksza polozenie postaci aby wiedziec gdzie znajduje sie postac
//wylaczone nieuzywane
case 's':
if(mapa[polpostaciy+1][polpostacix]==6){
mapa[polpostaciy+2][polpostacix]=4;
mapa[polpostaciy][polpostacix]=0;
for(int i=0; i<=2; i++){
polpostaciy++;
}
}
break;
//jesli miejsce oddalone od postaci o 1 w lewo i 1 dol jest dziura(trawa)
//to sprawdza czy znajduje sie obok skrzynia jesli tak to spycha ja do dziury
//jesli nie ma dziury przepycha obok skrzynie zapisuje polozenie skrzyni i postaci
//jesli nie ma skrzyni wpada jesli nie ma dziury idzie dalej
//jesli na lewo od postaci sa drzwi resetuje level
case 'a':
if(mapa[polpostaciy+1][polpostacix-1]==0 && mapa[polpostaciy][polpostacix-1]!=5){
mapa[polpostaciy][polpostacix]=0;
mapa[polpostaciy+1][polpostacix-1]=4;
polpostacix--;
polpostaciy++;
}
else if(mapa[polpostaciy][polpostacix-1]==3){
mapa[polpostaciy][polpostacix-1]=4;
mapa[polpostaciy][polpostacix]=0;
polpostacix--;
mapa();
polpostacix=2;
polpostaciy=17;
polpostacix2=3;
polpostaciy2=17;
}
else if(mapa[polpostaciy][polpostacix-1]==5){
if(mapa[polpostaciy+1][polpostacix-2]==0){
mapa[polpostaciy][polpostacix-1]=4;
mapa[polpostaciy+1][polpostacix-2]=5;
mapa[polpostaciy][polpostacix]=0;
polpostacix--;
polpostacix2--;
polpostaciy2++;
}
else if(mapa[polpostaciy+1][polpostacix-2]!=0){
mapa[polpostaciy][polpostacix-1]=4;
mapa[polpostaciy][polpostacix-2]=5;
mapa[polpostaciy][polpostacix]=0;
polpostacix--;
polpostacix2--;
}
}
else if(mapa[polpostaciy][polpostacix-1]==0){
mapa[polpostaciy][polpostacix-1]=4;
mapa[polpostaciy][polpostacix]=0;
polpostacix--;
}
break;
//podobnie do a tyle ze w prawo
case 'd':
if(mapa[polpostaciy+1][polpostacix+1]==0 ){
mapa[polpostaciy][polpostacix]=0;
mapa[polpostaciy+1][polpostacix+1]=4;
polpostacix++;
polpostaciy++;
}
else if(mapa[polpostaciy][polpostacix+1]==3){
mapa[polpostaciy][polpostacix+1]=4;
mapa[polpostaciy][polpostacix]=0;
polpostacix++;
mapa();
polpostacix=2;
polpostaciy=17;
polpostacix2=3;
polpostaciy2=17;
}
else if(mapa[polpostaciy][polpostacix+1]==5){
if(mapa[polpostaciy+1][polpostacix+2]==0){
mapa[polpostaciy][polpostacix+1]=4;
mapa[polpostaciy+1][polpostacix+2]=5;
mapa[polpostaciy][polpostacix]=0;
polpostacix++;
polpostacix2++;
polpostaciy2++;
}
else if(mapa[polpostaciy+1][polpostacix+2]!=0){
mapa[polpostaciy][polpostacix+1]=4;
mapa[polpostaciy][polpostacix+2]=5;
mapa[polpostaciy][polpostacix]=0;
polpostacix++;
polpostacix2++;
}
}
else if(mapa[polpostaciy][polpostacix+1]==0){
mapa[polpostaciy][polpostacix+1]=4;
mapa[polpostaciy][polpostacix]=0;
polpostacix++;
}
break;
//poruszanie skrzynia
case '^':
if(mapa[polpostaciy2-1][polpostacix2]==0){
mapa[polpostaciy2-1][polpostacix2]=5;
mapa[polpostaciy2][polpostacix2]=0;
polpostaciy2--;
}
break;
case '/':
if(mapa[polpostaciy2+1][polpostacix2]==0){
mapa[polpostaciy2+1][polpostacix2]=5;
mapa[polpostaciy2][polpostacix2]=0;
polpostaciy2++;
}
break;
case '<':
if(mapa[polpostaciy2][polpostacix2-1]==0){
mapa[polpostaciy2][polpostacix2-1]=5;
mapa[polpostaciy2][polpostacix2]=0;
polpostacix2--;
}
break;
case '>':
if(mapa[polpostaciy2][polpostacix2+1]==0){
mapa[polpostaciy2][polpostacix2+1]=5;
mapa[polpostaciy2][polpostacix2]=0;
polpostacix2++;
}
break;
case 'r':
mapa();
polpostacix=2;
polpostaciy=17;
polpostacix2=3;
polpostaciy2=17;
break;
}
}
}
Oraz zawartość 2 pliku:
package gra3;
import java.applet.Applet;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.util.Timer;
public class Start extends Applet implements KeyListener {
static Applet applet;
int szerokosc=1260, wysokosc=900;
Oblicz zad = new Oblicz();
Timer timer = new Timer();
Image bgimage;
Graphics bggra;
Image drabina,tlo,kolce, key, sciana, trawa, podloga,
drzwi,drzwi2, box,box2,gracz1,gracz2,gracz3,gracz4,
aligator1,aligator2,aligator3,aligator4,winda,pala,
podloga1,rosiczka1,rosiczka2,rosiczka3,rosiczka4,winda2;
int skala =60;
int pozycja_gry=0;
int x=skala*2,y=skala*10,licznik=1;
int alix=skala*9, aliy=skala*10, alicznik=1;
int rosx=skala, rosy=skala*10, rlicznik=1;
int x2=skala*3,y2=skala*10;
boolean kierunek=true;
int stan=0;
int pozx=x,pozy=y;
int exitx=skala*18,exity=skala*10;
int ruch=5;
int windx=skala*17,windy=skala*10;
int gora=0,bok=0,rbok=0;
int predkosc=2;
@Override
public void init(){
applet = this;
applet.setSize(szerokosc, wysokosc);
applet.addKeyListener(this);
timer.scheduleAtFixedRate(zad, 10, 10);
bgimage = createImage(szerokosc, wysokosc);
bggra = bgimage.getGraphics();
//wczytanie mapy przypisanie obrazkow do zmiennych
zad.mapa();
box = getImage(getDocumentBase(),"img/box.png");
box2 = getImage(getDocumentBase(),"img/box2.png");
tlo = getImage(getDocumentBase(),"img/tlo.jpg");
sciana = getImage(getDocumentBase(),"img/sciana.jpg");
trawa = getImage(getDocumentBase(),"img/trawa.jpg");
podloga = getImage(getDocumentBase(),"img/podloga.jpg");
podloga1 = getImage(getDocumentBase(),"img/podloga1.jpg");
drzwi = getImage(getDocumentBase(),"img/drzwi.png");
drzwi2 = getImage(getDocumentBase(),"img/drzwi2.gif");
key = getImage(getDocumentBase(),"img/key.png");
drabina=getImage(getDocumentBase(),"img/drabina.jpg");
gracz1 = getImage(getDocumentBase(),"img/gracz1.png");
gracz2 = getImage(getDocumentBase(),"img/gracz2.png");
gracz3 = getImage(getDocumentBase(),"img/gracz3.png");
gracz4 = getImage(getDocumentBase(),"img/gracz4.png");
winda = getImage(getDocumentBase(),"img/winda.png");
winda2 = getImage(getDocumentBase(),"img/winda2.png");
aligator1 = getImage(getDocumentBase(),"img/aligator1.png");
aligator2 = getImage(getDocumentBase(),"img/aligator2.png");
aligator3 = getImage(getDocumentBase(),"img/aligator3.png");
aligator4 = getImage(getDocumentBase(),"img/aligator4.png");
rosiczka1 = getImage(getDocumentBase(),"img/rosiczka1.png");
rosiczka2 = getImage(getDocumentBase(),"img/rosiczka2.png");
rosiczka3 = getImage(getDocumentBase(),"img/rosiczka3.png");
rosiczka4 = getImage(getDocumentBase(),"img/rosiczka4.png");
kolce = getImage(getDocumentBase(),"img/kolce.png");
pala = getImage(getDocumentBase(),"img/pala.png");
}
//naprawianie migania
@Override
public void update(Graphics g){
bggra.clearRect(0, 0, szerokosc, wysokosc);
paint(bggra);
g.drawImage(bgimage, 0, 0, applet);
}
//glowne rysowanie z wywolaniem 2 rysowania
@Override
public void paint(Graphics g){
g.drawImage(tlo,0,0,szerokosc, wysokosc,this);
if(zad.level==1)
{
g.drawString("Poziom 1", szerokosc/2-30,20);
}
else if(zad.level==2)
{
g.drawString("Poziom 2", szerokosc/2,20);
}
else if(zad.level==3)
{
g.drawString("Poziom 3", szerokosc/2,20);
}
else if(zad.level==4)
{
g.drawString("Poziom 4", szerokosc/2,20);
}
rysujmape(g);
}
//2 rysowanie(mapy)
//+50 odleglosc planszy od okna
//skala* odestep od elementu
public void rysujmape(Graphics g){
for(int i=0; i<zad.mapa.length; i++){
for(int j=0; j<zad.mapa[0].length; j++){
switch(zad.mapa[i][j]){
case 0:
g.drawImage(trawa,pozycja_gry+ skala*j,pozycja_gry+ skala*i,skala,skala,this);
break;
case 1:
g.drawImage(sciana,pozycja_gry+ skala*j,pozycja_gry+ skala*i,skala,skala,this);
break;
case 2:
g.drawImage(podloga,pozycja_gry+ skala*j,pozycja_gry+ skala*i,skala,skala,this);
break;
case 3:
g.drawImage(trawa,pozycja_gry+ skala*j,pozycja_gry+ skala*i,skala,skala,this);
g.drawImage(drzwi,pozycja_gry+ skala*j,pozycja_gry+ skala*i,skala,skala,this);
break;
case 4:
g.drawImage(trawa,pozycja_gry+ skala*j,pozycja_gry+ skala*i,skala,skala,this);
g.drawImage(drzwi2,pozycja_gry+ skala*j,pozycja_gry+ skala*i,skala,skala,this);
break;
case 5:
g.drawImage(trawa,pozycja_gry+ skala*j,pozycja_gry+ skala*i,skala,skala,this);
g.drawImage(box2,pozycja_gry+ skala*j,pozycja_gry+ skala*i,skala,skala,this);
break;
case 6:
g.drawImage(drabina,pozycja_gry+ skala*j,pozycja_gry+ skala*i,skala,skala,this);
break;
case 7:
g.drawImage(trawa,pozycja_gry+ skala*j,pozycja_gry+ skala*i,skala,skala,this);
g.drawImage(kolce,pozycja_gry+ skala*j,pozycja_gry+ skala*i,skala,skala,this);
break;
case 8:
g.drawImage(podloga1,pozycja_gry+ skala*j,pozycja_gry+ skala*i,skala,skala,this);
break;
}
}
}
if(zad.level==3)
g.drawImage(box2,x2,y2,skala,skala,this);
if(kierunek)
{
//int licznik_miejsca=0;
if(licznik%2==0)
{
//petla:
//while(true)
//{
// for (int zz=0; zz<20; zz++)
// {
// if (zad.mapa[18][zz]==0)
// { licznik_miejsca=zz;
// break petla;}
// }
//}
//System.out.println(licznik_miejsca);
//if ( (pozycja_gry+ skala*licznik_miejsca>x) && (pozycja_gry+ skala*licznik_miejsca<x+skala))
//g.drawImage(gracz1,x,y+skala,skala,skala,this);
//else
g.drawImage(gracz1,x,y,skala,skala,this);
}
else
{
g.drawImage(gracz2,x,y,skala,skala,this);
}
}
else if(!kierunek)
if(licznik%2==0)
{
g.drawImage(gracz3,x,y,skala,skala,this);
}
else
{
g.drawImage(gracz4,x,y,skala,skala,this);
}
if(stan==2)
{
g.drawImage(box,x,y,skala,skala,this);
x2=skala;
y2=skala*13;
g.setColor(Color.WHITE);
g.drawString("1X", pozx-skala, skala*14);
g.setColor(Color.BLACK);
}
else if (stan==1)
{
if(kierunek)
{
x2=x+skala;
y2=y;
stan=0;
}
else if(!kierunek)
{
x2=x-skala;
y2=y;
stan=0;
}
}
else if (stan==3&&x2<skala*18)
{
if(x>=x2-skala-10)
{
x2=x+skala;
y2=y;
}
else if(x<=x2+skala+10)
{
x2=x-skala;
y2=y;
}
}
//winda
if(zad.level==2)
{
g.setColor(Color.BLACK);
if(windy==skala*7)
{
gora=0;
}
if(windy==skala*11+30)
{
gora=1;
}
if (gora==1) windy--; else windy++;
//System.out.println(windy);
//g.fillRect(windx, windy, skala, 10);
g.drawImage(winda2,windx,windy,skala,skala,this);
}
//aligator
if(zad.level==3)
{
if(alix==skala*9)
{
bok=0;
}
if(alix==skala*14)
{
bok=1;
}
if (bok==1)
{
alicznik++;
alix--;
if(alicznik%2==0)
{
g.drawImage(aligator3,alix,aliy,skala,skala,this);
}
else
{
g.drawImage(aligator4,alix,aliy,skala,skala,this);
}
}
else
{
alicznik++;
alix++;
if(alicznik%2==0)
{
g.drawImage(aligator1,alix,aliy,skala,skala,this);
}
else
{
g.drawImage(aligator2,alix,aliy,skala,skala,this);
}
}
if(x>=alix-skala+10&&x<=alix+skala-10)
{
if(stan==2)
{
}
else{
x=skala*2;
y=skala*10;
licznik=1;
x2=skala*3;
y2=skala*10;
kierunek=true;
stan=1;
}
}
g.drawImage(key,skala*18,skala*8,skala,skala,this);
}
if(zad.level==4)
{
if(rosx==skala)
{
rbok=0;
}
if(rosx==skala*18)
{
rbok=1;
}
if (rbok==1)
{
rlicznik++;
rosx=rosx-predkosc;
if(rlicznik%2==0)
{
g.drawImage(rosiczka3,rosx,rosy,skala,skala,this);
}
else
{
g.drawImage(rosiczka4,rosx,rosy,skala,skala,this);
}
}
else
{
rlicznik++;
rosx=rosx+predkosc;
if(rlicznik%2==0)
{
g.drawImage(rosiczka1,rosx,rosy,skala,skala,this);
}
else
{
g.drawImage(rosiczka2,rosx,rosy,skala,skala,this);
}
}
if(x>=rosx-skala+10&&x<=rosx+skala-10)
{
if(stan==2)
{
}
else{
x=skala*2;
y=skala*10;
licznik=1;
x2=skala*3;
y2=skala*10;
kierunek=true;
stan=1;
}
}
g.drawImage(pala,skala*18,skala*8,skala,skala,this);
}
//stan3 przesowanie skrzynki stan2 ubieranie stan1 sciaganie skrzyni
}
//odwolanie do klasy oblicz kazda cyfra ma odpowiednik literowy
@Override
public void keyPressed(KeyEvent e) {
/*if(x==240)
{
for(int i=0; y<660;i++){
y=y+5;
System.out.println("Pozycjapostaciy:"+y);
}
}*/
System.out.println("Pozycjapostaci:"+x+" "+y);
System.out.println("Pozycja skrzyni:"+x2+" "+y2);
switch(e.getKeyCode()){
case 87:
//zad.ruchpostaci('w');
break;
case 83:
//zad.ruchpostaci('s');
break;
case 65:
//zad.ruchpostaci('a');
kierunek=false;
licznik++;
if(y>=skala*11){
}
else{
if(x>pozx-skala)
{
x=x-5;
applet.repaint();
}
}
break;
case 68:
//zad.ruchpostaci('d');
kierunek=true;
licznik++;
if(y>=skala*11){
}
else{
if(x<skala*17+skala)
{
x=x+5;
applet.repaint();
}
if(x==exitx&&y==exity)
{
x=skala*2;
y=skala*10;
licznik=1;
x2=skala*3;
y2=skala*10;
kierunek=true;
stan=1;
if(zad.level==1){
zad.level=2;
zad.mapa();
exitx=skala;
exity=600;
}
else if(zad.level==2){
zad.level=3;
zad.mapa();
exitx=skala;
exity=600;
}
}
}
break;
case 38:
zad.ruchpostaci('^');
break;
case 40:
zad.ruchpostaci('/');
break;
case 37:
zad.ruchpostaci('<');
break;
case 39:
zad.ruchpostaci('>');
break;
case 82:
zad.ruchpostaci('r');
x=skala*2;
y=skala*10;
licznik=1;
x2=skala*3;
y2=skala*10;
kierunek=true;
stan=1;
break;
case 32:
//spacja
if(stan==0&&x>=x2-skala-10&&x<=x2+skala+10)
{
stan=2;
}
else if(stan==2)
{
stan=1;
}
break;
case 67:
//c
if(stan!=3&&x>=x2-skala-10&&x<=x2+skala+10)
{
stan=3;
}
else
{
stan=0;
}
break;
case 52:
//4
x=skala*2;
y=skala*10;
licznik=1;
kierunek=true;
stan=0;
zad.level=4;
zad.mapa();
exitx=skala;
exity=600;
break;
case 51:
//3
x=skala*2;
y=skala*10;
licznik=1;
x2=skala*3;
y2=skala*10;
kierunek=true;
stan=0;
zad.level=3;
zad.mapa();
exitx=skala;
exity=600;
break;
case 50:
//2
x=skala*2;
y=skala*10;
licznik=1;
kierunek=true;
stan=0;
zad.level=2;
zad.mapa();
exitx=skala;
exity=500;
break;
case 49:
//1
x=skala*2;
y=skala*10;
licznik=1;
kierunek=true;
stan=0;
zad.level=1;
zad.mapa();
exitx=skala*18;
exity=skala*10;
break;
default:
System.out.println("Kod klawisza:"+e.getKeyCode());
break;
}
}
@Override
public void keyReleased(KeyEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent arg0) {
// TODO Auto-generated method stub
}
}