package noppes.npcs.api.entity; import noppes.npcs.api.item.IItemStack; /** * Extends IPlayer with additional methods specific to DBC (Dragon Ball C) players. * These methods manage stats, bonus attributes, form configurations, inventory, and more. */ public interface IDBCPlayer extends IPlayer { /** * Sets the specified stat to the given value. * * @param stat the stat name (e.g. "str", "dex", "con", "wil", "mnd", "spi"). * @param value the new value. */ void setStat(String stat, int value); /** * Retrieves the value of the specified stat. * * @param stat the stat name. * @return the stat value. */ int getStat(String stat); /** * Adds a bonus attribute for the specified stat. * * @param stat the stat name. * @param bonusID the identifier for the bonus. * @param operation the arithmetic operation to apply. * @param attributeValue the attribute value. */ void addBonusAttribute(String stat, String bonusID, String operation, double attributeValue); /** * Adds a bonus attribute for the specified stat. * * @param stat the stat name. * @param bonusID the identifier for the bonus. * @param operation the arithmetic operation to apply. * @param attributeValue the attribute value. * @param endOfTheList whether to add the bonus at the end of the list. */ void addBonusAttribute(String stat, String bonusID, String operation, double attributeValue, boolean endOfTheList); /** * Increases an existing bonus attribute for the specified stat. * * @param stat the stat name. * @param bonusID the identifier for the bonus. * @param operation the arithmetic operation. * @param attributeValue the value to add. */ void addToBonusAttribute(String stat, String bonusID, String operation, double attributeValue); /** * Sets a bonus attribute for the specified stat. * * @param stat the stat name. * @param bonusID the identifier for the bonus. * @param operation the arithmetic operation. * @param attributeValue the value to set. */ void setBonusAttribute(String stat, String bonusID, String operation, double attributeValue); /** * Retrieves a bonus attribute for the specified stat. * * @param stat the stat name. * @param bonusID the identifier for the bonus. */ void getBonusAttribute(String stat, String bonusID); /** * Removes the bonus attribute with the given identifier for the specified stat. * * @param stat the stat name. * @param bonusID the bonus identifier. */ void removeBonusAttribute(String stat, String bonusID); /** * Clears all bonus attributes for the specified stat. * * @param stat the stat name. */ void clearBonusAttribute(String stat); /** * Retrieves a bonus attribute string based on an action. * * @param action the action (get, remove, or clear). * @param stat the stat name. * @param bonusID the bonus identifier. * @return the bonus attribute string. */ String bonusAttribute(String action, String stat, String bonusID); /** * Retrieves a bonus attribute string with full parameters. * * @param action the action (add, addto, set, get, remove, or clear). * @param stat the stat name. * @param bonusID the bonus identifier. * @param operation the arithmetic operation. * @param attributeValue the attribute value. * @param endOfTheList whether to add at the end of the list. * @return the bonus attribute string. */ String bonusAttribute(String action, String stat, String bonusID, String operation, double attributeValue, boolean endOfTheList); /** * Sets the release state. * * @param release the release value. */ void setRelease(byte release); /** * Returns the current release state. * * @return the release value. */ byte getRelease(); /** * Sets the body value. Also HP. * * @param body the body value. */ void setBody(int body); /** * Returns the body value. Also HP. * * @return the body. */ int getBody(); /** * Sets the HP value. * * @param hp the HP value. */ void setHP(int hp); /** * Returns the HP value. * * @return the HP. */ int getHP(); /** * Sets the stamina value. * * @param stamina the stamina value. */ void setStamina(int stamina); /** * Returns the stamina value. * * @return the stamina. */ int getStamina(); /** * Sets the Ki value. * * @param ki Ki value. */ void setKi(int ki); /** * Returns the Ki value. * * @return Ki of Player. */ int getKi(); /** * Sets the TP value. * * @param tp Set TP Amount */ void setTP(int tp); /** * Returns the TP value. * * @return Player TP Amount */ int getTP(); /** * Sets the gravity for the player. * * @param gravity the gravity value. */ void setGravity(float gravity); /** * Returns the current gravity value. * * @return the gravity. */ float getGravity(); /** * Checks if the player is blocking. * * @return true if blocking; false otherwise. */ boolean isBlocking(); /** * Sets the hair code used to define the player's hairstyle. * * @param hairCode the hair code string. */ void setHairCode(String hairCode); /** * Returns the player's hair code. * * @return the hair code string. */ String getHairCode(); /** * Sets the extra code used for additional customization. * * @param extraCode the extra code string. */ void setExtraCode(String extraCode); /** * Returns the player's extra code. * * @return the extra code string. */ String getExtraCode(); /** * Sets an item in the DBC extra inventory slot. *
* Slot definitions: *