import java.util.*; import java.awt.*; public class object4 implements GameObject{ int teller=0; //String list[]=new String[100]; public Image image; public Sound sound; Image rockhole; Image woodhole; public Global global; public String arg1=new String(""); public String arg2=new String(""); public String method=new String(""); public String retval=new String(""); public String list[]=new String[10]; int state=0; int objnumber=4; int pos=0; String arguments[]=new String[100]; int nrofarguments=0; boolean debug=false; String methods[]={ "add", "delete", "hit", "event1", "event2", "event", "resetevent", "rockinhole", "woodinhole", ""}; public void init(Global glbl){ global=glbl; if(debug)System.out.println("init object4!"); image=global.loadImage(global.Server, global.Directory+objnumber+global.Extention, global.game); sound=global.loadSound(global.Server, global.Directory+"1.au"); rockhole=global.loadImage(global.Server, global.Directory+objnumber+"_2"+global.Extention, global.game); woodhole=global.loadImage(global.Server, global.Directory+objnumber+"_5"+global.Extention, global.game); // --- // Search all objects in grid for object 4s // replace with background draw // ---- for(int i=0; i<10;i++) list[i]=new String(""); } public Image getImage(int framenr,int dir){return image;} public void execute(){ if(method.compareTo("add")==0) add(); if(method.compareTo("hit")==0) hit(); if(method.compareTo("event")==0) event(); if(method.compareTo("event1")==0) event1(); if(method.compareTo("event2")==0) event2(); if(method.compareTo("resetevent")==0) resetevent(); if(method.compareTo("rockinhole")==0) rockinhole(); if(method.compareTo("woodinhole")==0) woodinhole(); } public void setMethod(String s){ method=s; } public String getRetval(){ return retval; } public void setArg(int i, String value){ list[i]=value; } public void add(){ System.out.println("arg1: "+list[0]+" "+list[1]); retval=arg1+arg2; } public boolean is(String meth){ boolean retval=false; int m=methods.length; for(int i=0; i < m && !retval; i++){ if(methods[i].compareTo(meth) == 0) retval=true; } return retval; } public void hit(){ if(global.playsound) if(sound!=null){ //System.out.println("Sound 1=null oplay!"); sound.play(); } state=1; if(debug)System.out.println(" Hit on object4"); } public void rockinhole(){ System.out.println("rockinhole"); int y=Integer.parseInt(list[2]); int x=Integer.parseInt(list[1]); int calcy=y==0?0:y/global.MAXFRAMES; int calcx=x==0?0:x/global.MAXFRAMES; System.out.println("y: "+y+",x = "+x+"calcy"+calcy+"clacyx"+calcx); global.backgroundcanvas.drawImage(rockhole, calcx*global.TILESIZE,calcy*global.TILESIZE, global.game); global.grid.setyx(y,x,1); global.game.redraw(y,x); } // when wood is pushed in hole public void woodinhole(){ System.out.println("woodinhole"); int y=Integer.parseInt(list[2]); int x=Integer.parseInt(list[1]); int calcy=y==0?0:y/global.MAXFRAMES; int calcx=x==0?0:x/global.MAXFRAMES; System.out.println("y: "+y+",x = "+x+"calcy"+calcy+"clacyx"+calcx); global.backgroundcanvas.drawImage(woodhole, calcx*global.TILESIZE,calcy*global.TILESIZE, global.game); global.grid.setyx(y,x,1); global.game.redraw(y,x); } public void event2(){ } public void event1(){ } public String toString(){ return "object4"; } public int getNr(){return objnumber;} public void resetevent(){ } public void event(){ // put everything here like a 'run' method switch(state){ case 1: event1(); break; case 2: event2(); break; } // draw image } }