RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
PorazdirUtility.java
1package com.osroyale.game.world.entity.combat.strategy.npc.boss.magearena;
2
3import com.osroyale.game.world.World;
4import com.osroyale.game.world.entity.mob.Direction;
5import com.osroyale.game.world.entity.mob.npc.Npc;
6import com.osroyale.game.world.entity.mob.player.Player;
7import com.osroyale.game.world.position.Position;
8import com.osroyale.util.Utility;
9
49
50public class PorazdirUtility {
51
52 public static Npc generatePorazdirSpawn() {
53 SpawnData spawn = SpawnData.generate();
54 Npc Porazdir = new Npc(7860, spawn.position, 10, Direction.NORTH);
55 World.sendMessage("<col=8714E6> Porazdir has just spawned! He is located at " + spawn.location + "!");
56 World.sendBroadcast(1, "The Porazdir boss has spawned!" + spawn.location + "!", true);
57 Porazdir.register();
58 Porazdir.definition.setRespawnTime(-1);
59 Porazdir.definition.setAggressive(true);
60 Porazdir.speak("Darkness is here to penetrate your souls!");
61 return Porazdir;
62 }
63
64 public static void defeated(Npc jusiticar, Player player) {
65
66 boolean hasClan = player.clanChannel != null;
67
68 if (hasClan) {
69 World.sendMessage("<col=8714E6> jusiticar has been defeated by " + player.getName() + "!");
70 } else {
71 World.sendMessage("<col=8714E6> jusiticar has been defeated by " + player.getName()
72 + ", a solo individual with balls of steel!");
73 }
74
75 jusiticar.unregister();
76 }
77
78public enum SpawnData {
79 LEVEL_19("lvl 15 wild west dark warrior's fortress", new Position(2988, 3636, 0)),
80 LEVEL_28("lvl 19 wild near wilderness ruins", new Position(2964, 3670, 0)),
81 LEVEL_41("lvl 10 wild south of dark Warriors", new Position(3016, 3591, 0)),
82 LEVEL_52("North of edgeville in the wilderness", new Position(3100, 3528, 0)),
83 LEVEL_53("lvl 19 wild west of graveyard of shadows", new Position(3138, 3670, 0));
84
85 public final String location;
86 public final Position position;
87
88 SpawnData(String location, Position position) {
89 this.location = location;
90 this.position = position;
91 }
92
93 public static SpawnData generate() {
94 return Utility.randomElement(values());
95 }
96 }
97}
static void sendMessage(String... messages)
Definition World.java:433
static void sendBroadcast(int time, String message, boolean countdown)
Definition World.java:455
static< T > T randomElement(Collection< T > collection)
Definition Utility.java:285