Split mod into core, recording, replay, render[todo], paths[todo] and extras[wip] modules
Move everything to com.replaymod package Add KeyBindingRegistry and SettingsRegistry Recreate settings GUI with new GUI API and dynamically from SettingsRegistry Use ReplayFile from ReplayStudio ReplayHandler is now object oriented Add GuiOverlay, GuiSlider and GuiTexturedButton to GUI API Rewrite both overlays to use new GUI API Fix size capping in vertical and horizontal layout Allow CustomLayouts to have parents Fix tooltip rendering when close to screen border Allow changing of columns in GridLayout
This commit is contained in:
@@ -1,8 +1,7 @@
|
||||
package eu.crushedpixel.replaymod.registry;
|
||||
|
||||
import eu.crushedpixel.replaymod.ReplayMod;
|
||||
import com.replaymod.core.ReplayMod;
|
||||
import eu.crushedpixel.replaymod.gui.elements.listeners.ProgressUpdateListener;
|
||||
import eu.crushedpixel.replaymod.utils.ReplayFile;
|
||||
import eu.crushedpixel.replaymod.utils.ReplayFileIO;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
import org.apache.commons.io.FilenameUtils;
|
||||
@@ -35,7 +34,7 @@ public class DownloadedFileHandler {
|
||||
}
|
||||
|
||||
private File generateFileForID(int id) {
|
||||
return new File(downloadFolder, id+ReplayFile.ZIP_FILE_EXTENSION);
|
||||
return new File(downloadFolder, id+ ".zip");
|
||||
}
|
||||
|
||||
public void addToIndex(int id) {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package eu.crushedpixel.replaymod.registry;
|
||||
|
||||
import com.google.common.primitives.Ints;
|
||||
import eu.crushedpixel.replaymod.ReplayMod;
|
||||
import com.replaymod.core.ReplayMod;
|
||||
import eu.crushedpixel.replaymod.api.ApiException;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
@@ -45,7 +45,6 @@ public class KeybindRegistry {
|
||||
replayModKeyBindings.add(new KeyBinding(KEY_KEYFRAME_PRESETS, Keyboard.KEY_X, "replaymod.title"));
|
||||
replayModKeyBindings.add(new KeyBinding(KEY_PATH_PREVIEW, Keyboard.KEY_H, "replaymod.title"));
|
||||
|
||||
replayModKeyBindings.add(new KeyBinding(KEY_ADD_MARKER, Keyboard.KEY_M, "replaymod.title"));
|
||||
replayModKeyBindings.add(new KeyBinding(KEY_SYNC_TIMELINE, Keyboard.KEY_V, "replaymod.title"));
|
||||
|
||||
replayModKeyBindings.add(new KeyBinding(KEY_THUMBNAIL, Keyboard.KEY_N, "replaymod.title"));
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package eu.crushedpixel.replaymod.registry;
|
||||
|
||||
import eu.crushedpixel.replaymod.ReplayMod;
|
||||
import com.replaymod.core.ReplayMod;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.settings.GameSettings.Options;
|
||||
|
||||
|
||||
@@ -1,71 +0,0 @@
|
||||
package eu.crushedpixel.replaymod.registry;
|
||||
|
||||
import com.google.common.base.Predicate;
|
||||
import eu.crushedpixel.replaymod.entities.CameraEntity;
|
||||
import eu.crushedpixel.replaymod.gui.GuiPlayerOverview;
|
||||
import eu.crushedpixel.replaymod.holders.PlayerVisibility;
|
||||
import eu.crushedpixel.replaymod.replay.ReplayHandler;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
public class PlayerHandler {
|
||||
|
||||
private static Minecraft mc = Minecraft.getMinecraft();
|
||||
|
||||
private static Predicate<EntityPlayer> playerPredicate = new Predicate<EntityPlayer>() {
|
||||
@Override
|
||||
public boolean apply(EntityPlayer input) {
|
||||
return !(input instanceof CameraEntity || input == mc.thePlayer);
|
||||
}
|
||||
};
|
||||
|
||||
private static Set<UUID> hidden = new HashSet<UUID>();
|
||||
|
||||
public static void hidePlayer(EntityPlayer player) {
|
||||
hidden.remove(player.getUniqueID());
|
||||
hidden.add(player.getUniqueID());
|
||||
}
|
||||
|
||||
public static void showPlayer(EntityPlayer player) {
|
||||
hidden.remove(player.getUniqueID());
|
||||
}
|
||||
|
||||
public static void setIsVisible(EntityPlayer player, boolean visible) {
|
||||
if(visible) showPlayer(player);
|
||||
else hidePlayer(player);
|
||||
}
|
||||
|
||||
public static void loadPlayerVisibilityConfiguration(PlayerVisibility visibility) {
|
||||
resetHiddenPlayers();
|
||||
if(visibility != null) {
|
||||
GuiPlayerOverview.defaultSave = true;
|
||||
Collections.addAll(hidden, visibility.getHidden());
|
||||
} else {
|
||||
GuiPlayerOverview.defaultSave = false;
|
||||
}
|
||||
}
|
||||
|
||||
public static Set<UUID> getHiddenPlayers() {
|
||||
return hidden;
|
||||
}
|
||||
|
||||
public static boolean isHidden(UUID uuid) {
|
||||
return hidden.contains(uuid);
|
||||
}
|
||||
|
||||
public static void resetHiddenPlayers() {
|
||||
hidden.clear();
|
||||
}
|
||||
|
||||
public static void openPlayerOverview() {
|
||||
if(!ReplayHandler.isInReplay()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
List<EntityPlayer> players = mc.theWorld.getEntities(EntityPlayer.class, playerPredicate);
|
||||
mc.displayGuiScreen(new GuiPlayerOverview(players));
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
package eu.crushedpixel.replaymod.registry;
|
||||
|
||||
import eu.crushedpixel.replaymod.ReplayMod;
|
||||
import com.replaymod.core.ReplayMod;
|
||||
import eu.crushedpixel.replaymod.api.ApiException;
|
||||
import eu.crushedpixel.replaymod.api.replay.holders.FileRating;
|
||||
import eu.crushedpixel.replaymod.api.replay.holders.Rating;
|
||||
|
||||
@@ -2,7 +2,7 @@ package eu.crushedpixel.replaymod.registry;
|
||||
|
||||
import com.google.common.collect.ArrayListMultimap;
|
||||
import com.google.common.collect.Multimap;
|
||||
import eu.crushedpixel.replaymod.events.ReplayExitEvent;
|
||||
import com.replaymod.replay.events.ReplayCloseEvent;
|
||||
import eu.crushedpixel.replaymod.gui.GuiReplaySaving;
|
||||
import eu.crushedpixel.replaymod.utils.ReplayFileIO;
|
||||
import net.minecraft.client.Minecraft;
|
||||
@@ -91,7 +91,7 @@ public class ReplayFileAppender {
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public void onReplayExit(ReplayExitEvent event) {
|
||||
public void onReplayExit(ReplayCloseEvent.Post event) {
|
||||
if(!filesToRewrite.isEmpty()) {
|
||||
openGuiSavingScreen();
|
||||
writeFiles();
|
||||
|
||||
Reference in New Issue
Block a user