Untitled
unknown
java
a year ago
3.6 kB
11
Indexable
package com.ruse.world.content.newraidsystem;
import com.ruse.model.Item;
import com.ruse.model.Position;
import com.ruse.world.entity.impl.npc.NPC;
import com.ruse.world.entity.impl.player.Player;
import java.util.List;
public class TestRaid extends Raid {
@Override
public List<RaidWave> getWaves() {
return List.of(
new RaidWave(
new NPC(131, new Position(3333, 3333)),
new NPC(131, new Position(3333, 3334))
),
new RaidWave(
new NPC(131, new Position(3331, 3333))
),
new RaidWave(
new NPC(131, new Position(3334, 3335))
)
);
}
@Override
public List<Item> getCost(RaidDifficulty difficulty) {
return switch (difficulty) {
case EASY -> List.of(
new Item(995, 100_000),
new Item(6570, 1)
);
case MEDIUM -> List.of(
new Item(995, 500_000),
new Item(6570, 1)
);
case HARD -> List.of(
new Item(995, 750_000),
new Item(4151, 1),
new Item(11732, 1)
);
};
}
@Override
public int getPointsReward(RaidDifficulty difficulty) {
return switch (difficulty) {
case EASY -> 25;
case MEDIUM -> 50;
case HARD -> 100;
};
}
@Override
public boolean meetsRequirement(Player player, RaidDifficulty difficulty) {
return switch (difficulty) {
case EASY -> player.getDonator().isMysticalPlus();
case MEDIUM -> player.getDonator().isObsidianPlus();
case HARD -> player.getDonator().isForsakenPlus();
};
}
@Override
public RaidRewardTable getRewardTable() {
return new RaidRewardTable(
List.of(
// common rewards
),
List.of(
// uncommon rewards
),
List.of(
// rare rewards
)
);
}
@Override
public RaidRewardTableChances getRewardTableChances(RaidDifficulty difficulty) {
return switch (difficulty) {
case EASY -> new RaidRewardTableChances(70, 20, 10);
case MEDIUM -> new RaidRewardTableChances(50, 35, 15);
case HARD -> new RaidRewardTableChances(45, 30, 20);
};
}
@Override
public NpcStatsOverrides getNpcStatsOverrides(RaidDifficulty difficulty) {
return switch (difficulty) {
case EASY -> new NpcStatsOverrides(1.0, 0, 0, 0);
case MEDIUM -> new NpcStatsOverrides(1.5, 250, 200, 15);
case HARD -> new NpcStatsOverrides(2.0, 350, 400, 25);
};
}
@Override
public String getDescription(RaidDifficulty difficulty) {
return switch (difficulty) {
case EASY -> """
Easy raid description here
Can be as many lines as u want
""";
case MEDIUM -> """
Medium raid description here
Same as above
""";
case HARD -> """
Hard raid description here
Same as above
""";
};
}
}Editor is loading...
Leave a Comment