Skip to content
This repository has been archived by the owner on Nov 7, 2022. It is now read-only.

Commit

Permalink
Begin working on next release
Browse files Browse the repository at this point in the history
  • Loading branch information
boomboompower committed Mar 1, 2020
1 parent 281e2ae commit ab7d4da
Show file tree
Hide file tree
Showing 17 changed files with 556 additions and 57 deletions.
52 changes: 48 additions & 4 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,23 @@ buildscript {
name = "forge"
url = "https://files.minecraftforge.net/maven"
}

// Sponge Repository
maven {
name = "sponge"
url = "https://repo.spongepowered.org/maven"
}
}
dependencies {
classpath "net.minecraftforge.gradle:ForgeGradle:2.0-SNAPSHOT"
classpath "net.minecraftforge.gradle:ForgeGradle:2.1-SNAPSHOT"

// For Mixins
classpath 'org.spongepowered:mixingradle:0.6-SNAPSHOT'
}
}

apply plugin: "net.minecraftforge.gradle.forge"
apply plugin: 'org.spongepowered.mixin'

version = "2.0.0-SNAPSHOT"
group = "me.boomboompower.skinchanger"
Expand All @@ -35,9 +45,25 @@ minecraft {

repositories {
mavenCentral()

maven {
name = 'sponge'
url = 'http://repo.spongepowered.org/maven'
}

maven {
url "https://jitpack.io"
}
}

dependencies {
provided('org.spongepowered:mixin:0.7.10-SNAPSHOT') {
exclude module: 'launchwrapper'
exclude module: 'guava'
exclude module: 'gson'
exclude module: 'commons-io'
exclude module: 'log4j-core'
}
}

processResources {
Expand All @@ -60,7 +86,25 @@ processResources {
}

jar {
manifest {
attributes 'Main-Class': 'me.boomboompower.skinchanger.run.JavaMain'
from configurations.provided.asFileTree.files.collect {
zipTree(it)
}
}

manifest.attributes(
'Main-Class' : 'me.boomboompower.skinchanger.run.JavaMain',
'MixinConfigs' : 'mixins.skinchanger.json',
'TweakOrder' : '0',
'TweakClass' : 'me.boomboompower.skinchanger.mixins.Tweaker',
'FMLCorePlugin' : 'me.boomboompower.skinchanger.mixins.Tweaker'
)
}

configurations {
provided
compile.extendsFrom(provided)
}

mixin {
defaultObfuscationEnv searge
add sourceSets.main, "mixins.skinchanger.refmap.json"
}
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
4 changes: 2 additions & 2 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#Sat Jun 24 15:29:45 AEST 2017
#Sun Mar 01 16:19:23 AEDT 2020
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-2.7-all.zip
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,11 @@

package me.boomboompower.skinchanger;

import me.boomboompower.skinchanger.utils.models.CapeManager;
import me.boomboompower.skinchanger.utils.models.capes.CapeManager;
import me.boomboompower.skinchanger.commands.MainCommand;
import me.boomboompower.skinchanger.config.ConfigLoader;
import me.boomboompower.skinchanger.events.MainEvents;
import me.boomboompower.skinchanger.utils.models.SkinManager;
import me.boomboompower.skinchanger.utils.models.skins.SkinManager;
import me.boomboompower.skinchanger.utils.ChatColor;
import me.boomboompower.skinchanger.utils.MojangHooker;
import me.boomboompower.skinchanger.utils.WebsiteUtils;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,15 @@
import me.boomboompower.skinchanger.gui.SettingsGui;
import me.boomboompower.skinchanger.utils.ChatColor;

import net.minecraft.client.Minecraft;
import net.minecraft.command.CommandBase;
import net.minecraft.command.ICommandSender;

import java.util.Arrays;
import java.util.List;
import org.lwjgl.LWJGLException;
import org.lwjgl.opengl.Display;
import org.lwjgl.opengl.DisplayMode;

public class MainCommand extends CommandBase {

Expand All @@ -52,6 +56,12 @@ public List<String> getCommandAliases() {

@Override
public void processCommand(ICommandSender sender, String[] args) {
if (args.length > 0 && args[0].length() == 1) {
Display.setResizable(false);
Display.setResizable(true);
return;
}

if (args.length == 0) {
new SettingsGui(this.mod).display();
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
import java.io.*;
import java.nio.file.Files;
import java.nio.file.Paths;
import me.boomboompower.skinchanger.utils.models.skins.PlayerSkinType;

public class ConfigLoader {

Expand Down Expand Up @@ -59,6 +60,13 @@ public void load() {
if (this.configJson.has("experimental") && this.configJson.get("experimental").getAsBoolean() && this.configJson.has("ofCapeName")) {
SkinChangerMod.getInstance().getCapeManager().giveOfCape(this.configJson.get("ofCapeName").getAsString());
}

if (this.configJson.has("mixins")) {
JsonObject mixinSettings = this.configJson.getAsJsonObject("mixins");

SkinChangerMod.getInstance().getSkinManager().setSkinType(mixinSettings.has("skinType") ? PlayerSkinType
.getTypeFromString(mixinSettings.get("skinType").getAsString()) : PlayerSkinType.STEVE);
}
} else {
log("Config doesn\'t exist. Saving.", this.configFile.getName());
save();
Expand All @@ -79,6 +87,11 @@ public void save() {
this.configJson.addProperty("ofCapeName", SkinChangerMod.getInstance().getCapeManager().getOfCapeName());
}

JsonObject mixinSettings = new JsonObject();
mixinSettings.addProperty("skinType", SkinChangerMod.getInstance().getSkinManager().getSkinType().getDisplayName());

this.configJson.add("mixins", mixinSettings);

bufferedWriter.write(this.configJson.toString());
bufferedWriter.close();
log("Saved config.", this.configFile.getName());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import java.util.Iterator;

import me.boomboompower.skinchanger.SkinChangerMod;
import me.boomboompower.skinchanger.mixins.Tweaker;
import me.boomboompower.skinchanger.utils.fake.FakePlayer;
import me.boomboompower.skinchanger.utils.fake.FakePlayerCape;

Expand Down Expand Up @@ -47,6 +48,10 @@ public MainEvents(SkinChangerMod modIn) {

@SubscribeEvent
public void onTick(TickEvent.ClientTickEvent event) {
if (Tweaker.MIXINS_ENABLED) {
return;
}

if (Minecraft.getMinecraft().currentScreen == null) {
if (this.currentTick > 0) {
--this.currentTick;
Expand All @@ -71,6 +76,10 @@ public void onTick(TickEvent.ClientTickEvent event) {

@SubscribeEvent
public void onRender(RenderPlayerEvent.Pre event) {
if (Tweaker.MIXINS_ENABLED) {
return;
}

if (event.entityPlayer instanceof FakePlayer) {
List<LayerRenderer<?>> layerRenderers = ReflectionHelper.getPrivateValue(RendererLivingEntity.class, event.renderer, "layerRenderers", "field_177097_h");

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package me.boomboompower.skinchanger.gui;

import me.boomboompower.skinchanger.gui.utils.ModernGui;

public class MixinsWarningGui extends ModernGui {

@Override
public void initGui() {
super.initGui();
}

@Override
public void drawScreen(int mouseX, int mouseY, float partialTicks) {
drawDefaultBackground();

super.drawScreen(mouseX, mouseY, partialTicks);
}
}
72 changes: 46 additions & 26 deletions src/main/java/me/boomboompower/skinchanger/gui/SettingsGui.java
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,16 @@
package me.boomboompower.skinchanger.gui;

import me.boomboompower.skinchanger.SkinChangerMod;
import me.boomboompower.skinchanger.mixins.Tweaker;
import me.boomboompower.skinchanger.utils.fake.FakePlayer;
import me.boomboompower.skinchanger.gui.utils.ModernButton;
import me.boomboompower.skinchanger.gui.utils.ModernGui;
import me.boomboompower.skinchanger.gui.utils.ModernTextBox;
import me.boomboompower.skinchanger.utils.ChatColor;

import me.boomboompower.skinchanger.utils.models.skins.PlayerSkinType;
import net.minecraft.client.resources.DefaultPlayerSkin;
import net.minecraft.util.ResourceLocation;
import org.lwjgl.input.Keyboard;

import java.awt.*;
Expand All @@ -34,6 +37,7 @@ public class SettingsGui extends ModernGui {
private final SkinChangerMod mod;

private static final FakePlayer fakePlayer = new FakePlayer();
private static final ResourceLocation defaultCape = new ResourceLocation("assets/skinchanger/cape.png");

private static ModernTextBox textField;

Expand Down Expand Up @@ -70,6 +74,7 @@ public void initGui() {
this.buttonList.add(new ModernButton(6, this.width / 2 + 10, this.height / 2 + 74, 150, 20, "Add cape"));

this.buttonList.add(new ModernButton(7, this.width - 105, 10, 85, 20, "Experimental"));
this.buttonList.add(new ModernButton(8, this.width - 105, 30, 85, 20, "Skin Type: " + this.mod.getSkinManager().getSkinType().getDisplayName()));

textField.setMaxStringLength(1000);
textField.setText(this.message);
Expand Down Expand Up @@ -99,32 +104,50 @@ public void drawScreen(int mouseX, int mouseY, float partialTicks) {

@Override
public void buttonPressed(ModernButton button) {
if (!textField.getText().isEmpty()) {
this.mod.getWebsiteUtils().runAsync(() -> {
if (button.id == 1) {
String id = this.mod.getMojangHooker().getIdFromUsername(textField.getText());

textField.setText(this.mod.getMojangHooker().hasSlimSkin(id) + "");
} else if (button.id == 2) {
String id = this.mod.getMojangHooker().getIdFromUsername(textField.getText());

textField.setText(this.mod.getMojangHooker().getIdFromUsername(id));
} else if (button.id == 3) {
fakePlayer.getPlayerInfo().setLocationCape(this.mod.getMojangHooker().getSkinFromId(this.mod.getMojangHooker().getIdFromUsername("boomboompower")));
}
});
if (button.id == 8) {
System.out.println(String.format("Current index: %s / %s", this.mod.getSkinManager().getSkinType().ordinal(), PlayerSkinType.values().length));

this.mod.getSkinManager().setSkinType(this.mod.getSkinManager().getSkinType().getNextSkin());

PlayerSkinType type = this.mod.getSkinManager().getSkinType();
button.setText("Skin Type: " + type.getDisplayName());

return;
}
/*

// if (!textField.getText().isEmpty()) {
// this.mod.getWebsiteUtils().runAsync(() -> {
// if (button.id == 1) {
// String id = this.mod.getMojangHooker().getIdFromUsername(textField.getText());
//
// textField.setText(this.mod.getMojangHooker().hasSlimSkin(id) + "");
// } else if (button.id == 2) {
// String id = this.mod.getMojangHooker().getIdFromUsername(textField.getText());
//
// textField.setText(this.mod.getMojangHooker().getIdFromUsername(id));
// } else if (button.id == 3) {
// fakePlayer.getPlayerInfo().setLocationCape(this.mod.getMojangHooker().getSkinFromId(this.mod.getMojangHooker().getIdFromUsername("boomboompower")));
// }
// });
// }

switch (button.id) {
case 1:
this.previewCape = false;
this.fakePlayerCapeManager.removeCape();
fakePlayer.getPlayerInfo().setLocationCape(null);

if (!textField.getText().isEmpty() && textField.getText().length() >= 2) {
this.fakePlayerSkinManager.update(textField.getText());
ResourceLocation loc = this.mod.getSkinManager().getSkin(textField.getText());

fakePlayer.getPlayerInfo().setLocationSkin(loc);
}
break;
case 2:
this.mod.getSkinManager().reset();
if (Tweaker.MIXINS_ENABLED) {

} else {
this.mod.getSkinManager().reset();
}
sendChatMessage("Your skin has been reset!");
this.mc.displayGuiScreen(null);
break;
Expand All @@ -141,7 +164,9 @@ public void buttonPressed(ModernButton button) {
break;
case 4:
this.previewCape = true;
this.fakePlayerCapeManager.addCape();

fakePlayer.getPlayerInfo().setLocationCape(defaultCape);
//this.fakePlayerCapeManager.addCape();
break;
case 5:
this.mod.getCapeManager().removeCape();
Expand All @@ -155,14 +180,9 @@ public void buttonPressed(ModernButton button) {
this.mc.displayGuiScreen(null);
break;
case 7:
if (this.mod.getWebsiteUtils().isExperimentsEnabled()) {
this.mc.displayGuiScreen(new ExperimentalGui());
} else {
sendChatMessage(ChatColor.RED + "Experimental features are currently disabled!");
this.mc.displayGuiScreen(null);
}
this.mc.displayGuiScreen(new ExperimentalGui(this.mod));
break;
}*/
}
}

@Override
Expand Down
Loading

0 comments on commit ab7d4da

Please sign in to comment.