RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
NpcDrop.java
1package com.osroyale.game.world.entity.mob.npc.drop;
2
3import com.google.gson.annotations.SerializedName;
4import com.osroyale.game.world.items.Item;
5import com.osroyale.util.RandomGen;
6
40
41public final class NpcDrop implements Comparable<NpcDrop> {
43 @SerializedName(value="id", alternate={"item"})
44 public int id;
47
48 public int getWeight() {
49 return type.weight;
50 }
51
53 public final int chance;
54
56 public final int minimum;
57
59 public final int maximum;
60
62 public NpcDrop(int id, NpcDropChance type, int chance, int minimum, int maximum) {
63 this.id = id;
64 this.type = type;
65 this.chance = chance;
66 this.minimum = minimum;
67 this.maximum = maximum;
68 }
69
71 public Item toItem(RandomGen gen) {
72 return new Item(id, gen.inclusive(minimum, maximum));
73 }
74
75 public void setId(int id) {
76 this.id = id;
77 }
78
79 public void setType(NpcDropChance type) {
80 this.type = type;
81 }
82
83 @Override
84 public int compareTo(NpcDrop other) {
85 return type.ordinal() - other.type.ordinal();
86 }
87}
NpcDrop(int id, NpcDropChance type, int chance, int minimum, int maximum)
Definition NpcDrop.java:62