From ed5cfad00d9c47f3894894f3441ea51d575ce650 Mon Sep 17 00:00:00 2001 From: "Luis C.M" <42545778+c0508383@users.noreply.github.com> Date: Sat, 20 May 2023 15:00:58 -0500 Subject: [PATCH] IDBCPlayer: -Changed mastery functions to use a boolean for racial or non-racial forms. --- src/api | 2 +- .../npcs/scripted/entity/ScriptDBCPlayer.java | 29 +++++++++++++++++-- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/src/api b/src/api index 5685f9a0f..c55c42c4f 160000 --- a/src/api +++ b/src/api @@ -1 +1 @@ -Subproject commit 5685f9a0f856879edc7e1f722da2fee98be187e2 +Subproject commit c55c42c4f23a60cf0cc09cee8e5f885b800fa877 diff --git a/src/main/java/noppes/npcs/scripted/entity/ScriptDBCPlayer.java b/src/main/java/noppes/npcs/scripted/entity/ScriptDBCPlayer.java index d64f4bcc3..432e90aa5 100644 --- a/src/main/java/noppes/npcs/scripted/entity/ScriptDBCPlayer.java +++ b/src/main/java/noppes/npcs/scripted/entity/ScriptDBCPlayer.java @@ -522,8 +522,9 @@ public class ScriptDBCPlayer extends ScriptPlayer i return player.getEntityData().getCompoundTag("PlayerPersisted").getByte("jrmcState2"); } - public double getFormMastery(String formTree, byte form) { + public double getFormMastery(boolean racialForm, byte form) { try { + String formTree = this.getFormTreeName(racialForm); if (player.getEntityData().getCompoundTag("PlayerPersisted").hasKey("jrmcFormMastery" + formTree)) { String[] formMasteries = player.getEntityData().getCompoundTag("PlayerPersisted"). getString("jrmcFormMastery" + formTree).split(";"); @@ -534,8 +535,9 @@ public class ScriptDBCPlayer extends ScriptPlayer i return 0.0D; } - public void setFormMastery(String formTree, byte form, double value) { + public void setFormMastery(boolean racialForm, byte form, double value) { try { + String formTree = this.getFormTreeName(racialForm); if (player.getEntityData().getCompoundTag("PlayerPersisted").hasKey("jrmcFormMastery" + formTree)) { String[] formMasteries = player.getEntityData().getCompoundTag("PlayerPersisted"). getString("jrmcFormMastery" + formTree).split(";"); @@ -558,8 +560,9 @@ public class ScriptDBCPlayer extends ScriptPlayer i } catch (Exception ignored) {} } - public void addFormMastery(String formTree, byte form, double value) { + public void addFormMastery(boolean racialForm, byte form, double value) { try { + String formTree = this.getFormTreeName(racialForm); if (player.getEntityData().getCompoundTag("PlayerPersisted").hasKey("jrmcFormMastery" + formTree)) { String[] formMasteries = player.getEntityData().getCompoundTag("PlayerPersisted"). getString("jrmcFormMastery" + formTree).split(";"); @@ -583,6 +586,26 @@ public class ScriptDBCPlayer extends ScriptPlayer i } catch (Exception ignored) {} } + private String getFormTreeName(boolean racialForm) { + if (racialForm) { + switch (this.getRace()) { + case 0: + return "Racial_Human"; + case 1: + return "Racial_Saiyan"; + case 2: + return "Racial_Half-Saiyan"; + case 3: + return "Racial_Namekian"; + case 4: + return "Racial_Arcosian"; + case 5: + return "Racial_Majin"; + } + } + return "NonRacial"; + } + public void setPowerPoints(int points){ player.getEntityData().getCompoundTag("PlayerPersisted").setInteger("jrmcArcRsrv",points); }