mirror of
https://github.com/Minestom/Minestom.git
synced 2025-03-02 11:21:15 +01:00
Fix death messages
This commit is contained in:
parent
ad4193d934
commit
1b5bf59c26
@ -1,5 +1,6 @@
|
|||||||
package net.minestom.server.entity;
|
package net.minestom.server.entity;
|
||||||
|
|
||||||
|
import net.kyori.text.Component;
|
||||||
import net.kyori.text.TextComponent;
|
import net.kyori.text.TextComponent;
|
||||||
import net.minestom.server.MinecraftServer;
|
import net.minestom.server.MinecraftServer;
|
||||||
import net.minestom.server.bossbar.BossBar;
|
import net.minestom.server.bossbar.BossBar;
|
||||||
@ -247,7 +248,7 @@ public class Player extends LivingEntity {
|
|||||||
public void kill() {
|
public void kill() {
|
||||||
if (!isDead()) {
|
if (!isDead()) {
|
||||||
// send death message to player
|
// send death message to player
|
||||||
TextComponent deathMessage;
|
Component deathMessage;
|
||||||
if (lastDamageSource != null) {
|
if (lastDamageSource != null) {
|
||||||
deathMessage = lastDamageSource.buildDeathScreenMessage(this);
|
deathMessage = lastDamageSource.buildDeathScreenMessage(this);
|
||||||
} else { // may happen if killed by the server without applying damage
|
} else { // may happen if killed by the server without applying damage
|
||||||
@ -257,7 +258,7 @@ public class Player extends LivingEntity {
|
|||||||
playerConnection.sendPacket(deathPacket);
|
playerConnection.sendPacket(deathPacket);
|
||||||
|
|
||||||
// send death message to chat
|
// send death message to chat
|
||||||
TextComponent chatMessage;
|
Component chatMessage;
|
||||||
if (lastDamageSource != null) {
|
if (lastDamageSource != null) {
|
||||||
chatMessage = lastDamageSource.buildChatMessage(this);
|
chatMessage = lastDamageSource.buildChatMessage(this);
|
||||||
} else { // may happen if killed by the server without applying damage
|
} else { // may happen if killed by the server without applying damage
|
||||||
@ -404,7 +405,7 @@ public class Player extends LivingEntity {
|
|||||||
sendMessage(Chat.fromLegacyText(message, colorChar));
|
sendMessage(Chat.fromLegacyText(message, colorChar));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void sendMessage(TextComponent textObject) {
|
public void sendMessage(Component textObject) {
|
||||||
sendMessageJson(Chat.toJsonString(textObject));
|
sendMessageJson(Chat.toJsonString(textObject));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package net.minestom.server.entity.damage;
|
package net.minestom.server.entity.damage;
|
||||||
|
|
||||||
|
import net.kyori.text.Component;
|
||||||
import net.kyori.text.TextComponent;
|
import net.kyori.text.TextComponent;
|
||||||
import net.kyori.text.TranslatableComponent;
|
import net.kyori.text.TranslatableComponent;
|
||||||
import net.minestom.server.entity.Entity;
|
import net.minestom.server.entity.Entity;
|
||||||
@ -26,15 +27,15 @@ public class DamageType {
|
|||||||
return new EntityProjectileDamage(shooter, projectile);
|
return new EntityProjectileDamage(shooter, projectile);
|
||||||
}
|
}
|
||||||
|
|
||||||
public TextComponent buildChatMessage(Player killed) {
|
public Component buildChatMessage(Player killed) {
|
||||||
return TextComponent.builder().append(TranslatableComponent.of("death."+identifier)).append(killed.getUsername()).build();
|
return TranslatableComponent.of("death."+identifier, TextComponent.of(killed.getUsername()));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static DamageType fromPlayer(Player player) {
|
public static DamageType fromPlayer(Player player) {
|
||||||
return new EntityDamage(player);
|
return new EntityDamage(player);
|
||||||
}
|
}
|
||||||
|
|
||||||
public TextComponent buildDeathScreenMessage(Player killed) {
|
public Component buildDeathScreenMessage(Player killed) {
|
||||||
return buildChatMessage(killed);
|
return buildChatMessage(killed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package net.minestom.server.network.packet.server.play;
|
package net.minestom.server.network.packet.server.play;
|
||||||
|
|
||||||
|
import net.kyori.text.Component;
|
||||||
import net.kyori.text.TextComponent;
|
import net.kyori.text.TextComponent;
|
||||||
import net.minestom.server.chat.Chat;
|
import net.minestom.server.chat.Chat;
|
||||||
import net.minestom.server.entity.Entity;
|
import net.minestom.server.entity.Entity;
|
||||||
@ -20,7 +21,7 @@ public class CombatEventPacket implements ServerPacket {
|
|||||||
private int duration;
|
private int duration;
|
||||||
private int opponent;
|
private int opponent;
|
||||||
private int playerID;
|
private int playerID;
|
||||||
private TextComponent deathMessage;
|
private Component deathMessage;
|
||||||
|
|
||||||
private CombatEventPacket() {}
|
private CombatEventPacket() {}
|
||||||
|
|
||||||
@ -38,7 +39,7 @@ public class CombatEventPacket implements ServerPacket {
|
|||||||
return packet;
|
return packet;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static CombatEventPacket death(Player player, Optional<Entity> killer, TextComponent message) {
|
public static CombatEventPacket death(Player player, Optional<Entity> killer, Component message) {
|
||||||
CombatEventPacket packet = new CombatEventPacket();
|
CombatEventPacket packet = new CombatEventPacket();
|
||||||
packet.type = EventType.DEATH;
|
packet.type = EventType.DEATH;
|
||||||
packet.playerID = player.getEntityId();
|
packet.playerID = player.getEntityId();
|
||||||
|
Loading…
Reference in New Issue
Block a user