diff --git a/Server/src/main/java/core/game/content/global/shop/CulinomancerShop.kt b/Server/src/main/java/core/game/content/global/shop/CulinomancerShop.kt
index 3156b2654..253bde171 100644
--- a/Server/src/main/java/core/game/content/global/shop/CulinomancerShop.kt
+++ b/Server/src/main/java/core/game/content/global/shop/CulinomancerShop.kt
@@ -49,7 +49,7 @@ class CulinomancerShop : LoginListener {
//Retrieve a player's shop - should generate the shop if it does not exist.
fun getShop(player: Player, food: Boolean): Shop {
- val uid = player.details.uid
+ val uid = player.details.usernameHashcode
val points = player.questRepository.points
val tier = (points / 18)
if (tier != getAttribute(player, "culino-tier", 0)) //If player tier has changed
diff --git a/Server/src/main/java/core/game/content/holiday/christmas/ChristmasEvent.java b/Server/src/main/java/core/game/content/holiday/christmas/ChristmasEvent.java
index be527ec72..341093288 100644
--- a/Server/src/main/java/core/game/content/holiday/christmas/ChristmasEvent.java
+++ b/Server/src/main/java/core/game/content/holiday/christmas/ChristmasEvent.java
@@ -439,7 +439,7 @@ public class ChristmasEvent extends HolidayEvent {
snowman.faceTemporary(player, 2);
snowman.setRespawn(false);
snowman.setWalks(true);
- snowman.setAttribute("owner", player.getDetails().getUid());
+ snowman.setAttribute("owner", player.getDetails().getUsernameHashcode());
if (!player.getEmoteManager().isUnlocked(Emotes.SNOWMAN_DANCE)) {
player.getEmoteManager().unlock(Emotes.SNOWMAN_DANCE);
player.sendMessage("
You've unlocked the snowman dance emote!");
@@ -492,7 +492,7 @@ public class ChristmasEvent extends HolidayEvent {
@Override
public boolean open(Object... args) {
npc = (NPC) args[0];
- if (npc.getAttribute("owner", 0) != player.getDetails().getUid()) {
+ if (npc.getAttribute("owner", 0) != player.getDetails().getUsernameHashcode()) {
player.sendMessage("The snowman doesn't seem interested in talking to you.");
return true;
}
diff --git a/Server/src/main/java/core/game/node/entity/player/info/PlayerDetails.java b/Server/src/main/java/core/game/node/entity/player/info/PlayerDetails.java
index c7f763a82..1fd811284 100644
--- a/Server/src/main/java/core/game/node/entity/player/info/PlayerDetails.java
+++ b/Server/src/main/java/core/game/node/entity/player/info/PlayerDetails.java
@@ -1,6 +1,5 @@
package core.game.node.entity.player.info;
-import core.game.node.entity.player.info.portal.Icon;
import core.game.system.communication.CommunicationInfo;
import core.net.IoSession;
import org.jetbrains.annotations.NotNull;
@@ -126,16 +125,8 @@ public class PlayerDetails {
* Gets the uid.
* @return the uid.
*/
- public int getUid() {
- return this.accountInfo.getUid();
- }
-
- /**
- * Sets the uid.
- * @param uid the uid.
- */
- public void setUid(int uid) {
-
+ public int getUsernameHashcode() { //was getUid, but that was such an amazing and descriptive name for what this method actually does that I just had to change it!
+ return this.getUsername().hashCode(); //this SHOULD return accountInfo.uid BUT Arios is an amazing codebase, and they used username hashcodes when players already had a UID assigned by the DB. Genius!
}
/**
diff --git a/Server/src/main/java/core/game/node/item/GroundItem.java b/Server/src/main/java/core/game/node/item/GroundItem.java
index c67501267..251129197 100644
--- a/Server/src/main/java/core/game/node/item/GroundItem.java
+++ b/Server/src/main/java/core/game/node/item/GroundItem.java
@@ -104,7 +104,7 @@ public class GroundItem extends Item {
* @return {@code True} if so.
*/
public boolean droppedBy(Player p) {
- if (dropper != null && p.getDetails().getUid() == dropper.getDetails().getUid()) {
+ if (dropper != null && p.getDetails().getUsernameHashcode() == dropper.getDetails().getUsernameHashcode()) {
dropper = p;
return true;
}
diff --git a/Server/src/main/java/core/gui/tab/GrandExchangeTab.java b/Server/src/main/java/core/gui/tab/GrandExchangeTab.java
index b0eeb6290..c5239801e 100644
--- a/Server/src/main/java/core/gui/tab/GrandExchangeTab.java
+++ b/Server/src/main/java/core/gui/tab/GrandExchangeTab.java
@@ -63,7 +63,7 @@ public class GrandExchangeTab extends ConsoleTab {
if (p == null) {
continue;
}
- if (p.getDetails().getUid() == offer.getUid()) {
+ if (p.getDetails().getUsernameHashcode() == offer.getUid()) {
player = p;
break;
}
diff --git a/Server/src/main/kotlin/rs09/game/ge/GrandExchange.kt b/Server/src/main/kotlin/rs09/game/ge/GrandExchange.kt
index 760540d99..55e7e9553 100644
--- a/Server/src/main/kotlin/rs09/game/ge/GrandExchange.kt
+++ b/Server/src/main/kotlin/rs09/game/ge/GrandExchange.kt
@@ -244,9 +244,9 @@ class GrandExchange : StartupListener, Commands {
}
if ( player.isArtificial )
- offer.playerUID = PlayerDetails.getDetails("2009scape").uid.also { offer.isBot = true }
+ offer.playerUID = PlayerDetails.getDetails("2009scape").usernameHashcode.also { offer.isBot = true }
else
- offer.playerUID = player.details.uid
+ offer.playerUID = player.details.usernameHashcode
offer.offerState = OfferState.REGISTERED
//GrandExchangeRecords.getInstance(player).update(offer)
diff --git a/Server/src/main/kotlin/rs09/game/ge/GrandExchangeRecords.kt b/Server/src/main/kotlin/rs09/game/ge/GrandExchangeRecords.kt
index 28e764a87..f53f5669b 100644
--- a/Server/src/main/kotlin/rs09/game/ge/GrandExchangeRecords.kt
+++ b/Server/src/main/kotlin/rs09/game/ge/GrandExchangeRecords.kt
@@ -55,7 +55,7 @@ class GrandExchangeRecords(private val player: Player? = null) : PersistPlayer,
GEDB.run { conn ->
val stmt = conn.createStatement()
- val offer_records = stmt.executeQuery("SELECT * from player_offers where player_uid = ${player.details.uid} AND offer_state < 6")
+ val offer_records = stmt.executeQuery("SELECT * from player_offers where player_uid = ${player.details.usernameHashcode} AND offer_state < 6")
while (offer_records.next()) {
val offer = GrandExchangeOffer.fromQuery(offer_records)
diff --git a/Server/src/main/kotlin/rs09/game/world/repository/Repository.kt b/Server/src/main/kotlin/rs09/game/world/repository/Repository.kt
index 8f4fe3f8b..5c58ce0a0 100644
--- a/Server/src/main/kotlin/rs09/game/world/repository/Repository.kt
+++ b/Server/src/main/kotlin/rs09/game/world/repository/Repository.kt
@@ -134,13 +134,13 @@ object Repository {
@JvmStatic
fun addPlayer(player: Player){
players.add(player)
- uid_map[player.details.uid] = player
+ uid_map[player.details.usernameHashcode] = player
}
@JvmStatic
fun removePlayer(player: Player){
players.remove(player)
- uid_map.remove(player.details.uid)
+ uid_map.remove(player.details.usernameHashcode)
}
/**