Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package sk.tuke.kpi.oop.game.openables;
- import sk.tuke.kpi.gamelib.Actor;
- import sk.tuke.kpi.gamelib.framework.AbstractActor;
- import sk.tuke.kpi.gamelib.graphics.Animation;
- import sk.tuke.kpi.gamelib.map.MapTile;
- import sk.tuke.kpi.oop.game.items.Usable;
- public class Door extends AbstractActor implements Openable, Usable<Actor> {
- private boolean isOpened;
- private Animation vdoor;
- public Door()
- {
- vdoor = new Animation("sprites/vdoor.png", 16, 32, 0.2f);
- setAnimation(vdoor);
- vdoor.stop();
- isOpened = true;
- }
- @Override
- public void open() {
- vdoor.setPlayMode(Animation.PlayMode.ONCE_REVERSED);
- vdoor.play();
- vdoor.stop();
- isOpened=true;
- getScene().getMap().getTile(6,4).setType(MapTile.Type.CLEAR);
- getScene().getMap().getTile(6,5).setType(MapTile.Type.CLEAR);
- }
- @Override
- public void close() {
- if (isOpened) {
- vdoor.setPlayMode(Animation.PlayMode.ONCE);
- vdoor.play();
- vdoor.stop();
- isOpened = false;
- getScene().getMap().getTile(6, 4).setType(MapTile.Type.WALL);
- getScene().getMap().getTile(6, 5).setType(MapTile.Type.WALL);
- }
- }
- @Override
- public boolean isOpen() {
- return isOpened;
- }
- @Override
- public void useWith(Actor actor) {
- }
- @Override
- public Class<Actor> getUsingActorClass() {
- return null;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement