1package com.osroyale.content.skill.impl.fishing;
3import com.osroyale.Config;
4import com.osroyale.content.activity.randomevent.RandomEventHandler;
5import com.osroyale.content.clanchannel.content.ClanTaskKey;
6import com.osroyale.content.pet.PetData;
7import com.osroyale.content.pet.Pets;
8import com.osroyale.content.prestige.PrestigePerk;
9import com.osroyale.game.Animation;
10import com.osroyale.game.action.Action;
11import com.osroyale.game.action.policy.WalkablePolicy;
12import com.osroyale.game.world.entity.mob.player.Player;
13import com.osroyale.game.world.entity.skill.Skill;
14import com.osroyale.game.world.items.Item;
15import com.osroyale.game.world.items.ItemDefinition;
16import com.osroyale.util.RandomUtils;
17import com.osroyale.util.Utility;
22public class FishingAction
extends Action<Player> {
27 super(player, 6,
false);
29 this.fishing = fishing;
41 if (
Fishing.canFish(player, aFishing,
false)) {
58 if (
Fishing.success(player, f)) {
59 if (f.getBaitRequired() != -1) {
60 player.inventory.
remove(
new Item(f.getBaitRequired(), 1));
61 if (!player.inventory.
contains(f.getBaitRequired(), 1)) {
70 int id = f.getRawFishId();
73 player.inventory.
add(
new Item(
id, 1));
81 player.message(
true,
"You manage to catch a " + name +
".");
83 player.playerAssistant.activateSkilling(1);
86 if (player.prestige.hasPerk(
PrestigePerk.MASTERBAIRTER) && RandomUtils.success(.15)) {
87 player.inventory.
addOrDrop(
new Item(
id, 1));
92 }
else if (
id == 11934) {
93 player.forClan(channel -> channel.activateTask(
ClanTaskKey.DARK_CRAB, player.
getName()));
106 getMob().animate(tool.getAnimationId());
116 getMob().animate(tool.getAnimationId());
118 if (!fish(
getMob(), fishing)) {
136 return "fishing-action";
static final double COOKING_MODIFICATION
static final double FISHING_MODIFICATION
final DialogueFactory sendStatement(String... lines)
final DialogueFactory execute()
static void onReward(Player player, int item, int chance)
WalkablePolicy getWalkablePolicy()
void onCancel(boolean logout)
Action(T mob, int delay, boolean instant)
synchronized final void cancel()
void addExperience(int id, double experience)
static ItemDefinition get(int id)
boolean remove(Item item)
void addOrDrop(List< Item > items)