Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion ASMRewriter
Submodule ASMRewriter deleted from 036917
Binary file removed ASMRewriter.rar
Binary file not shown.
147 changes: 86 additions & 61 deletions TextureMod/EffectChanger.cs
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
using GameplayEntities;
using System.IO;
using System.Linq;
using UnityEngine;
using GameplayEntities;
using BepInEx;
using BepInEx.Configuration;


namespace TextureMod
{
public class EffectChanger : MonoBehaviour
{
public static string resourceFolder = Application.dataPath.Replace("/", @"\") + @"\Managed\TextureModResources\Images\Effects\";

ModMenuIntegration MMI;
public static string effectsFolder = Utility.CombinePaths(TextureMod.ResourceFolder, "Images", "Effects");

#region Parry and clash effects
Texture2D parryActiveBG;
Expand All @@ -27,66 +28,90 @@ public class EffectChanger : MonoBehaviour
Texture2D clashBG;
Texture2D clashFG;

byte parryFirstColorR = 0;
byte parryFirstColorG = 0;
byte parryFirstColorB = 0;
ConfigEntry<int> parryFirstColorR;
ConfigEntry<int> parryFirstColorG;
ConfigEntry<int> parryFirstColorB;

byte parrySecondColorR = 0;
byte parrySecondColorG = 0;
byte parrySecondColorB = 0;
ConfigEntry<int> parrySecondColorR;
ConfigEntry<int> parrySecondColorG;
ConfigEntry<int> parrySecondColorB;

byte parryThirdColorR = 0;
byte parryThirdColorG = 0;
byte parryThirdColorB = 0;
ConfigEntry<int> parryThirdColorR;
ConfigEntry<int> parryThirdColorG;
ConfigEntry<int> parryThirdColorB;

bool enableCustomParry;
ConfigEntry<bool> enableCustomParry;
#endregion



private void Start()
{
parryActiveBG = TextureHelper.LoadPNG(resourceFolder + @"parry\" + "parryActiveBG.png");
parryActiveMG = TextureHelper.LoadPNG(resourceFolder + @"parry\" + "parryActiveMG.png");
parryActiveFG = TextureHelper.LoadPNG(resourceFolder + @"parry\" + "parryActiveFG.png");

parryEndBG = TextureHelper.LoadPNG(resourceFolder + @"parry\" + "parryEndBG.png");
parryEndMG = TextureHelper.LoadPNG(resourceFolder + @"parry\" + "parryEndMG.png");
parryEndFG = TextureHelper.LoadPNG(resourceFolder + @"parry\" + "parryEndFG.png");

parrySuccessBG = TextureHelper.LoadPNG(resourceFolder + @"parry\" + "parrySuccessBG.png");
parrySuccessMG = TextureHelper.LoadPNG(resourceFolder + @"parry\" + "parrySuccessMG.png");
parrySuccessFG = TextureHelper.LoadPNG(resourceFolder + @"parry\" + "parrySuccessFG.png");

clashBG = TextureHelper.LoadPNG(resourceFolder + @"Clash\" + "clashEffectBG.png");
clashFG = TextureHelper.LoadPNG(resourceFolder + @"Clash\" + "clashEffectFG.png");
}

private void FixedUpdate()
{
if (MMI == null) MMI = TextureMod.Instance.MMI;
if (TextureMod.Instance.tc.InMenu())
{
enableCustomParry = MMI.GetTrueFalse(MMI.configBools["(bool)enableCustomParryAndClash"]);

parryFirstColorR = (byte)MMI.GetSliderValue("(slider)parryFirstColorR");
parryFirstColorG = (byte)MMI.GetSliderValue("(slider)parryFirstColorG");
parryFirstColorB = (byte)MMI.GetSliderValue("(slider)parryFirstColorB");

parrySecondColorR = (byte)MMI.GetSliderValue("(slider)parrySecondColorR");
parrySecondColorG = (byte)MMI.GetSliderValue("(slider)parrySecondColorG");
parrySecondColorB = (byte)MMI.GetSliderValue("(slider)parrySecondColorB");

parryThirdColorR = (byte)MMI.GetSliderValue("(slider)parryThirdColorR");
parryThirdColorG = (byte)MMI.GetSliderValue("(slider)parryThirdColorG");
parryThirdColorB = (byte)MMI.GetSliderValue("(slider)parryThirdColorB");
}
string parryFolder = Path.Combine(effectsFolder, "parry");
parryActiveBG = TextureHelper.LoadPNG(Path.Combine(parryFolder, "parryActiveBG.png"));
parryActiveMG = TextureHelper.LoadPNG(Path.Combine(parryFolder, "parryActiveMG.png"));
parryActiveFG = TextureHelper.LoadPNG(Path.Combine(parryFolder, "parryActiveFG.png"));

parryEndBG = TextureHelper.LoadPNG(Path.Combine(parryFolder, "parryEndBG.png"));
parryEndMG = TextureHelper.LoadPNG(Path.Combine(parryFolder, "parryEndMG.png"));
parryEndFG = TextureHelper.LoadPNG(Path.Combine(parryFolder, "parryEndFG.png"));

parrySuccessBG = TextureHelper.LoadPNG(Path.Combine(parryFolder, "parrySuccessBG.png"));
parrySuccessMG = TextureHelper.LoadPNG(Path.Combine(parryFolder, "parrySuccessMG.png"));
parrySuccessFG = TextureHelper.LoadPNG(Path.Combine(parryFolder, "parrySuccessFG.png"));

string clashFolder = Path.Combine(effectsFolder, "Clash");
clashBG = TextureHelper.LoadPNG(Path.Combine(clashFolder, "clashEffectBG.png"));
clashFG = TextureHelper.LoadPNG(Path.Combine(clashFolder, "clashEffectFG.png"));


ConfigFile config = TextureMod.Instance.Config;

config.Bind("EffectChanger", "parry_header", "Parry Settings:", "modmenu_header");
enableCustomParry = config.Bind("EffectChanger", "enableCustomParryAndClash", false);

parryFirstColorR = config.Bind("EffectChanger", "parryFirstColorR", 0,
new ConfigDescription("Parry's first color red amount", new AcceptableValueRange<int>(0, 255))
);
parryFirstColorG = config.Bind("EffectChanger", "parryFirstColorG", 0,
new ConfigDescription("Parry's first color green amount", new AcceptableValueRange<int>(0, 255))
);
parryFirstColorB = config.Bind("EffectChanger", "parryFirstColorR", 0,
new ConfigDescription("Parry's first color blue amount", new AcceptableValueRange<int>(0, 255))
);
config.Bind("EffectChanger", "parry_gap1", "20", "modmenu_gap");

parrySecondColorR = config.Bind("EffectChanger", "parrySecondColorR", 0,
new ConfigDescription("Parry's second color red amount", new AcceptableValueRange<int>(0, 255))
);
parrySecondColorG = config.Bind("EffectChanger", "parrySecondColorG", 0,
new ConfigDescription("Parry's second color green amount", new AcceptableValueRange<int>(0, 255))
);
parrySecondColorB = config.Bind("EffectChanger", "parrySecondColorB", 0,
new ConfigDescription("Parry's second color blue amount", new AcceptableValueRange<int>(0, 255))
);
config.Bind("EffectChanger", "parry_gap2", "20", "modmenu_gap");

parryThirdColorR = config.Bind("EffectChanger", "parryThirdColorR", 0,
new ConfigDescription("Parry's third color red amount", new AcceptableValueRange<int>(0, 255))
);
parryThirdColorG = config.Bind("EffectChanger", "parryThirdColorG", 0,
new ConfigDescription("Parry's third color green amount", new AcceptableValueRange<int>(0, 255))
);
parryThirdColorB = config.Bind("EffectChanger", "parryThirdColorB", 0,
new ConfigDescription("Parry's third color blue amount", new AcceptableValueRange<int>(0, 255))
);
config.Bind("EffectChanger", "parry_gap3", "20", "modmenu_gap");
}

private void Update()
{
if (enableCustomParry == true)
if (enableCustomParry.Value == true)
{
Color32 parryFirstColor = new Color32((byte)parryFirstColorR.Value, (byte)parryFirstColorG.Value, (byte)parryFirstColorB.Value, 255);
Color32 parrySecondColor = new Color32((byte)parrySecondColorR.Value, (byte)parrySecondColorG.Value, (byte)parrySecondColorB.Value, 255);
Color32 parryThirdColor = new Color32((byte)parryThirdColorR.Value, (byte)parryThirdColorG.Value, (byte)parryThirdColorB.Value, 255);

MeshRenderer[] mrs = FindObjectsOfType<MeshRenderer>();
foreach (MeshRenderer mr in mrs)
{
Expand All @@ -100,9 +125,9 @@ private void Update()
m3.mainTexture = parryActiveFG;
Material[] mArray = new Material[] { m1, m2, m3 };
mr.materials = mArray;
mr.materials[0].color = new Color32(parryFirstColorR, parryFirstColorG, parryFirstColorB, 255);
mr.materials[1].color = new Color32(parrySecondColorR, parrySecondColorG, parrySecondColorB, 255);
mr.materials[2].color = new Color32(parryThirdColorR, parryThirdColorG, parryThirdColorB, 255);
mr.materials[0].color = parryFirstColor;
mr.materials[1].color = parrySecondColor;
mr.materials[2].color = parryThirdColor;
}
}

Expand All @@ -121,9 +146,9 @@ private void Update()
m3.mainTexture = parryEndFG;
Material[] mArray = new Material[] { m1, m2, m3 };
mr.materials = mArray;
mr.materials[0].color = new Color32(parryFirstColorR, parryFirstColorG, parryFirstColorB, 255);
mr.materials[1].color = new Color32(parrySecondColorR, parrySecondColorG, parrySecondColorB, 255);
mr.materials[2].color = new Color32(parryThirdColorR, parryThirdColorG, parryThirdColorB, 255);
mr.materials[0].color = parryFirstColor;
mr.materials[1].color = parrySecondColor;
mr.materials[2].color = parryThirdColor;
}
}

Expand All @@ -141,9 +166,9 @@ private void Update()
m3.mainTexture = parrySuccessFG;
Material[] mArray = new Material[] { m1, m2, m3 };
mr.materials = mArray;
mr.materials[0].color = new Color32(parryFirstColorR, parryFirstColorG, parryFirstColorB, 255);
mr.materials[1].color = new Color32(parrySecondColorR, parrySecondColorG, parrySecondColorB, 255);
mr.materials[2].color = new Color32(parryThirdColorR, parryThirdColorG, parryThirdColorB, 255);
mr.materials[0].color = parryFirstColor;
mr.materials[1].color = parrySecondColor;
mr.materials[2].color = parryThirdColor;
}

if (ve.name == "clashEffect")
Expand All @@ -156,8 +181,8 @@ private void Update()
m2.mainTexture = clashFG;
Material[] mArray = new Material[] { m1, m2 };
mr.materials = mArray;
mr.materials[0].color = new Color32(parryFirstColorR, parryFirstColorG, parryFirstColorB, 255);
mr.materials[1].color = new Color32(parryThirdColorR, parryThirdColorG, parryThirdColorB, 255);
mr.materials[0].color = parryFirstColor;
mr.materials[1].color = parryThirdColor;
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion TextureMod/ExchangeClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public IEnumerator GetSkin(string peerId)
string characterVariant = rets[1];
string skin = rets[2];
byte[] imageData = Convert.FromBase64String(skin);
File.WriteAllBytes(Application.dataPath.Replace("/", @"\") + @"\Managed\TextureModResources\Images\opponent.png", imageData);
File.WriteAllBytes(BepInEx.Utility.CombinePaths(TextureMod.ResourceFolder, "Images", "opponent.png"), imageData);
TextureMod.Instance.tc.newSkinToApply = true;
TextureMod.Instance.tc.debug[3] = "Got non null skin and set newSkinToApply to true";
TextureMod.Instance.tc.opponentCustomSkinCharacter = (Character)Enum.Parse(typeof(Character), character);
Expand Down
1 change: 1 addition & 0 deletions TextureMod/Libs/0Harmony.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/Assembly-CSharp.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/BepInEx.Harmony.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/BepInEx.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/LLBModdingLib.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/ModMenu.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/TextMeshPro.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/UnityEngine.AnimationModule.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/UnityEngine.CoreModule.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/UnityEngine.IMGUIModule.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/UnityEngine.ImageConversionModule.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/UnityEngine.PhysicsModule.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/UnityEngine.TextCoreModule.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/UnityEngine.TextRenderingModule.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/UnityEngine.UnityWebRequestModule.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/UnityEngine.UnityWebRequestWWWModule.dll
1 change: 1 addition & 0 deletions TextureMod/Libs/UnityEngine.dll
3 changes: 1 addition & 2 deletions TextureMod/ModDebugging.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using UnityEngine;

namespace TextureMod
Expand All @@ -17,7 +16,7 @@ public class ModDebugging : MonoBehaviour

private void OnGUI()
{
if (TextureMod.Instance.tc.showDebugInfo)
if (TextureMod.Instance.tc.showDebugInfo.Value)
{

GUIStyle ss = new GUIStyle("Box");
Expand Down
Loading