mirror of
https://gitlab.bixilon.de/bixilon/minosoft.git
synced 2025-09-13 09:26:11 -04:00
hud: tab: fix data of us
This commit is contained in:
parent
ae9fd5cf63
commit
34d4d8bbcc
@ -45,21 +45,21 @@ class TabListDataS2CP(buffer: PlayInByteBuffer) : PlayS2CPacket() {
|
|||||||
buffer.readVarInt()
|
buffer.readVarInt()
|
||||||
}
|
}
|
||||||
val action = if (buffer.readBoolean()) {
|
val action = if (buffer.readBoolean()) {
|
||||||
PlayerListItemActions.UPDATE_LATENCY
|
TabListItemActions.UPDATE_LATENCY
|
||||||
} else {
|
} else {
|
||||||
PlayerListItemActions.REMOVE_PLAYER
|
TabListItemActions.REMOVE_PLAYER
|
||||||
}
|
}
|
||||||
val uuid: UUID = UUID.nameUUIDFromBytes(name.toByteArray(StandardCharsets.UTF_8))
|
val uuid: UUID = UUID.nameUUIDFromBytes(name.toByteArray(StandardCharsets.UTF_8))
|
||||||
val item = TabListItemData(name = name, ping = ping, remove = action == PlayerListItemActions.REMOVE_PLAYER)
|
val item = TabListItemData(name = name, ping = ping, remove = action == TabListItemActions.REMOVE_PLAYER)
|
||||||
items[uuid] = item
|
items[uuid] = item
|
||||||
} else {
|
} else {
|
||||||
val action = PlayerListItemActions[buffer.readVarInt()]
|
val action = TabListItemActions[buffer.readVarInt()]
|
||||||
val count: Int = buffer.readVarInt()
|
val count: Int = buffer.readVarInt()
|
||||||
for (i in 0 until count) {
|
for (i in 0 until count) {
|
||||||
val uuid: UUID = buffer.readUUID()
|
val uuid: UUID = buffer.readUUID()
|
||||||
val data: TabListItemData
|
val data: TabListItemData
|
||||||
when (action) {
|
when (action) {
|
||||||
PlayerListItemActions.ADD -> {
|
TabListItemActions.ADD -> {
|
||||||
val name = buffer.readString()
|
val name = buffer.readString()
|
||||||
val playerProperties: MutableMap<String, PlayerProperty> = mutableMapOf()
|
val playerProperties: MutableMap<String, PlayerProperty> = mutableMapOf()
|
||||||
for (index in 0 until buffer.readVarInt()) {
|
for (index in 0 until buffer.readVarInt()) {
|
||||||
@ -87,13 +87,13 @@ class TabListDataS2CP(buffer: PlayInByteBuffer) : PlayS2CPacket() {
|
|||||||
displayName = displayName,
|
displayName = displayName,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
PlayerListItemActions.UPDATE_GAMEMODE -> {
|
TabListItemActions.UPDATE_GAMEMODE -> {
|
||||||
data = TabListItemData(gamemode = Gamemodes[buffer.readVarInt()])
|
data = TabListItemData(gamemode = Gamemodes[buffer.readVarInt()])
|
||||||
}
|
}
|
||||||
PlayerListItemActions.UPDATE_LATENCY -> {
|
TabListItemActions.UPDATE_LATENCY -> {
|
||||||
data = TabListItemData(ping = buffer.readVarInt())
|
data = TabListItemData(ping = buffer.readVarInt())
|
||||||
}
|
}
|
||||||
PlayerListItemActions.UPDATE_DISPLAY_NAME -> {
|
TabListItemActions.UPDATE_DISPLAY_NAME -> {
|
||||||
val hasDisplayName = buffer.readBoolean()
|
val hasDisplayName = buffer.readBoolean()
|
||||||
val displayName = if (hasDisplayName) {
|
val displayName = if (hasDisplayName) {
|
||||||
buffer.readChatComponent()
|
buffer.readChatComponent()
|
||||||
@ -105,7 +105,7 @@ class TabListDataS2CP(buffer: PlayInByteBuffer) : PlayS2CPacket() {
|
|||||||
displayName = displayName,
|
displayName = displayName,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
PlayerListItemActions.REMOVE_PLAYER -> {
|
TabListItemActions.REMOVE_PLAYER -> {
|
||||||
data = TabListItemData(remove = true)
|
data = TabListItemData(remove = true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -165,17 +165,17 @@ class TabListDataS2CP(buffer: PlayInByteBuffer) : PlayS2CPacket() {
|
|||||||
item
|
item
|
||||||
} ?: continue
|
} ?: continue
|
||||||
|
|
||||||
|
|
||||||
if (entity === connection.player) {
|
|
||||||
entity.tabListItem.specialMerge(data)
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
tabListItem.merge(data)
|
|
||||||
if (entity == null || entity !is PlayerEntity) {
|
if (entity == null || entity !is PlayerEntity) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (entity === connection.player) {
|
||||||
|
entity.tabListItem.specialMerge(data)
|
||||||
|
} else {
|
||||||
|
tabListItem.merge(data)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
entity.tabListItem = tabListItem
|
entity.tabListItem = tabListItem
|
||||||
}
|
}
|
||||||
connection.fireEvent(TabListEntryChangeEvent(connection, this))
|
connection.fireEvent(TabListEntryChangeEvent(connection, this))
|
||||||
@ -189,7 +189,7 @@ class TabListDataS2CP(buffer: PlayInByteBuffer) : PlayS2CPacket() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
enum class PlayerListItemActions {
|
enum class TabListItemActions {
|
||||||
ADD,
|
ADD,
|
||||||
UPDATE_GAMEMODE,
|
UPDATE_GAMEMODE,
|
||||||
UPDATE_LATENCY,
|
UPDATE_LATENCY,
|
||||||
@ -197,9 +197,9 @@ class TabListDataS2CP(buffer: PlayInByteBuffer) : PlayS2CPacket() {
|
|||||||
REMOVE_PLAYER,
|
REMOVE_PLAYER,
|
||||||
;
|
;
|
||||||
|
|
||||||
companion object : ValuesEnum<PlayerListItemActions> {
|
companion object : ValuesEnum<TabListItemActions> {
|
||||||
override val VALUES = values()
|
override val VALUES = values()
|
||||||
override val NAME_MAP: Map<String, PlayerListItemActions> = KUtil.getEnumValues(VALUES)
|
override val NAME_MAP: Map<String, TabListItemActions> = KUtil.getEnumValues(VALUES)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user