Body animated

This commit is contained in:
nearfe 2024-06-14 22:48:12 -03:00
parent 98181f71e0
commit 6862c71e2e
5 changed files with 30 additions and 15 deletions

View File

@ -766,7 +766,12 @@ public class PlayerListener implements Listener {
switch (playerData.getPlayerState()) {
case FIGHTING:
if (plugin.getMatchManager().getMatch(playerData) != null) {
PlayerUtil.animateDeath(player, !plugin.getMatchManager().getMatch(playerData).isPartyMatch());
switch (playerData.getOptions().getBodyAnimated()) {
case ANIMATED:
PlayerUtil.animateDeath(player, !plugin.getMatchManager().getMatch(playerData).isPartyMatch());
case STATIC:
PlayerUtil.staticDeath(player, !plugin.getMatchManager().getMatch(playerData).isPartyMatch());
}
}
this.plugin.getMatchManager().removeFighter(player, playerData, true);
break;

View File

@ -9,6 +9,7 @@ import land.battle.practice.menu.DeathEffectMenu;
import land.battle.practice.menu.KillMessageMenu;
import land.battle.practice.menu.MatchmakingSettingsMenu;
import land.battle.practice.player.PlayerData;
import land.battle.practice.settings.item.BodyOptionsItemState;
import land.battle.practice.settings.item.ProfileOptionsItemState;
import land.battle.practice.settings.item.SidebarOptionsItemState;
import land.battle.practice.util.CC;
@ -163,25 +164,24 @@ public class PracticeSettingsImpl implements ISettings {
})
);
buttonList.add(new ItemBuilder(Material.ENCHANTED_BOOK)
.setDisplayName(Color.MAIN_COLOR + CC.BOLD + "Matchmaking Settings")
buttonList.add(new ItemBuilder(Material.SKULL_ITEM)
.setDisplayName(Color.MAIN_COLOR + CC.BOLD + "Body animation")
.addLore(
CC.GRAY + "Configure matchmaking settings.",
"",
CC.GRAY + "Would you like a different body",
CC.GRAY + "animation on your gameplay?",
" ",
CC.YELLOW + "[View matchmaking settings]"
(data.getOptions().getBodyAnimated() == BodyOptionsItemState.ANIMATED ? CC.GREEN + CC.BOLD + "" : CC.DARK_GRAY + CC.BOLD + "") + "&fOld",
(data.getOptions().getBodyAnimated() == BodyOptionsItemState.STATIC ? CC.GREEN + CC.BOLD + "" : CC.DARK_GRAY + CC.BOLD + "") + "&fModern"
)
.toButton((player1, clickType) -> {
if (!player1.hasPermission("practice.matchmaking.settings")) {
player1.sendMessage(CC.RED + "You don't have permission to open Matchmaking Settings! Get more information at our store: store.minion.lol.");
player1.closeInventory();
return;
.toUpdatingButton((player1, clickType) -> {
if (data.getOptions().getBodyAnimated() == BodyOptionsItemState.ANIMATED) {
data.getOptions().setBodyAnimated(BodyOptionsItemState.STATIC);
} else {
data.getOptions().setBodyAnimated(BodyOptionsItemState.ANIMATED);
}
new MatchmakingSettingsMenu().openMenu(player1);
})
);
return buttonList;
}

View File

@ -1,5 +1,6 @@
package land.battle.practice.settings;
import land.battle.practice.settings.item.BodyOptionsItemState;
import land.battle.practice.settings.item.ProfileOptionsItemState;
import land.battle.practice.settings.item.SidebarOptionsItemState;
import lombok.Getter;
@ -20,6 +21,7 @@ public class ProfileOptions {
private ProfileOptionsItemState scoreboardState = ProfileOptionsItemState.PING;
private SidebarOptionsItemState scoreboardStyle = SidebarOptionsItemState.OLD;
private BodyOptionsItemState bodyAnimated = BodyOptionsItemState.ANIMATED;
}

View File

@ -0,0 +1,8 @@
package land.battle.practice.settings.item;
public enum BodyOptionsItemState {
ANIMATED,
STATIC,
}

View File

@ -250,7 +250,7 @@ public final class PlayerUtil {
}
@SneakyThrows
public static void staticDeath(Player player) {
public static void staticDeath(Player player, boolean showPlayer) {
int entityId = EntityUtils.getFakeEntityId();
PacketPlayOutNamedEntitySpawn spawnPacket = new PacketPlayOutNamedEntitySpawn(((CraftPlayer) player).getHandle());
PacketPlayOutEntityStatus statusPacket = new PacketPlayOutEntityStatus();