Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package jumpingalien.model;
- import java.util.HashSet;
- import java.util.Set;
- import jumpingalien.util.Sprite;
- public class Slime extends Entity {
- public Slime(long id, int pixelLeftX, int pixelBottomY, School school, Sprite... sprites) throws Exception {
- super(pixelLeftX, pixelBottomY, sprites);
- setID(id);
- setSchool(school);
- setHitPoint(100);
- setOrientation(1);
- }
- public int walkX1=51;
- public int walkX2=50;
- public int walkY1=26;
- public int walkY2=28;
- //Movement
- /**
- *
- * @param dt //FIXME zorg eerst dat het helemaal werkt
- *
- */
- public void Movement(double dt) {
- //CollitionDetect
- //Bottom
- if(currentWorld.getGeologicalFeatures(super.getPixelPosition()[0]+(walkX1-1), super.getPixelPosition()[1])==1
- ||currentWorld.getGeologicalFeatures(super.getPixelPosition()[0]+(walkX2-1), super.getPixelPosition()[1])==1
- ){super.setActualPosition(super.getActualPosition()[0]+(super.getOrientation()*getVelocity()[0]*dt)+(getAcceleration()[0]*dt*dt), super.getActualPosition()[1]);}
- else {super.setActualPosition(super.getActualPosition()[0], (super.getActualPosition()[1]*getVelocity()[1]*dt)+((-10)*dt*dt));}
- //Top
- if(currentWorld.getGeologicalFeatures(super.getPixelPosition()[0]+(walkX1-1), super.getPixelPosition()[1]+(walkY1-1))==1
- ||currentWorld.getGeologicalFeatures(super.getPixelPosition()[0]+(walkX2-1), super.getPixelPosition()[1]+(walkY2-1))==1
- ) {super.setActualPosition(super.getActualPosition()[0], super.getActualPosition()[1]+0.01);}
- //RightSide
- if(currentWorld.getGeologicalFeatures(super.getPixelPosition()[0]+(walkX1-1), super.getPixelPosition()[1]+(walkY1-25))==1
- ||currentWorld.getGeologicalFeatures(super.getPixelPosition()[0]+(walkX2-1), super.getPixelPosition()[1]+(walkY2-26))==1
- ) {super.setActualPosition(super.getActualPosition()[0], super.getActualPosition()[1]+0.01);}
- //LeftSide
- if(currentWorld.getGeologicalFeatures(super.getPixelPosition()[0], super.getPixelPosition()[1]+(walkY1-25))==1
- ||currentWorld.getGeologicalFeatures(super.getPixelPosition()[0], super.getPixelPosition()[1]+(walkY2-26))==1
- ) {super.setActualPosition(super.getActualPosition()[0], super.getActualPosition()[1]+0.01);}
- }
- @Override
- /**
- * @param velocityx
- * @param velocityy
- * @post
- * |new.getVelocity()[0]==2.5
- * |new.getVelocity()[1]==0
- */
- public void setVelocity(double velocityx, double velocityY) {
- super.setVelocity(2.5, 0);
- }
- //Velocity
- @Override
- /**
- *@return
- * |result==Velocity
- */
- public double[] getVelocity() {
- return Velocity; }
- @Override
- /**
- * @param horizontal
- * @param vertical
- * @post..
- * |new.getAcceleration()[0]=0.7
- * |new.getAcceleration()[1]=veritical
- */
- public void setAcceleration(double horzontal, double vertical) {
- super.setAcceleration(0.7, vertical);
- }
- /**
- *
- * @return..
- * |result==Acceleration
- */
- public double[] getAcceleration() {
- return Acceleration;}
- //AdvancedTime//FIXME
- public void advanceTime(double time) {
- Movement(time);
- super.setActualPosition(super.getActualPosition()[0]+(super.getOrientation()*getVelocity()[0]*time)+(getAcceleration()[0]*time*time), super.getActualPosition()[1]);
- }
- //Sprite
- /**
- *
- * @effect..
- * |if(super.getOrientation()==1) {return currentSprite=super.getSprites()[0];}
- * |else if(super.getOrientation()==-1) {return currentSprite=super.getSprites()[1];}
- * |else {return super.getSprites()[0];}
- */
- public Sprite getCurrentSprite() {
- if(super.getOrientation()==1) {return currentSprite=super.getSprites()[0];}
- else if(super.getOrientation()==-1) {return currentSprite=super.getSprites()[1];}
- else {return super.getSprites()[0];}
- }
- public long ID;
- public static Set<Long> IdSet=new HashSet<Long>();
- /**
- *
- * @param id
- * @effect..
- * |ID=id
- */
- public void setID(long id) {
- ID=id;
- // IdSet.add(id);
- }
- /**
- * @post
- * |IdSet.size()==0
- */
- public static void CleanIdSet() {IdSet.clear();}
- /**
- *
- * @return
- * |result==ID
- */
- public long getID() {return ID;}
- public School SCHOOL;
- /**
- *
- * @param school
- * @post
- * |new.getSchool()==school
- */
- public void setSchool(School school) {SCHOOL=school;}
- /**
- *
- * @return
- * |result==SCHOOOL
- */
- public School getSchool() {return SCHOOL;}
- public void switchSchool(School newSchool) {
- // TODO Auto-generated method stub
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment