重构modID
This commit is contained in:
parent
98620ae5d5
commit
6394687423
@ -6,9 +6,9 @@ minecraft_version=1.21.4
|
|||||||
yarn_mappings=1.21.4+build.8
|
yarn_mappings=1.21.4+build.8
|
||||||
loader_version=0.16.10
|
loader_version=0.16.10
|
||||||
# Mod Properties
|
# Mod Properties
|
||||||
mod_version=1.14.514.019
|
mod_version=1.14.514.020
|
||||||
maven_group=semmiedev
|
maven_group=semmiedev
|
||||||
archives_base_name=disc_jockey
|
archives_base_name=disc_jockey_revive
|
||||||
# Dependencies
|
# Dependencies
|
||||||
# check this on https://modmuss50.me/fabric.html
|
# check this on https://modmuss50.me/fabric.html
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package semmiedev.disc_jockey;
|
package semmiedev.disc_jockey_revive;
|
||||||
|
|
||||||
import java.io.EOFException;
|
import java.io.EOFException;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
@ -1,4 +1,4 @@
|
|||||||
package semmiedev.disc_jockey;
|
package semmiedev.disc_jockey_revive;
|
||||||
|
|
||||||
import com.mojang.brigadier.CommandDispatcher;
|
import com.mojang.brigadier.CommandDispatcher;
|
||||||
import com.mojang.brigadier.arguments.FloatArgumentType;
|
import com.mojang.brigadier.arguments.FloatArgumentType;
|
||||||
@ -10,7 +10,7 @@ import net.minecraft.client.MinecraftClient;
|
|||||||
import net.minecraft.command.CommandSource;
|
import net.minecraft.command.CommandSource;
|
||||||
import net.minecraft.text.Text;
|
import net.minecraft.text.Text;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
import semmiedev.disc_jockey.gui.screen.DiscJockeyScreen;
|
import semmiedev.disc_jockey_revive.gui.screen.DiscJockeyScreen;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
@ -1,4 +1,4 @@
|
|||||||
package semmiedev.disc_jockey;
|
package semmiedev.disc_jockey_revive;
|
||||||
|
|
||||||
import me.shedaniel.autoconfig.AutoConfig;
|
import me.shedaniel.autoconfig.AutoConfig;
|
||||||
import me.shedaniel.autoconfig.ConfigHolder;
|
import me.shedaniel.autoconfig.ConfigHolder;
|
||||||
@ -20,14 +20,14 @@ import net.minecraft.util.Formatting;
|
|||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
import org.lwjgl.glfw.GLFW;
|
import org.lwjgl.glfw.GLFW;
|
||||||
import semmiedev.disc_jockey.gui.hud.BlocksOverlay;
|
import semmiedev.disc_jockey_revive.gui.hud.BlocksOverlay;
|
||||||
import semmiedev.disc_jockey.gui.screen.DiscJockeyScreen;
|
import semmiedev.disc_jockey_revive.gui.screen.DiscJockeyScreen;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
public class Main implements ClientModInitializer {
|
public class Main implements ClientModInitializer {
|
||||||
public static final String MOD_ID = "disc_jockey";
|
public static final String MOD_ID = "disc_jockey_revive";
|
||||||
public static final MutableText NAME = Text.literal("Disc Jockey");
|
public static final MutableText NAME = Text.literal("Disc Jockey");
|
||||||
public static final Logger LOGGER = LogManager.getLogger("Disc Jockey");
|
public static final Logger LOGGER = LogManager.getLogger("Disc Jockey");
|
||||||
public static final ArrayList<ClientTickEvents.StartWorldTick> TICK_LISTENERS = new ArrayList<>();
|
public static final ArrayList<ClientTickEvents.StartWorldTick> TICK_LISTENERS = new ArrayList<>();
|
||||||
@ -43,7 +43,7 @@ public class Main implements ClientModInitializer {
|
|||||||
configHolder = AutoConfig.register(ModConfig.class, JanksonConfigSerializer::new);
|
configHolder = AutoConfig.register(ModConfig.class, JanksonConfigSerializer::new);
|
||||||
config = configHolder.getConfig();
|
config = configHolder.getConfig();
|
||||||
|
|
||||||
songsFolder = new File(FabricLoader.getInstance().getConfigDir()+File.separator+MOD_ID+File.separator+"songs");
|
songsFolder = new File(FabricLoader.getInstance().getConfigDir()+File.separator+"disc_jockey"+File.separator+"songs");
|
||||||
if (!songsFolder.isDirectory()) songsFolder.mkdirs();
|
if (!songsFolder.isDirectory()) songsFolder.mkdirs();
|
||||||
|
|
||||||
SongLoader.loadSongs();
|
SongLoader.loadSongs();
|
@ -1,4 +1,4 @@
|
|||||||
package semmiedev.disc_jockey;
|
package semmiedev.disc_jockey_revive;
|
||||||
|
|
||||||
import me.shedaniel.autoconfig.ConfigData;
|
import me.shedaniel.autoconfig.ConfigData;
|
||||||
import me.shedaniel.autoconfig.annotation.ConfigEntry;
|
import me.shedaniel.autoconfig.annotation.ConfigEntry;
|
@ -1,4 +1,4 @@
|
|||||||
package semmiedev.disc_jockey;
|
package semmiedev.disc_jockey_revive;
|
||||||
|
|
||||||
import com.terraformersmc.modmenu.api.ConfigScreenFactory;
|
import com.terraformersmc.modmenu.api.ConfigScreenFactory;
|
||||||
import com.terraformersmc.modmenu.api.ModMenuApi;
|
import com.terraformersmc.modmenu.api.ModMenuApi;
|
@ -1,4 +1,4 @@
|
|||||||
package semmiedev.disc_jockey;
|
package semmiedev.disc_jockey_revive;
|
||||||
|
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
@ -1,4 +1,4 @@
|
|||||||
package semmiedev.disc_jockey;
|
package semmiedev.disc_jockey_revive;
|
||||||
|
|
||||||
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
|
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
@ -1,6 +1,6 @@
|
|||||||
package semmiedev.disc_jockey;
|
package semmiedev.disc_jockey_revive;
|
||||||
|
|
||||||
import semmiedev.disc_jockey.gui.SongListWidget;
|
import semmiedev.disc_jockey_revive.gui.SongListWidget;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
@ -1,9 +1,9 @@
|
|||||||
package semmiedev.disc_jockey;
|
package semmiedev.disc_jockey_revive;
|
||||||
|
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
||||||
import net.minecraft.client.toast.SystemToast;
|
import net.minecraft.client.toast.SystemToast;
|
||||||
import net.minecraft.text.Text;
|
import net.minecraft.text.Text;
|
||||||
import semmiedev.disc_jockey.gui.SongListWidget;
|
import semmiedev.disc_jockey_revive.gui.SongListWidget;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@ -11,8 +11,6 @@ import java.nio.file.Files;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
import java.util.List;
|
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
public class SongLoader {
|
public class SongLoader {
|
||||||
public static final ArrayList<Song> SONGS = new ArrayList<>();
|
public static final ArrayList<Song> SONGS = new ArrayList<>();
|
@ -1,4 +1,4 @@
|
|||||||
package semmiedev.disc_jockey;
|
package semmiedev.disc_jockey_revive;
|
||||||
|
|
||||||
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
|
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
@ -1,19 +1,17 @@
|
|||||||
package semmiedev.disc_jockey.gui;
|
package semmiedev.disc_jockey_revive.gui;
|
||||||
|
|
||||||
import com.mojang.blaze3d.systems.RenderSystem;
|
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
||||||
import net.minecraft.client.gui.DrawContext;
|
import net.minecraft.client.gui.DrawContext;
|
||||||
import net.minecraft.client.gui.screen.Screen;
|
import net.minecraft.client.gui.screen.Screen;
|
||||||
import net.minecraft.client.gui.screen.narration.NarrationMessageBuilder;
|
import net.minecraft.client.gui.screen.narration.NarrationMessageBuilder;
|
||||||
import net.minecraft.client.gui.widget.EntryListWidget;
|
import net.minecraft.client.gui.widget.EntryListWidget;
|
||||||
import net.minecraft.text.Text;
|
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
import semmiedev.disc_jockey.Main;
|
import semmiedev.disc_jockey_revive.Main;
|
||||||
import semmiedev.disc_jockey.Song;
|
import semmiedev.disc_jockey_revive.Song;
|
||||||
import semmiedev.disc_jockey.SongLoader;
|
import semmiedev.disc_jockey_revive.SongLoader;
|
||||||
import semmiedev.disc_jockey.SongLoader.SongFolder;
|
import semmiedev.disc_jockey_revive.SongLoader.SongFolder;
|
||||||
import semmiedev.disc_jockey.gui.screen.DiscJockeyScreen;
|
import semmiedev.disc_jockey_revive.gui.screen.DiscJockeyScreen;
|
||||||
|
|
||||||
public class SongListWidget extends EntryListWidget<SongListWidget.Entry> {
|
public class SongListWidget extends EntryListWidget<SongListWidget.Entry> {
|
||||||
private static final String FAVORITE_EMOJI = "收藏★";
|
private static final String FAVORITE_EMOJI = "收藏★";
|
@ -1,4 +1,4 @@
|
|||||||
package semmiedev.disc_jockey.gui.hud;
|
package semmiedev.disc_jockey_revive.gui.hud;
|
||||||
|
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
@ -1,4 +1,4 @@
|
|||||||
package semmiedev.disc_jockey.gui.screen;
|
package semmiedev.disc_jockey_revive.gui.screen;
|
||||||
|
|
||||||
import net.minecraft.client.gui.DrawContext;
|
import net.minecraft.client.gui.DrawContext;
|
||||||
import net.minecraft.client.gui.screen.ConfirmScreen;
|
import net.minecraft.client.gui.screen.ConfirmScreen;
|
||||||
@ -9,12 +9,12 @@ import net.minecraft.item.ItemStack;
|
|||||||
import net.minecraft.text.MutableText;
|
import net.minecraft.text.MutableText;
|
||||||
import net.minecraft.text.Text;
|
import net.minecraft.text.Text;
|
||||||
import net.minecraft.util.Formatting;
|
import net.minecraft.util.Formatting;
|
||||||
import semmiedev.disc_jockey.Main;
|
import semmiedev.disc_jockey_revive.Main;
|
||||||
import semmiedev.disc_jockey.Note;
|
import semmiedev.disc_jockey_revive.Note;
|
||||||
import semmiedev.disc_jockey.Song;
|
import semmiedev.disc_jockey_revive.Song;
|
||||||
import semmiedev.disc_jockey.SongLoader;
|
import semmiedev.disc_jockey_revive.SongLoader;
|
||||||
import semmiedev.disc_jockey.gui.SongListWidget;
|
import semmiedev.disc_jockey_revive.gui.SongListWidget;
|
||||||
import semmiedev.disc_jockey.gui.hud.BlocksOverlay;
|
import semmiedev.disc_jockey_revive.gui.hud.BlocksOverlay;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@ -24,8 +24,8 @@ import java.util.Arrays;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import semmiedev.disc_jockey.SongLoader.SongFolder;
|
import semmiedev.disc_jockey_revive.SongLoader.SongFolder;
|
||||||
import semmiedev.disc_jockey.SongPlayer.PlayMode;
|
import semmiedev.disc_jockey_revive.SongPlayer.PlayMode;
|
||||||
|
|
||||||
public class DiscJockeyScreen extends Screen {
|
public class DiscJockeyScreen extends Screen {
|
||||||
private static final MutableText
|
private static final MutableText
|
@ -1,4 +1,4 @@
|
|||||||
package semmiedev.disc_jockey.mixin;
|
package semmiedev.disc_jockey_revive.mixin;
|
||||||
|
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
||||||
import net.minecraft.client.sound.PositionedSoundInstance;
|
import net.minecraft.client.sound.PositionedSoundInstance;
|
||||||
@ -13,7 +13,7 @@ import org.spongepowered.asm.mixin.Shadow;
|
|||||||
import org.spongepowered.asm.mixin.injection.At;
|
import org.spongepowered.asm.mixin.injection.At;
|
||||||
import org.spongepowered.asm.mixin.injection.Inject;
|
import org.spongepowered.asm.mixin.injection.Inject;
|
||||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||||
import semmiedev.disc_jockey.Main;
|
import semmiedev.disc_jockey_revive.Main;
|
||||||
|
|
||||||
@Mixin(ClientWorld.class)
|
@Mixin(ClientWorld.class)
|
||||||
public class ClientWorldMixin {
|
public class ClientWorldMixin {
|
@ -1,65 +1,65 @@
|
|||||||
{
|
{
|
||||||
"disc_jockey.screen.select_song": "Select A Song",
|
"disc_jockey_revive.screen.select_song": "Select A Song",
|
||||||
"disc_jockey.screen.play": "Play",
|
"disc_jockey_revive.screen.play": "Play",
|
||||||
"disc_jockey.screen.play.stop": "Stop Playing",
|
"disc_jockey_revive.screen.play.stop": "Stop Playing",
|
||||||
"disc_jockey.screen.preview": "Preview",
|
"disc_jockey_revive.screen.preview": "Preview",
|
||||||
"disc_jockey.screen.preview.stop": "Stop Previewing",
|
"disc_jockey_revive.screen.preview.stop": "Stop Previewing",
|
||||||
"disc_jockey.screen.blocks.title": "Blocks",
|
"disc_jockey_revive.screen.blocks.title": "Blocks",
|
||||||
"disc_jockey.screen.blocks": "Blocks",
|
"disc_jockey_revive.screen.blocks": "Blocks",
|
||||||
"disc_jockey.screen.search": "Search For Songs",
|
"disc_jockey_revive.screen.search": "Search For Songs",
|
||||||
"disc_jockey.screen.drop_hint": "Drag and drop song files into this window to add them",
|
"disc_jockey_revive.screen.drop_hint": "Drag and drop song files into this window to add them",
|
||||||
"disc_jockey.screen.drop_confirm": "Do you want to add the following songs to Disc Jockey?",
|
"disc_jockey_revive.screen.drop_confirm": "Do you want to add the following songs to Disc Jockey?",
|
||||||
"disc_jockey.player.invalid_note_blocks": "The Note Blocks near you are not in the correct configuration. Missing:",
|
"disc_jockey_revive.player.invalid_note_blocks": "The Note Blocks near you are not in the correct configuration. Missing:",
|
||||||
"disc_jockey.player.invalid_game_mode": "You can't play in %s",
|
"disc_jockey_revive.player.invalid_game_mode": "You can't play in %s",
|
||||||
"disc_jockey.player.to_far": "You went to far away",
|
"disc_jockey_revive.player.to_far": "You went to far away",
|
||||||
"disc_jockey.still_loading": "The songs are still loading",
|
"disc_jockey_revive.still_loading": "The songs are still loading",
|
||||||
"disc_jockey.reloading": "Reloading all songs",
|
"disc_jockey_revive.reloading": "Reloading all songs",
|
||||||
"disc_jockey.loading_done": "All songs are loaded",
|
"disc_jockey_revive.loading_done": "All songs are loaded",
|
||||||
"disc_jockey.song_not_found": " Song '%s' does not exist",
|
"disc_jockey_revive.song_not_found": " Song '%s' does not exist",
|
||||||
"disc_jockey.not_playing": "Not playing any song",
|
"disc_jockey_revive.not_playing": "Not playing any song",
|
||||||
"disc_jockey.speed_changed": "Changed playback speed to %s",
|
"disc_jockey_revive.speed_changed": "Changed playback speed to %s",
|
||||||
"disc_jockey.stopped_playing": "Stopped playing '%s'",
|
"disc_jockey_revive.stopped_playing": "Stopped playing '%s'",
|
||||||
"disc_jockey.info_not_running": "No song is playing (Speed: %s)",
|
"disc_jockey_revive.info_not_running": "No song is playing (Speed: %s)",
|
||||||
"disc_jockey.info_tuning": "Tuning: (Speed: %s)",
|
"disc_jockey_revive.info_tuning": "Tuning: (Speed: %s)",
|
||||||
"disc_jockey.info_playing": "Playing: [%s/%s] %s (Speed: %s)",
|
"disc_jockey_revive.info_playing": "Playing: [%s/%s] %s (Speed: %s)",
|
||||||
"disc_jockey.info_finished": "Finished: %s (Speed: %s)",
|
"disc_jockey_revive.info_finished": "Finished: %s (Speed: %s)",
|
||||||
"disc_jockey.instrument_info": "This maps instruments to be played by noteblocks for a different instrument instead.",
|
"disc_jockey_revive.instrument_info": "This maps instruments to be played by noteblocks for a different instrument instead.",
|
||||||
"disc_jockey.invalid_instrument": "Invalid instrument: %s",
|
"disc_jockey_revive.invalid_instrument": "Invalid instrument: %s",
|
||||||
"disc_jockey.instrument_mapped": "Mapped %s to %s",
|
"disc_jockey_revive.instrument_mapped": "Mapped %s to %s",
|
||||||
"disc_jockey.instrument_mapped_all": "Mapped all instruments to %s",
|
"disc_jockey_revive.instrument_mapped_all": "Mapped all instruments to %s",
|
||||||
"disc_jockey.instrument_unmapped": "Unmapped %s",
|
"disc_jockey_revive.instrument_unmapped": "Unmapped %s",
|
||||||
"disc_jockey.mapped_instruments": "Mapped instruments: %s",
|
"disc_jockey_revive.mapped_instruments": "Mapped instruments: %s",
|
||||||
"disc_jockey.no_mapped_instruments": "No instruments mapped, yet.",
|
"disc_jockey_revive.no_mapped_instruments": "No instruments mapped, yet.",
|
||||||
"disc_jockey.instrument_maps_cleared": "Instrument mappings cleared.",
|
"disc_jockey_revive.instrument_maps_cleared": "Instrument mappings cleared.",
|
||||||
"disc_jockey.loop_status": "Loop song: %s",
|
"disc_jockey_revive.loop_status": "Loop song: %s",
|
||||||
"disc_jockey.loop_enabled": "Enabled looping of current song.",
|
"disc_jockey_revive.loop_enabled": "Enabled looping of current song.",
|
||||||
"disc_jockey.loop_disabled": "Disabled looping of current song.",
|
"disc_jockey_revive.loop_disabled": "Disabled looping of current song.",
|
||||||
"disc_jockey.warning": "WARNING!!! This mod is very likely to get false flagged as hacks, please contact a server administrator before using this mod! (You can disable this warning in the mod settings)\nThe current version is an unofficial version, revised by BRanulf\nFor learning reference only, please support the official, don't contact me XD",
|
"disc_jockey_revive.warning": "WARNING!!! This mod is very likely to get false flagged as hacks, please contact a server administrator before using this mod! (You can disable this warning in the mod settings)\nThe current version is an unofficial version, revised by BRanulf\nFor learning reference only, please support the official, don't contact me XD",
|
||||||
"key.category.disc_jockey": "Disc Jockey",
|
"key.category.disc_jockey_revive": "Disc Jockey",
|
||||||
"disc_jockey.key_bind.open_screen": "Open song selection screen",
|
"disc_jockey_revive.key_bind.open_screen": "Open song selection screen",
|
||||||
"text.autoconfig.disc_jockey.title": "Disc Jockey",
|
"text.autoconfig.disc_jockey_revive.title": "Disc Jockey",
|
||||||
"text.autoconfig.disc_jockey.option.hideWarning": "Hide Warning",
|
"text.autoconfig.disc_jockey_revive.option.hideWarning": "Hide Warning",
|
||||||
"text.autoconfig.disc_jockey.option.disableAsyncPlayback": "Disable Async Playback",
|
"text.autoconfig.disc_jockey_revive.option.disableAsyncPlayback": "Disable Async Playback",
|
||||||
"text.autoconfig.disc_jockey.option.disableAsyncPlayback.@Tooltip[0]": "Will force notes to play synchronously with client ticks instead of in a separate thread.",
|
"text.autoconfig.disc_jockey_revive.option.disableAsyncPlayback.@Tooltip[0]": "Will force notes to play synchronously with client ticks instead of in a separate thread.",
|
||||||
"text.autoconfig.disc_jockey.option.disableAsyncPlayback.@Tooltip[1]": "This can lead to performance loss, especially when you client has low or inconsistent fps but can fix issues when playback does not happen at all.",
|
"text.autoconfig.disc_jockey_revive.option.disableAsyncPlayback.@Tooltip[1]": "This can lead to performance loss, especially when you client has low or inconsistent fps but can fix issues when playback does not happen at all.",
|
||||||
"text.autoconfig.disc_jockey.option.omnidirectionalNoteBlockSounds": "Omnidirectional Note Block Sounds (clientside)",
|
"text.autoconfig.disc_jockey_revive.option.omnidirectionalNoteBlockSounds": "Omnidirectional Note Block Sounds (clientside)",
|
||||||
"text.autoconfig.disc_jockey.option.omnidirectionalNoteBlockSounds.@Tooltip[0]": "Makes all note block sounds when playing a song omnidirectional, creating a more pleasing listening experience",
|
"text.autoconfig.disc_jockey_revive.option.omnidirectionalNoteBlockSounds.@Tooltip[0]": "Makes all note block sounds when playing a song omnidirectional, creating a more pleasing listening experience",
|
||||||
"text.autoconfig.disc_jockey.option.omnidirectionalNoteBlockSounds.@Tooltip[1]": "If you don't know what that means, I recommend you just try it and hear the difference",
|
"text.autoconfig.disc_jockey_revive.option.omnidirectionalNoteBlockSounds.@Tooltip[1]": "If you don't know what that means, I recommend you just try it and hear the difference",
|
||||||
"text.autoconfig.disc_jockey.option.expectedServerVersion": "Expected Server Version",
|
"text.autoconfig.disc_jockey_revive.option.expectedServerVersion": "Expected Server Version",
|
||||||
"text.autoconfig.disc_jockey.option.expectedServerVersion.@Tooltip[0]": "Select the server version, you expect this mod to be used on.",
|
"text.autoconfig.disc_jockey_revive.option.expectedServerVersion.@Tooltip[0]": "Select the server version, you expect this mod to be used on.",
|
||||||
"text.autoconfig.disc_jockey.option.expectedServerVersion.@Tooltip[1]": "This affects how reachable NoteBlocks are determined.",
|
"text.autoconfig.disc_jockey_revive.option.expectedServerVersion.@Tooltip[1]": "This affects how reachable NoteBlocks are determined.",
|
||||||
"text.autoconfig.disc_jockey.option.expectedServerVersion.@Tooltip[2]": "Selecting the wrong version could cause you not to be able to play some distant note blocks which could break/worsen playback",
|
"text.autoconfig.disc_jockey_revive.option.expectedServerVersion.@Tooltip[2]": "Selecting the wrong version could cause you not to be able to play some distant note blocks which could break/worsen playback",
|
||||||
"text.autoconfig.disc_jockey.option.expectedServerVersion.@Tooltip[3]": "If you're unsure, or play on many different server versions and don't mind not reaching every possible note block, select \"All\"",
|
"text.autoconfig.disc_jockey_revive.option.expectedServerVersion.@Tooltip[3]": "If you're unsure, or play on many different server versions and don't mind not reaching every possible note block, select \"All\"",
|
||||||
"text.autoconfig.disc_jockey.option.delayPlaybackStartBySecs": "Delay playback by (seconds)",
|
"text.autoconfig.disc_jockey_revive.option.delayPlaybackStartBySecs": "Delay playback by (seconds)",
|
||||||
"text.autoconfig.disc_jockey.option.delayPlaybackStartBySecs.@Tooltip": "Delays playback for specified seconds, after tuning finished, if any (e.g. 0.5 for half a second delay).",
|
"text.autoconfig.disc_jockey_revive.option.delayPlaybackStartBySecs.@Tooltip": "Delays playback for specified seconds, after tuning finished, if any (e.g. 0.5 for half a second delay).",
|
||||||
"disc_jockey.screen.current_folder": "Current Folder",
|
"disc_jockey_revive.screen.current_folder": "Current Folder",
|
||||||
"disc_jockey.screen.play_mode": "Play Mode",
|
"disc_jockey_revive.screen.play_mode": "Play Mode",
|
||||||
"disc_jockey.screen.mode_single": "Single Loop",
|
"disc_jockey_revive.screen.mode_single": "Single Loop",
|
||||||
"disc_jockey.screen.mode_list": "List Loop",
|
"disc_jockey_revive.screen.mode_list": "List Loop",
|
||||||
"disc_jockey.screen.mode_random": "Random",
|
"disc_jockey_revive.screen.mode_random": "Random",
|
||||||
"disc_jockey.screen.mode_stop": "Stop After",
|
"disc_jockey_revive.screen.mode_stop": "Stop After",
|
||||||
"disc_jockey.screen.open_folder": "Open Folder",
|
"disc_jockey_revive.screen.open_folder": "Open Folder",
|
||||||
"disc_jockey.screen.open_folder_failed": "Failed to open folder",
|
"disc_jockey_revive.screen.open_folder_failed": "Failed to open folder",
|
||||||
"disc_jockey.screen.reload": "Reload Songs",
|
"disc_jockey_revive.screen.reload": "Reload Songs",
|
||||||
"disc_jockey.screen.reloading": "Reloading songs..."
|
"disc_jockey_revive.screen.reloading": "Reloading songs..."
|
||||||
}
|
}
|
@ -1,64 +1,64 @@
|
|||||||
{
|
{
|
||||||
"disc_jockey.screen.select_song": "选择歌曲",
|
"disc_jockey_revive.screen.select_song": "选择歌曲",
|
||||||
"disc_jockey.screen.play": "播放",
|
"disc_jockey_revive.screen.play": "播放",
|
||||||
"disc_jockey.screen.play.stop": "停止播放",
|
"disc_jockey_revive.screen.play.stop": "停止播放",
|
||||||
"disc_jockey.screen.preview": "试听",
|
"disc_jockey_revive.screen.preview": "试听",
|
||||||
"disc_jockey.screen.preview.stop": "停止试听",
|
"disc_jockey_revive.screen.preview.stop": "停止试听",
|
||||||
"disc_jockey.screen.blocks.title": "音符盒",
|
"disc_jockey_revive.screen.blocks.title": "音符盒",
|
||||||
"disc_jockey.screen.blocks": "音符盒",
|
"disc_jockey_revive.screen.blocks": "音符盒",
|
||||||
"disc_jockey.screen.search": "搜索歌曲",
|
"disc_jockey_revive.screen.search": "搜索歌曲",
|
||||||
"disc_jockey.screen.drop_hint": "将歌曲文件拖入此窗口以添加",
|
"disc_jockey_revive.screen.drop_hint": "将歌曲文件拖入此窗口以添加",
|
||||||
"disc_jockey.screen.drop_confirm": "是否将以下歌曲添加到 Disc Jockey?",
|
"disc_jockey_revive.screen.drop_confirm": "是否将以下歌曲添加到 Disc Jockey?",
|
||||||
"disc_jockey.player.invalid_note_blocks": "附近的音符盒配置不正确。缺失:",
|
"disc_jockey_revive.player.invalid_note_blocks": "附近的音符盒配置不正确。缺失:",
|
||||||
"disc_jockey.player.invalid_game_mode": "无法在 %s 模式下播放",
|
"disc_jockey_revive.player.invalid_game_mode": "无法在 %s 模式下播放",
|
||||||
"disc_jockey.player.to_far": "你距离太远了",
|
"disc_jockey_revive.player.to_far": "你距离太远了",
|
||||||
"disc_jockey.still_loading": "歌曲仍在加载中",
|
"disc_jockey_revive.still_loading": "歌曲仍在加载中",
|
||||||
"disc_jockey.reloading": "正在重新加载所有歌曲",
|
"disc_jockey_revive.reloading": "正在重新加载所有歌曲",
|
||||||
"disc_jockey.loading_done": "所有歌曲已加载完成",
|
"disc_jockey_revive.loading_done": "所有歌曲已加载完成",
|
||||||
"disc_jockey.song_not_found": "歌曲“%s”不存在",
|
"disc_jockey_revive.song_not_found": "歌曲“%s”不存在",
|
||||||
"disc_jockey.not_playing": "未播放任何歌曲",
|
"disc_jockey_revive.not_playing": "未播放任何歌曲",
|
||||||
"disc_jockey.speed_changed": "播放速度已调整为 %s",
|
"disc_jockey_revive.speed_changed": "播放速度已调整为 %s",
|
||||||
"disc_jockey.stopped_playing": "已停止播放“%s”",
|
"disc_jockey_revive.stopped_playing": "已停止播放“%s”",
|
||||||
"disc_jockey.info_not_running": "未播放歌曲(速度:%s)",
|
"disc_jockey_revive.info_not_running": "未播放歌曲(速度:%s)",
|
||||||
"disc_jockey.info_tuning": "调音中(速度:%s)",
|
"disc_jockey_revive.info_tuning": "调音中(速度:%s)",
|
||||||
"disc_jockey.info_playing": "播放中:[%s/%s] %s(速度:%s)",
|
"disc_jockey_revive.info_playing": "播放中:[%s/%s] %s(速度:%s)",
|
||||||
"disc_jockey.info_finished": "已播放:%s(速度:%s)",
|
"disc_jockey_revive.info_finished": "已播放:%s(速度:%s)",
|
||||||
"disc_jockey.instrument_info": "此功能可将音符盒的乐器映射为其他乐器音色。",
|
"disc_jockey_revive.instrument_info": "此功能可将音符盒的乐器映射为其他乐器音色。",
|
||||||
"disc_jockey.invalid_instrument": "无效乐器:%s",
|
"disc_jockey_revive.invalid_instrument": "无效乐器:%s",
|
||||||
"disc_jockey.instrument_mapped": "已将 %s 映射为 %s",
|
"disc_jockey_revive.instrument_mapped": "已将 %s 映射为 %s",
|
||||||
"disc_jockey.instrument_mapped_all": "已将全部乐器映射为 %s",
|
"disc_jockey_revive.instrument_mapped_all": "已将全部乐器映射为 %s",
|
||||||
"disc_jockey.instrument_unmapped": "已取消 %s 的映射",
|
"disc_jockey_revive.instrument_unmapped": "已取消 %s 的映射",
|
||||||
"disc_jockey.mapped_instruments": "已映射乐器:%s",
|
"disc_jockey_revive.mapped_instruments": "已映射乐器:%s",
|
||||||
"disc_jockey.no_mapped_instruments": "当前未映射任何乐器",
|
"disc_jockey_revive.no_mapped_instruments": "当前未映射任何乐器",
|
||||||
"disc_jockey.instrument_maps_cleared": "已清除所有乐器映射",
|
"disc_jockey_revive.instrument_maps_cleared": "已清除所有乐器映射",
|
||||||
"disc_jockey.loop_status": "循环播放:%s",
|
"disc_jockey_revive.loop_status": "循环播放:%s",
|
||||||
"disc_jockey.loop_enabled": "已启用当前歌曲循环播放",
|
"disc_jockey_revive.loop_enabled": "已启用当前歌曲循环播放",
|
||||||
"disc_jockey.loop_disabled": "已禁用当前歌曲循环播放",
|
"disc_jockey_revive.loop_disabled": "已禁用当前歌曲循环播放",
|
||||||
"disc_jockey.warning": "警告!此模组极易被误判为作弊工具,使用前请联系服务器管理员!(可在模组设置中关闭此警告)\n当前版本为非官方版本,由BRanulf改版,翻译也是这家伙提供的。\n仅供学习参考,请支持官方,别找我XD",
|
"disc_jockey_revive.warning": "警告!此模组极易被误判为作弊工具,使用前请联系服务器管理员!(可在模组设置中关闭此警告)\n当前版本为非官方版本,由BRanulf改版,翻译也是这家伙提供的。\n仅供学习参考,请支持官方,别找我XD",
|
||||||
"key.category.disc_jockey": "Disc Jockey",
|
"key.category.disc_jockey_revive": "Disc Jockey",
|
||||||
"disc_jockey.key_bind.open_screen": "打开歌曲选择界面",
|
"disc_jockey_revive.key_bind.open_screen": "打开歌曲选择界面",
|
||||||
"text.autoconfig.disc_jockey.title": "Disc Jockey",
|
"text.autoconfig.disc_jockey_revive.title": "Disc Jockey",
|
||||||
"text.autoconfig.disc_jockey.option.hideWarning": "隐藏警告",
|
"text.autoconfig.disc_jockey_revive.option.hideWarning": "隐藏警告",
|
||||||
"text.autoconfig.disc_jockey.option.disableAsyncPlayback": "禁用异步播放",
|
"text.autoconfig.disc_jockey_revive.option.disableAsyncPlayback": "禁用异步播放",
|
||||||
"text.autoconfig.disc_jockey.option.disableAsyncPlayback.@Tooltip[0]": "强制音符与客户端刻同步播放,而非使用独立线程。",
|
"text.autoconfig.disc_jockey_revive.option.disableAsyncPlayback.@Tooltip[0]": "强制音符与客户端刻同步播放,而非使用独立线程。",
|
||||||
"text.autoconfig.disc_jockey.option.disableAsyncPlayback.@Tooltip[1]": "可能导致性能下降(尤其在低帧率时),但可解决某些情况下无法播放的问题。",
|
"text.autoconfig.disc_jockey_revive.option.disableAsyncPlayback.@Tooltip[1]": "可能导致性能下降(尤其在低帧率时),但可解决某些情况下无法播放的问题。",
|
||||||
"text.autoconfig.disc_jockey.option.omnidirectionalNoteBlockSounds": "全向音符盒音效(客户端)",
|
"text.autoconfig.disc_jockey_revive.option.omnidirectionalNoteBlockSounds": "全向音符盒音效(客户端)",
|
||||||
"text.autoconfig.disc_jockey.option.omnidirectionalNoteBlockSounds.@Tooltip[0]": "使音符盒音效全向传播,提升听觉体验",
|
"text.autoconfig.disc_jockey_revive.option.omnidirectionalNoteBlockSounds.@Tooltip[0]": "使音符盒音效全向传播,提升听觉体验",
|
||||||
"text.autoconfig.disc_jockey.option.omnidirectionalNoteBlockSounds.@Tooltip[1]": "若不确定效果,建议直接试听对比",
|
"text.autoconfig.disc_jockey_revive.option.omnidirectionalNoteBlockSounds.@Tooltip[1]": "若不确定效果,建议直接试听对比",
|
||||||
"text.autoconfig.disc_jockey.option.expectedServerVersion": "预期服务器版本",
|
"text.autoconfig.disc_jockey_revive.option.expectedServerVersion": "预期服务器版本",
|
||||||
"text.autoconfig.disc_jockey.option.expectedServerVersion.@Tooltip[0]": "选择你预计使用此模组的服务器版本。",
|
"text.autoconfig.disc_jockey_revive.option.expectedServerVersion.@Tooltip[0]": "选择你预计使用此模组的服务器版本。",
|
||||||
"text.autoconfig.disc_jockey.option.expectedServerVersion.@Tooltip[1]": "此设置影响音符盒可触达范围的判定逻辑。",
|
"text.autoconfig.disc_jockey_revive.option.expectedServerVersion.@Tooltip[1]": "此设置影响音符盒可触达范围的判定逻辑。",
|
||||||
"text.autoconfig.disc_jockey.option.expectedServerVersion.@Tooltip[2]": "版本选择错误可能导致无法触发部分音符盒,影响播放效果",
|
"text.autoconfig.disc_jockey_revive.option.expectedServerVersion.@Tooltip[2]": "版本选择错误可能导致无法触发部分音符盒,影响播放效果",
|
||||||
"text.autoconfig.disc_jockey.option.expectedServerVersion.@Tooltip[3]": "若不确认版本,或需兼容多版本服务器,请选择“全部”",
|
"text.autoconfig.disc_jockey_revive.option.expectedServerVersion.@Tooltip[3]": "若不确认版本,或需兼容多版本服务器,请选择“全部”",
|
||||||
"text.autoconfig.disc_jockey.option.delayPlaybackStartBySecs": "播放延迟(秒)",
|
"text.autoconfig.disc_jockey_revive.option.delayPlaybackStartBySecs": "播放延迟(秒)",
|
||||||
"text.autoconfig.disc_jockey.option.delayPlaybackStartBySecs.@Tooltip": "调音完成后延迟指定秒数再开始播放(如 0.5 表示延迟半秒)。",
|
"text.autoconfig.disc_jockey_revive.option.delayPlaybackStartBySecs.@Tooltip": "调音完成后延迟指定秒数再开始播放(如 0.5 表示延迟半秒)。",
|
||||||
"disc_jockey.screen.current_folder": "当前文件夹",
|
"disc_jockey_revive.screen.current_folder": "当前文件夹",
|
||||||
"disc_jockey.screen.play_mode": "播放模式",
|
"disc_jockey_revive.screen.play_mode": "播放模式",
|
||||||
"disc_jockey.screen.mode_single": "单曲循环",
|
"disc_jockey_revive.screen.mode_single": "单曲循环",
|
||||||
"disc_jockey.screen.mode_list": "列表循环",
|
"disc_jockey_revive.screen.mode_list": "列表循环",
|
||||||
"disc_jockey.screen.mode_random": "随机播放",
|
"disc_jockey_revive.screen.mode_random": "随机播放",
|
||||||
"disc_jockey.screen.mode_stop": "播完停止","disc_jockey.screen.open_folder": "打开文件夹",
|
"disc_jockey_revive.screen.mode_stop": "播完停止","disc_jockey_revive.screen.open_folder": "打开文件夹",
|
||||||
"disc_jockey.screen.open_folder_failed": "无法打开文件夹",
|
"disc_jockey_revive.screen.open_folder_failed": "无法打开文件夹",
|
||||||
"disc_jockey.screen.reload": "重新加载",
|
"disc_jockey_revive.screen.reload": "重新加载",
|
||||||
"disc_jockey.screen.reloading": "正在重新加载..."
|
"disc_jockey_revive.screen.reloading": "正在重新加载..."
|
||||||
}
|
}
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"required": true,
|
"required": true,
|
||||||
"minVersion": "0.8",
|
"minVersion": "0.8",
|
||||||
"package": "semmiedev.disc_jockey.mixin",
|
"package": "semmiedev.disc_jockey_revive.mixin",
|
||||||
"compatibilityLevel": "JAVA_21",
|
"compatibilityLevel": "JAVA_21",
|
||||||
"mixins": [
|
"mixins": [
|
||||||
"ClientWorldMixin"
|
"ClientWorldMixin"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"schemaVersion": 1,
|
"schemaVersion": 1,
|
||||||
"id": "disc_jockey",
|
"id": "disc_jockey_revive",
|
||||||
"version": "${version}",
|
"version": "${version}",
|
||||||
"name": "Disc Jockey",
|
"name": "Disc Jockey",
|
||||||
"description": "在游戏中播放音符盒(打碟机)",
|
"description": "在游戏中播放音符盒(打碟机)",
|
||||||
@ -17,10 +17,10 @@
|
|||||||
"environment": "client",
|
"environment": "client",
|
||||||
"entrypoints": {
|
"entrypoints": {
|
||||||
"client": [
|
"client": [
|
||||||
"semmiedev.disc_jockey.Main"
|
"semmiedev.disc_jockey_revive.Main"
|
||||||
],
|
],
|
||||||
"modmenu": [
|
"modmenu": [
|
||||||
"semmiedev.disc_jockey.ModMenuIntegration"
|
"semmiedev.disc_jockey_revive.ModMenuIntegration"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"mixins": [
|
"mixins": [
|
||||||
|
Loading…
x
Reference in New Issue
Block a user