Skip to content

Commit

Permalink
docs(gui>cosmetics(>buy)): Added Javadoc (and cleaned some things up).
Browse files Browse the repository at this point in the history
  • Loading branch information
Shuvlyy committed Oct 5, 2024
1 parent 75b52f4 commit 1adea2f
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 19 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -61,9 +61,16 @@ public HashItem getItem()
private final CosmeticManager.CurrentCosmeticSetter<Cosmetic<T>> currentCosmeticSetter;


/**
* Creates a new instance of GuiCosmeticBuy.
*
* @param parentGui Parent Gui (instance of {@link GuiCosmeticsCategory})
* @param cosmetic Cosmetic to buy
* @param ownedCosmeticsGetter Owned cosmetics getter (from a {@link CosmeticManager} instance)
* @param currentCosmeticSetter Current cosmetic setter (from a {@link CosmeticManager} instance)
*/
public GuiCosmeticBuy(
GuiCosmeticsCategory<T, E> parentGui,
CosmeticManager cosmeticManager,
Cosmetic<T> cosmetic,
CosmeticManager.OwnedCosmeticsGetter<Cosmetic<T>> ownedCosmeticsGetter,
CosmeticManager.CurrentCosmeticSetter<Cosmetic<T>> currentCosmeticSetter
Expand All @@ -80,6 +87,11 @@ public GuiCosmeticBuy(
}


/**
* Creates the Gui.
*
* @param cosmetic Cosmetic to buy
*/
private void createGui(Cosmetic<T> cosmetic)
{
final HashItem cosmeticItem = new HashItem(cosmetic.getMaterial())
Expand All @@ -105,6 +117,7 @@ private void createGui(Cosmetic<T> cosmetic)
final CosmeticManager playerCosmeticManager =
MAIN.getGameManager().getPlayerManager(player).getCosmeticManager();

/* Unlocks the cosmetic for the player. */
gui.getOwnedCosmeticsGetter().getOwnedGetter(playerCosmeticManager).get().add(cosmeticToBuy);
}
))
Expand Down Expand Up @@ -136,6 +149,10 @@ private void createGui(Cosmetic<T> cosmetic)
mask.apply();
}

/**
* @param action Action to execute before returning to the Parent Gui
* @return Action that returns to the Parent Gui.
*/
private ClickAction returnToParentGui(ClickAction action)
{
return (Player player, HashGui hashGui, ItemStack item, int slot) -> {
Expand All @@ -160,22 +177,34 @@ private ClickAction returnToParentGui(ClickAction action)
};
}

/**
* @return Action that returns to the Parent Gui, without custom action before.
*/
private ClickAction returnToParentGui()
{
return this.returnToParentGui(null);
}


/**
* @return Parent Gui (instance of {@link GuiCosmeticsCategory})
*/
public GuiCosmeticsCategory<T, E> getParentGui()
{
return this.parentGui;
}

/**
* @return Cosmetic to buy
*/
public Cosmetic<T> getCosmetic()
{
return this.cosmetic;
}

