Skip to content

Commit

Permalink
feat(libs): Updated to Tekore R0.1.0.
Browse files Browse the repository at this point in the history
  • Loading branch information
Shuvlyy committed Oct 21, 2024
1 parent f2059b5 commit 4e21ecd
Show file tree
Hide file tree
Showing 5 changed files with 90 additions and 84 deletions.
1 change: 0 additions & 1 deletion libs/Tekore-R0.0.3-SNAPSHOT.jar

This file was deleted.

1 change: 1 addition & 0 deletions libs/Tekore-R0.1.0-SNAPSHOT.jar
95 changes: 59 additions & 36 deletions src/main/java/fr/hashtek/spigot/breakffa/death/Death.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,16 @@

import fr.hashtek.hashlogger.HashLoggable;
import fr.hashtek.spigot.breakffa.BreakFFA;
import fr.hashtek.spigot.breakffa.cosmetics.Cosmetic;
import fr.hashtek.spigot.breakffa.cosmetics.types.CosmeticTypeKSFX;
import fr.hashtek.spigot.breakffa.game.GameManager;
import fr.hashtek.spigot.breakffa.player.PlayerData;
import fr.hashtek.spigot.breakffa.player.PlayerManager;
import fr.hashtek.spigot.breakffa.player.PlayerState;
import fr.hashtek.spigot.hashgui.listener.HashGuiHitListener;
import fr.hashtek.tekore.bukkit.Tekore;
import fr.hashtek.tekore.common.Rank;
import fr.hashtek.tekore.common.account.Account;
import fr.hashtek.tekore.spigot.Tekore;
import fr.hashtek.tekore.common.rank.Rank;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.TextComponent;
import org.bukkit.ChatColor;
Expand All @@ -21,19 +25,22 @@
public class Death implements HashLoggable
{

private final BreakFFA main;
private static final BreakFFA MAIN = BreakFFA.getInstance();
private static final Tekore CORE = MAIN.getCore();


/* Victim */
private final Player victim;
private final PlayerManager victimManager;
private final PlayerData victimData;
private final fr.hashtek.tekore.common.player.PlayerData victimCoreData;
private final Account victimAccount;
private final Rank victimRank;

/* Killer */
private final Player killer;
private final PlayerManager killerManager;
private final PlayerData killerData;
private final fr.hashtek.tekore.common.player.PlayerData killerCoreData;
private final Account killerAccount;
private final Rank killerRank;

private final ItemStack weapon;
Expand All @@ -44,59 +51,55 @@ public class Death implements HashLoggable
/**
* Creates a new instance of Death (without killer).
*
* @param main BreakFFA instance
* @param victim Death victim
* @param reason Death reason
*/
public Death(BreakFFA main, Player victim, DeathReason reason)
public Death(Player victim, DeathReason reason)
{
this(main, victim, null, null, reason);
this(victim, null, null, reason);
}

/**
* Creates a new instance of Death (without weapon).
*
* @param main BreakFFA instance
* @param victim Death victim
* @param killer Death author
* @param reason Death reason
*/
public Death(BreakFFA main, Player victim, Player killer, DeathReason reason)
public Death(Player victim, Player killer, DeathReason reason)
{
this(main, victim, killer, null, reason);
this(victim, killer, null, reason);
}

/**
* Creates a new instance of Death.
*
* @param main BreakFFA instance
* @param victim Death victim
* @param killer Death author
* @param weapon Weapon used
* @param reason Death reason
*/
public Death(BreakFFA main, Player victim, Player killer, ItemStack weapon, DeathReason reason)
public Death(Player victim, Player killer, ItemStack weapon, DeathReason reason)
{
this.main = main;

final Tekore core = this.main.getCore();
final GameManager gameManager = this.main.getGameManager();
final GameManager gameManager = MAIN.getGameManager();

this.victim = victim;
this.victimManager = gameManager.getPlayerManager(this.victim);
this.victimData = victimManager.getData();
this.victimCoreData = core.getPlayerManager(this.victim).getData();
this.victimRank = this.victimCoreData.getRank();
this.victimAccount = CORE.getPlayerManagersManager().getPlayerManager(this.victim).getAccount();
this.victimRank = this.victimAccount.getRank();

this.killer = killer;

if (this.killer != null) {
this.killerData = gameManager.getPlayerManager(this.killer).getData();
this.killerCoreData = core.getPlayerManager(this.killer).getData();
this.killerRank = this.killerCoreData.getRank();
this.killerManager = gameManager.getPlayerManager(this.killer);
this.killerData = killerManager.getData();
this.killerAccount = CORE.getPlayerManagersManager().getPlayerManager(this.killer).getAccount();
this.killerRank = this.killerAccount.getRank();
} else {
this.killerManager = null;
this.killerData = null;
this.killerCoreData = null;
this.killerAccount = null;
this.killerRank = null;
}

Expand All @@ -115,21 +118,21 @@ private void broadcast()
message
.append(this.reason.getSymbol())
.append(" ")
.append(this.victimRank.getColor())
.append(this.victimRank.getUsernameColor())
.append(this.victimRank.getShortName())
.append(" ")
.append(this.victimCoreData.getUsername())
.append(this.victimAccount.getUsername())
.append(" ").append(ChatColor.WHITE).append(this.reason.getReason());

if (this.killer != null) {
message
.append(" ")
.append(this.reason.getBy())
.append(" ")
.append(this.killerRank.getColor())
.append(this.killerRank.getUsernameColor())
.append(this.killerRank.getShortName())
.append(" ")
.append(this.killerCoreData.getUsername());
.append(this.killerAccount.getUsername());

if (this.weapon != null && this.weapon.getType() != Material.AIR) {
message
Expand All @@ -140,7 +143,7 @@ private void broadcast()

message.append(ChatColor.WHITE + ".");

this.main.getServer().broadcast(Component.text(message.toString()));
MAIN.getServer().broadcast(Component.text(message.toString()));
}

/**
Expand All @@ -153,8 +156,8 @@ private void confirmDeath()
}

this.killer.sendActionBar(Component.text(
"" + ChatColor.DARK_RED + ChatColor.UNDERLINE + ChatColor.BOLD + "⚔" +
this.victimRank.getColor() + " " + this.victimRank.getShortName() + " " + this.victimCoreData.getUsername() + " " +
"" + ChatColor.DARK_RED + ChatColor.UNDERLINE + "⚔" +
this.victimRank.getUsernameColor() + " " + this.victimRank.getShortName() + " " + this.victimAccount.getUsername() + " " +
ChatColor.AQUA + ChatColor.BOLD + "+" + killerData.getKillRewardShards()
));

Expand All @@ -167,10 +170,15 @@ private void confirmDeath()
private void processVictim()
{
this.victimData.setKillStreak(0);
this.victimData.setLastDamager(null);
this.victimData.setLastDamagerWeapon(null);
this.victimManager.setLastDamager(null);
this.victimManager.setLastDamagerWeapon(null);
this.victimData.setKillRewardShards(1);
this.main.getBoardManager().getPlayerSidebar(this.victim).refreshSidebar();

// try {
// MAIN.getBoardManager().getPlayerSidebar(this.victim).refreshSidebar();
// } catch (Exception exception) {
// // TODO: Write proper error handling
// }
}

/**
Expand All @@ -187,16 +195,31 @@ private void processKiller()
this.victim,
this.weapon,
true,
this.main.getGuiManager().getHitManager()
MAIN.getGuiManager().getHitManager()
);

final Cosmetic<CosmeticTypeKSFX> currentKillerKSFXCosmetic = this.killerManager.getCosmeticManager().getCurrentKillSfx();

if (currentKillerKSFXCosmetic != null) {
this.killer.playSound(this.killer.getLocation(), currentKillerKSFXCosmetic.getCosmetic().getSfx(), 1, 1);
}

this.killerData.addTotalKills(1);
this.killerData.addKillStreak(1);
this.killerData.addShards(this.killerData.getKillRewardShards());
this.main.getBoardManager().getPlayerSidebar(this.killer).refreshSidebar();

// try {
// MAIN.getBoardManager().getPlayerSidebar(this.killer).refreshSidebar();
// } catch (Exception exception) {
// exception.printStackTrace();
// // TODO: Write proper error handling
// }

this.killer.setHealth(killer.getHealthScale());
this.main.getShopManager().giveShop(this.killerData);

if (this.killerManager.getData().getState() == PlayerState.PLAYING) {
MAIN.getShopManager().giveShop(this.killer);
}
}

/**
Expand Down
49 changes: 23 additions & 26 deletions src/main/java/fr/hashtek/spigot/breakffa/game/Nexus.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,10 @@
import fr.hashtek.spigot.breakffa.player.PlayerData;
import fr.hashtek.spigot.breakffa.player.PlayerState;
import fr.hashtek.spigot.breakffa.shop.category.categories.ShopCategoryDefensive;
import fr.hashtek.tekore.common.Rank;
import fr.hashtek.spigot.hashgui.manager.HashGuiManager;
import fr.hashtek.tekore.common.rank.Rank;
import fr.hashtek.tekore.common.account.Account;
import fr.hashtek.tekore.spigot.Tekore;
import org.bukkit.ChatColor;
import org.bukkit.Sound;
import org.bukkit.block.Block;
Expand All @@ -19,22 +22,11 @@
public class Nexus implements HashLoggable
{

private final BreakFFA main;
private final GameManager gameManager;
private Block block;

private static final BreakFFA MAIN = BreakFFA.getInstance();
private static final HashGuiManager GUI_MANAGER = MAIN.getGuiManager();
private static final Tekore CORE = MAIN.getCore();

/**
* Creates a new Nexus.
*
* @param main BreakFFA instance
* @param gameManager Game manager
*/
public Nexus(BreakFFA main, GameManager gameManager)
{
this.main = main;
this.gameManager = gameManager;
}
private Block block;


/**
Expand Down Expand Up @@ -63,15 +55,15 @@ private void executeShopWeaponsAbilities(Player player, PlayerData playerData)
*/
public void destroy(Player player)
{
final PlayerData playerData = this.gameManager.getPlayerManager(player).getData();
final fr.hashtek.tekore.common.player.PlayerData corePlayerData = playerData.getCoreData();
final PlayerData playerData = MAIN.getGameManager().getPlayerManager(player).getData();
final Account corePlayerData = CORE.getPlayerManagersManager().getPlayerManager(player).getAccount();
final Rank playerRank = corePlayerData.getRank();

/* Clears all drops. */
new HashUtils.World(this.main.getWorld()).clearItems();
new HashUtils.World(MAIN.getWorld()).clearItems();

for (Player p : this.main.getServer().getOnlinePlayers()) {
final PlayerData pData = this.gameManager.getPlayerManager(p).getData();
for (Player p : MAIN.getServer().getOnlinePlayers()) {
final PlayerData pData = MAIN.getGameManager().getPlayerManager(p).getData();

if (pData.getState() != PlayerState.PLAYING) {
continue;
Expand All @@ -87,34 +79,39 @@ public void destroy(Player player)
/* Nexus breaking messages */
p.sendMessage(
"" + ChatColor.DARK_RED + ChatColor.UNDERLINE + "⚕" + ChatColor.RESET + " " +
playerRank.getColor() + playerRank.getShortName() + " " + corePlayerData.getUsername() + " " +
playerRank.getUsernameColor() + playerRank.getShortName() + " " + corePlayerData.getUsername() + " " +
ChatColor.RED + "a brisé le " + ChatColor.DARK_RED + ChatColor.BOLD + "Nexus" + ChatColor.RESET + ChatColor.RED + " !"
);

p.sendTitle(
ChatColor.RED + "⚕ " + ChatColor.DARK_RED + ChatColor.BOLD + "NEXUS" + ChatColor.RED + " ⚕",
ChatColor.RED + "Brisé par " + playerRank.getColor() + corePlayerData.getUsername(),
ChatColor.RED + "Brisé par " + playerRank.getUsernameColor() + corePlayerData.getUsername(),
0,
20,
40
);

/* Resetting player's nexus break streak */
if (!pData.getPlayer().equals(player)) {
if (!p.equals(player)) {
pData.setNexusBreaksStreak(0);
}
}

this.executeShopWeaponsAbilities(player, playerData);

this.gameManager.reset();
MAIN.getGameManager().resetMap();

/* Updates player's data */
playerData.addNexusBreaks(1);
playerData.addNexusBreaksStreak(1);
playerData.addShards(5);

this.main.getBoardManager().getPlayerSidebar(player).refreshSidebar();
// try {
// this.main.getBoardManager().getPlayerSidebar(player).refreshSidebar();
// } catch (Exception exception) {
// exception.printStackTrace();
// // TODO: Write proper error handling
// }
}


Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
package fr.hashtek.spigot.breakffa.listener;

import fr.hashtek.spigot.breakffa.BreakFFA;
import fr.hashtek.tekore.bukkit.Tekore;
import fr.hashtek.tekore.common.Rank;
import fr.hashtek.tekore.common.player.PlayerData;
import fr.hashtek.tekore.common.rank.Rank;
import fr.hashtek.tekore.common.account.Account;
import io.papermc.paper.chat.ChatRenderer;
import io.papermc.paper.event.player.AsyncChatEvent;
import net.kyori.adventure.audience.Audience;
Expand All @@ -18,28 +17,15 @@
public class ListenerChat implements Listener
{

private final Tekore core;


/**
* Creates a new instance of ListenerChat.
*
* @param main BreakFFA instance
*/
public ListenerChat(BreakFFA main)
{
this.core = main.getCore();
}


/**
* Called when a player sends a message in the chat.
*/
@EventHandler
public void onChat(AsyncChatEvent event)
{
final Player player = event.getPlayer();
final PlayerData playerData = this.core.getPlayerManager(player).getData();
final Account playerData = BreakFFA.getInstance().getCore()
.getPlayerManagersManager().getPlayerManager(player).getAccount();
final Rank playerRank = playerData.getRank();

event.renderer(new ChatRenderer() {
Expand All @@ -52,9 +38,9 @@ public Component render(
@NotNull Audience viewer
) {
return Component.text(
playerRank.getColor() + player.getName() + "@" + playerRank.getName()
+ ChatColor.DARK_GRAY + " $ "
+ ChatColor.WHITE + ((TextComponent) message).content()
playerRank.getUsernameColor() + player.getName() + "@" + playerRank.getName()
+ ChatColor.DARK_GRAY + " $ "
+ ChatColor.WHITE + ((TextComponent) message).content()
);
}
});
Expand Down

0 comments on commit 4e21ecd

Please sign in to comment.