Decompiled source of BadAssCompany v1.1.12
plugins/BadAssCompany/BadAssCompany.dll
Decompiled 4 months ago
The result has been truncated due to the large size, download it to view full contents!
using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using BadAssCompany; using BepInEx; using BepInEx.Bootstrap; using BepInEx.Configuration; using EmotesAPI; using ExamplePlugin; using LethalConfig; using LethalConfig.ConfigItems; using LethalEmotesAPI.ImportV2; using Microsoft.CodeAnalysis; using UnityEngine; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: AssemblyCompany("BadAssCompany")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0+75d29dfe66f07d92a38591cf329b472e85ca7d8d")] [assembly: AssemblyProduct("BadAssCompany")] [assembly: AssemblyTitle("BadAssCompany")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] [module: RefSafetyRules(11)] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)] internal sealed class RefSafetyRulesAttribute : Attribute { public readonly int Version; public RefSafetyRulesAttribute(int P_0) { Version = P_0; } } } public class LivingParticlesAudioModule : MonoBehaviour { public Transform audioPosition; public LivingParticlesAudioSource LPaSourse; public bool useBuffer; public bool firstAndLastPixelBlack = false; private Texture2D t2d; private float[] finalSpectrum; private Color col = Color.black; private ParticleSystemRenderer psr; private void Start() { //IL_0046: Unknown result type (might be due to invalid IL or missing references) //IL_0050: Expected O, but got Unknown //IL_0035: Unknown result type (might be due to invalid IL or missing references) //IL_003f: Expected O, but got Unknown //IL_0074: Unknown result type (might be due to invalid IL or missing references) //IL_007e: Expected O, but got Unknown //IL_0062: Unknown result type (might be due to invalid IL or missing references) //IL_006c: Expected O, but got Unknown psr = ((Component)this).GetComponent<ParticleSystemRenderer>(); switch (LPaSourse.numberOfBands) { case LivingParticlesAudioSource._numberOfBands.Bands8: if (firstAndLastPixelBlack) { t2d = new Texture2D(10, 1); } else { t2d = new Texture2D(8, 1); } break; case LivingParticlesAudioSource._numberOfBands.Bands16: if (firstAndLastPixelBlack) { t2d = new Texture2D(18, 1); } else { t2d = new Texture2D(16, 1); } break; } ((Texture)t2d).wrapMode = (TextureWrapMode)0; } private void Update() { //IL_00e1: Unknown result type (might be due to invalid IL or missing references) //IL_00c8: Unknown result type (might be due to invalid IL or missing references) //IL_01b1: Unknown result type (might be due to invalid IL or missing references) //IL_01b6: Unknown result type (might be due to invalid IL or missing references) //IL_011b: Unknown result type (might be due to invalid IL or missing references) //IL_014d: Unknown result type (might be due to invalid IL or missing references) //IL_0163: Unknown result type (might be due to invalid IL or missing references) if (useBuffer) { switch (LPaSourse.numberOfBands) { case LivingParticlesAudioSource._numberOfBands.Bands8: finalSpectrum = LPaSourse.finalBands8Buffer; break; case LivingParticlesAudioSource._numberOfBands.Bands16: finalSpectrum = LPaSourse.finalBands16Buffer; break; } } else { switch (LPaSourse.numberOfBands) { case LivingParticlesAudioSource._numberOfBands.Bands8: finalSpectrum = LPaSourse.finalBands8; break; case LivingParticlesAudioSource._numberOfBands.Bands16: finalSpectrum = LPaSourse.finalBands16; break; } } for (int i = 0; i < finalSpectrum.Length; i++) { col.r = finalSpectrum[i]; if (firstAndLastPixelBlack) { t2d.SetPixel(i + 1, 0, col); } else { t2d.SetPixel(i, 0, col); } } if (firstAndLastPixelBlack) { t2d.SetPixel(0, 0, Color.black); switch (LPaSourse.numberOfBands) { case LivingParticlesAudioSource._numberOfBands.Bands8: t2d.SetPixel(9, 0, Color.black); break; case LivingParticlesAudioSource._numberOfBands.Bands16: t2d.SetPixel(17, 0, Color.black); break; } } t2d.Apply(); ((Renderer)psr).material.SetTexture("_AudioSpectrum", (Texture)(object)t2d); ((Renderer)psr).material.SetVector("_AudioPosition", Vector4.op_Implicit(audioPosition.position)); switch (LPaSourse.numberOfBands) { case LivingParticlesAudioSource._numberOfBands.Bands8: { int num = 1; float amplitudeBuffer = (LPaSourse.amplitudeBuffer8 + 48f) / 48f; LPaSourse.amplitudeBuffer8 = amplitudeBuffer; ((Renderer)psr).material.SetFloat("_AudioAverageAmplitude", LPaSourse.amplitudeBuffer8); break; } case LivingParticlesAudioSource._numberOfBands.Bands16: ((Renderer)psr).material.SetFloat("_AudioAverageAmplitude", LPaSourse.amplitudeBuffer16); break; } } } public class LivingParticlesAudioSource : MonoBehaviour { public enum _numberOfBands { Bands8, Bands16 } public AudioClip audioClip; [Range(0.1f, 2f)] public float bufferInitialDecreaseSpeed = 1f; [Range(0f, 10f)] public float bufferDecreaseSpeedMultiply = 5f; public float freqBandsPower = 10f; public float audioProfileInitialValue = 5f; public bool audioProfileDecreasing = true; public float audioProfileDecreasingSpeed = 0.1f; public _numberOfBands numberOfBands = _numberOfBands.Bands8; private float[] initialSamplesL = new float[512]; private float[] initialSamplesR = new float[512]; private float[] freqBands8 = new float[8]; private float[] freqBands8Buffer = new float[8]; private float[] freqBands8BufferDecrease = new float[8]; private float[] freqBands8Highest = new float[8]; private float[] freqBands16 = new float[16]; private float[] freqBands16Buffer = new float[16]; private float[] freqBands16BufferDecrease = new float[16]; private float[] freqBands16Highest = new float[16]; private AudioSource audioSource; [HideInInspector] public float[] finalBands8 = new float[8]; [HideInInspector] public float[] finalBands8Buffer = new float[8]; [HideInInspector] public float[] finalBands16 = new float[16]; [HideInInspector] public float[] finalBands16Buffer = new float[16]; [HideInInspector] public float amplitude8; [HideInInspector] public float amplitudeBuffer8; [HideInInspector] public float amplitude16; [HideInInspector] public float amplitudeBuffer16; private float amplitudeHighest; private static bool speaking; private uint _length = 0u; private bool yote = false; private float[] left; private float[] right; private double[] _window; private void Start() { audioSource = ((Component)this).GetComponent<AudioSource>(); AudioProfile(audioProfileInitialValue); } public void StartAudio() { Reset(); } public void Reset() { _length = 0u; } private static bool readWav(string filename, out float[] L, out float[] R, out uint samplerate, out uint channels) { speaking = true; L = (R = null); samplerate = 0u; channels = 0u; try { using FileStream input = File.Open(filename, FileMode.Open); BinaryReader binaryReader = new BinaryReader(input); int num = binaryReader.ReadInt32(); int num2 = binaryReader.ReadInt32(); int num3 = binaryReader.ReadInt32(); int num4 = binaryReader.ReadInt32(); int num5 = binaryReader.ReadInt32(); int num6 = binaryReader.ReadInt16(); int num7 = binaryReader.ReadInt16(); int num8 = binaryReader.ReadInt32(); int num9 = binaryReader.ReadInt32(); int num10 = binaryReader.ReadInt16(); int num11 = binaryReader.ReadInt16(); samplerate = (uint)num8; channels = (uint)num7; if (num5 == 18) { int count = binaryReader.ReadInt16(); binaryReader.ReadBytes(count); } int num12 = binaryReader.ReadInt32(); int num13 = binaryReader.ReadInt32(); byte[] src = binaryReader.ReadBytes(num13); int num14 = num11 / 8; int num15 = num13 / num14; float[] array = null; switch (num11) { case 64: { double[] array3 = new double[num15]; Buffer.BlockCopy(src, 0, array3, 0, num13); array = Array.ConvertAll(array3, (double e) => (float)e); break; } case 32: array = new float[num15]; Buffer.BlockCopy(src, 0, array, 0, num13); break; case 16: { short[] array2 = new short[num15]; Buffer.BlockCopy(src, 0, array2, 0, num13); array = Array.ConvertAll(array2, (short e) => (float)e / 32768f); break; } default: return false; } switch (channels) { case 1u: L = array; R = null; return true; case 2u: { int num16 = num15 / 2; L = new float[num16]; R = new float[num16]; int i = 0; int num17 = 0; for (; i < num16; i++) { L[i] = array[num17++]; R[i] = array[num17++]; } return true; } default: return false; } } catch { Debug.Log((object)("...Failed to load: " + filename)); return false; } } private bool WavBufferToWwise(uint playingID, uint channelIndex, float[] samples) { if (left.Length == 0) { DebugClass.Log((object)"There was an error playing the audio file, The audio buffer is empty!"); } if (_length >= (uint)left.Length) { _length = (uint)left.Length; } initialSamplesL = new float[samples.Length]; initialSamplesR = new float[samples.Length]; try { uint num = 0u; for (num = 0u; num < samples.Length; num++) { if (num + _length >= left.Length) { speaking = false; _length = 0u; break; } initialSamplesL[num] = left[num + _length]; initialSamplesR[num] = right[num + _length]; samples[num] = 0f; } _length += num; } catch (Exception) { Debug.Log((object)"--------end of audio???"); throw; } if (_length >= (uint)left.Length) { _length = (uint)left.Length; speaking = false; } DoSpectrumDataStuff(); return speaking; } private void ApplyWindow() { int num = initialSamplesL.Length; CreateWindow(num); for (int i = 0; i < num; i++) { initialSamplesL[i] = (float)((double)initialSamplesL[i] * _window[i]); initialSamplesR[i] = (float)((double)initialSamplesR[i] * _window[i]); } } private void DoSpectrumDataStuff() { ApplyWindow(); switch (numberOfBands) { case _numberOfBands.Bands8: CreateFreqBands8(); CreateBandBuffer8(); CreateFinalBands8(); CreateAmplitude8(); break; case _numberOfBands.Bands16: CreateFreqBands16(); CreateBandBuffer16(); CreateFinalBands16(); CreateAmplitude16(); break; } } private void CreateWindow(int size, bool normalize = false) { _window = new double[size]; for (int i = 0; i < size; i++) { double num = (double)i / (double)(size - 1); _window[i] = (double)(0.42f - 0.5f * Mathf.Cos((float)(i / size))) + 0.08 * (double)Mathf.Cos(2f * (float)i / (float)size); } if (normalize) { double num2 = 0.0; for (int j = 0; j < _window.Length; j++) { num2 += _window[j]; } for (int k = 0; k < _window.Length; k++) { _window[k] /= num2; } } } private void AudioProfile(float audioProfileValue) { for (int i = 0; i < 8; i++) { freqBands8Highest[i] = audioProfileValue; } for (int j = 0; j < 16; j++) { freqBands16Highest[j] = audioProfileValue; } } private void CreateAmplitude8() { float num = 0f; float num2 = 0f; for (int i = 0; i < 8; i++) { num += finalBands8[i]; num2 += finalBands8Buffer[i]; } if (num > amplitudeHighest) { amplitudeHighest = num; } amplitude8 = num / amplitudeHighest; amplitudeBuffer8 = num2 / amplitudeHighest; } private void CreateAmplitude16() { float num = 0f; float num2 = 0f; for (int i = 0; i < 16; i++) { num += finalBands16[i]; num2 += finalBands16Buffer[i]; } if (num > amplitudeHighest) { amplitudeHighest = num; } amplitude16 = num / amplitudeHighest; amplitudeBuffer16 = num2 / amplitudeHighest; } private void CreateFinalBands8() { for (int i = 0; i < 8; i++) { if (audioProfileDecreasing) { freqBands8Highest[i] -= audioProfileDecreasingSpeed * Time.deltaTime; } if (freqBands8[i] > freqBands8Highest[i]) { freqBands8Highest[i] = freqBands8[i]; } finalBands8[i] = freqBands8[i] / freqBands8Highest[i]; finalBands8Buffer[i] = freqBands8Buffer[i] / freqBands8Highest[i]; } } private void CreateFinalBands16() { for (int i = 0; i < 16; i++) { if (audioProfileDecreasing) { freqBands16Highest[i] -= audioProfileDecreasingSpeed * Time.deltaTime; } if (freqBands16[i] > freqBands16Highest[i]) { freqBands16Highest[i] = freqBands16[i]; } finalBands16[i] = freqBands16[i] / freqBands16Highest[i]; finalBands16Buffer[i] = freqBands16Buffer[i] / freqBands16Highest[i]; } } private void CreateBandBuffer8() { for (int i = 0; i < 8; i++) { if (freqBands8[i] > freqBands8Buffer[i]) { freqBands8Buffer[i] = freqBands8[i]; freqBands8BufferDecrease[i] = bufferInitialDecreaseSpeed * freqBands8Highest[i] * Time.deltaTime; } if (freqBands8[i] < freqBands8Buffer[i]) { freqBands8Buffer[i] -= freqBands8BufferDecrease[i]; freqBands8BufferDecrease[i] *= 1f + bufferDecreaseSpeedMultiply * Time.deltaTime; } } } private void CreateBandBuffer16() { for (int i = 0; i < 16; i++) { if (freqBands16[i] > freqBands16Buffer[i]) { freqBands16Buffer[i] = freqBands16[i]; freqBands16BufferDecrease[i] = bufferInitialDecreaseSpeed * freqBands16Highest[i] * Time.deltaTime; } if (freqBands16[i] < freqBands16Buffer[i]) { freqBands16Buffer[i] -= freqBands16BufferDecrease[i]; freqBands16BufferDecrease[i] *= 1f + bufferDecreaseSpeedMultiply * Time.deltaTime; } } } private void CreateFreqBands8() { int num = 1; } private void CreateFreqBands16() { int num = 0; int num2 = 1; int num3 = 0; for (int i = 0; i < 16; i++) { float num4 = 0f; if (i == 2 || i == 4 || i == 6 || i == 8 || i == 10 || i == 12 || i == 14) { num3++; num2 = (int)Mathf.Pow(2f, (float)num3); if (num3 == 7) { num2++; } } for (int j = 0; j < num2; j++) { num4 += (initialSamplesL[num] + initialSamplesR[num]) * (float)(num + 1); num++; } num4 /= (float)num; freqBands16[i] = num4 * freqBandsPower * 2f; } } } namespace BadAssCompany { internal class LethalConfigSupport { internal static void LethalConfig() { //IL_0012: Unknown result type (might be due to invalid IL or missing references) //IL_001c: Expected O, but got Unknown //IL_0023: Unknown result type (might be due to invalid IL or missing references) //IL_002d: Expected O, but got Unknown //IL_0034: Unknown result type (might be due to invalid IL or missing references) //IL_003e: Expected O, but got Unknown //IL_0045: Unknown result type (might be due to invalid IL or missing references) //IL_004f: Expected O, but got Unknown //IL_0056: Unknown result type (might be due to invalid IL or missing references) //IL_0060: Expected O, but got Unknown //IL_0067: Unknown result type (might be due to invalid IL or missing references) //IL_0071: Expected O, but got Unknown //IL_0078: Unknown result type (might be due to invalid IL or missing references) //IL_0082: Expected O, but got Unknown //IL_0089: Unknown result type (might be due to invalid IL or missing references) //IL_0093: Expected O, but got Unknown //IL_009a: Unknown result type (might be due to invalid IL or missing references) //IL_00a4: Expected O, but got Unknown //IL_00ab: Unknown result type (might be due to invalid IL or missing references) //IL_00b5: Expected O, but got Unknown LethalConfigManager.SetModDescription("API for importing animations to Lethal Company"); LethalConfigManager.AddConfigItem((BaseConfigItem)new BoolCheckBoxConfigItem(Settings.FloatLightProp, false)); LethalConfigManager.AddConfigItem((BaseConfigItem)new BoolCheckBoxConfigItem(Settings.moneyProp, false)); LethalConfigManager.AddConfigItem((BaseConfigItem)new BoolCheckBoxConfigItem(Settings.chikaProp, false)); LethalConfigManager.AddConfigItem((BaseConfigItem)new BoolCheckBoxConfigItem(Settings.desertlightProp, false)); LethalConfigManager.AddConfigItem((BaseConfigItem)new BoolCheckBoxConfigItem(Settings.BimBamBomProp, false)); LethalConfigManager.AddConfigItem((BaseConfigItem)new BoolCheckBoxConfigItem(Settings.SummermogusProp, false)); LethalConfigManager.AddConfigItem((BaseConfigItem)new BoolCheckBoxConfigItem(Settings.Amogus, false)); LethalConfigManager.AddConfigItem((BaseConfigItem)new BoolCheckBoxConfigItem(Settings.BluntAnimatorProp, false)); LethalConfigManager.AddConfigItem((BaseConfigItem)new BoolCheckBoxConfigItem(Settings.neverseeProp, false)); LethalConfigManager.AddConfigItem((BaseConfigItem)new BoolCheckBoxConfigItem(Settings.ImaMysteryProp, false)); } } } namespace BadAssEmotes { internal class CSS_Loader { } } namespace ExamplePlugin { internal static class Assets { internal static readonly List<AssetBundle> AssetBundles = new List<AssetBundle>(); private static readonly Dictionary<string, int> AssetIndices = new Dictionary<string, int>(); internal static void LoadAssetBundlesFromFolder(string folderName) { folderName = Path.Combine(Path.GetDirectoryName(BadAssEmotesPlugin.PInfo.Location), folderName); string[] files = Directory.GetFiles(folderName); foreach (string text in files) { AssetBundle val = AssetBundle.LoadFromFile(text); int count = AssetBundles.Count; AssetBundles.Add(val); string[] allAssetNames = val.GetAllAssetNames(); foreach (string text2 in allAssetNames) { string text3 = text2.ToLowerInvariant(); if (text3.StartsWith("assets/")) { text3 = text3.Remove(0, "assets/".Length); } AssetIndices[text3] = count; } DebugClass.Log((object)("Loaded AssetBundle: " + Path.GetFileName(text))); } } internal static T Load<T>(string assetName) where T : Object { try { assetName = assetName.ToLowerInvariant(); if (assetName.Contains(":")) { string[] array = assetName.Split(':'); assetName = array[1].ToLowerInvariant(); } if (assetName.StartsWith("assets/")) { assetName = assetName.Remove(0, "assets/".Length); } int index = AssetIndices[assetName]; return AssetBundles[index].LoadAsset<T>("assets/" + assetName); } catch (Exception arg) { DebugClass.Log((object)$"Couldn't load asset [{assetName}] reason: {arg}"); return default(T); } } } [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInPlugin("com.weliveinasociety.badasscompany", "BadAssCompany", "1.1.12")] public class BadAssEmotesPlugin : BaseUnityPlugin { public const string PluginGUID = "com.weliveinasociety.badasscompany"; public const string PluginAuthor = "Nunchuk"; public const string PluginName = "BadAssCompany"; public const string PluginVersion = "1.1.12"; private int stageInt = -1; private int pressInt = -1; internal static GameObject stage; internal static GameObject press; internal static GameObject pressMechanism; internal static LivingParticleArrayController LPAC; public static BadAssEmotesPlugin instance; private static List<string> HatKidDances = new List<string>(); private int stand = -1; private List<BoneMapper> punchingMappers = new List<BoneMapper>(); private int prop1 = -1; public static PluginInfo PInfo { get; private set; } public void Awake() { //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_002a: Expected O, but got Unknown //IL_0073: Unknown result type (might be due to invalid IL or missing references) //IL_0fe5: Unknown result type (might be due to invalid IL or missing references) //IL_0feb: Expected O, but got Unknown //IL_106a: Unknown result type (might be due to invalid IL or missing references) //IL_106f: Unknown result type (might be due to invalid IL or missing references) //IL_1074: Unknown result type (might be due to invalid IL or missing references) //IL_107a: Unknown result type (might be due to invalid IL or missing references) //IL_107f: Unknown result type (might be due to invalid IL or missing references) //IL_109a: Unknown result type (might be due to invalid IL or missing references) //IL_109f: Unknown result type (might be due to invalid IL or missing references) //IL_10a4: Unknown result type (might be due to invalid IL or missing references) //IL_10aa: Unknown result type (might be due to invalid IL or missing references) //IL_10af: Unknown result type (might be due to invalid IL or missing references) //IL_10c6: Unknown result type (might be due to invalid IL or missing references) //IL_1115: Unknown result type (might be due to invalid IL or missing references) //IL_111b: Expected O, but got Unknown //IL_114b: Unknown result type (might be due to invalid IL or missing references) //IL_116d: Unknown result type (might be due to invalid IL or missing references) //IL_1173: Expected O, but got Unknown //IL_11a3: Unknown result type (might be due to invalid IL or missing references) //IL_11ef: Unknown result type (might be due to invalid IL or missing references) //IL_11f5: Expected O, but got Unknown //IL_1268: Unknown result type (might be due to invalid IL or missing references) //IL_14a8: Unknown result type (might be due to invalid IL or missing references) //IL_14ae: Expected O, but got Unknown //IL_1504: Unknown result type (might be due to invalid IL or missing references) //IL_1509: Unknown result type (might be due to invalid IL or missing references) //IL_150e: Unknown result type (might be due to invalid IL or missing references) //IL_1514: Unknown result type (might be due to invalid IL or missing references) //IL_1519: Unknown result type (might be due to invalid IL or missing references) //IL_1525: Unknown result type (might be due to invalid IL or missing references) //IL_1579: Unknown result type (might be due to invalid IL or missing references) //IL_157f: Expected O, but got Unknown //IL_15c1: Unknown result type (might be due to invalid IL or missing references) //IL_15f1: Unknown result type (might be due to invalid IL or missing references) //IL_15f7: Expected O, but got Unknown //IL_1620: Unknown result type (might be due to invalid IL or missing references) //IL_1907: Unknown result type (might be due to invalid IL or missing references) //IL_190d: Expected O, but got Unknown //IL_1971: Unknown result type (might be due to invalid IL or missing references) //IL_1976: Unknown result type (might be due to invalid IL or missing references) //IL_197b: Unknown result type (might be due to invalid IL or missing references) //IL_1981: Unknown result type (might be due to invalid IL or missing references) //IL_1986: Unknown result type (might be due to invalid IL or missing references) //IL_1992: Unknown result type (might be due to invalid IL or missing references) //IL_19d4: Unknown result type (might be due to invalid IL or missing references) //IL_19da: Expected O, but got Unknown //IL_1a2a: Unknown result type (might be due to invalid IL or missing references) //IL_1a9d: Unknown result type (might be due to invalid IL or missing references) //IL_1aa3: Expected O, but got Unknown //IL_1b07: Unknown result type (might be due to invalid IL or missing references) //IL_1b0c: Unknown result type (might be due to invalid IL or missing references) //IL_1b11: Unknown result type (might be due to invalid IL or missing references) //IL_1b17: Unknown result type (might be due to invalid IL or missing references) //IL_1b1c: Unknown result type (might be due to invalid IL or missing references) //IL_1b28: Unknown result type (might be due to invalid IL or missing references) //IL_1b63: Unknown result type (might be due to invalid IL or missing references) //IL_1b69: Expected O, but got Unknown //IL_1bb9: Unknown result type (might be due to invalid IL or missing references) //IL_1c1a: Unknown result type (might be due to invalid IL or missing references) //IL_1c20: Expected O, but got Unknown //IL_1c76: Unknown result type (might be due to invalid IL or missing references) //IL_1e82: Unknown result type (might be due to invalid IL or missing references) //IL_1e8c: Expected O, but got Unknown //IL_1e94: Unknown result type (might be due to invalid IL or missing references) //IL_1e9e: Expected O, but got Unknown //IL_1ea6: Unknown result type (might be due to invalid IL or missing references) //IL_1eb0: Expected O, but got Unknown //IL_1eb8: Unknown result type (might be due to invalid IL or missing references) //IL_1ec2: Expected O, but got Unknown instance = this; PInfo = ((BaseUnityPlugin)this).Info; Assets.LoadAssetBundlesFromFolder("assetbundles"); Settings.Setup(); CustomEmoteParams val = new CustomEmoteParams(); val.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/Breakin.anim") }; val.audioLoops = false; val.primaryAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/breakin'.ogg") }; val.syncAnim = true; val.syncAudio = true; val.lockType = (LockType)1; val.primaryDMCAFreeAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/DMCAMusic/Breakin'_NNTranscription.ogg") }; val.displayName = "Breakin"; EmoteImporter.ImportEmote(val); AddAnimation("Breakneck", (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/Breakneck.ogg") }, null, looping: true, dimAudio: true, sync: true, (LockType)1, "", (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/Breakneck.ogg") }, null, DMCA: false, 0.7f); AddAnimation("Crabby", "Crabby", "", looping: true, dimAudio: true, sync: true, (LockType)3, "", "Crabby", "", DMCA: false, 0.7f); AddAnimation("Dabstand", "Dabstand", "", looping: false, dimAudio: false, sync: false, (LockType)1, "", "Dabstand", "", DMCA: false, 0.05f); AddAnimation("DanceMoves", "Fortnite default dance sound", "", looping: false, dimAudio: true, sync: true, (LockType)1, "Default Dance", "Fortnite default dance sound", "", DMCA: false, 0.7f); AddAnimation("DanceTherapyIntro", "DanceTherapyLoop", "Dance Therapy Intro", "Dance Therapy Loop", looping: true, dimAudio: true, sync: true, (LockType)1, "Dance Therapy", "Dance Therapy Intro", "Dance Therapy Loop", DMCA: false, 0.7f); AddAnimation("DeepDab", "Dabstand", "", looping: false, dimAudio: false, sync: false, (LockType)3, "Deep Dab", "Dabstand", "", DMCA: false, 0.05f); AddAnimation("Droop", "Droop", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Droop", "", DMCA: false, 0.7f); AddAnimation("ElectroSwing", "ElectroSwing", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Electro Swing", "ElectroSwing", "", DMCA: false, 0.7f); AddAnimation("Extraterrestial", "Extraterestrial", "", looping: true, dimAudio: true, sync: true, (LockType)3, "", "Extraterestrial", "", DMCA: false, 0.7f); AddAnimation("FancyFeet", "FancyFeet", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Fancy Feet", "FancyFeet", "", DMCA: false, 0.7f); AddAnimation("FlamencoIntro", "FlamencoLoop", "Flamenco", "FlamencoLoop", looping: true, dimAudio: true, sync: true, (LockType)1, "Flamenco", "FlamencoLoop", "", DMCA: false, 0.7f); AddAnimation("Floss", "Floss", "", looping: true, dimAudio: true, sync: false, (LockType)3, "", "Floss", "", DMCA: false, 0.5f); AddAnimation("Fresh", "Fresh", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Fresh", "", DMCA: false, 0.7f); AddAnimation("Hype", "Hype", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Hype", "", DMCA: false, 0.7f); AddAnimation("Infectious", "Infectious", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Infectious", "", DMCA: false, 0.7f); AddAnimation("InfinidabIntro", "InfinidabLoop", "InfinidabIntro", "InfinidabLoop", looping: true, dimAudio: true, sync: false, (LockType)1, "Infinidab", "InfinidabLoop", "", DMCA: false, 0.1f); AddAnimation("NeverGonna", "Never Gonna Give you Up", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Never Gonna", "Never Gonna Give you Up", "", DMCA: true, 0.7f); AddAnimation("NinjaStyle", "NinjaStyle", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Ninja Style", "NinjaStyle", "", DMCA: false, 0.7f); AddAnimation("OldSchool", "Old School", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Oldschool", "Old School", "", DMCA: false, 0.7f); AddAnimation("OrangeJustice", "Orange Justice", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Orange Justice", "Orange Justice", "", DMCA: false, 0.6f); AddAnimation("Overdrive", "Overdrive", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Overdrive", "", DMCA: false, 0.7f); AddAnimation("PawsAndClaws", "im a cat", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Paws and Claws", "im a cat", "", DMCA: false, 0.7f); AddAnimation("PhoneItIn", "Phone It In", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Phone It In", "Phone It In", "", DMCA: false, 0.7f); AddAnimation("PopLock", "PopLock", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Pop Lock", "PopLock", "", DMCA: false, 0.7f); AddAnimation("Scenario", "Scenario", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Scenario", "", DMCA: false, 0.7f); AddAnimation("SpringLoaded", "SpringLoaded", "", looping: true, dimAudio: false, sync: false, (LockType)1, "Spring Loaded", "SpringLoaded", "", DMCA: false, 0.1f); AddAnimation("Springy", "Springy", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Springy", "", DMCA: false, 0.7f); AddAnimation("AnkhaZone", "AnkhaZone", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "AnkhaZone", "", DMCA: true, 0.7f); AddAnimation("GangnamStyle", "GangnamStyle", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Gangnam Style", "GangnamStyle", "", DMCA: true, 0.7f); AddAnimation("DontStart", "DontStart", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Don't Start", "DontStart", "", DMCA: true, 0.7f); AddAnimation("BunnyHop", "BunnyHop", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Bunny Hop", "BunnyHop", "", DMCA: false, 0.4f); AddAnimation("BestMates", "BestMates", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Best Mates", "BestMates", "", DMCA: false, 0.7f); AddAnimation("JackOPose", "", "", looping: true, dimAudio: false, sync: false, (LockType)1, "Jack-O Crouch", "", "", DMCA: false, 0f); AddAnimation("Crackdown", "Crackdown", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Crackdown", "", DMCA: false, 0.7f); AddAnimation("Thicc", "Thicc", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Thicc", "", DMCA: false, 0.7f); AddAnimation("TakeTheL", "TakeTheL", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Take The L", "TakeTheL", "", DMCA: false, 0.8f); AddAnimation("LetsDanceBoys", "LetsDanceBoys", "", looping: true, dimAudio: true, sync: true, (LockType)3, "Let's Dance Boys", "LetsDanceBoys", "", DMCA: false, 0.7f); AddAnimation("BlindingLightsIntro", "BlindingLights", "BlindingLightsIntro", "BlindingLightsLoop", looping: true, dimAudio: true, sync: true, (LockType)1, "Blinding Lights", "BlindingLightsIntro", "BlindingLightsLoop", DMCA: true, 0.7f); AddAnimation("ImDiamond", "ImDiamond", "", looping: true, dimAudio: true, sync: true, (LockType)1, "I'm Diamond", "ImDiamond", "", DMCA: true, 0.7f); AddAnimation("ItsDynamite", "ItsDynamite", "", looping: true, dimAudio: true, sync: true, (LockType)1, "It's Dynamite", "ItsDynamite", "", DMCA: true, 0.7f); AddAnimation("TheRobot", "TheRobot", "", looping: true, dimAudio: true, sync: true, (LockType)1, "The Robot", "TheRobot", "", DMCA: false, 0.7f); AddAnimation("Cartwheelin", "Cartwheelin", "", looping: true, dimAudio: false, sync: false, (LockType)1, "", "Cartwheelin", "", DMCA: false, 0.1f); AddAnimation("CrazyFeet", "CrazyFeet", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Crazy Feet", "CrazyFeet", "", DMCA: false, 0.7f); AddAnimation("FullTilt", "FullTilt", "", looping: true, dimAudio: true, sync: true, (LockType)3, "Full Tilt", "FullTilt", "", DMCA: false, 0.1f); AddAnimation("FloorSamus", "", "", looping: true, dimAudio: false, sync: false, (LockType)1, "Samus Crawl", "", "", DMCA: false, 0f); AddAnimation("DEDEDE", "", "", looping: true, dimAudio: false, sync: false, (LockType)1, "", "", "", DMCA: false, 0f); AddAnimation("Specialist", "Specialist", "", looping: false, dimAudio: true, sync: true, (LockType)3, "The Specialist", "Specialist", "", DMCA: false, 0.7f); AddStartAndJoinAnim(new string[2] { "PPmusic", "PPmusicFollow" }, "PPmusic", looping: true, dimaudio: true, sync: true, (LockType)1, "Penis Music", "PPmusic", DMCA: false, 0.7f); AddAnimation("GetDown", "GetDown", "", looping: false, dimAudio: true, sync: true, (LockType)3, "Get Down", "GetDown", "", DMCA: true, 0.7f); AddAnimation("Yakuza", "Yakuza", "", looping: true, dimAudio: true, sync: true, (LockType)3, "Koi no Disco Queen", "Yakuza", "", DMCA: false, 0.7f); AddAnimation("Miku", "Miku", "", looping: true, dimAudio: true, sync: true, (LockType)3, "", "Miku", "", DMCA: true, 0.7f); AddAnimation("Horny", new string[2] { "Horny", "TeddyLoid - ME!ME!ME! feat. Daoko" }, looping: true, dimaudio: true, sync: true, (LockType)1, "", new string[2] { "Horny", "TeddyLoid - ME!ME!ME! feat. Daoko" }, DMCA: true, 0.7f); AddAnimation("GangTorture", "GangTorture", "", looping: false, dimAudio: true, sync: true, (LockType)3, "", "GangTorture", "", DMCA: true, 0.7f); AddAnimation("PoseBurter", "GinyuForce", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Burter Pose", "GinyuForce", "", DMCA: false, 0.7f); AddAnimation("PoseGinyu", "GinyuForce", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Ginyu Pose", "GinyuForce", "", DMCA: false, 0.7f); AddAnimation("PoseGuldo", "GinyuForce", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Guldo Pose", "GinyuForce", "", DMCA: false, 0.7f); AddAnimation("PoseJeice", "GinyuForce", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Jeice Pose", "GinyuForce", "", DMCA: false, 0.7f); AddAnimation("PoseRecoome", "GinyuForce", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Recoome Pose", "GinyuForce", "", DMCA: false, 0.7f); AddAnimation("Carson", "Carson", "", looping: false, dimAudio: true, sync: true, (LockType)1, "", "Carson", "", DMCA: true, 0.7f); AddAnimation("Frolic", "Frolic", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Frolic", "", DMCA: true, 0.7f); AddAnimation("MoveIt", "MoveIt", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Move It", "MoveIt", "", DMCA: true, 0.7f); AddStartAndJoinAnim(new string[2] { "ByTheFireLead", "ByTheFirePartner" }, "ByTheFire", looping: true, dimaudio: true, sync: true, (LockType)1, "By The Fire", "ByTheFire", DMCA: true, 0.7f); AddStartAndJoinAnim(new string[2] { "SwayLead", "SwayPartner" }, "Sway", looping: true, dimaudio: true, sync: true, (LockType)1, "Sway", "Sway", DMCA: true, 0.7f); AddAnimation("Macarena", "Macarena", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Macarena", "", DMCA: true, 0.7f); AddAnimation("Thanos", "Thanos", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Thanos", "", DMCA: true, 0.7f); AddAnimation("StarGet", (AudioClip[])(object)new AudioClip[6] { Assets.Load<AudioClip>("assets/compressedaudio/starget2.ogg"), Assets.Load<AudioClip>("assets/compressedaudio/starget3.ogg"), Assets.Load<AudioClip>("assets/compressedaudio/starget4.ogg"), Assets.Load<AudioClip>("assets/compressedaudio/starget5.ogg"), Assets.Load<AudioClip>("assets/compressedaudio/starget6.ogg"), Assets.Load<AudioClip>("assets/compressedaudio/starget7.ogg") }, null, looping: false, dimAudio: false, sync: false, (LockType)3, "Star Get", (AudioClip[])(object)new AudioClip[6] { Assets.Load<AudioClip>("assets/DMCAMusic/starget2_NNTranscription.ogg"), Assets.Load<AudioClip>("assets/DMCAMusic/starget3_NNTranscription.ogg"), Assets.Load<AudioClip>("assets/DMCAMusic/starget4_NNTranscription.ogg"), Assets.Load<AudioClip>("assets/DMCAMusic/starget5_NNTranscription.ogg"), Assets.Load<AudioClip>("assets/DMCAMusic/starget6_NNTranscription.ogg"), Assets.Load<AudioClip>("assets/DMCAMusic/starget7_NNTranscription.ogg") }, null, DMCA: false, 0.6f); AddAnimation("Poyo", "Poyo", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Poyo", "", DMCA: false, 0.7f); AddAnimation("Chika", "Chika", "", looping: false, dimAudio: true, sync: true, (LockType)3, "", "Chika", "", DMCA: true, 0.7f); AddAnimation("Goopie", "Goopie", "", looping: false, dimAudio: true, sync: true, (LockType)1, "", "Goopie", "", DMCA: true, 0.7f); AddAnimation("Crossbounce", "Crossbounce", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Crossbounce", "", DMCA: false, 0.7f); AddAnimation("Butt", "Butt", "", looping: false, dimAudio: false, sync: false, (LockType)2, "", "Butt", "", DMCA: false, 0.5f); AddAnimation("MakeItRainIntro", "MakeItRainLoop", "MakeItRainIntro", "MakeItRainLoop", looping: true, dimAudio: true, sync: true, (LockType)3, "Make it Rain", "MakeItRainLoop", "", DMCA: true, 0.7f); AddAnimation("Penguin", "Penguin", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Club Penguin", "Penguin", "", DMCA: false, 0.4f); AddAnimation("DesertRivers", "DesertRivers", "", looping: false, dimAudio: true, sync: true, (LockType)3, "Rivers in the Dessert", "DesertRivers", "", DMCA: false, 0.7f); AddAnimation("HondaStep", "HondaStep", "", looping: false, dimAudio: true, sync: true, (LockType)3, "Step!", "HondaStep", "", DMCA: true, 0.7f); AddAnimation("UGotThat", "UGotThat", "", looping: false, dimAudio: true, sync: true, (LockType)3, "U Got That", "UGotThat", "", DMCA: true, 0.7f); AddAnimation("OfficerEarl", "", "", looping: true, dimAudio: false, sync: false, (LockType)1, "Officer Earl", "", "", DMCA: false, 0f); AddAnimation("Cirno", "Cirno", "", looping: false, dimAudio: true, sync: true, (LockType)3, "", "Cirno", "", DMCA: false, 0.7f); CustomEmoteParams val2 = new CustomEmoteParams(); val2.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/Haruhi.anim") }; val2.audioLoops = false; val2.primaryAudioClips = (AudioClip[])(object)new AudioClip[2] { Assets.Load<AudioClip>("assets/compressedaudio/Haruhi.ogg"), Assets.Load<AudioClip>("assets/compressedaudio/HaruhiYoung.ogg") }; val2.syncAnim = true; val2.syncAudio = true; val2.startPref = 0; val2.joinPref = 0; val2.joinSpots = (JoinSpot[])(object)new JoinSpot[2] { new JoinSpot("Yuki_Nagato", new Vector3(1.5f, 0f, -1.5f), Vector3.zero, Vector3.one, true), new JoinSpot("Mikuru_Asahina", new Vector3(-1.5f, 0f, -1.5f), Vector3.zero, Vector3.one, true) }; val2.internalName = "Hare Hare Yukai"; val2.lockType = (LockType)3; val2.willGetClaimedByDMCA = true; val2.primaryDMCAFreeAudioClips = (AudioClip[])(object)new AudioClip[2] { Assets.Load<AudioClip>("assets/DMCAMusic/Haruhi_NNTranscription.ogg"), Assets.Load<AudioClip>("assets/DMCAMusic/HaruhiYoung_NNTranscription.ogg") }; val2.audioLevel = 0.7f; val2.displayName = "Hare Hare Yukai"; EmoteImporter.ImportEmote(val2); val2 = new CustomEmoteParams(); val2.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/Yuki_Nagato.anim") }; val2.audioLoops = false; val2.syncAnim = true; val2.visible = false; val2.lockType = (LockType)2; val2.audioLevel = 0f; val2.displayName = "Hare Hare Yukai"; EmoteImporter.ImportEmote(val2); val2 = new CustomEmoteParams(); val2.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/Mikuru_Asahina.anim") }; val2.audioLoops = false; val2.syncAnim = true; val2.visible = false; val2.lockType = (LockType)2; val2.audioLevel = 0f; val2.displayName = "Hare Hare Yukai"; EmoteImporter.ImportEmote(val2); BoneMapper.animClips["com.weliveinasociety.badasscompany__Yuki_Nagato"].vulnerableEmote = true; BoneMapper.animClips["com.weliveinasociety.badasscompany__Mikuru_Asahina"].vulnerableEmote = true; val2 = new CustomEmoteParams(); val2.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[3] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/GGGG.anim"), Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/GGGG2.anim"), Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/GGGG3.anim") }; val2.audioLoops = false; val2.primaryAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/GGGG.ogg") }; val2.syncAnim = true; val2.syncAudio = true; val2.startPref = -2; val2.joinPref = -2; val2.lockType = (LockType)3; val2.willGetClaimedByDMCA = true; val2.primaryDMCAFreeAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/DMCAMusic/GGGG_NNTranscription.ogg") }; val2.audioLevel = 0.7f; val2.displayName = "GGGG"; EmoteImporter.ImportEmote(val2); AddAnimation("Shufflin", "Shufflin", "", looping: false, dimAudio: true, sync: true, (LockType)3, "", "Shufflin", "", DMCA: true, 0.7f); AddAnimation("BimBamBom", "BimBamBom", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Bim Bam Boom", "BimBamBom", "", DMCA: true, 0.7f); AddAnimation("Savage", "Savage", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Savage", "", DMCA: true, 0.7f); AddAnimation("Stuck", "Stuck", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Stuck", "", DMCA: true, 0.7f); AddAnimation("Roflcopter", "Roflcopter", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Roflcopter", "", DMCA: false, 0.7f); AddAnimation("Float", "Float", "", looping: false, dimAudio: true, sync: true, (LockType)1, "", "Float", "", DMCA: false, 0.4f); AddAnimation("Rollie", "Rollie", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Rollie", "", DMCA: true, 0.7f); AddAnimation("GalaxyObservatory", new string[3] { "GalaxyObservatory1", "GalaxyObservatory2", "GalaxyObservatory3" }, looping: true, dimaudio: true, sync: true, (LockType)3, "Galaxy Observatory", new string[3] { "GalaxyObservatory1", "GalaxyObservatory2", "GalaxyObservatory3" }, DMCA: false, 0.5f); AddAnimation("Markiplier", "Markiplier", "", looping: false, dimAudio: false, sync: false, (LockType)3, "", "Markiplier", "", DMCA: true, 0.6f); AddAnimation("DevilSpawn", "DevilSpawn", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "DevilSpawn", "", DMCA: true, 0.7f); val2 = new CustomEmoteParams(); val2.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/DuckThisOneIdle.anim") }; val2.audioLoops = true; val2.primaryAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/DuckThisOneIdle.ogg") }; val2.joinSpots = (JoinSpot[])(object)new JoinSpot[1] { new JoinSpot("DuckThisJoinSpot", new Vector3(0f, 0f, 2f), Vector3.zero, Vector3.one, true) }; val2.lockType = (LockType)2; val2.internalName = "Duck This One"; val2.primaryDMCAFreeAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/DMCAMusic/DuckThisOneIdle_NNTranscription.ogg") }; val2.willGetClaimedByDMCA = false; val2.audioLevel = 0.7f; val2.displayName = "Duck This One"; val2.preventMovement = true; EmoteImporter.ImportEmote(val2); val2 = new CustomEmoteParams(); val2.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/DuckThisOne.anim") }; val2.audioLoops = false; val2.primaryAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/DuckThisOne.ogg") }; val2.visible = false; val2.lockType = (LockType)2; val2.primaryDMCAFreeAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/DuckThisOne.ogg") }; val2.displayName = "Duck This One"; EmoteImporter.ImportEmote(val2); val2 = new CustomEmoteParams(); val2.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/DuckThisOneJoin.anim") }; val2.audioLoops = false; val2.visible = false; val2.lockType = (LockType)2; val2.displayName = "Duck This One"; EmoteImporter.ImportEmote(val2); BoneMapper.animClips["com.weliveinasociety.badasscompany__Duck This One"].vulnerableEmote = true; BoneMapper.animClips["com.weliveinasociety.badasscompany__DuckThisOne"].vulnerableEmote = true; BoneMapper.animClips["com.weliveinasociety.badasscompany__DuckThisOneJoin"].vulnerableEmote = true; AddAnimation("Griddy", "Griddy", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Griddy", "", DMCA: true, 0.7f); AddAnimation("Tidy", "Tidy", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Tidy", "", DMCA: true, 0.7f); AddAnimation("Toosie", "Toosie", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Toosie", "", DMCA: true, 0.7f); AddAnimation("INEEDAMEDICBAG", (AudioClip[])(object)new AudioClip[2] { Assets.Load<AudioClip>("assets/compressedaudio/INEEDAMEDICBAG1.ogg"), Assets.Load<AudioClip>("assets/compressedaudio/INEEDAMEDICBAG2.ogg") }, null, looping: false, dimAudio: false, sync: false, (LockType)1, "I NEED A MEDIC BAG", (AudioClip[])(object)new AudioClip[2] { Assets.Load<AudioClip>("assets/compressedaudio/INEEDAMEDICBAG1.ogg"), Assets.Load<AudioClip>("assets/compressedaudio/INEEDAMEDICBAG2.ogg") }, null, DMCA: false, 0.9f); AddAnimation("Smoke", "Smoke", "", looping: true, dimAudio: true, sync: true, (LockType)3, "Ralsei Dies", "Smoke", "", DMCA: false, 0.7f); AddAnimation("FamilyGuyDeath", "", "", looping: true, dimAudio: false, sync: false, (LockType)1, "Family Guy Death Pose", "", "", DMCA: false, 0f); AddAnimation("Panda", "", "", looping: false, dimAudio: false, sync: false, (LockType)3, "", "", "", DMCA: false, 0f); AddAnimation("Yamcha", "", "", looping: true, dimAudio: false, sync: false, (LockType)1, "Yamcha Death Pose", "", "", DMCA: false, 0f); AddAnimation("Thriller", "Thriller", "", looping: true, dimAudio: true, sync: true, (LockType)3, "", "Thriller", "", DMCA: true, 0.7f); AddAnimation("Wess", "Wess", "", looping: false, dimAudio: true, sync: true, (LockType)1, "", "Wess", "", DMCA: true, 0.7f); AddAnimation("Distraction", "Distraction", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Distraction Dance", "Distraction", "", DMCA: false, 1f); AddAnimation("Security", "Security", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Last Surprise", "Security", "", DMCA: false, 0.7f); AddAnimation("KillMeBaby", "KillMeBaby", "", looping: false, dimAudio: true, sync: true, (LockType)1, "Kill Me Baby", "KillMeBaby", "", DMCA: true, 0.7f); val2 = new CustomEmoteParams(); val2.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/MyWorld.anim") }; val2.audioLoops = true; val2.primaryAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/MyWorld.ogg") }; val2.syncAnim = true; val2.syncAudio = true; val2.joinSpots = (JoinSpot[])(object)new JoinSpot[1] { new JoinSpot("MyWorldJoinSpot", new Vector3(2f, 0f, 0f), Vector3.zero, Vector3.one, true) }; val2.lockType = (LockType)1; val2.primaryDMCAFreeAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/DMCAMusic/MyWorld_NNTranscription.ogg") }; val2.audioLevel = 0.7f; val2.willGetClaimedByDMCA = true; val2.displayName = "My World"; EmoteImporter.ImportEmote(val2); val2 = new CustomEmoteParams(); val2.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/MyWorldJoin.anim") }; val2.audioLoops = true; val2.primaryAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/MyWorld.ogg") }; val2.syncAnim = true; val2.syncAudio = true; val2.visible = false; val2.lockType = (LockType)1; val2.audioLevel = 0f; val2.primaryDMCAFreeAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/DMCAMusic/MyWorld_NNTranscription.ogg") }; val2.willGetClaimedByDMCA = true; val2.displayName = "My World"; EmoteImporter.ImportEmote(val2); CustomAnimationClip obj = BoneMapper.animClips["com.weliveinasociety.badasscompany__MyWorldJoin"]; obj.syncPos--; BoneMapper.animClips["com.weliveinasociety.badasscompany__MyWorldJoin"].vulnerableEmote = true; val2 = new CustomEmoteParams(); val2.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/VSWORLD.anim") }; val2.audioLoops = true; val2.primaryAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/VSWORLD.ogg") }; val2.syncAnim = true; val2.syncAudio = true; val2.joinSpots = (JoinSpot[])(object)new JoinSpot[1] { new JoinSpot("VSWORLDJoinSpot", new Vector3(-2f, 0f, 0f), Vector3.zero, Vector3.one, true) }; val2.lockType = (LockType)1; val2.primaryDMCAFreeAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/DMCAMusic/VSWORLD_NNTranscription.ogg") }; val2.audioLevel = 0.7f; val2.displayName = "VSWORLD"; EmoteImporter.ImportEmote(val2); val2 = new CustomEmoteParams(); val2.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/VSWORLDLEFT.anim") }; val2.audioLoops = true; val2.primaryAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/VSWORLD.ogg") }; val2.syncAnim = true; val2.syncAudio = true; val2.visible = false; val2.lockType = (LockType)1; val2.primaryDMCAFreeAudioClips = (AudioClip[])(object)new AudioClip[1] { Assets.Load<AudioClip>("assets/DMCAMusic/VSWORLD_NNTranscription.ogg") }; val2.displayName = "VSWORLD"; EmoteImporter.ImportEmote(val2); CustomAnimationClip obj2 = BoneMapper.animClips["com.weliveinasociety.badasscompany__VSWORLDLEFT"]; obj2.syncPos--; BoneMapper.animClips["com.weliveinasociety.badasscompany__VSWORLDLEFT"].vulnerableEmote = true; val2 = new CustomEmoteParams(); val2.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/ChugJug.anim") }; val2.audioLoops = false; val2.primaryAudioClips = (AudioClip[])(object)new AudioClip[2] { Assets.Load<AudioClip>("assets/compressedaudio/ChugJug.ogg"), Assets.Load<AudioClip>("assets/compressedaudio/MikuJug.ogg") }; val2.syncAnim = true; val2.syncAudio = true; val2.lockType = (LockType)1; val2.primaryDMCAFreeAudioClips = (AudioClip[])(object)new AudioClip[2] { Assets.Load<AudioClip>("assets/DMCAMusic/ChugJug_NNTranscription.ogg"), Assets.Load<AudioClip>("assets/DMCAMusic/MikuJug_NNTranscription.ogg") }; val2.audioLevel = 0.7f; val2.displayName = "Chug Jug"; val2.willGetClaimedByDMCA = true; EmoteImporter.ImportEmote(val2); AddAnimation("Summertime", "Summertime", "", looping: false, dimAudio: true, sync: true, (LockType)1, "", "Summertime", "", DMCA: true, 0.7f); AddAnimation("Dougie", "Dougie", "", looping: true, dimAudio: true, sync: true, (LockType)1, "", "Dougie", "", DMCA: true, 0.7f); AddAnimation("CaliforniaGirls", "CaliforniaGirls", "", looping: true, dimAudio: true, sync: true, (LockType)1, "California Gurls", "CaliforniaGirls", "", DMCA: true, 0.7f); AddAnimation("SeeTinh", "SeeTinh", "", looping: false, dimAudio: true, sync: true, (LockType)1, "See Tình", "SeeTinh", "", DMCA: true, 0.7f); AddAnimation("VirtualInsanityIntro", "VirtualInsanityLoop", "VirtualInsanityStart", "VirtualInsanityLoop", looping: false, dimAudio: true, sync: true, (LockType)1, "Virtual Insanity", "VirtualInsanityStart", "VirtualInsanityLoop", DMCA: true, 0.5f); AddAnimation("Im a Mystery", "Im a Mystery Loop", "Im a Mystery", "Im a Mystery Loop", looping: true, dimAudio: true, sync: true, (LockType)1, "Im a Mystery", "Im a Mystery", "Im a Mystery Loop", DMCA: true, 0.5f); AddAnimation("Bird", "Bird", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Bird", "Bird", "", DMCA: false, 0.7f); AddAnimation("Real Slim Shady", "Real Slim Shady Loop", "Real Slim Shady", "Real Slim Shady Loop", looping: true, dimAudio: true, sync: true, (LockType)1, "Real Slim Shady", "Real Slim Shady", "Real Slim Shady Loop", DMCA: true, 0.7f); AddAnimation("Steady", "Steady", "", looping: true, dimAudio: true, sync: true, (LockType)1, "Steady", "Steady", "", DMCA: false, 0.7f); CustomEmotesAPI.animChanged += new AnimationChanged(CustomEmotesAPI_animChanged); CustomEmotesAPI.emoteSpotJoined_Body += new JoinedEmoteSpotBody(CustomEmotesAPI_emoteSpotJoined_Body); CustomEmotesAPI.emoteSpotJoined_Prop += new JoinedEmoteSpotProp(CustomEmotesAPI_emoteSpotJoined_Prop); CustomEmotesAPI.boneMapperCreated += new BoneMapperCreated(CustomEmotesAPI_boneMapperCreated); } private void CustomEmotesAPI_boneMapperCreated(BoneMapper mapper) { } private void CustomEmotesAPI_emoteSpotJoined_Prop(GameObject emoteSpot, BoneMapper joiner, BoneMapper host) { //IL_006b: Unknown result type (might be due to invalid IL or missing references) //IL_0071: Expected O, but got Unknown //IL_00ad: Unknown result type (might be due to invalid IL or missing references) //IL_00b3: Expected O, but got Unknown //IL_00ec: Unknown result type (might be due to invalid IL or missing references) //IL_00f2: Expected O, but got Unknown //IL_010b: Unknown result type (might be due to invalid IL or missing references) //IL_0111: Expected O, but got Unknown switch (((Object)emoteSpot).name) { case "ifumiddle": { ((Component)host).GetComponentsInChildren<Animator>()[1].SetTrigger("Start"); joiner.PlayAnim("ifu", 0); GameObject val = new GameObject(); ((Object)val).name = "ifumiddle_JoinProp"; IFU(joiner, host, emoteSpot, val); break; } case "ifeleft": { ((Component)host).GetComponentsInChildren<Animator>()[1].SetTrigger("Start"); joiner.PlayAnim("ifeleft", 0); GameObject val = new GameObject(); ((Object)val).name = "ifeleft_JoinProp"; IFU(joiner, host, emoteSpot, val); break; } case "ifuright": { ((Component)host).GetComponentsInChildren<Animator>()[1].SetTrigger("Start"); joiner.PlayAnim("ifuright", 0); GameObject val = new GameObject(); ((Object)val).name = "ifuright_JoinProp"; IFU(joiner, host, emoteSpot, val); break; } case "HydrolicPressJoinSpot": { GameObject val = new GameObject(); ((Object)val).name = "hydrolicpress_JoinProp"; HydrolicPress(joiner, host, emoteSpot, val); break; } } } private void IFU(BoneMapper joiner, BoneMapper host, GameObject emoteSpot, GameObject g) { } private void HydrolicPress(BoneMapper joiner, BoneMapper host, GameObject emoteSpot, GameObject g) { //IL_0038: Unknown result type (might be due to invalid IL or missing references) //IL_004a: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Unknown result type (might be due to invalid IL or missing references) joiner.props.Add(g); g.transform.SetParent(((Component)host).transform); g.transform.localPosition = new Vector3(0f, 0.03f, 0f); g.transform.localEulerAngles = Vector3.zero; g.transform.localScale = Vector3.one; g.AddComponent<HydrolicPressComponent>().boneMapper = joiner; joiner.AssignParentGameObject(g, true, false, true, false, false); emoteSpot.GetComponent<EmoteLocation>().SetEmoterAndHideLocation(joiner); ((MonoBehaviour)this).StartCoroutine(WaitForSecondsThenEndEmote(joiner, 10f, g)); } private IEnumerator WaitForSecondsThenEndEmote(BoneMapper mapper, float time, GameObject parent) { yield return (object)new WaitForSeconds(time); if (Object.op_Implicit((Object)(object)mapper) && (Object)(object)mapper.parentGameObject == (Object)(object)parent) { mapper.preserveProps = true; mapper.AssignParentGameObject(mapper.parentGameObject, false, false, true, false, false); mapper.preserveParent = true; mapper.preserveProps = true; mapper.PlayAnim("none", 0); } } internal IEnumerator WaitForSecondsThenDeleteGameObject(GameObject obj, float time) { yield return (object)new WaitForSeconds(time); if (Object.op_Implicit((Object)(object)obj)) { Object.Destroy((Object)(object)obj); } } private void CustomEmotesAPI_emoteSpotJoined_Body(GameObject emoteSpot, BoneMapper joiner, BoneMapper host) { //IL_0028: Unknown result type (might be due to invalid IL or missing references) //IL_002e: Expected O, but got Unknown //IL_005f: Unknown result type (might be due to invalid IL or missing references) //IL_0064: Unknown result type (might be due to invalid IL or missing references) //IL_007a: Unknown result type (might be due to invalid IL or missing references) //IL_0081: Unknown result type (might be due to invalid IL or missing references) //IL_00a1: Unknown result type (might be due to invalid IL or missing references) //IL_00c1: Unknown result type (might be due to invalid IL or missing references) //IL_0115: Unknown result type (might be due to invalid IL or missing references) //IL_011c: Expected O, but got Unknown //IL_0150: Unknown result type (might be due to invalid IL or missing references) //IL_0155: Unknown result type (might be due to invalid IL or missing references) //IL_016d: Unknown result type (might be due to invalid IL or missing references) //IL_0175: Unknown result type (might be due to invalid IL or missing references) //IL_0196: Unknown result type (might be due to invalid IL or missing references) //IL_01a8: Unknown result type (might be due to invalid IL or missing references) //IL_01d5: Unknown result type (might be due to invalid IL or missing references) //IL_01dc: Expected O, but got Unknown //IL_0204: Unknown result type (might be due to invalid IL or missing references) //IL_021c: Unknown result type (might be due to invalid IL or missing references) //IL_022e: Unknown result type (might be due to invalid IL or missing references) //IL_037c: Unknown result type (might be due to invalid IL or missing references) //IL_0383: Expected O, but got Unknown //IL_03b7: Unknown result type (might be due to invalid IL or missing references) //IL_03bc: Unknown result type (might be due to invalid IL or missing references) //IL_03d4: Unknown result type (might be due to invalid IL or missing references) //IL_03f5: Unknown result type (might be due to invalid IL or missing references) //IL_0407: Unknown result type (might be due to invalid IL or missing references) //IL_04df: Unknown result type (might be due to invalid IL or missing references) //IL_04e6: Expected O, but got Unknown //IL_051a: Unknown result type (might be due to invalid IL or missing references) //IL_051f: Unknown result type (might be due to invalid IL or missing references) //IL_0537: Unknown result type (might be due to invalid IL or missing references) //IL_0558: Unknown result type (might be due to invalid IL or missing references) //IL_056a: Unknown result type (might be due to invalid IL or missing references) //IL_05ba: Unknown result type (might be due to invalid IL or missing references) //IL_05c1: Expected O, but got Unknown //IL_0605: Unknown result type (might be due to invalid IL or missing references) //IL_0617: Unknown result type (might be due to invalid IL or missing references) //IL_0629: Unknown result type (might be due to invalid IL or missing references) //IL_0679: Unknown result type (might be due to invalid IL or missing references) //IL_0680: Expected O, but got Unknown //IL_06a6: Unknown result type (might be due to invalid IL or missing references) //IL_06ab: Unknown result type (might be due to invalid IL or missing references) //IL_06b8: Unknown result type (might be due to invalid IL or missing references) //IL_06ec: Unknown result type (might be due to invalid IL or missing references) //IL_070d: Unknown result type (might be due to invalid IL or missing references) //IL_071f: Unknown result type (might be due to invalid IL or missing references) //IL_0731: Unknown result type (might be due to invalid IL or missing references) //IL_0747: Unknown result type (might be due to invalid IL or missing references) string name = ((Object)emoteSpot).name; if (name == "StandingHereJoinSpot") { joiner.PlayAnim("StandingHere", 0); GameObject val = new GameObject(); ((Object)val).name = "StandingHereProp"; joiner.props.Add(val); val.transform.SetParent(((Component)host).transform); Vector3 lossyScale = ((Component)host).transform.lossyScale; val.transform.localPosition = new Vector3(0f, 0f, 0.75f / lossyScale.z); val.transform.localEulerAngles = new Vector3(0f, 130f, 0f); val.transform.localScale = new Vector3(0.8f, 0.8f, 0.8f); joiner.AssignParentGameObject(val, true, true, true, true, true); joiner.SetAnimationSpeed(2f); emoteSpot.GetComponent<EmoteLocation>().SetEmoterAndHideLocation(joiner); } if (name == "DuckThisJoinSpot") { joiner.PlayAnim("com.weliveinasociety.badasscompany__DuckThisOneJoin", 0); GameObject val2 = new GameObject(); ((Object)val2).name = "DuckThisOneJoinProp"; joiner.props.Add(val2); val2.transform.SetParent(((Component)host).transform); Vector3 lossyScale2 = ((Component)host).transform.lossyScale; val2.transform.localPosition = new Vector3(0f, 0f, 1f / lossyScale2.z); val2.transform.localEulerAngles = new Vector3(0f, 180f, 0f); val2.transform.localScale = Vector3.one; joiner.AssignParentGameObject(val2, true, true, true, true, true); host.PlayAnim("com.weliveinasociety.badasscompany__DuckThisOne", 0); joiner.currentlyLockedBoneMapper = host; val2 = new GameObject(); ((Object)val2).name = "DuckThisOneHostProp"; host.props.Add(val2); val2.transform.localPosition = ((Component)host).transform.position; val2.transform.localEulerAngles = ((Component)host).transform.eulerAngles; val2.transform.localScale = Vector3.one; val2.transform.SetParent(host.mapperBodyTransform.parent); host.AssignParentGameObject(val2, true, true, true, true, false); } if (name == "Yuki_Nagato") { joiner.PlayAnim("com.weliveinasociety.badasscompany__Yuki_Nagato", 0); DebugClass.Log((object)$"{joiner.currentClip != null} {host.currentClip != null}"); DebugClass.Log((object)$"{host.currentClip.syncPos}"); DebugClass.Log((object)$"{joiner.currentClip.syncPos}"); CustomAnimationClip.syncTimer[joiner.currentClip.syncPos] = CustomAnimationClip.syncTimer[host.currentClip.syncPos]; CustomAnimationClip.syncPlayerCount[joiner.currentClip.syncPos]++; joiner.PlayAnim("com.weliveinasociety.badasscompany__Yuki_Nagato", 0); CustomAnimationClip.syncPlayerCount[joiner.currentClip.syncPos]--; GameObject val3 = new GameObject(); ((Object)val3).name = "Yuki_NagatoProp"; joiner.props.Add(val3); val3.transform.SetParent(((Component)host).transform); Vector3 lossyScale3 = ((Component)host).transform.lossyScale; val3.transform.localPosition = new Vector3(0f, 0f, 0f); val3.transform.localEulerAngles = new Vector3(0f, 0f, 0f); val3.transform.localScale = Vector3.one; joiner.AssignParentGameObject(val3, true, true, true, true, true); joiner.currentlyLockedBoneMapper = host; emoteSpot.GetComponent<EmoteLocation>().SetEmoterAndHideLocation(joiner); } if (name == "Mikuru_Asahina") { joiner.PlayAnim("com.weliveinasociety.badasscompany__Mikuru_Asahina", 0); CustomAnimationClip.syncTimer[joiner.currentClip.syncPos] = CustomAnimationClip.syncTimer[host.currentClip.syncPos]; CustomAnimationClip.syncPlayerCount[joiner.currentClip.syncPos]++; joiner.PlayAnim("com.weliveinasociety.badasscompany__Mikuru_Asahina", 0); CustomAnimationClip.syncPlayerCount[joiner.currentClip.syncPos]--; GameObject val4 = new GameObject(); ((Object)val4).name = "Mikuru_AsahinaProp"; joiner.props.Add(val4); val4.transform.SetParent(((Component)host).transform); Vector3 lossyScale4 = ((Component)host).transform.lossyScale; val4.transform.localPosition = new Vector3(0f, 0f, 0f); val4.transform.localEulerAngles = new Vector3(0f, 0f, 0f); val4.transform.localScale = Vector3.one; joiner.AssignParentGameObject(val4, true, true, true, true, true); joiner.currentlyLockedBoneMapper = host; emoteSpot.GetComponent<EmoteLocation>().SetEmoterAndHideLocation(joiner); } if (name == "MyWorldJoinSpot") { joiner.PlayAnim("com.weliveinasociety.badasscompany__MyWorldJoin", 0); GameObject val5 = new GameObject(); ((Object)val5).name = "MyWorldJoinProp"; joiner.props.Add(val5); val5.transform.SetParent(((Component)host).transform); val5.transform.localPosition = new Vector3(2f, 0f, 0f); val5.transform.localEulerAngles = Vector3.zero; val5.transform.localScale = Vector3.one; joiner.AssignParentGameObject(val5, true, true, true, true, true); joiner.currentlyLockedBoneMapper = host; emoteSpot.GetComponent<EmoteLocation>().SetEmoterAndHideLocation(joiner); } if (name == "VSWORLDJoinSpot") { joiner.PlayAnim("com.weliveinasociety.badasscompany__VSWORLDLEFT", 0); GameObject val6 = new GameObject(); ((Object)val6).name = "VSWORLDLEFTJoinProp"; joiner.props.Add(val6); Vector3 localScale = ((Component)host).transform.parent.localScale; ((Component)host).transform.parent.localScale = Vector3.one; val6.transform.SetParent(((Component)host).transform); val6.transform.localPosition = new Vector3(-2f, 0f, 0f); val6.transform.localEulerAngles = new Vector3(0f, 0f, 0f); val6.transform.localScale = Vector3.one * (host.scale / joiner.scale); ((Component)host).transform.parent.localScale = localScale; joiner.AssignParentGameObject(val6, true, true, false, false, true); joiner.currentlyLockedBoneMapper = host; emoteSpot.GetComponent<EmoteLocation>().SetEmoterAndHideLocation(joiner); } } private void CustomEmotesAPI_animChanged(string newAnimation, BoneMapper mapper) { //IL_00c2: Unknown result type (might be due to invalid IL or missing references) //IL_00c9: Expected O, but got Unknown //IL_00f1: Unknown result type (might be due to invalid IL or missing references) //IL_0109: Unknown result type (might be due to invalid IL or missing references) //IL_011b: Unknown result type (might be due to invalid IL or missing references) //IL_02ab: Unknown result type (might be due to invalid IL or missing references) //IL_02cc: Unknown result type (might be due to invalid IL or missing references) //IL_01e9: Unknown result type (might be due to invalid IL or missing references) //IL_020a: Unknown result type (might be due to invalid IL or missing references) //IL_0397: Unknown result type (might be due to invalid IL or missing references) //IL_03b8: Unknown result type (might be due to invalid IL or missing references) //IL_04b7: Unknown result type (might be due to invalid IL or missing references) //IL_04c9: Unknown result type (might be due to invalid IL or missing references) //IL_0596: Unknown result type (might be due to invalid IL or missing references) //IL_05b7: Unknown result type (might be due to invalid IL or missing references) //IL_08c4: Unknown result type (might be due to invalid IL or missing references) //IL_08e5: Unknown result type (might be due to invalid IL or missing references) //IL_06b6: Unknown result type (might be due to invalid IL or missing references) //IL_06d7: Unknown result type (might be due to invalid IL or missing references) //IL_0802: Unknown result type (might be due to invalid IL or missing references) //IL_0823: Unknown result type (might be due to invalid IL or missing references) //IL_0a10: Unknown result type (might be due to invalid IL or missing references) //IL_0a31: Unknown result type (might be due to invalid IL or missing references) //IL_0cff: Unknown result type (might be due to invalid IL or missing references) //IL_0d06: Expected O, but got Unknown //IL_0d2e: Unknown result type (might be due to invalid IL or missing references) //IL_0d46: Unknown result type (might be due to invalid IL or missing references) //IL_0d58: Unknown result type (might be due to invalid IL or missing references) //IL_0c4f: Unknown result type (might be due to invalid IL or missing references) //IL_0c70: Unknown result type (might be due to invalid IL or missing references) //IL_0cba: Unknown result type (might be due to invalid IL or missing references) //IL_0cbf: Unknown result type (might be due to invalid IL or missing references) //IL_0e1f: Unknown result type (might be due to invalid IL or missing references) //IL_0e40: Unknown result type (might be due to invalid IL or missing references) //IL_0fac: Unknown result type (might be due to invalid IL or missing references) //IL_0fcd: Unknown result type (might be due to invalid IL or missing references) if (!newAnimation.StartsWith("com.weliveinasociety.badasscompany")) { return; } newAnimation = newAnimation.Split("__")[1]; prop1 = -1; try { if (newAnimation != "none") { stand = mapper.currentClip.syncPos; } } catch (Exception) { } if (punchingMappers.Contains(mapper)) { punchingMappers.Remove(mapper); } if (punchingMappers.Count == 0) { } if (newAnimation == "StandingHere") { punchingMappers.Add(mapper); } if (newAnimation == "StoodHere") { GameObject val = new GameObject(); ((Object)val).name = "StoodHereProp"; mapper.props.Add(val); val.transform.localPosition = ((Component)mapper).transform.position; val.transform.localEulerAngles = ((Component)mapper).transform.eulerAngles; val.transform.localScale = Vector3.one; mapper.AssignParentGameObject(val, false, false, true, true, false); } if (newAnimation == "Chika" && Settings.chikaProp.Value) { prop1 = mapper.props.Count; GameObject val2 = ((Random.Range(0, 100) != 0) ? Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/prefabs/CSSDesker.prefab") : Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/models/desker.prefab")); mapper.props.Add(Object.Instantiate<GameObject>(val2)); mapper.props[prop1].transform.SetParent(((Component)mapper).transform); mapper.props[prop1].transform.localEulerAngles = Vector3.zero; mapper.props[prop1].transform.localPosition = Vector3.zero; mapper.ScaleProps(); } if (newAnimation == "Make it Rain" && Settings.moneyProp.Value) { prop1 = mapper.props.Count; mapper.props.Add(Object.Instantiate<GameObject>(Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/Prefabs/money.prefab"))); mapper.props[prop1].transform.SetParent(((Component)mapper).transform); mapper.props[prop1].transform.localEulerAngles = Vector3.zero; mapper.props[prop1].transform.localPosition = Vector3.zero; mapper.ScaleProps(); } switch (newAnimation) { default: if (!(newAnimation == "GGGG")) { break; } goto case "Rivers in the Dessert"; case "Rivers in the Dessert": case "Cirno": case "Hare Hare Yukai": if (Settings.desertlightProp.Value) { prop1 = mapper.props.Count; mapper.props.Add(Object.Instantiate<GameObject>(Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/Prefabs/desertlight.prefab"))); mapper.props[prop1].transform.SetParent(((Component)mapper).transform); mapper.props[prop1].transform.localEulerAngles = Vector3.zero; mapper.props[prop1].transform.localPosition = Vector3.zero; } break; } if (newAnimation == "Step!") { prop1 = mapper.props.Count; GameObject val3 = Object.Instantiate<GameObject>(Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/Prefabs/hondastuff.prefab")); ParticleSystem[] componentsInChildren = val3.GetComponentsInChildren<ParticleSystem>(); foreach (ParticleSystem val4 in componentsInChildren) { val4.time = CustomAnimationClip.syncTimer[mapper.currentClip.syncPos]; } Animator componentInChildren = val3.GetComponentInChildren<Animator>(); componentInChildren.Play("MusicSync", 0, CustomAnimationClip.syncTimer[mapper.currentClip.syncPos] % ((AnimatorClipInfo)(ref componentInChildren.GetCurrentAnimatorClipInfo(0)[0])).clip.length / ((AnimatorClipInfo)(ref componentInChildren.GetCurrentAnimatorClipInfo(0)[0])).clip.length); val3.transform.SetParent(((Component)mapper).transform); val3.transform.localEulerAngles = Vector3.zero; val3.transform.localPosition = Vector3.zero; mapper.props.Add(val3); } if (newAnimation == "Train") { prop1 = mapper.props.Count; if (CustomAnimationClip.syncPlayerCount[stand] == 1) { mapper.props.Add(Object.Instantiate<GameObject>(Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/Prefabs/train.prefab"))); } else { mapper.props.Add(Object.Instantiate<GameObject>(Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/Prefabs/passenger.prefab"))); } mapper.props[prop1].transform.SetParent(((Component)mapper).transform); mapper.props[prop1].transform.localEulerAngles = Vector3.zero; mapper.props[prop1].transform.localPosition = Vector3.zero; mapper.SetAutoWalk(1f, false); mapper.ScaleProps(); } if (newAnimation == "Bim Bam Boom" && Settings.BimBamBomProp.Value) { prop1 = mapper.props.Count; mapper.props.Add(Object.Instantiate<GameObject>(Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/Prefabs/BimBamBom.prefab"))); ParticleSystem[] componentsInChildren2 = mapper.props[prop1].GetComponentsInChildren<ParticleSystem>(); foreach (ParticleSystem val5 in componentsInChildren2) { val5.time = CustomAnimationClip.syncTimer[mapper.currentClip.syncPos]; } mapper.props[prop1].transform.SetParent(((Component)mapper).transform); mapper.props[prop1].transform.localEulerAngles = Vector3.zero; mapper.props[prop1].transform.localPosition = Vector3.zero; mapper.ScaleProps(); } if (newAnimation == "Summertime" && Settings.SummermogusProp.Value) { prop1 = mapper.props.Count; mapper.props.Add(Object.Instantiate<GameObject>(Assets.Load<GameObject>("@BadAssEmotes_badassemotes:Assets/Prefabs/Summermogus.prefab"))); Animator[] componentsInChildren3 = mapper.props[prop1].GetComponentsInChildren<Animator>(); foreach (Animator val6 in componentsInChildren3) { val6.Play("Summertime", 0, CustomAnimationClip.syncTimer[mapper.currentClip.syncPos] % ((AnimatorClipInfo)(ref val6.GetCurrentAnimatorClipInfo(0)[0])).clip.length / ((AnimatorClipInfo)(ref val6.GetCurrentAnimatorClipInfo(0)[0])).clip.length); } mapper.props[prop1].transform.SetParent(((Component)mapper).transform); mapper.props[prop1].transform.localEulerAngles = Vector3.zero; mapper.props[prop1].transform.localPosition = Vector3.zero; mapper.ScaleProps(); } if (newAnimation == "Float" && Settings.FloatLightProp.Value) { prop1 = mapper.props.Count; mapper.props.Add(Object.Instantiate<GameObject>(Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/Prefabs/FloatLight.prefab"))); mapper.props[prop1].transform.SetParent(((Component)mapper).transform); mapper.props[prop1].transform.localEulerAngles = Vector3.zero; mapper.props[prop1].transform.localPosition = Vector3.zero; mapper.ScaleProps(); } if (newAnimation == "Markiplier" && Settings.Amogus.Value) { prop1 = mapper.props.Count; mapper.props.Add(Object.Instantiate<GameObject>(Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/Prefabs/Amogus.prefab"))); Animator[] componentsInChildren4 = mapper.props[prop1].GetComponentsInChildren<Animator>(); foreach (Animator val7 in componentsInChildren4) { val7.Play("Markimogus", 0, CustomAnimationClip.syncTimer[mapper.currentClip.syncPos] % ((AnimatorClipInfo)(ref val7.GetCurrentAnimatorClipInfo(0)[0])).clip.length / ((AnimatorClipInfo)(ref val7.GetCurrentAnimatorClipInfo(0)[0])).clip.length); } mapper.props[prop1].transform.SetParent(((Component)mapper).transform); mapper.props[prop1].transform.localEulerAngles = Vector3.zero; mapper.props[prop1].transform.localPosition = Vector3.zero; mapper.ScaleProps(); } if (newAnimation == "Officer Earl") { mapper.SetAutoWalk(1f, false); } if (newAnimation == "Virtual Insanity") { mapper.SetAutoWalk(0.2f, false); } if (newAnimation == "Move It") { mapper.SetAutoWalk(0.2f, false); } if (newAnimation == "Spring Loaded") { mapper.SetAutoWalk(-1f, false); } if (newAnimation == "Samus Crawl") { mapper.SetAutoWalk(0.5f, false); } if (newAnimation == "Duck This One") { } if (newAnimation == "Full Tilt") { mapper.SetAutoWalk(1f, false); } if (newAnimation == "Cartwheelin") { mapper.SetAutoWalk(0.75f, false); } if (newAnimation == "Ralsei Dies" && Settings.BluntAnimatorProp.Value) { prop1 = mapper.props.Count; mapper.props.Add(Object.Instantiate<GameObject>(Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/Prefabs/BluntAnimator.prefab"))); Animator[] componentsInChildren5 = mapper.props[prop1].GetComponentsInChildren<Animator>(); foreach (Animator val8 in componentsInChildren5) { val8.Play("Blunt", 0, CustomAnimationClip.syncTimer[mapper.currentClip.syncPos] % ((AnimatorClipInfo)(ref val8.GetCurrentAnimatorClipInfo(0)[0])).clip.length / ((AnimatorClipInfo)(ref val8.GetCurrentAnimatorClipInfo(0)[0])).clip.length); } mapper.props[prop1].transform.SetParent(((Component)mapper).transform); mapper.props[prop1].transform.localEulerAngles = Vector3.zero; mapper.props[prop1].transform.localPosition = Vector3.zero; ParticleSystem componentInChildren2 = mapper.props[prop1].GetComponentInChildren<ParticleSystem>(); componentInChildren2.gravityModifier *= mapper.scale; LimitVelocityOverLifetimeModule limitVelocityOverLifetime = mapper.props[prop1].GetComponentInChildren<ParticleSystem>().limitVelocityOverLifetime; ((LimitVelocityOverLifetimeModule)(ref limitVelocityOverLifetime)).dampen = ((LimitVelocityOverLifetimeModule)(ref limitVelocityOverLifetime)).dampen * mapper.scale; ((LimitVelocityOverLifetimeModule)(ref limitVelocityOverLifetime)).limitMultiplier = mapper.scale; mapper.ScaleProps(); } if (newAnimation == "Hare Hare Yukai") { GameObject val9 = new GameObject(); ((Object)val9).name = "HaruhiProp"; mapper.props.Add(val9); val9.transform.localPosition = ((Component)mapper).transform.position; val9.transform.localEulerAngles = ((Component)mapper).transform.eulerAngles; val9.transform.localScale = Vector3.one; mapper.AssignParentGameObject(val9, false, false, true, true, false); } if (newAnimation == "Last Surprise" && (Object)(object)mapper != (Object)(object)CustomEmotesAPI.localMapper && Settings.neverseeProp.Value) { prop1 = mapper.props.Count; mapper.props.Add(Object.Instantiate<GameObject>(Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/prefabs/neversee.prefab"))); mapper.props[prop1].transform.SetParent(((Component)mapper).gameObject.GetComponent<Animator>().GetBoneTransform((HumanBodyBones)7)); mapper.props[prop1].transform.localEulerAngles = Vector3.zero; mapper.props[prop1].transform.localPosition = Vector3.zero; mapper.ScaleProps(); } if (newAnimation == "IFU Stage") { } if (newAnimation == "Hydraulic Press") { } if (newAnimation == "Im a Mystery" && Settings.desertlightProp.Value) { prop1 = mapper.props.Count; mapper.props.Add(Object.Instantiate<GameObject>(Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/Prefabs/Im a Mystery.prefab"))); Animator componentInChildren3 = mapper.props[prop1].GetComponentInChildren<Animator>(); if (CustomAnimationClip.syncTimer[mapper.currentClip.syncPos] < 0.4f) { componentInChildren3.Play("Mystery Model Intro", 0, CustomAnimationClip.syncTimer[mapper.currentClip.syncPos] % 0.4f / 0.4f); } else { componentInChildren3.Play("Mstery Model", 0, (CustomAnimationClip.syncTimer[mapper.currentClip.syncPos] - 0.4f) % 7.333f / 7.333f); } mapper.props[prop1].transform.SetParent(((Component)mapper).transform); mapper.props[prop1].transform.localEulerAngles = Vector3.zero; mapper.props[prop1].transform.localPosition = Vector3.zero; mapper.ScaleProps(); } } internal void AddAnimation(string AnimClip, AudioClip[] startClips, AudioClip[] loopClips, bool looping, bool dimAudio, bool sync, LockType lockType, string customName, AudioClip[] dmcaStartClips, AudioClip[] dmcaLoopClips, bool DMCA, float audio) { //IL_002f: Unknown result type (might be due to invalid IL or missing references) //IL_0035: Expected O, but got Unknown //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_0082: Unknown result type (might be due to invalid IL or missing references) if (customName == "") { customName = ((Object)Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/" + AnimClip + ".anim")).name; } CustomEmoteParams val = new CustomEmoteParams(); val.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/" + AnimClip + ".anim") }; val.audioLoops = looping; val.primaryAudioClips = startClips; val.secondaryAudioClips = loopClips; val.syncAnim = sync; val.syncAudio = sync; val.lockType = lockType; val.internalName = customName; val.primaryDMCAFreeAudioClips = dmcaStartClips; val.secondaryDMCAFreeAudioClips = dmcaLoopClips; val.willGetClaimedByDMCA = DMCA; val.audioLevel = audio; val.displayName = customName; EmoteImporter.ImportEmote(val); } internal void AddAnimation(string AnimClip, string startClip, string loopClip, bool looping, bool dimAudio, bool sync, LockType lockType, string customName, string dmcaStartClip, string dmcaLoopClip, bool DMCA, float audio) { //IL_0115: Unknown result type (might be due to invalid IL or missing references) //IL_011c: Expected O, but got Unknown //IL_016e: Unknown result type (might be due to invalid IL or missing references) //IL_0170: Unknown result type (might be due to invalid IL or missing references) if (customName == "") { customName = ((Object)Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/" + AnimClip + ".anim")).name; } AudioClip[] primaryAudioClips = (AudioClip[])(object)((!(startClip == "")) ? new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/" + startClip + ".ogg") } : null); AudioClip[] secondaryAudioClips = (AudioClip[])(object)((!(loopClip == "")) ? new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/" + loopClip + ".ogg") } : null); AudioClip[] primaryDMCAFreeAudioClips = (AudioClip[])(object)((!(dmcaStartClip == "")) ? new AudioClip[1] { Assets.Load<AudioClip>("assets/DMCAMusic/" + dmcaStartClip + "_NNTranscription.ogg") } : null); AudioClip[] secondaryDMCAFreeAudioClips = (AudioClip[])(object)((!(dmcaLoopClip == "")) ? new AudioClip[1] { Assets.Load<AudioClip>("assets/DMCAMusic/" + dmcaLoopClip + "_NNTranscription.ogg") } : null); CustomEmoteParams val = new CustomEmoteParams(); val.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/" + AnimClip + ".anim") }; val.audioLoops = looping; val.primaryAudioClips = primaryAudioClips; val.secondaryAudioClips = secondaryAudioClips; val.syncAnim = sync; val.syncAudio = sync; val.lockType = lockType; val.internalName = customName; val.primaryDMCAFreeAudioClips = primaryDMCAFreeAudioClips; val.secondaryDMCAFreeAudioClips = secondaryDMCAFreeAudioClips; val.willGetClaimedByDMCA = DMCA; val.audioLevel = audio; val.displayName = customName; EmoteImporter.ImportEmote(val); } internal void AddAnimation(string AnimClip, string AnimClip2, string startClip, string loopClip, bool looping, bool dimAudio, bool sync, LockType lockType, string customName, string dmcaStartClip, string dmcaLoopClip, bool DMCA, float audio) { //IL_0117: Unknown result type (might be due to invalid IL or missing references) //IL_011e: Expected O, but got Unknown //IL_0195: Unknown result type (might be due to invalid IL or missing references) //IL_0197: Unknown result type (might be due to invalid IL or missing references) if (customName == "") { customName = ((Object)Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/" + AnimClip + ".anim")).name; } AudioClip[] primaryAudioClips = (AudioClip[])(object)((!(startClip == "")) ? new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/" + startClip + ".ogg") } : null); AudioClip[] secondaryAudioClips = (AudioClip[])(object)((!(loopClip == "")) ? new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/" + loopClip + ".ogg") } : null); AudioClip[] primaryDMCAFreeAudioClips = (AudioClip[])(object)((!(dmcaStartClip == "")) ? new AudioClip[1] { Assets.Load<AudioClip>("assets/DMCAMusic/" + dmcaStartClip + "_NNTranscription.ogg") } : null); AudioClip[] secondaryDMCAFreeAudioClips = (AudioClip[])(object)((!(dmcaLoopClip == "")) ? new AudioClip[1] { Assets.Load<AudioClip>("assets/DMCAMusic/" + dmcaLoopClip + "_NNTranscription.ogg") } : null); CustomEmoteParams val = new CustomEmoteParams(); val.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/" + AnimClip + ".anim") }; val.secondaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/" + AnimClip2 + ".anim") }; val.audioLoops = looping; val.primaryAudioClips = primaryAudioClips; val.secondaryAudioClips = secondaryAudioClips; val.syncAnim = sync; val.syncAudio = sync; val.lockType = lockType; val.internalName = customName; val.primaryDMCAFreeAudioClips = primaryDMCAFreeAudioClips; val.secondaryDMCAFreeAudioClips = secondaryDMCAFreeAudioClips; val.willGetClaimedByDMCA = DMCA; val.audioLevel = audio; val.displayName = customName; EmoteImporter.ImportEmote(val); } internal void AddAnimation(string AnimClip, string[] startClip, bool looping, bool dimaudio, bool sync, LockType lockType, string customName, string[] dmcaStartClips, bool DMCA, float audio) { //IL_00d3: Unknown result type (might be due to invalid IL or missing references) //IL_00da: Expected O, but got Unknown //IL_0130: Unknown result type (might be due to invalid IL or missing references) //IL_0132: Unknown result type (might be due to invalid IL or missing references) if (customName == "") { customName = ((Object)Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/" + AnimClip + ".anim")).name; } List<AudioClip> list = new List<AudioClip>(); foreach (string text in startClip) { list.Add(Assets.Load<AudioClip>("assets/compressedaudio/" + text + ".ogg")); } List<AudioClip> list2 = new List<AudioClip>(); foreach (string text2 in dmcaStartClips) { if (text2 == "") { list2.Add(null); } else { list2.Add(Assets.Load<AudioClip>("assets/DMCAMusic/" + text2 + "_NNTranscription.ogg")); } } CustomEmoteParams val = new CustomEmoteParams(); val.primaryAnimationClips = (AnimationClip[])(object)new AnimationClip[1] { Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/" + AnimClip + ".anim") }; val.audioLoops = looping; val.primaryAudioClips = list.ToArray(); val.secondaryAudioClips = null; val.syncAnim = sync; val.syncAudio = sync; val.lockType = lockType; val.internalName = customName; val.primaryDMCAFreeAudioClips = list2.ToArray(); val.willGetClaimedByDMCA = DMCA; val.audioLevel = audio; val.displayName = customName; EmoteImporter.ImportEmote(val); } internal void AddStartAndJoinAnim(string[] AnimClip, string startClip, bool looping, bool dimaudio, bool sync, LockType lockType, string customName, string dmcaStartClip, bool DMCA, float audio) { //IL_00e6: Unknown result type (might be due to invalid IL or missing references) //IL_00eb: Unknown result type (might be due to invalid IL or missing references) //IL_00f7: Unknown result type (might be due to invalid IL or missing references) //IL_00fe: Unknown result type (might be due to invalid IL or missing references) //IL_0105: Unknown result type (might be due to invalid IL or missing references) //IL_010c: Unknown result type (might be due to invalid IL or missing references) //IL_0114: Unknown result type (might be due to invalid IL or missing references) //IL_011c: Unknown result type (might be due to invalid IL or missing references) //IL_0123: Unknown result type (might be due to invalid IL or missing references) //IL_012a: Unknown result type (might be due to invalid IL or missing references) //IL_012b: Unknown result type (might be due to invalid IL or missing references) //IL_012d: Unknown result type (might be due to invalid IL or missing references) //IL_0132: Unknown result type (might be due to invalid IL or missing references) //IL_013a: Unknown result type (might be due to invalid IL or missing references) //IL_0141: Unknown result type (might be due to invalid IL or missing references) //IL_0149: Unknown result type (might be due to invalid IL or missing references) //IL_0151: Unknown result type (might be due to invalid IL or missing references) //IL_015e: Expected O, but got Unknown if (customName == "") { customName = ((Object)Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/" + AnimClip[0] + ".anim")).name; } AudioClip[] primaryAudioClips = (AudioClip[])(object)((!(startClip == "")) ? new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/" + startClip + ".ogg") } : null); AudioClip[] primaryDMCAFreeAudioClips = (AudioClip[])(object)((!(dmcaStartClip == "")) ? new AudioClip[1] { Assets.Load<AudioClip>("assets/DMCAMusic/" + dmcaStartClip + "_NNTranscription.ogg") } : null); List<AnimationClip> list = new List<AnimationClip>(); foreach (string text in AnimClip) { list.Add(Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/" + text + ".anim")); } EmoteImporter.ImportEmote(new CustomEmoteParams { primaryAnimationClips = list.ToArray(), audioLoops = looping, primaryAudioClips = primaryAudioClips, secondaryAudioClips = null, syncAnim = sync, syncAudio = sync, startPref = 0, joinPref = 1, lockType = lockType, internalName = customName, primaryDMCAFreeAudioClips = primaryDMCAFreeAudioClips, willGetClaimedByDMCA = DMCA, audioLevel = audio, displayName = customName }); } internal void AddStartAndJoinAnim(string[] AnimClip, string startClip, string[] AnimClip2, bool looping, bool dimaudio, bool sync, LockType lockType, string customName, string dmcaStartClip, bool DMCA, float audio) { //IL_012b: Unknown result type (might be due to invalid IL or missing references) //IL_0130: Unknown result type (might be due to invalid IL or missing references) //IL_013c: Unknown result type (might be due to invalid IL or missing references) //IL_0148: Unknown result type (might be due to invalid IL or missing references) //IL_0150: Unknown result type (might be due to invalid IL or missing references) //IL_0157: Unknown result type (might be due to invalid IL or missing references) //IL_015f: Unknown result type (might be due to invalid IL or missing references) //IL_0167: Unknown result type (might be due to invalid IL or missing references) //IL_016e: Unknown result type (might be due to invalid IL or missing references) //IL_0175: Unknown result type (might be due to invalid IL or missing references) //IL_0176: Unknown result type (might be due to invalid IL or missing references) //IL_0178: Unknown result type (might be due to invalid IL or missing references) //IL_017d: Unknown result type (might be due to invalid IL or missing references) //IL_0185: Unknown result type (might be due to invalid IL or missing references) //IL_018c: Unknown result type (might be due to invalid IL or missing references) //IL_0194: Unknown result type (might be due to invalid IL or missing references) //IL_019c: Unknown result type (might be due to invalid IL or missing references) //IL_01a9: Expected O, but got Unknown if (customName == "") { customName = ((Object)Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/badassemotes/" + AnimClip[0] + ".anim")).name; } AudioClip[] primaryAudioClips = (AudioClip[])(object)((!(startClip == "")) ? new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/" + startClip + ".ogg") } : null); AudioClip[] primaryDMCAFreeAudioClips = (AudioClip[])(object)((!(dmcaStartClip == "")) ? new AudioClip[1] { Assets.Load<AudioClip>("assets/compressedaudio/" + dmcaStartClip + ".ogg") } : null); List<AnimationClip> list = new List<AnimationClip>(); foreach (string text in AnimClip) { list.Add(Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/DMCAMusic/" + text + "_NNTranscription.anim")); } List<AnimationClip> list2 = new List<AnimationClip>(); foreach (string text2 in AnimClip2) { list2.Add(Assets.Load<AnimationClip>("@ExampleEmotePlugin_badassemotes:assets/DMCAMusic/" + text2 + "_NNTranscription.anim")); } EmoteImporter.ImportEmote(new CustomEmoteParams { primaryAnimationClips = list.ToArray(), secondaryAnimationClips = list2.ToArray(), audioLoops = looping, primaryAudioClips = primaryAudioClips, syncAnim = sync, syncAudio = sync, startPref = 0, joinPref = 1, lockType = lockType, internalName = customName, primaryDMCAFreeAudioClips = primaryDMCAFreeAudioClips, willGetClaimedByDMCA = DMCA, audioLevel = audio, displayName = customName }); } } internal class HydrolicPressComponent : MonoBehaviour { private bool crushPlayer = false; private Transform pressTransform; internal BoneMapper boneMapper; private bool compressing = true; private Vector3 currentScale; private float doNotRevert; private bool spawnedFeathers = false; private void Start() { //IL_0058: Unknown result type (might be due to invalid IL or missing references) ((MonoBehaviour)this).StartCoroutine(CrushAfterSeconds(3.5f)); pressTransform = BadAssEmotesPlugin.pressMechanism.transform.Find("press"); BadAssEmotesPlugin.pressMechanism.transform.localScale = new Vector3(boneMapper.scale, boneMapper.scale, boneMapper.scale); } private void Update() { //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_00a4: Unknown result type (might be due to invalid IL or missing references) //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_00c4: Unknown result type (might be due to invalid IL or missing references) //IL_00da: Unknown result type (might be due to invalid IL or missing references) //IL_003f: Unknown result type (might be due to invalid IL or missing references) //IL_005b: Unknown result type (might be due to invalid IL or missing references) //IL_0077: Unknown result type (might be due to invalid IL or missing references) //IL_008d: Unknown result type (might be due to invalid IL or missing references) //IL_00f3: Unknown result type (might be due to invalid IL or missing references) //IL_0266: Unknown result type (might be due to invalid IL or missing references) //IL_0190: Unknown result type (might be due to invalid IL or missing references) //IL_01b1: Unknown result type (might be due to invalid IL or missing references) //IL_0210: Unknown result type (might be due to invalid IL or missing references) //IL_0294: Unknown result type (might be due to invalid IL or missing references) //IL_02a9: Unknown result type (might be due to invalid IL or missing references) //IL_02b3: Unknown result type (might be due to invalid IL or missing references) //IL_02c5: Unknown result type (might be due to invalid IL or missing references) //IL_02ca: Unknown result type (might be due to invalid IL or missing references) //IL_02ee: Unknown result type (might be due to invalid IL or missing references) //IL_030e: Unknown result type (might be due to invalid IL or missing references) if (((Component)this).transform.localScale.y > 0.01f && compressing) { if (crushPlayer) { ((Component)this).transform.localScale = new Vector3(((Component)this).transform.localScale.x + 0.16f * Time.deltaTime, ((Component)this).transform.localScale.y - 0.16f * Time.deltaTime, ((Component)this).transform.localScale.z + 0.16f * Time.deltaTime); } pressTransform.localScale = new Vector3(pressTransform.localScale.x, pressTransform.localScale.y, pressTransform.localScale.z + 0.154f * Time.deltaTime); if (!spawnedFeathers && ((Component)this).transform.localScale.y < 0.107f) { int count = boneMapper.props.Count; GameObject val = Assets.Load<GameObject>("@BadAssEmotes_badassemotes:assets/Prefabs/explosion press.prefab"); boneMapper.props.Add(Object.Instantiate<GameObject>(val)); boneMapper.props[count].transform.SetParent(((Component)boneMapper).transform); boneMapper.props[count].transform.localEulerAngles = new Vector3(270f, 0f, 0f); boneMapper.props[count].transform.localPosition = Vector3.zero; boneMapper.props[count].transform.SetParent((Transform)null); boneMapper.props[count].transform.localScale = new Vector3(boneMapper.scale, boneMapper.scale, boneMapper.scale); ((MonoBehaviour)BadAssEmotesPlugin.instance).StartCoroutine(BadAssEmotesPlugin.instance.WaitForSecondsThenDeleteGameObject(boneMapper.props[count], 10f)); boneMapper.props.RemoveAt(count); spawnedFeathers = true; } if (((Component)this).transform.localScale.y < 0.01f) { compressing = false; ((Component)this).transform.localScale = new Vector3(((Component)this).transform.localScale.x, 0.01f, ((Compo