/**
* @return Owned cosmetics getter (from a {@link CosmeticManager} instance)
*/
public CosmeticManager.OwnedCosmeticsGetter<Cosmetic<T>> getOwnedCosmeticsGetter()
{
return this.ownedCosmeticsGetter;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,17 +45,17 @@ public abstract class GuiCosmeticsCategory<
* @param playerCosmeticManager Player Cosmetic Manager
* @param attributes Category attributes
* @param cosmetics Cosmetic class
* @param ownedCosmeticsGetter Cosmetics that player currently owns Getter
* @param cosmeticGetter Cosmetic getter (from a CosmeticManager instance)
* @param cosmeticSetter Cosmetic setter (from a CosmeticManager instance)
* @param ownedCosmeticsGetter Owned cosmetics getter (from a {@link CosmeticManager} instance)
* @param currentCosmeticGetter Current cosmetic getter (from a {@link CosmeticManager} instance)
* @param currentCosmeticSetter Current cosmetic setter (from a {@link CosmeticManager} instance)
*/
public GuiCosmeticsCategory(
CosmeticManager playerCosmeticManager,
GuiCosmeticsCategoryAttributes attributes,
Class<E> cosmetics,
CosmeticManager.OwnedCosmeticsGetter<Cosmetic<T>> ownedCosmeticsGetter,
CosmeticManager.CurrentCosmeticGetter<Cosmetic<T>> cosmeticGetter,
CosmeticManager.CurrentCosmeticSetter<Cosmetic<T>> cosmeticSetter
CosmeticManager.CurrentCosmeticGetter<Cosmetic<T>> currentCosmeticGetter,
CosmeticManager.CurrentCosmeticSetter<Cosmetic<T>> currentCosmeticSetter
)
{
super(
Expand All @@ -69,8 +69,8 @@ public GuiCosmeticsCategory(

this.cosmetics = cosmetics;
this.ownedCosmeticsGetter = ownedCosmeticsGetter;
this.currentCosmeticGetter = cosmeticGetter;
this.currentCosmeticSetter = cosmeticSetter;
this.currentCosmeticGetter = currentCosmeticGetter;
this.currentCosmeticSetter = currentCosmeticSetter;

this.initializeGui(this.getCategoryTitleItem());
this.reloadGui(
Expand Down Expand Up @@ -129,8 +129,8 @@ private void initializeGui(HashItem titleItem)
/**
* Reloads the Gui. Used at each current cosmetic change.
*
* @param gui Gui to update
* @param manager Cosmetic Manager
* @param gui Gui to update
* @param manager Cosmetic Manager
*/
public void reloadGui(
GuiCosmeticsCategory<T, E> gui,
Expand All @@ -145,8 +145,8 @@ public void reloadGui(
* Creates an item for a cosmetic, with the click handlers for buy,
* select etc...
*
* @param cosmetic Cosmetic to add
* @param manager Cosmetic Manager (for current / possession detection)
* @param cosmetic Cosmetic to add
* @param manager Cosmetic Manager (for current / possession detection)
* @return Built item
*/
private HashItem createCosmeticItem(
Expand Down Expand Up @@ -190,7 +190,6 @@ private HashItem createCosmeticItem(
if (!gui.getOwnedCosmeticsGetter().getOwnedGetter(playerCosmeticManager).get().contains(cosmetic)) {
new GuiCosmeticBuy<T, E>(
gui,
playerCosmeticManager,
cosmetic,
gui.getOwnedCosmeticsGetter(),
gui.getCurrentCosmeticSetter()
Expand All @@ -213,8 +212,8 @@ private HashItem createCosmeticItem(
/**
* Adds a cosmetic to the Gui.
*
* @param cosmetic Cosmetic to add
* @param manager Cosmetic Manager (for current / possession detection)
* @param cosmetic Cosmetic to add
* @param manager Cosmetic Manager (for current / possession detection)
*
* @apiNote TODO: Finish this and beautify !
*/
Expand Down Expand Up @@ -245,10 +244,7 @@ private void addCosmeticsItems(
)
{
for (E enumConstant : enumClass.getEnumConstants()) {
this.addCosmeticItem(
enumConstant.getCosmetic(),
manager
);
this.addCosmeticItem(enumConstant.getCosmetic(), manager);
}
}

Expand All @@ -260,6 +256,9 @@ private void addCosmeticsItems(
*/
public abstract HashItem getCategoryTitleItem();

/**
* @return Gui's attributes
*/
public GuiCosmeticsCategoryAttributes getAttributes()
{
return this.attributes;
Expand All @@ -273,16 +272,25 @@ public Class<E> getCosmeticsClass()
return this.cosmetics;
}

/**
* @return Owned cosmetics getter (from a {@link CosmeticManager} instance)
*/
public CosmeticManager.OwnedCosmeticsGetter<Cosmetic<T>> getOwnedCosmeticsGetter()
{
return this.ownedCosmeticsGetter;
}

/**
* @return Current cosmetic getter (from a {@link CosmeticManager} instance)
*/
public CosmeticManager.CurrentCosmeticGetter<Cosmetic<T>> getCurrentCosmeticGetter()
{
return this.currentCosmeticGetter;
}

/**
* @return Current cosmetic setter (from a {@link CosmeticManager} instance)
*/
public CosmeticManager.CurrentCosmeticSetter<Cosmetic<T>> getCurrentCosmeticSetter()
{
return this.currentCosmeticSetter;
Expand Down

0 comments on commit 1adea2f

Please sign in to comment.