RuneHive-Game
Loading...
Searching...
No Matches
ClimbInteraction.java
Go to the documentation of this file.
1package com.runehive.content.skill.impl.agility.obstacle.impl;
2
3import com.runehive.content.skill.impl.agility.obstacle.ObstacleInteraction;
4import com.runehive.game.Animation;
5import com.runehive.game.task.Task;
6import com.runehive.game.world.World;
7import com.runehive.game.world.entity.mob.player.Player;
8import com.runehive.game.world.position.Position;
9
10public interface ClimbInteraction extends ObstacleInteraction {
11 @Override
12 default void start(Player player) { }
13
14 @Override
15 default void onExecution(Player player, Position start, Position end) {
16 player.animate(new Animation(getAnimation()));
17 World.schedule(new Task(2) {
18 @Override
19 public void execute() {
20 player.move(end);
21 player.animate(new Animation(65535));
22 this.cancel();
23 }
24 });
25 }
26
27 @Override
28 default void onCancellation(Player player) { }
29}
Class that models a single animation used by an entity.
A game representing a cyclic unit of work.
Definition Task.java:11
Represents the game world.
Definition World.java:46
static void schedule(Task task)
Submits a new event.
Definition World.java:247
void move(Position position)
Moves the mob to a set position.
Definition Mob.java:340
This class represents a character controlled by a player.
Definition Player.java:125
Represents a single tile on the game world.
Definition Position.java:14
default void execute(Player player, Obstacle next, Position start, Position end, int level, float experience, int ordinal)
default void onExecution(Player player, Position start, Position end)