import java.util.*; import java.awt.*; public class object3 extends object{ int dive=0; int state=0; int changes=0; long oldtime=0; Image img[]=new Image[5]; Sound sound2; public object3(){ objnumber=3; methods[0]="hit"; methods[1]="event"; method=""; } public void init(Global glbl){ global=glbl; image=global.loadImage(global.Server, global.Directory+objnumber+global.Extention, global.show); sound=global.loadSound(global.Server, global.Directory+"3.au"); sound2=global.loadSound(global.Server, global.Directory+"4_ah.au"); loaddrown(); global.PLAYERIMAGE=false; // if(global.STEPP > 1){ global.makeBackground(objnumber,image); image=null; // } state=0; dive=0; } public void loaddrown(){ //System.out.println("Load Drown!"); img[0]=global.loadImage(global.Server, global.Directory+"3_0"+global.Extention, global.show); img[1]=global.loadImage(global.Server, global.Directory+"3_1"+global.Extention, global.show); img[2]=global.loadImage(global.Server, global.Directory+"3_2"+global.Extention, global.show); img[3]=global.loadImage(global.Server, global.Directory+"3_3"+global.Extention, global.show); } public void execute(){ if(method.compareTo("hit")==0){ hit(); return; } if(method.compareTo("event")==0){ event(); return; } } public void hit(){ System.out.println("Object 300 debug!"); global.setInfo("You cannot swim!"); global.PLAYERSTATE=10; int x=global.player.getX(); int y=global.player.getY(); System.out.println("Player: "+x+","+y); if(global.dir == -global.STEPP){ x-=global.STEPP; } // Right if(global.dir == global.STEPP){ x+=global.STEPP; } // down if(global.dir == global.STEPP*global.WIDTH){ y+=global.STEPP; } // up if(global.dir == -global.STEPP*global.WIDTH){ y-=global.STEPP; } global.player.set(x,y); changes=((y+global.STEPP)*global.WIDTH)+x; global.freeze=true; System.out.println("image test..."); if(img[0]==null){ loaddrown(); } dive=0; // global.player.set(1000+changes); System.out.println("Playing sound"); if(global.playsound) if(sound2!=null) sound2.play(); System.out.println("Setting image player to dive:"+dive); global.player.setImage(img[dive++]); state=15; } public void event(){ Date d=new Date(); if(d.getTime() < oldtime+200)return; oldtime=d.getTime(); switch(state){ case 0: break; case 15: System.out.println("diving"); if(dive < 4){ //image=img[dive++]; System.out.println("drown state: "+dive); global.player.setImage(img[dive++]); global.boardrow=-1; global.boardcol=-1; global.doboard=true; }else{ state=16;} break; case 16: global.PLAYERSTATE=1; global.doreload=true; state=17; break; } } }