1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- package me.hammerle.supersnuvi.entity;
- import javafx.scene.image.Image;
- import me.hammerle.supersnuvi.gamelogic.Level;
- public class AnimatedEntity extends Entity
- {
- private int counter;
- private int frame;
-
- protected Image face;
- protected Image[] move;
- protected Image[] moveAir;
- private boolean flipped;
-
- public AnimatedEntity(Level level, double x, double y, double width, double height)
- {
- super(level, x, y, width, height);
- flipped = false;
- counter = 0;
- frame = 0;
- }
- @Override
- public boolean drawImageFlipped()
- {
- return flipped;
- }
-
- @Override
- public Image getImage()
- {
- counter++;
- if(counter >= 4)
- {
- counter = 0;
- frame++;
- }
- double motionX = getMotionX();
- if(isOnGround())
- {
- if(motionX != 0)
- {
- if(frame >= move.length)
- {
- frame = 0;
- }
- flipped = motionX < 0;
- return move[frame];
- }
- else
- {
- frame = 0;
- }
- }
- else
- {
- if(motionX != 0)
- {
- if(frame >= moveAir.length)
- {
- frame = 0;
- }
- flipped = motionX < 0;
- return moveAir[frame];
- }
- else
- {
- frame = 0;
- }
- }
- return super.getImage();
- }
- }
|