Rewrite thumbnail creation

This commit is contained in:
johni0702
2015-10-04 15:43:19 +02:00
parent 3c3cf3317a
commit 213c16c81d
5 changed files with 145 additions and 100 deletions

View File

@@ -1,10 +1,15 @@
package com.replaymod.replay;
import com.google.common.util.concurrent.FutureCallback;
import com.google.common.util.concurrent.Futures;
import com.google.common.util.concurrent.ListenableFuture;
import com.replaymod.core.ReplayMod;
import com.replaymod.replay.handler.GuiHandler;
import de.johni0702.replaystudio.replay.ReplayFile;
import de.johni0702.replaystudio.replay.ZipReplayFile;
import de.johni0702.replaystudio.studio.ReplayStudio;
import eu.crushedpixel.replaymod.chat.ChatMessageHandler;
import net.minecraft.client.Minecraft;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
@@ -44,6 +49,33 @@ public class ReplayModReplay {
}
});
core.getKeyBindingRegistry().registerKeyBinding("replaymod.input.thumbnail", Keyboard.KEY_N, new Runnable() {
@Override
public void run() {
if (replayHandler != null) {
Minecraft mc = Minecraft.getMinecraft();
ListenableFuture<NoGuiScreenshot> future = NoGuiScreenshot.take(mc, 1280, 720);
Futures.addCallback(future, new FutureCallback<NoGuiScreenshot>() {
@Override
public void onSuccess(NoGuiScreenshot result) {
try {
replayHandler.getReplayFile().writeThumb(result.getImage());
ReplayMod.chatMessageHandler.addLocalizedChatMessage("replaymod.chat.savedthumb",
ChatMessageHandler.ChatMessageType.INFORMATION);
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
public void onFailure(Throwable t) {
t.printStackTrace();
}
});
}
}
});
}
@Mod.EventHandler