1
0
mirror of https://github.com/Suiranoil/SkinRestorer.git synced 2026-01-16 04:42:12 +00:00

Compare commits

...

8 Commits

Author SHA1 Message Date
d3ce05ee8e bump version 2024-07-16 20:03:08 +03:00
a02c0997ec log "failed to fetch skin on first join" as warning 2024-07-16 20:03:08 +03:00
9c86ff855a fix concurrent modification 2024-07-16 20:03:08 +03:00
dirtTW
c0b0b3b8a1 Apply suggestions from code review
Co-authored-by: notlin4 <121224522+notlin4@users.noreply.github.com>
2024-07-16 20:03:08 +03:00
dirtTW
e1f729d005 Update zh_tw.json 2024-07-16 20:03:08 +03:00
dirtTW
4118612840 Added Traditional Chinese (zh_tw.json)
Added Traditional Chinese translations
2024-07-16 20:03:07 +03:00
a67b5b9cb6 backport to 1.20.3-1.20.4 2024-07-03 02:31:38 +03:00
731338aac3 backport to 1.20.5-1.20.6 2024-07-03 01:56:27 +03:00
8 changed files with 28 additions and 24 deletions

View File

@@ -61,7 +61,7 @@ public abstract class ServerLoginPacketListenerImplMixin {
var value = SkinValue.fromProviderContextWithValue(context, result.getSuccessValue().orElse(null)); var value = SkinValue.fromProviderContextWithValue(context, result.getSuccessValue().orElse(null));
SkinRestorer.getSkinStorage().setSkin(authenticatedProfile.getId(), value); SkinRestorer.getSkinStorage().setSkin(authenticatedProfile.getId(), value);
} else { } else {
SkinRestorer.LOGGER.error("failed to fetch skin on first join", result.getErrorValue()); SkinRestorer.LOGGER.warn("failed to fetch skin on first join", result.getErrorValue());
} }
} }

View File

@@ -13,10 +13,7 @@ import net.minecraft.server.level.ServerLevel;
import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.ServerPlayer;
import net.minecraft.server.players.PlayerList; import net.minecraft.server.players.PlayerList;
import java.util.Collection; import java.util.*;
import java.util.Collections;
import java.util.List;
import java.util.Objects;
public final class PlayerUtils { public final class PlayerUtils {
@@ -54,7 +51,8 @@ public final class PlayerUtils {
var trackedEntity = (TrackedEntityMixin) ((ChunkMapAccessor) chunkMap).getEntityMap().get(player.getId()); var trackedEntity = (TrackedEntityMixin) ((ChunkMapAccessor) chunkMap).getEntityMap().get(player.getId());
if (trackedEntity != null) { if (trackedEntity != null) {
for (var observerConnection : trackedEntity.getSeenBy()) { var seenBy = Set.copyOf(trackedEntity.getSeenBy());
for (var observerConnection : seenBy) {
var observer = observerConnection.getPlayer(); var observer = observerConnection.getPlayer();
trackedEntity.invokeRemovePlayer(observer); trackedEntity.invokeRemovePlayer(observer);
@@ -87,13 +85,13 @@ public final class PlayerUtils {
playerList.sendPlayerPermissionLevel(player); playerList.sendPlayerPermissionLevel(player);
playerList.sendLevelInfo(player, serverLevel); playerList.sendLevelInfo(player, serverLevel);
playerList.sendAllPlayerInfo(player); playerList.sendAllPlayerInfo(player);
playerList.sendActivePlayerEffects(player); PlayerUtils.sendActivePlayerEffects(player);
} }
} }
public static void sendActivePlayerEffects(ServerPlayer player) { public static void sendActivePlayerEffects(ServerPlayer player) {
for (var effect : player.getActiveEffects()) { for (var effect : player.getActiveEffects()) {
player.connection.send(new ClientboundUpdateMobEffectPacket(player.getId(), effect, false)); player.connection.send(new ClientboundUpdateMobEffectPacket(player.getId(), effect));
} }
} }

View File

@@ -0,0 +1,7 @@
{
"skinrestorer.command.skin.affected_players": "已變更 %s 的外觀",
"skinrestorer.command.skin.no_changes": "沒有外觀變更",
"skinrestorer.command.skin.failed": "變更外觀失敗:%s",
"skinrestorer.command.skin.ok": "已變更外觀",
"skinrestorer.command.skin.loading": "正在載入外觀..."
}

View File

@@ -26,6 +26,6 @@
], ],
"depends": { "depends": {
"fabricloader": ">=0.15.10", "fabricloader": ">=0.15.10",
"minecraft": ">=1.21" "minecraft": ">=1.20.3"
} }
} }

