import java.awt.*;
import java.applet.*;
import java.awt.event.*;
import java.io.*;
public class KursaDarbs2 extends Applet implements Runnable,ActionListener, MouseMotionListener {
Graphics bufferGraphics;
Image offscreen,Start,Finish, winPic,pXmY,pXpY,mXmY,mXpY,activeTool;
Dimension dim;
Thread t;
Button startPoga,stopPoga,randomPoga;
AudioClip tuk,yay,pew,weu,tik,pau;
boolean running=false,notStarted=true,win=false,hit=false,soundHit=false,soundHit2=false;
Panel winContainer;
//bumba
int diam = 16;
int xatrums = 0,yatrums = 0;
double radius = diam*0.5;
int radi = (int) radius;
int bx,by;
//laukums
int sizeX = 640,sizeY = 480,fieldX = 64,fieldY = 64;
int fieldSizeX = sizeX-fieldX-1,fieldSizeY = sizeY-fieldY-1;
int maxX = sizeX-diam-1,maxY=sizeY-diam-1,minX=fieldX+1,minY=fieldY+1;
int fieldMiddleY = (int)(fieldSizeY*0.5);
int fieldCenterY = fieldMiddleY+fieldY;
int fieldMiddleX = (int) (fieldSizeX*0.5);
int fieldCenterX = fieldMiddleX+fieldX;
//šķēršļi
int obstSizeX=(int)(Math.random()*(fieldMiddleX-(diam*2))+diam);
int obstX=(int)((Math.random()*(fieldMiddleX-obstSizeX+diam))+fieldX),obstY=fieldCenterY,obstSizeY=diam;
int obst2SizeY=(int)((Math.random()*(fieldMiddleY-(diam*3))+diam));
int obst2X=(int)((Math.random()*(fieldSizeX-(diam*7))+fieldX+(diam*3))),obst2Y=(int)((Math.random()*(fieldMiddleY-obst2SizeY-(diam*3))+fieldY)),obst2SizeX=diam;
int obst3SizeY=(int)((Math.random()*(fieldMiddleY-(diam*3))+diam));
int obst3X=(int)((Math.random()*(fieldMiddleX)+fieldX+(diam*2))),obst3Y=(int)((Math.random()*(fieldMiddleY-obst3SizeY-(diam*3))+fieldCenterY+diam)),obst3SizeX=diam;
int obst4SizeY=(int)((Math.random()*(fieldMiddleY-(diam*3))+diam));
int obst4X=(int)((Math.random()*(fieldMiddleX)+fieldMiddleX)),obst4Y=(int)((Math.random()*(fieldMiddleY-obst4SizeY-(diam*3))+fieldCenterY+diam)),obst4SizeX=diam;
int obst5SizeX=(int)(Math.random()*(fieldMiddleX-(diam*2))+diam);
int obst5X=(int)((Math.random()*(fieldMiddleX-obst5SizeX+diam))+fieldMiddleX),obst5Y=fieldCenterY,obst5SizeY=diam;
//sākums un beigas
int startPosX = (int)(Math.random()*(fieldSizeX-32)+fieldX);
int startPosY = fieldY+1;
int endPosX = (int)(Math.random()*(fieldSizeX-32)+fieldX);
int endPosY = sizeY-32;
//kustība
int dirX,dirY;
//rīki
int mouseOffX,mouseOffY;
int toolNumber = 0,toolCount = 0;
int[] toolCoordx = new int[21];
int[] toolCoordy = new int[21];
int[] toolType = new int[21]; //t1=pXmY, t2=pXpY, t3=mXpY, t4=mXmY
boolean[] toolIsInUse = new boolean[21];
int toolYOffset = 0,toolXOffset = 0,i =0;
int curX=0,curY=0;
int inactiveTool,timeOut,timeOut2;
//Rezultāts
int score=1000000;
int penalty=0;
private Font a_Font;
boolean yayd=true;
public void init(){
while (obst2X+obst2SizeX>=startPosX+8 && obst2X<=startPosX+8+diam ) {
obst2X=(int)((Math.random()*(fieldSizeX-(diam*7))+fieldX+(diam*3)));
}
while (endPosX>=startPosX-40 && endPosX<=startPosX+40){
endPosX = (int)(Math.random()*(fieldSizeX-32)+fieldX);
}
startPoga = new Button("Sākt");
stopPoga = new Button("Pārtraukt");
randomPoga = new Button("Nejaušs rīks");
winContainer = new Panel(new FlowLayout());
add(startPoga);
add(stopPoga);
add(randomPoga);
startPoga.addActionListener(this);
stopPoga.addActionListener(this);
randomPoga.addActionListener(this);
startPoga.setEnabled(true);
stopPoga.setEnabled(false);
winContainer.setLocation(0,220);
winContainer.setSize(480,220);
bx = startPosX+8;
by = startPosY+8;
addMouseMotionListener(this);
for (int i=0; i<toolType.length; i++){
toolType[i] = (int)(Math.random()*4);
}
toolIsInUse[0]=true;
toolIsInUse[20]=false;
toolType[20]=0;
while (i<toolCoordx.length) {
toolCoordx[i] = toolXOffset;
toolCoordy[i] = fieldY + toolYOffset;
toolYOffset += 32;
if (toolYOffset>=320){
toolYOffset = 0;
toolXOffset += 32;
// toolCoordy[i] += toolXOffset;
}
i++;
}
toolCoordx[20] = 500;
toolCoordy[20] = 500;
t = new Thread(this);
t.start();
Start = getImage(getCodeBase(), "Start.GIF");
Finish = getImage(getCodeBase(), "Finish.GIF");
winPic = getImage(getCodeBase(), "win.GIF");
pXmY = getImage(getCodeBase(), "pXpY.GIF");
pXpY = getImage(getCodeBase(), "pXmY.GIF");
mXmY = getImage(getCodeBase(), "mXpY.GIF");
mXpY = getImage(getCodeBase(), "mXmY.GIF");
activeTool = getImage(getCodeBase(), "active.GIF");
tuk = getAudioClip(getDocumentBase(), "tuk.WAV");
yay = getAudioClip(getDocumentBase(), "yay.WAV");
pew = getAudioClip(getDocumentBase(), "pew.WAV");
weu = getAudioClip(getDocumentBase(), "weu.WAV");
tik = getAudioClip(getDocumentBase(), "tik.WAV");
pau = getAudioClip(getDocumentBase(), "pau.WAV");
a_Font = new Font("Helvetica", Font.BOLD, 16);
setFont(a_Font);
setSize(sizeX, sizeY);
dim = getSize();
offscreen = createImage(dim.width,dim.height);
bufferGraphics = offscreen.getGraphics();
}
public void run() {
while (true){
while(running){
if (!win){
score--;
}
by+=dirY;
bx+=dirX;
repaint();
if (bx>maxX || bx<minX ){
if (soundHit2 && soundHit){
weu.play();
}
if (soundHit){
pew.play();
soundHit2=true;
timeOut2=100;
}
if (!soundHit && !soundHit2){
tuk.play();
soundHit=true;
timeOut=150;
}
score=score-1000*penalty;
penalty++;
dirX=-dirX;
}
if (by>maxY || by<minY ){
if (soundHit2 && soundHit){
weu.play();
}
if (soundHit && !soundHit2){
pew.play();
soundHit2=true;
timeOut2=100;
}
if (!soundHit){
tuk.play();
soundHit=true;
timeOut=150;
}
score=score-1000*penalty;
penalty++;
dirY=-dirY;
}
if (soundHit){
timeOut--;
if (timeOut==0){
soundHit=false;
}
}
if (soundHit2){
timeOut2--;
if (timeOut2==0){
soundHit2=false;
}
}
if (bx+diam>=obstX-1 && bx<=obstX+obstSizeX+1 && by+diam>obstY && by<obstY+obstSizeY ||
bx+diam>obst2X && bx<obst2X+obst2SizeX && by+diam>=obst2Y-1 && by<=obst2Y+obst2SizeY+1 ||
bx+diam>obst3X && bx<obst3X+obst3SizeX && by+diam>=obst3Y-1 && by<=obst3Y+obst3SizeY+1 ||
bx+diam>obst4X && bx<obst4X+obst4SizeX && by+diam>=obst4Y-1 && by<=obst4Y+obst4SizeY+1 ||
bx+diam>=obst5X-1 && bx<=obst5X+obst5SizeX+1 && by+diam>obst5Y && by<obst5Y+obst5SizeY){
tik.play();
dirX=-dirX;
score=score-1000*penalty;
penalty++;
}
if (by+diam>=obstY-1 && by<=obstY+obstSizeY+1 && bx+diam>obstX && bx<obstX+obstSizeX ||
by+diam>obst2Y && by<obst2Y+obst2SizeY && bx+diam>obst2X+1 && bx<obst2X+obst2SizeX-1 ||
by+diam>obst3Y && by<obst3Y+obst3SizeY && bx+diam>obst3X+1 && bx<obst3X+obst3SizeX-1 ||
by+diam>obst4Y && by<obst4Y+obst2SizeY && bx+diam>obst4X+1 && bx<obst4X+obst4SizeX-1 ||
by+diam>=obst5Y-1 && by<=obst5Y+obst5SizeY+1 && bx+diam>obst5X && bx<obst5X+obst5SizeX){
pau.play();
dirY=-dirY;
score=score-1000*penalty;
penalty++;
}
if (bx > endPosX+3-radi && bx < endPosX+30-diam && by > endPosY-radi) {
win = true;
dirX=0;
dirY=0;
}
if (hit){
if(!(bx>=toolCoordx[inactiveTool]-diam && bx<=toolCoordx[inactiveTool]+32 && by>=toolCoordy[inactiveTool]-diam && by<=toolCoordy[inactiveTool]+32)) {
toolIsInUse[inactiveTool]=true;
hit=false;
}
}
for (int i= 0; i<20 ;i++)
switch (toolType[i]){
case 0:
if (bx>toolCoordx[i]-diam && bx<toolCoordx[i]+32 && by>toolCoordy[i]-diam && by<toolCoordy[i]+32 && toolIsInUse[i]){
dirX+=1;
dirY-=1;
hit=true;
toolIsInUse[i]=false;
inactiveTool=i;
score+=2000;
}
break;
case 1:
if (bx>toolCoordx[i]-diam && bx<toolCoordx[i]+32 && by>toolCoordy[i]-diam && by<toolCoordy[i]+32 && toolIsInUse[i]){
dirX+=1;
dirY+=1;
hit=true;
toolIsInUse[i]=false;
inactiveTool=i;
score+=2000;
}
break;
case 2:
if (bx>toolCoordx[i]-diam && bx<toolCoordx[i]+32 && by+diam>toolCoordy[i] && by<toolCoordy[i]+32 && toolIsInUse[i]){
dirX-=1;
dirY+=1;
hit=true;
toolIsInUse[i]=false;
inactiveTool=i;
score+=2000;
}
break;
case 3:
if (bx>toolCoordx[i]-diam && bx<toolCoordx[i]+32 && by+diam>toolCoordy[i] && by<toolCoordy[i]+32 && toolIsInUse[i]){
dirX-=1;
dirY-=1;
hit=true;
toolIsInUse[i]=false;
inactiveTool=i;
score+=2000;
}
break;
}
try {
t.sleep(15);
} catch (InterruptedException e) { ; }
}
}
}
public void paint(Graphics g){
bufferGraphics.clearRect(0,0,dim.width,dim.width);
bufferGraphics.drawRect(fieldX, fieldY, fieldSizeX, fieldSizeY);
bufferGraphics.drawRect(0, fieldY, fieldX, fieldSizeY);
bufferGraphics.drawImage(Start,startPosX,startPosY,this);
bufferGraphics.drawImage(Finish,endPosX,endPosY,this);
bufferGraphics.fillOval(bx,by,diam,diam);
bufferGraphics.fillRect(obstX, obstY, obstSizeX, obstSizeY);
bufferGraphics.fillRect(obst2X, obst2Y, obst2SizeX, obst2SizeY);
bufferGraphics.fillRect(obst3X, obst3Y, obst3SizeX, obst3SizeY);
bufferGraphics.fillRect(obst4X, obst4Y, obst4SizeX, obst4SizeY);
bufferGraphics.fillRect(obst5X, obst5Y, obst5SizeX, obst5SizeY);
bufferGraphics.drawImage(activeTool,toolCoordx[toolNumber]-4,toolCoordy[toolNumber]-4,this);
bufferGraphics.drawString(" Punktu Skaits: "+score, 220, 56 );
if (toolIsInUse[0]) {
switch(toolType[0]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[0],toolCoordy[0],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[0],toolCoordy[0],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[0],toolCoordy[0],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[0],toolCoordy[0],this);
break;
}
}
if (toolIsInUse[1]) {
switch(toolType[1]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[1],toolCoordy[1],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[1],toolCoordy[1],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[1],toolCoordy[1],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[1],toolCoordy[1],this);
break;
}
}
if (toolIsInUse[2]) {
switch(toolType[2]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[2],toolCoordy[2],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[2],toolCoordy[2],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[2],toolCoordy[2],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[2],toolCoordy[2],this);
break;
}
}
if (toolIsInUse[3]) {
switch(toolType[3]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[3],toolCoordy[3],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[3],toolCoordy[3],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[3],toolCoordy[3],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[3],toolCoordy[3],this);
break;
}
}
if (toolIsInUse[4]) {
switch(toolType[4]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[4],toolCoordy[4],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[4],toolCoordy[4],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[4],toolCoordy[4],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[4],toolCoordy[4],this);
break;
}
}
if (toolIsInUse[5]) {
switch(toolType[5]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[5],toolCoordy[5],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[5],toolCoordy[5],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[5],toolCoordy[5],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[5],toolCoordy[5],this);
break;
}
}
if (toolIsInUse[6]) {
switch(toolType[6]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[6],toolCoordy[6],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[6],toolCoordy[6],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[6],toolCoordy[6],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[6],toolCoordy[6],this);
break;
}
}
if (toolIsInUse[6]) {
switch(toolType[6]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[6],toolCoordy[6],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[6],toolCoordy[6],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[6],toolCoordy[6],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[6],toolCoordy[6],this);
break;
}
}
if (toolIsInUse[7]) {
switch(toolType[7]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[7],toolCoordy[7],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[7],toolCoordy[7],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[7],toolCoordy[7],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[7],toolCoordy[7],this);
break;
}
}
if (toolIsInUse[8]) {
switch(toolType[8]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[8],toolCoordy[8],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[8],toolCoordy[8],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[8],toolCoordy[8],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[8],toolCoordy[8],this);
break;
}
}
if (toolIsInUse[9]) {
switch(toolType[9]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[9],toolCoordy[9],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[9],toolCoordy[9],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[9],toolCoordy[9],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[9],toolCoordy[9],this);
break;
}
}
if (toolIsInUse[10]) {
switch(toolType[10]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[10],toolCoordy[10],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[10],toolCoordy[10],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[10],toolCoordy[10],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[10],toolCoordy[10],this);
break;
}
}
if (toolIsInUse[11]) {
switch(toolType[11]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[11],toolCoordy[11],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[11],toolCoordy[11],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[11],toolCoordy[11],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[11],toolCoordy[11],this);
break;
}
}
if (toolIsInUse[12]) {
switch(toolType[12]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[12],toolCoordy[12],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[12],toolCoordy[12],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[12],toolCoordy[12],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[12],toolCoordy[12],this);
break;
}
}
if (toolIsInUse[13]) {
switch(toolType[13]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[13],toolCoordy[13],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[13],toolCoordy[13],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[13],toolCoordy[13],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[13],toolCoordy[13],this);
break;
}
}
if (toolIsInUse[14]) {
switch(toolType[14]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[14],toolCoordy[14],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[14],toolCoordy[14],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[14],toolCoordy[14],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[14],toolCoordy[14],this);
break;
}
}
if (toolIsInUse[15]) {
switch(toolType[15]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[15],toolCoordy[15],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[15],toolCoordy[15],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[15],toolCoordy[15],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[15],toolCoordy[15],this);
break;
}
}
if (toolIsInUse[16]) {
switch(toolType[16]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[16],toolCoordy[16],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[16],toolCoordy[16],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[16],toolCoordy[16],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[16],toolCoordy[16],this);
break;
}
}
if (toolIsInUse[17]) {
switch(toolType[17]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[17],toolCoordy[17],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[17],toolCoordy[17],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[17],toolCoordy[17],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[17],toolCoordy[17],this);
break;
}
}
if (toolIsInUse[18]) {
switch(toolType[18]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[18],toolCoordy[18],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[18],toolCoordy[18],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[18],toolCoordy[18],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[18],toolCoordy[18],this);
break;
}
}
if (toolIsInUse[19]) {
switch(toolType[19]){
case 0:
bufferGraphics.drawImage(pXmY,toolCoordx[19],toolCoordy[19],this);
break;
case 1:
bufferGraphics.drawImage(pXpY,toolCoordx[19],toolCoordy[19],this);
break;
case 2:
bufferGraphics.drawImage(mXpY,toolCoordx[19],toolCoordy[19],this);
break;
case 3:
bufferGraphics.drawImage(mXmY,toolCoordx[19],toolCoordy[19],this);
break;
}
}
if (win) {
bufferGraphics.drawImage(winPic, fieldX, fieldY, this);
if (yayd){
yay.play();
yayd=false;
}
}
g.drawImage(offscreen,0,0,this);
}
public void actionPerformed(ActionEvent evt){
if (evt.getSource() == startPoga){
running = true;
if (notStarted) {
dirY=1;
notStarted = false;
}
startPoga.setEnabled(false);
stopPoga.setEnabled(true);
randomPoga.setEnabled(false);
}
if (evt.getSource() == stopPoga){
running = false;
startPoga.setEnabled(true);
stopPoga.setEnabled(false);
}
else if (evt.getSource() == randomPoga) {
toolCount++;
score-=2000*toolCount;
toolIsInUse[toolCount] = true;
if (toolCount>toolCoordx.length-3) {
randomPoga.setEnabled(false);
}
repaint();
}
}
public void mouseMoved(MouseEvent evt){
curX = evt.getX();
curY = evt.getY();
if(notStarted) {
if (curX > toolCoordx[0] && curY > toolCoordy[0] && curX < toolCoordx[0]+32 && curY < toolCoordy[0]+32 && toolIsInUse[0]) {
toolNumber = 0;
}
if (curX > toolCoordx[1] && curY > toolCoordy[1] && curX < toolCoordx[1]+32 && curY < toolCoordy[1]+32 && toolIsInUse[1]) {
toolNumber = 1;
}
if (curX > toolCoordx[2] && curY > toolCoordy[2] && curX < toolCoordx[2]+32 && curY < toolCoordy[2]+32 && toolIsInUse[2]) {
toolNumber = 2;
}
if (curX > toolCoordx[3] && curY > toolCoordy[3] && curX < toolCoordx[3]+32 && curY < toolCoordy[3]+32 && toolIsInUse[3]) {
toolNumber = 3;
}
if (curX > toolCoordx[4] && curY > toolCoordy[4] && curX < toolCoordx[4]+32 && curY < toolCoordy[4]+32 && toolIsInUse[4]) {
toolNumber = 4;
}
if (curX > toolCoordx[5] && curY > toolCoordy[5] && curX < toolCoordx[5]+32 && curY < toolCoordy[5]+32 && toolIsInUse[5]) {
toolNumber = 5;
}
if (curX > toolCoordx[6] && curY > toolCoordy[6] && curX < toolCoordx[6]+32 && curY < toolCoordy[6]+32 && toolIsInUse[6]) {
toolNumber = 6;
}
if (curX > toolCoordx[7] && curY > toolCoordy[7] && curX < toolCoordx[7]+32 && curY < toolCoordy[7]+32 && toolIsInUse[7]) {
toolNumber = 7;
}
if (curX > toolCoordx[8] && curY > toolCoordy[8] && curX < toolCoordx[8]+32 && curY < toolCoordy[8]+32 && toolIsInUse[8]) {
toolNumber = 8;
}
if (curX > toolCoordx[9] && curY > toolCoordy[9] && curX < toolCoordx[9]+32 && curY < toolCoordy[9]+32 && toolIsInUse[9]) {
toolNumber = 9;
}
if (curX > toolCoordx[10] && curY > toolCoordy[10] && curX < toolCoordx[10]+32 && curY < toolCoordy[10]+32 && toolIsInUse[10]) {
toolNumber = 10;
}
if (curX > toolCoordx[11] && curY > toolCoordy[11] && curX < toolCoordx[11]+32 && curY < toolCoordy[11]+32 && toolIsInUse[11]) {
toolNumber = 11;
}
if (curX > toolCoordx[12] && curY > toolCoordy[12] && curX < toolCoordx[12]+32 && curY < toolCoordy[12]+32 && toolIsInUse[12]) {
toolNumber = 12;
}
if (curX > toolCoordx[13] && curY > toolCoordy[13] && curX < toolCoordx[13]+32 && curY < toolCoordy[13]+32 && toolIsInUse[13]) {
toolNumber = 13;
}
if (curX > toolCoordx[14] && curY > toolCoordy[14] && curX < toolCoordx[14]+32 && curY < toolCoordy[14]+32 && toolIsInUse[14]) {
toolNumber = 14;
}
if (curX > toolCoordx[15] && curY > toolCoordy[15] && curX < toolCoordx[15]+32 && curY < toolCoordy[15]+32 && toolIsInUse[15]) {
toolNumber = 15;
}
if (curX > toolCoordx[16] && curY > toolCoordy[16] && curX < toolCoordx[16]+32 && curY < toolCoordy[16]+32 && toolIsInUse[16]) {
toolNumber = 16;
}
if (curX > toolCoordx[17] && curY > toolCoordy[17] && curX < toolCoordx[17]+32 && curY < toolCoordy[17]+32 && toolIsInUse[17]) {
toolNumber = 17;
}
if (curX > toolCoordx[18] && curY > toolCoordy[18] && curX < toolCoordx[18]+32 && curY < toolCoordy[18]+32 && toolIsInUse[18]) {
toolNumber = 18;
}
if (curX > toolCoordx[19] && curY > toolCoordy[19] && curX < toolCoordx[19]+32 && curY < toolCoordy[19]+32 && toolIsInUse[19]) {
toolNumber = 19;
}
}
else {
toolNumber = 20;
}
repaint();
}
public void mouseDragged(MouseEvent evt){
if (notStarted) {
if(evt.getX()>30 && evt.getX() < fieldSizeX+fieldX){
toolCoordx[toolNumber] = evt.getX()-30;
}
mouseOffY = evt.getY()- toolCoordy[toolNumber];
if(evt.getY()> fieldY+32 && evt.getY() < fieldSizeY+fieldY){
toolCoordy[toolNumber] = evt.getY()-30;
}
}
repaint();
}
public void update(Graphics g){
paint(g);
}
}