View File

@@ -3,9 +3,9 @@ org.gradle.jvmargs=-Xmx1G
org.gradle.parallel=true org.gradle.parallel=true
# Mod Properties # Mod Properties
mod_version=2.0.0 mod_version=2.0.1
mod_id=skinrestorer mod_id=skinrestorer
minecraft_version=1.21 minecraft_version=1.20.3
enabled_platforms=fabric,neoforge enabled_platforms=fabric,neoforge
maven_group=net.lionarius maven_group=net.lionarius
archives_name=skin-restorer archives_name=skin-restorer
@@ -14,19 +14,19 @@ capitalized_name=SkinRestorer
# Mappings # Mappings
#yarn_mappings=1.21+build.4 #yarn_mappings=1.21+build.4
#yarn_mappings_patch_neoforge_version=1.21+build.4 #yarn_mappings_patch_neoforge_version=1.21+build.4
parchment_minecraft_version=1.21 parchment_minecraft_version=1.20.3
parchment_mappings=2024.06.23 parchment_mappings=2023.12.31
# Fabric # Fabric
fabric_loader_version=0.15.11 fabric_loader_version=0.15.10
# NeoForge # NeoForge
neoforge_loader_version=21.0.0-beta neoforge_loader_version=20.3.1-beta
# Publish # Publish
modrinth_id=ghrZDhGW modrinth_id=ghrZDhGW
curseforge_id=443823 curseforge_id=443823
game_versions=1.21 game_versions=1.20.3,1.20.4
mod_loaders=fabric,neoforge mod_loaders=fabric,neoforge
# Changelog Options # Changelog Options

View File

@@ -41,7 +41,7 @@ dependencies {
processResources { processResources {
inputs.property "version", project.version inputs.property "version", project.version
filesMatching("META-INF/neoforge.mods.toml") { filesMatching("META-INF/mods.toml") {
expand version: project.version expand version: project.version
} }
} }

View File

@@ -3,7 +3,6 @@ package net.lionarius.skinrestorer.neoforge;
import net.lionarius.skinrestorer.SkinRestorer; import net.lionarius.skinrestorer.SkinRestorer;
import net.lionarius.skinrestorer.command.SkinCommand; import net.lionarius.skinrestorer.command.SkinCommand;
import net.neoforged.bus.api.SubscribeEvent; import net.neoforged.bus.api.SubscribeEvent;
import net.neoforged.fml.common.EventBusSubscriber;
import net.neoforged.fml.common.Mod; import net.neoforged.fml.common.Mod;
import net.neoforged.fml.loading.FMLPaths; import net.neoforged.fml.loading.FMLPaths;
import net.neoforged.neoforge.common.NeoForge; import net.neoforged.neoforge.common.NeoForge;
@@ -11,7 +10,7 @@ import net.neoforged.neoforge.event.RegisterCommandsEvent;
import net.neoforged.neoforge.event.server.ServerStartedEvent; import net.neoforged.neoforge.event.server.ServerStartedEvent;
@Mod(SkinRestorer.MOD_ID) @Mod(SkinRestorer.MOD_ID)
@EventBusSubscriber(modid = SkinRestorer.MOD_ID) @Mod.EventBusSubscriber(modid = SkinRestorer.MOD_ID)
public final class SkinRestorerNeoForge { public final class SkinRestorerNeoForge {
public SkinRestorerNeoForge() { public SkinRestorerNeoForge() {

View File

@@ -1,5 +1,5 @@
modLoader = "javafml" modLoader = "javafml"
loaderVersion = "[2,)" loaderVersion = "[1,)"
issueTrackerURL = "https://github.com/Suiranoil/SkinRestorer/issues" issueTrackerURL = "https://github.com/Suiranoil/SkinRestorer/issues"
license = "MIT" license = "MIT"
@@ -16,15 +16,15 @@ A server-side mod for restoring skins on offline servers.
[[dependencies.skinrestorer]] [[dependencies.skinrestorer]]
modId = "neoforge" modId = "neoforge"
type = "required" mandatory = true
versionRange = "[21.0.0-beta,)" versionRange = "[20.3.1-beta,)"
ordering = "NONE" ordering = "NONE"
side = "BOTH" side = "BOTH"
[[dependencies.skinrestorer]] [[dependencies.skinrestorer]]
modId = "minecraft" modId = "minecraft"
type = "required" mandatory = true
versionRange = "[1.21,)" versionRange = "[1.20.3,1.20.4]"
ordering = "NONE" ordering = "NONE"
side = "BOTH" side = "BOTH"