using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using DM;
using FhpSLib;
using HarmonyLib;
using InControl;
using Landfall.TABS;
using Landfall.TABS_Input;
using SLMA;
using UnityEngine;
using UnityEngine.UI;
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyTitle("Hero Unit")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("FhpSlime")]
[assembly: AssemblyProduct("Hero Unit")]
[assembly: AssemblyCopyright("Copyright © 2024")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("7acfaef0-7669-4401-8bff-5a9a02e18c75")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
namespace HeroUnit;
[BepInPlugin("FhpSlime.HeroUnit", "HeroUnit", "1.0.0")]
internal class Loader : BaseUnityPlugin
{
public class FactionCreate
{
public void CFaction()
{
//IL_0117: Unknown result type (might be due to invalid IL or missing references)
//IL_0121: Expected O, but got Unknown
//IL_0150: Unknown result type (might be due to invalid IL or missing references)
//IL_0156: Expected O, but got Unknown
//IL_0171: Unknown result type (might be due to invalid IL or missing references)
//IL_0177: Expected O, but got Unknown
//IL_0192: Unknown result type (might be due to invalid IL or missing references)
//IL_0198: Expected O, but got Unknown
//IL_01b3: Unknown result type (might be due to invalid IL or missing references)
//IL_01b9: Expected O, but got Unknown
//IL_01d4: Unknown result type (might be due to invalid IL or missing references)
//IL_01da: Expected O, but got Unknown
//IL_01f5: Unknown result type (might be due to invalid IL or missing references)
//IL_01fb: Expected O, but got Unknown
//IL_0216: Unknown result type (might be due to invalid IL or missing references)
//IL_021c: Expected O, but got Unknown
//IL_0237: Unknown result type (might be due to invalid IL or missing references)
//IL_023d: Expected O, but got Unknown
//IL_0258: Unknown result type (might be due to invalid IL or missing references)
//IL_025e: Expected O, but got Unknown
//IL_027a: Unknown result type (might be due to invalid IL or missing references)
//IL_0280: Expected O, but got Unknown
//IL_029c: Unknown result type (might be due to invalid IL or missing references)
//IL_02a2: Expected O, but got Unknown
//IL_02be: Unknown result type (might be due to invalid IL or missing references)
//IL_02c4: Expected O, but got Unknown
//IL_02e0: Unknown result type (might be due to invalid IL or missing references)
//IL_02e6: Expected O, but got Unknown
//IL_0302: Unknown result type (might be due to invalid IL or missing references)
//IL_0308: Expected O, but got Unknown
//IL_0324: Unknown result type (might be due to invalid IL or missing references)
//IL_032a: Expected O, but got Unknown
//IL_0339: Unknown result type (might be due to invalid IL or missing references)
//IL_033f: Expected O, but got Unknown
//IL_0370: Unknown result type (might be due to invalid IL or missing references)
//IL_0375: Unknown result type (might be due to invalid IL or missing references)
//IL_038a: Unknown result type (might be due to invalid IL or missing references)
//IL_038f: Unknown result type (might be due to invalid IL or missing references)
//IL_0398: Unknown result type (might be due to invalid IL or missing references)
//IL_039e: Expected O, but got Unknown
//IL_03cf: 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_03e9: Unknown result type (might be due to invalid IL or missing references)
//IL_03ee: Unknown result type (might be due to invalid IL or missing references)
//IL_03f7: Unknown result type (might be due to invalid IL or missing references)
//IL_03fd: Expected O, but got Unknown
//IL_0430: Unknown result type (might be due to invalid IL or missing references)
//IL_0435: Unknown result type (might be due to invalid IL or missing references)
//IL_044a: Unknown result type (might be due to invalid IL or missing references)
//IL_044f: Unknown result type (might be due to invalid IL or missing references)
//IL_0458: Unknown result type (might be due to invalid IL or missing references)
//IL_045e: Expected O, but got Unknown
//IL_0491: Unknown result type (might be due to invalid IL or missing references)
//IL_0496: Unknown result type (might be due to invalid IL or missing references)
//IL_04ab: Unknown result type (might be due to invalid IL or missing references)
//IL_04b0: Unknown result type (might be due to invalid IL or missing references)
//IL_04b9: Unknown result type (might be due to invalid IL or missing references)
//IL_04bf: Expected O, but got Unknown
//IL_04f2: Unknown result type (might be due to invalid IL or missing references)
//IL_04f7: Unknown result type (might be due to invalid IL or missing references)
//IL_050c: Unknown result type (might be due to invalid IL or missing references)
//IL_0511: Unknown result type (might be due to invalid IL or missing references)
//IL_051a: Unknown result type (might be due to invalid IL or missing references)
//IL_0520: Expected O, but got Unknown
//IL_054d: Unknown result type (might be due to invalid IL or missing references)
//IL_0552: Unknown result type (might be due to invalid IL or missing references)
//IL_0567: Unknown result type (might be due to invalid IL or missing references)
//IL_056c: Unknown result type (might be due to invalid IL or missing references)
//IL_0575: Unknown result type (might be due to invalid IL or missing references)
//IL_057b: Expected O, but got Unknown
//IL_05a8: Unknown result type (might be due to invalid IL or missing references)
//IL_05ad: Unknown result type (might be due to invalid IL or missing references)
//IL_05c2: Unknown result type (might be due to invalid IL or missing references)
//IL_05c7: Unknown result type (might be due to invalid IL or missing references)
//IL_05d0: Unknown result type (might be due to invalid IL or missing references)
//IL_05d6: Expected O, but got Unknown
//IL_0603: Unknown result type (might be due to invalid IL or missing references)
//IL_0608: Unknown result type (might be due to invalid IL or missing references)
//IL_061d: Unknown result type (might be due to invalid IL or missing references)
//IL_0622: Unknown result type (might be due to invalid IL or missing references)
//IL_062b: Unknown result type (might be due to invalid IL or missing references)
//IL_0631: Expected O, but got Unknown
//IL_065e: Unknown result type (might be due to invalid IL or missing references)
//IL_0663: Unknown result type (might be due to invalid IL or missing references)
//IL_0678: Unknown result type (might be due to invalid IL or missing references)
//IL_067d: Unknown result type (might be due to invalid IL or missing references)
//IL_0687: Unknown result type (might be due to invalid IL or missing references)
//IL_068d: Expected O, but got Unknown
//IL_06bd: Unknown result type (might be due to invalid IL or missing references)
//IL_06c2: 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_06dc: Unknown result type (might be due to invalid IL or missing references)
//IL_06e6: Unknown result type (might be due to invalid IL or missing references)
//IL_06ec: Expected O, but got Unknown
//IL_071e: Unknown result type (might be due to invalid IL or missing references)
//IL_0723: Unknown result type (might be due to invalid IL or missing references)
//IL_0738: Unknown result type (might be due to invalid IL or missing references)
//IL_073d: 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)
//IL_074d: Expected O, but got Unknown
//IL_077f: Unknown result type (might be due to invalid IL or missing references)
//IL_0784: Unknown result type (might be due to invalid IL or missing references)
//IL_0799: Unknown result type (might be due to invalid IL or missing references)
//IL_079e: Unknown result type (might be due to invalid IL or missing references)
//IL_07a8: Unknown result type (might be due to invalid IL or missing references)
//IL_07ae: Expected O, but got Unknown
//IL_07db: Unknown result type (might be due to invalid IL or missing references)
//IL_07e0: Unknown result type (might be due to invalid IL or missing references)
//IL_07f5: Unknown result type (might be due to invalid IL or missing references)
//IL_07fa: Unknown result type (might be due to invalid IL or missing references)
//IL_0804: Unknown result type (might be due to invalid IL or missing references)
//IL_080a: Expected O, but got Unknown
//IL_083d: Unknown result type (might be due to invalid IL or missing references)
//IL_0842: Unknown result type (might be due to invalid IL or missing references)
//IL_0857: Unknown result type (might be due to invalid IL or missing references)
//IL_085c: Unknown result type (might be due to invalid IL or missing references)
//IL_0866: Unknown result type (might be due to invalid IL or missing references)
//IL_086c: Expected O, but got Unknown
//IL_089f: Unknown result type (might be due to invalid IL or missing references)
//IL_08a4: Unknown result type (might be due to invalid IL or missing references)
//IL_08b9: Unknown result type (might be due to invalid IL or missing references)
//IL_08be: Unknown result type (might be due to invalid IL or missing references)
Faction val = SLMATool.CreateFaction("BlackMod:Slime", (UnitBlueprint[])null, Bundle.LoadAsset<Sprite>("slime"), 45432);
s.SetField<Faction>(val, "m_isSecret", (object)true);
s.SetField<Faction>(val, "m_lockSecrets", (object)true);
UnitBlueprint val2 = SLMATool.CreateUnit("勇者史莱姆", (UnitBlueprint)null, val, Bundle.LoadAsset<Sprite>("slime"));
val2.health = 800f;
val2.movementSpeedMuiltiplier = 1.25f;
val2.balanceMultiplier *= 4f;
val2.stepMultiplier *= 2f;
val2.animationMultiplier *= 1.2f;
val2.turnSpeed *= 1.5f;
val2.massMultiplier = 10f;
GameObject unitBase = UPool.MyPool.AddObject("HeroUnit", val2.UnitBase, true, (HideFlags)52, (Sprite)null, 0, false);
val2.UnitBase = unitBase;
val2.UnitBase.gameObject.AddComponent<CameraPossession>();
val2.RightWeapon = (GameObject)SLMALoader.SDic["weapons"]["Bow"];
val2.objectsToSpawnAsChildren = (GameObject[])(object)new GameObject[0];
val2.m_props = (GameObject[])(object)new GameObject[15]
{
(GameObject)SLMALoader.SDic["clothes"]["Viking_Shirt002"],
(GameObject)SLMALoader.SDic["clothes"]["Viking_Ullr_pants001"],
(GameObject)SLMALoader.SDic["clothes"]["Evil_DarkKingTransformedPants001"],
(GameObject)SLMALoader.SDic["clothes"]["evil_Firebat_shoes_001"],
(GameObject)SLMALoader.SDic["clothes"]["Ancient_Dagger001"],
(GameObject)SLMALoader.SDic["clothes"]["Viking_Hair003"],
(GameObject)SLMALoader.SDic["clothes"]["halloween_archer_hood001"],
(GameObject)SLMALoader.SDic["clothes"]["ottomanian_scarf001"],
(GameObject)SLMALoader.SDic["clothes"]["Medieval_KnightCape001"],
(GameObject)SLMALoader.SDic["clothes"]["Pirate_Belt004"],
(GameObject)SLMALoader.SDic["clothes"]["Medieval_Shirt005"],
(GameObject)SLMALoader.SDic["clothes"]["western_gloves003"],
(GameObject)SLMALoader.SDic["clothes"]["Ancient_Hair001"],
(GameObject)SLMALoader.SDic["clothes"]["Good_TimeNinjaTorso001"],
(GameObject)SLMALoader.SDic["clothes"]["halloween_candle_neck001"]
};
PropItemData[] array = new PropItemData[15];
PropItemData val3 = new PropItemData();
val3.m_colors = new int[2] { -1, 46 };
val3.m_isTeamColor = new bool[2];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[0] = val3;
val3 = new PropItemData();
val3.m_colors = new int[2] { 46, -1 };
val3.m_isTeamColor = new bool[2];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[1] = val3;
val3 = new PropItemData();
val3.m_colors = new int[4] { 74, 75, 46, 52 };
val3.m_isTeamColor = new bool[4];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[2] = val3;
val3 = new PropItemData();
val3.m_colors = new int[4] { -1, -1, 52, -1 };
val3.m_isTeamColor = new bool[4];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[3] = val3;
val3 = new PropItemData();
val3.m_colors = new int[3] { 75, -1, -1 };
val3.m_isTeamColor = new bool[3];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[4] = val3;
val3 = new PropItemData();
val3.m_colors = new int[1] { 25 };
val3.m_isTeamColor = new bool[1];
val3.m_positionOffset = new Vector3(0f, -0.03f, 0.02f);
val3.m_scale = new Vector3(1.1f, 1.4f, 1.2f);
array[5] = val3;
val3 = new PropItemData();
val3.m_colors = new int[1] { 46 };
val3.m_isTeamColor = new bool[1];
val3.m_positionOffset = new Vector3(0f, 0.02f, -0.01f);
val3.m_scale = new Vector3(1.3f, 1.2f, 1.3f);
array[6] = val3;
val3 = new PropItemData();
val3.m_colors = new int[1] { 46 };
val3.m_isTeamColor = new bool[1];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[7] = val3;
val3 = new PropItemData();
val3.m_colors = new int[1] { 46 };
val3.m_isTeamColor = new bool[1];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[8] = val3;
val3 = new PropItemData();
val3.m_colors = new int[2] { -1, -1 };
val3.m_isTeamColor = new bool[2];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[9] = val3;
val3 = new PropItemData();
val3.m_colors = new int[2] { 56, 53 };
val3.m_isTeamColor = new bool[2];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[10] = val3;
val3 = new PropItemData();
val3.m_colors = new int[2] { 52, 67 };
val3.m_isTeamColor = new bool[2];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[11] = val3;
val3 = new PropItemData();
val3.m_colors = new int[1] { 25 };
val3.m_isTeamColor = new bool[1];
val3.m_positionOffset = new Vector3(0f, -0.02f, 0.02f);
val3.m_scale = new Vector3(0.9f, 1.2f, 1.2f);
array[12] = val3;
val3 = new PropItemData();
val3.m_colors = new int[3] { 50, 67, 67 };
val3.m_isTeamColor = new bool[3];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[13] = val3;
val3 = new PropItemData();
val3.m_colors = new int[3] { 46, 46, 46 };
val3.m_isTeamColor = new bool[3];
val3.m_positionOffset = new Vector3(0f, 0.1f, -0.03f);
val3.m_scale = new Vector3(1.1f, 0.7f, -1f);
array[14] = val3;
val2.m_propData = (PropItemData[])(object)array;
Unit1(val);
Unit2(val);
Unit3(val);
Unit4(val);
Unit5(val);
DoTrans();
}
public void Unit1(Faction faction)
{
//IL_001e: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_00fb: Unknown result type (might be due to invalid IL or missing references)
//IL_010b: Expected O, but got Unknown
//IL_012c: 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)
//IL_016d: Expected O, but got Unknown
//IL_016e: Unknown result type (might be due to invalid IL or missing references)
//IL_0173: Unknown result type (might be due to invalid IL or missing references)
//IL_017f: Unknown result type (might be due to invalid IL or missing references)
//IL_018b: Unknown result type (might be due to invalid IL or missing references)
//IL_019b: Unknown result type (might be due to invalid IL or missing references)
//IL_01a0: Unknown result type (might be due to invalid IL or missing references)
//IL_01a5: Unknown result type (might be due to invalid IL or missing references)
//IL_01b5: Unknown result type (might be due to invalid IL or missing references)
//IL_01ba: Unknown result type (might be due to invalid IL or missing references)
//IL_01c4: Expected O, but got Unknown
//IL_01e6: Unknown result type (might be due to invalid IL or missing references)
//IL_01ec: Expected O, but got Unknown
//IL_0207: Unknown result type (might be due to invalid IL or missing references)
//IL_020d: Expected O, but got Unknown
//IL_0228: Unknown result type (might be due to invalid IL or missing references)
//IL_022e: Expected O, but got Unknown
//IL_0267: Unknown result type (might be due to invalid IL or missing references)
//IL_026d: Expected O, but got Unknown
//IL_0288: Unknown result type (might be due to invalid IL or missing references)
//IL_028e: Expected O, but got Unknown
//IL_02a9: Unknown result type (might be due to invalid IL or missing references)
//IL_02af: Expected O, but got Unknown
//IL_02ca: Unknown result type (might be due to invalid IL or missing references)
//IL_02d0: Expected O, but got Unknown
//IL_02eb: Unknown result type (might be due to invalid IL or missing references)
//IL_02f1: Expected O, but got Unknown
//IL_030c: Unknown result type (might be due to invalid IL or missing references)
//IL_0312: Expected O, but got Unknown
//IL_032d: Unknown result type (might be due to invalid IL or missing references)
//IL_0333: Expected O, but got Unknown
//IL_0341: Unknown result type (might be due to invalid IL or missing references)
//IL_0347: Expected O, but got Unknown
//IL_0379: Unknown result type (might be due to invalid IL or missing references)
//IL_037e: Unknown result type (might be due to invalid IL or missing references)
//IL_0393: Unknown result type (might be due to invalid IL or missing references)
//IL_0398: Unknown result type (might be due to invalid IL or missing references)
//IL_03a1: Unknown result type (might be due to invalid IL or missing references)
//IL_03a7: Expected O, but got Unknown
//IL_03d4: Unknown result type (might be due to invalid IL or missing references)
//IL_03d9: Unknown result type (might be due to invalid IL or missing references)
//IL_03ee: Unknown result type (might be due to invalid IL or missing references)
//IL_03f3: Unknown result type (might be due to invalid IL or missing references)
//IL_03fc: Unknown result type (might be due to invalid IL or missing references)
//IL_0402: Expected O, but got Unknown
//IL_0435: Unknown result type (might be due to invalid IL or missing references)
//IL_043a: Unknown result type (might be due to invalid IL or missing references)
//IL_044f: Unknown result type (might be due to invalid IL or missing references)
//IL_0454: Unknown result type (might be due to invalid IL or missing references)
//IL_045d: Unknown result type (might be due to invalid IL or missing references)
//IL_0463: Expected O, but got Unknown
//IL_048f: Unknown result type (might be due to invalid IL or missing references)
//IL_0494: Unknown result type (might be due to invalid IL or missing references)
//IL_04a9: Unknown result type (might be due to invalid IL or missing references)
//IL_04ae: 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_04bd: Expected O, but got Unknown
//IL_04ef: Unknown result type (might be due to invalid IL or missing references)
//IL_04f4: Unknown result type (might be due to invalid IL or missing references)
//IL_0509: Unknown result type (might be due to invalid IL or missing references)
//IL_050e: Unknown result type (might be due to invalid IL or missing references)
//IL_0517: Unknown result type (might be due to invalid IL or missing references)
//IL_051d: Expected O, but got Unknown
//IL_054a: Unknown result type (might be due to invalid IL or missing references)
//IL_054f: Unknown result type (might be due to invalid IL or missing references)
//IL_0564: Unknown result type (might be due to invalid IL or missing references)
//IL_0569: Unknown result type (might be due to invalid IL or missing references)
//IL_0572: Unknown result type (might be due to invalid IL or missing references)
//IL_0578: Expected O, but got Unknown
//IL_05aa: Unknown result type (might be due to invalid IL or missing references)
//IL_05af: Unknown result type (might be due to invalid IL or missing references)
//IL_05c4: Unknown result type (might be due to invalid IL or missing references)
//IL_05c9: Unknown result type (might be due to invalid IL or missing references)
UnitBlueprint val = SLMATool.CreateUnit("暴走僵尸", (UnitBlueprint)SLMALoader.SDic["blueprints"]["CustomWobbler"], faction, GetSprite("Zombie.png"));
val.health = 3000f;
val.forceCost = 1u;
val.sizeMultiplier = 1.1f;
val.damageMultiplier = 1.4f;
val.massMultiplier = 10f;
val.movementSpeedMuiltiplier = 1.1f;
val.holdinigWithTwoHands = false;
val.Validate();
GameObject unitBase = UPool.MyPool.AddObject("Boss1", val.UnitBase, true, (HideFlags)52, (Sprite)null, 0, false);
val.UnitBase = unitBase;
Boss boss = val.UnitBase.gameObject.AddComponent<Boss>();
boss.sprite = GetSprite("Zombie.png");
boss.unlock = "Boss2";
boss.unlockD = "你很强,不过比起我哪位朋友还差了一点";
GameObject val2 = UPool.MyPool.AddObject("隐形拳", (GameObject)SLMALoader.SDic["weapons"]["Leg_Boxer"], true, (HideFlags)52, (Sprite)null, 0, false);
Object.Destroy((Object)(object)val2.GetComponentInChildren<TeamColor>());
HelpLibrary.TryChangeColor(val2, new Color(0f, 0f, 0f, 0f));
val2.GetComponentInChildren<CollisionWeapon>().hitFasterAfterDealDamage = true;
val.LeftWeapon = val2;
val.RightWeapon = (GameObject)SLMALoader.SDic["weapons"]["MinoTaurGrab"];
val.RightWeaponData = new PropItemData
{
m_colors = new int[0],
m_isTeamColor = new bool[0],
m_positionOffset = new Vector3(0f, 0f, 0f),
m_scale = new Vector3(1f, 1f, 1f)
};
val.objectsToSpawnAsChildren = (GameObject[])(object)new GameObject[4]
{
(GameObject)SLMALoader.SDic["moves"]["SwordArtParry"],
(GameObject)SLMALoader.SDic["moves"]["KnightCharge"],
(GameObject)SLMALoader.SDic["moves"]["Dodge"],
UPool.MyPool.GetObject("愤怒m")
};
val.m_props = (GameObject[])(object)new GameObject[7]
{
(GameObject)SLMALoader.SDic["clothes"]["SkeletonSuit001"],
(GameObject)SLMALoader.SDic["clothes"]["Balaklava001"],
(GameObject)SLMALoader.SDic["clothes"]["SpawnEyes_DarkPeasant"],
(GameObject)SLMALoader.SDic["clothes"]["Farmer_Hat002"],
(GameObject)SLMALoader.SDic["clothes"]["Medieval_HandGuard001"],
(GameObject)SLMALoader.SDic["clothes"]["Evil_DarkKingTransformedTorso001"],
(GameObject)SLMALoader.SDic["clothes"]["misc_mask_001"]
};
PropItemData[] array = new PropItemData[7];
PropItemData val3 = new PropItemData();
val3.m_colors = new int[2] { 16, 16 };
val3.m_isTeamColor = new bool[2];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[0] = val3;
val3 = new PropItemData();
val3.m_colors = new int[1] { 16 };
val3.m_isTeamColor = new bool[1];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[1] = val3;
val3 = new PropItemData();
val3.m_colors = new int[4] { -1, -1, -1, -1 };
val3.m_isTeamColor = new bool[4];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[2] = val3;
val3 = new PropItemData();
val3.m_colors = new int[1] { 6 };
val3.m_isTeamColor = new bool[1];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[3] = val3;
val3 = new PropItemData();
val3.m_colors = new int[2] { 75, 49 };
val3.m_isTeamColor = new bool[2];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[4] = val3;
val3 = new PropItemData();
val3.m_colors = new int[1] { 29 };
val3.m_isTeamColor = new bool[1];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[5] = val3;
val3 = new PropItemData();
val3.m_colors = new int[2] { 16, 16 };
val3.m_isTeamColor = new bool[2];
val3.m_positionOffset = new Vector3(0f, 0f, -0.0136f);
val3.m_scale = new Vector3(0.8900264f, 1f, 1f);
array[6] = val3;
val.m_propData = (PropItemData[])(object)array;
}
public void Unit2(Faction faction)
{
//IL_001e: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_010d: Unknown result type (might be due to invalid IL or missing references)
//IL_0117: Expected O, but got Unknown
//IL_0118: Unknown result type (might be due to invalid IL or missing references)
//IL_011e: Expected O, but got Unknown
//IL_0151: Unknown result type (might be due to invalid IL or missing references)
//IL_0156: Unknown result type (might be due to invalid IL or missing references)
//IL_016b: 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)
//IL_019d: Unknown result type (might be due to invalid IL or missing references)
//IL_01a3: Expected O, but got Unknown
//IL_01be: Unknown result type (might be due to invalid IL or missing references)
//IL_01c4: Expected O, but got Unknown
//IL_01f1: Unknown result type (might be due to invalid IL or missing references)
//IL_01f7: Expected O, but got Unknown
//IL_021f: Unknown result type (might be due to invalid IL or missing references)
//IL_0225: Expected O, but got Unknown
//IL_0240: Unknown result type (might be due to invalid IL or missing references)
//IL_0246: Expected O, but got Unknown
//IL_0261: Unknown result type (might be due to invalid IL or missing references)
//IL_0267: Expected O, but got Unknown
//IL_0282: Unknown result type (might be due to invalid IL or missing references)
//IL_0288: Expected O, but got Unknown
//IL_02a3: Unknown result type (might be due to invalid IL or missing references)
//IL_02a9: Expected O, but got Unknown
//IL_02c4: Unknown result type (might be due to invalid IL or missing references)
//IL_02ca: Expected O, but got Unknown
//IL_02e5: Unknown result type (might be due to invalid IL or missing references)
//IL_02eb: Expected O, but got Unknown
//IL_0306: Unknown result type (might be due to invalid IL or missing references)
//IL_030c: Expected O, but got Unknown
//IL_0327: Unknown result type (might be due to invalid IL or missing references)
//IL_032d: Expected O, but got Unknown
//IL_0349: Unknown result type (might be due to invalid IL or missing references)
//IL_034f: Expected O, but got Unknown
//IL_036b: Unknown result type (might be due to invalid IL or missing references)
//IL_0371: Expected O, but got Unknown
//IL_0380: Unknown result type (might be due to invalid IL or missing references)
//IL_0386: Expected O, but got Unknown
//IL_03b2: Unknown result type (might be due to invalid IL or missing references)
//IL_03b7: Unknown result type (might be due to invalid IL or missing references)
//IL_03cc: Unknown result type (might be due to invalid IL or missing references)
//IL_03d1: Unknown result type (might be due to invalid IL or missing references)
//IL_03da: Unknown result type (might be due to invalid IL or missing references)
//IL_03e0: Expected O, but got Unknown
//IL_0412: Unknown result type (might be due to invalid IL or missing references)
//IL_0417: Unknown result type (might be due to invalid IL or missing references)
//IL_042c: Unknown result type (might be due to invalid IL or missing references)
//IL_0431: Unknown result type (might be due to invalid IL or missing references)
//IL_043a: Unknown result type (might be due to invalid IL or missing references)
//IL_0440: Expected O, but got Unknown
//IL_0472: Unknown result type (might be due to invalid IL or missing references)
//IL_0477: Unknown result type (might be due to invalid IL or missing references)
//IL_048c: Unknown result type (might be due to invalid IL or missing references)
//IL_0491: Unknown result type (might be due to invalid IL or missing references)
//IL_049a: Unknown result type (might be due to invalid IL or missing references)
//IL_04a0: Expected O, but got Unknown
//IL_04cc: Unknown result type (might be due to invalid IL or missing references)
//IL_04d1: Unknown result type (might be due to invalid IL or missing references)
//IL_04e6: Unknown result type (might be due to invalid IL or missing references)
//IL_04eb: Unknown result type (might be due to invalid IL or missing references)
//IL_04f4: Unknown result type (might be due to invalid IL or missing references)
//IL_04fa: Expected O, but got Unknown
//IL_0527: Unknown result type (might be due to invalid IL or missing references)
//IL_052c: Unknown result type (might be due to invalid IL or missing references)
//IL_0541: Unknown result type (might be due to invalid IL or missing references)
//IL_0546: Unknown result type (might be due to invalid IL or missing references)
//IL_054f: Unknown result type (might be due to invalid IL or missing references)
//IL_0555: Expected O, but got Unknown
//IL_0582: Unknown result type (might be due to invalid IL or missing references)
//IL_0587: Unknown result type (might be due to invalid IL or missing references)
//IL_059c: Unknown result type (might be due to invalid IL or missing references)
//IL_05a1: Unknown result type (might be due to invalid IL or missing references)
//IL_05aa: Unknown result type (might be due to invalid IL or missing references)
//IL_05b0: Expected O, but got Unknown
//IL_05e3: Unknown result type (might be due to invalid IL or missing references)
//IL_05e8: Unknown result type (might be due to invalid IL or missing references)
//IL_05fd: Unknown result type (might be due to invalid IL or missing references)
//IL_0602: Unknown result type (might be due to invalid IL or missing references)
//IL_060b: Unknown result type (might be due to invalid IL or missing references)
//IL_0611: Expected O, but got Unknown
//IL_0642: Unknown result type (might be due to invalid IL or missing references)
//IL_0647: Unknown result type (might be due to invalid IL or missing references)
//IL_065c: Unknown result type (might be due to invalid IL or missing references)
//IL_0661: Unknown result type (might be due to invalid IL or missing references)
//IL_066a: Unknown result type (might be due to invalid IL or missing references)
//IL_0670: Expected O, but got Unknown
//IL_06a3: Unknown result type (might be due to invalid IL or missing references)
//IL_06a8: Unknown result type (might be due to invalid IL or missing references)
//IL_06bd: Unknown result type (might be due to invalid IL or missing references)
//IL_06c2: Unknown result type (might be due to invalid IL or missing references)
//IL_06cc: Unknown result type (might be due to invalid IL or missing references)
//IL_06d2: Expected O, but got Unknown
//IL_0702: Unknown result type (might be due to invalid IL or missing references)
//IL_0707: Unknown result type (might be due to invalid IL or missing references)
//IL_071c: Unknown result type (might be due to invalid IL or missing references)
//IL_0721: Unknown result type (might be due to invalid IL or missing references)
//IL_072b: Unknown result type (might be due to invalid IL or missing references)
//IL_0731: Expected O, but got Unknown
//IL_075e: Unknown result type (might be due to invalid IL or missing references)
//IL_0763: Unknown result type (might be due to invalid IL or missing references)
//IL_0778: Unknown result type (might be due to invalid IL or missing references)
//IL_077d: Unknown result type (might be due to invalid IL or missing references)
UnitBlueprint val = SLMATool.CreateUnit("迷失圣灵", (UnitBlueprint)SLMALoader.SDic["blueprints"]["CustomWobbler"], faction, GetSprite("Holy.png"));
val.health = 4000f;
val.forceCost = 1u;
val.sizeMultiplier = 1.2f;
val.damageMultiplier = 1f;
val.massMultiplier = 1.6f;
val.movementSpeedMuiltiplier = 1.7f;
val.attackSpeedMultiplier = 1.2f;
val.holdinigWithTwoHands = true;
val.Entity.SetUnlockKey("Boss2");
GameObject unitBase = UPool.MyPool.AddObject("Boss2", val.UnitBase, true, (HideFlags)52, (Sprite)null, 0, false);
val.UnitBase = unitBase;
Boss boss = val.UnitBase.gameObject.AddComponent<Boss>();
boss.sprite = GetSprite("Holy.png");
boss.unlock = "Boss3";
boss.unlockD = "....吾即是...";
val.LeftWeapon = null;
val.RightWeapon = (GameObject)SLMALoader.SDic["weapons"]["shogunSword"];
PropItemData val2 = new PropItemData();
val2.m_colors = new int[4] { -1, -1, 6, -1 };
val2.m_isTeamColor = new bool[4];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
val.RightWeaponData = val2;
val.objectsToSpawnAsChildren = (GameObject[])(object)new GameObject[4]
{
(GameObject)SLMALoader.SDic["moves"]["Hover"],
(GameObject)SLMALoader.SDic["moves"]["Shogun_Dodge"],
UPool.MyPool.GetObject("愤怒m"),
(GameObject)SLMALoader.SDic["moves"]["Move_Shout"]
};
val.m_props = (GameObject[])(object)new GameObject[11]
{
(GameObject)SLMALoader.SDic["clothes"]["Good_Timeninja_PTmask001"],
(GameObject)SLMALoader.SDic["clothes"]["spooky_crown001"],
(GameObject)SLMALoader.SDic["clothes"]["legacy_superboxer_hair001"],
(GameObject)SLMALoader.SDic["clothes"]["spooky_banshee_chains001"],
(GameObject)SLMALoader.SDic["clothes"]["Medieval_Archer_Glove001"],
(GameObject)SLMALoader.SDic["clothes"]["evil_slicey_torsowrap001"],
(GameObject)SLMALoader.SDic["clothes"]["asia_redjade_torso002"],
(GameObject)SLMALoader.SDic["clothes"]["Medieval_ShoulderPad002"],
(GameObject)SLMALoader.SDic["clothes"]["good_skirt001"],
(GameObject)SLMALoader.SDic["clothes"]["good_glaive_shoes001"],
(GameObject)SLMALoader.SDic["clothes"]["Asia_LegWrap001"]
};
PropItemData[] array = new PropItemData[11];
val2 = new PropItemData();
val2.m_colors = new int[1] { -1 };
val2.m_isTeamColor = new bool[1];
val2.m_positionOffset = new Vector3(0f, 0f, -0.05f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[0] = val2;
val2 = new PropItemData();
val2.m_colors = new int[2] { 64, 78 };
val2.m_isTeamColor = new bool[2];
val2.m_positionOffset = new Vector3(0f, 0.04f, 0f);
val2.m_scale = new Vector3(0.8f, 0.8f, 0.8f);
array[1] = val2;
val2 = new PropItemData();
val2.m_colors = new int[2] { 42, 68 };
val2.m_isTeamColor = new bool[2];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[2] = val2;
val2 = new PropItemData();
val2.m_colors = new int[1] { -1 };
val2.m_isTeamColor = new bool[1];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[3] = val2;
val2 = new PropItemData();
val2.m_colors = new int[1] { 42 };
val2.m_isTeamColor = new bool[1];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[4] = val2;
val2 = new PropItemData();
val2.m_colors = new int[1] { 71 };
val2.m_isTeamColor = new bool[1];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[5] = val2;
val2 = new PropItemData();
val2.m_colors = new int[3] { 81, 12, 40 };
val2.m_isTeamColor = new bool[3];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[6] = val2;
val2 = new PropItemData();
val2.m_colors = new int[2] { 40, -1 };
val2.m_isTeamColor = new bool[2];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[7] = val2;
val2 = new PropItemData();
val2.m_colors = new int[3] { 65, 66, 66 };
val2.m_isTeamColor = new bool[3];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[8] = val2;
val2 = new PropItemData();
val2.m_colors = new int[2] { -1, -1 };
val2.m_isTeamColor = new bool[2];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[9] = val2;
val2 = new PropItemData();
val2.m_colors = new int[1] { 40 };
val2.m_isTeamColor = new bool[1];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[10] = val2;
val.m_propData = (PropItemData[])(object)array;
}
public void Unit3(Faction faction)
{
//IL_001e: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_010f: Unknown result type (might be due to invalid IL or missing references)
//IL_011f: Expected O, but got Unknown
//IL_013f: Unknown result type (might be due to invalid IL or missing references)
//IL_0156: Unknown result type (might be due to invalid IL or missing references)
//IL_015c: Expected O, but got Unknown
//IL_018f: 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_01a9: Unknown result type (might be due to invalid IL or missing references)
//IL_01ae: Unknown result type (might be due to invalid IL or missing references)
//IL_01db: Unknown result type (might be due to invalid IL or missing references)
//IL_01e1: Expected O, but got Unknown
//IL_01fc: Unknown result type (might be due to invalid IL or missing references)
//IL_0202: Expected O, but got Unknown
//IL_021d: Unknown result type (might be due to invalid IL or missing references)
//IL_0223: Expected O, but got Unknown
//IL_0250: Unknown result type (might be due to invalid IL or missing references)
//IL_0256: Expected O, but got Unknown
//IL_0271: Unknown result type (might be due to invalid IL or missing references)
//IL_0277: Expected O, but got Unknown
//IL_0292: Unknown result type (might be due to invalid IL or missing references)
//IL_0298: Expected O, but got Unknown
//IL_02c0: Unknown result type (might be due to invalid IL or missing references)
//IL_02c6: Expected O, but got Unknown
//IL_02e1: Unknown result type (might be due to invalid IL or missing references)
//IL_02e7: Expected O, but got Unknown
//IL_0302: Unknown result type (might be due to invalid IL or missing references)
//IL_0308: Expected O, but got Unknown
//IL_0323: Unknown result type (might be due to invalid IL or missing references)
//IL_0329: Expected O, but got Unknown
//IL_0344: Unknown result type (might be due to invalid IL or missing references)
//IL_034a: Expected O, but got Unknown
//IL_0365: Unknown result type (might be due to invalid IL or missing references)
//IL_036b: Expected O, but got Unknown
//IL_0386: Unknown result type (might be due to invalid IL or missing references)
//IL_038c: Expected O, but got Unknown
//IL_03a7: Unknown result type (might be due to invalid IL or missing references)
//IL_03ad: Expected O, but got Unknown
//IL_03c8: Unknown result type (might be due to invalid IL or missing references)
//IL_03ce: Expected O, but got Unknown
//IL_03ea: Unknown result type (might be due to invalid IL or missing references)
//IL_03f0: Expected O, but got Unknown
//IL_040c: Unknown result type (might be due to invalid IL or missing references)
//IL_0412: Expected O, but got Unknown
//IL_042e: Unknown result type (might be due to invalid IL or missing references)
//IL_0434: Expected O, but got Unknown
//IL_0450: Unknown result type (might be due to invalid IL or missing references)
//IL_0456: Expected O, but got Unknown
//IL_0465: Unknown result type (might be due to invalid IL or missing references)
//IL_046b: Expected O, but got Unknown
//IL_049e: Unknown result type (might be due to invalid IL or missing references)
//IL_04a3: Unknown result type (might be due to invalid IL or missing references)
//IL_04b8: Unknown result type (might be due to invalid IL or missing references)
//IL_04bd: Unknown result type (might be due to invalid IL or missing references)
//IL_04c6: Unknown result type (might be due to invalid IL or missing references)
//IL_04cc: Expected O, but got Unknown
//IL_04fc: Unknown result type (might be due to invalid IL or missing references)
//IL_0501: Unknown result type (might be due to invalid IL or missing references)
//IL_0516: Unknown result type (might be due to invalid IL or missing references)
//IL_051b: Unknown result type (might be due to invalid IL or missing references)
//IL_0524: Unknown result type (might be due to invalid IL or missing references)
//IL_052a: Expected O, but got Unknown
//IL_0556: Unknown result type (might be due to invalid IL or missing references)
//IL_055b: Unknown result type (might be due to invalid IL or missing references)
//IL_0570: Unknown result type (might be due to invalid IL or missing references)
//IL_0575: Unknown result type (might be due to invalid IL or missing references)
//IL_057e: Unknown result type (might be due to invalid IL or missing references)
//IL_0584: Expected O, but got Unknown
//IL_05b7: Unknown result type (might be due to invalid IL or missing references)
//IL_05bc: Unknown result type (might be due to invalid IL or missing references)
//IL_05d1: Unknown result type (might be due to invalid IL or missing references)
//IL_05d6: Unknown result type (might be due to invalid IL or missing references)
//IL_05df: Unknown result type (might be due to invalid IL or missing references)
//IL_05e5: Expected O, but got Unknown
//IL_0615: Unknown result type (might be due to invalid IL or missing references)
//IL_061a: Unknown result type (might be due to invalid IL or missing references)
//IL_062f: Unknown result type (might be due to invalid IL or missing references)
//IL_0634: Unknown result type (might be due to invalid IL or missing references)
//IL_063d: Unknown result type (might be due to invalid IL or missing references)
//IL_0643: Expected O, but got Unknown
//IL_0670: Unknown result type (might be due to invalid IL or missing references)
//IL_0675: Unknown result type (might be due to invalid IL or missing references)
//IL_068a: Unknown result type (might be due to invalid IL or missing references)
//IL_068f: Unknown result type (might be due to invalid IL or missing references)
//IL_0698: Unknown result type (might be due to invalid IL or missing references)
//IL_069e: Expected O, but got Unknown
//IL_06d1: Unknown result type (might be due to invalid IL or missing references)
//IL_06d6: Unknown result type (might be due to invalid IL or missing references)
//IL_06eb: Unknown result type (might be due to invalid IL or missing references)
//IL_06f0: Unknown result type (might be due to invalid IL or missing references)
//IL_06f9: Unknown result type (might be due to invalid IL or missing references)
//IL_06ff: Expected O, but got Unknown
//IL_0732: Unknown result type (might be due to invalid IL or missing references)
//IL_0737: Unknown result type (might be due to invalid IL or missing references)
//IL_074c: Unknown result type (might be due to invalid IL or missing references)
//IL_0751: Unknown result type (might be due to invalid IL or missing references)
//IL_075a: Unknown result type (might be due to invalid IL or missing references)
//IL_0760: Expected O, but got Unknown
//IL_0793: Unknown result type (might be due to invalid IL or missing references)
//IL_0798: Unknown result type (might be due to invalid IL or missing references)
//IL_07ad: Unknown result type (might be due to invalid IL or missing references)
//IL_07b2: Unknown result type (might be due to invalid IL or missing references)
//IL_07bc: Unknown result type (might be due to invalid IL or missing references)
//IL_07c2: Expected O, but got Unknown
//IL_07f2: Unknown result type (might be due to invalid IL or missing references)
//IL_07f7: Unknown result type (might be due to invalid IL or missing references)
//IL_080c: Unknown result type (might be due to invalid IL or missing references)
//IL_0811: Unknown result type (might be due to invalid IL or missing references)
//IL_081b: Unknown result type (might be due to invalid IL or missing references)
//IL_0821: Expected O, but got Unknown
//IL_0851: Unknown result type (might be due to invalid IL or missing references)
//IL_0856: Unknown result type (might be due to invalid IL or missing references)
//IL_086b: Unknown result type (might be due to invalid IL or missing references)
//IL_0870: Unknown result type (might be due to invalid IL or missing references)
//IL_087a: Unknown result type (might be due to invalid IL or missing references)
//IL_0880: Expected O, but got Unknown
//IL_08b0: Unknown result type (might be due to invalid IL or missing references)
//IL_08b5: Unknown result type (might be due to invalid IL or missing references)
//IL_08ca: Unknown result type (might be due to invalid IL or missing references)
//IL_08cf: Unknown result type (might be due to invalid IL or missing references)
//IL_08d9: Unknown result type (might be due to invalid IL or missing references)
//IL_08df: Expected O, but got Unknown
//IL_0912: Unknown result type (might be due to invalid IL or missing references)
//IL_0917: Unknown result type (might be due to invalid IL or missing references)
//IL_092c: Unknown result type (might be due to invalid IL or missing references)
//IL_0931: Unknown result type (might be due to invalid IL or missing references)
UnitBlueprint val = SLMATool.CreateUnit("火焰铜甲战士", (UnitBlueprint)SLMALoader.SDic["blueprints"]["CustomWobbler"], faction, GetSprite("Fire.png"));
val.health = 4500f;
val.forceCost = 1u;
val.sizeMultiplier = 1.1f;
val.damageMultiplier = 2f;
val.massMultiplier = 20f;
val.movementSpeedMuiltiplier = 2f;
val.attackSpeedMultiplier = 2f;
val.holdinigWithTwoHands = true;
val.Entity.SetUnlockKey("Boss3");
GameObject unitBase = UPool.MyPool.AddObject("Boss3", val.UnitBase, true, (HideFlags)52, (Sprite)null, 0, false);
val.UnitBase = unitBase;
Boss boss = val.UnitBase.gameObject.AddComponent<Boss>();
boss.sprite = GetSprite("Fire.png");
boss.unlock = "Boss4";
boss.unlockD = "烈火...熄灭了";
GameObject val2 = UPool.MyPool.AddObject("火焰剑", (GameObject)SLMALoader.SDic["weapons"]["Quan"], true, (HideFlags)52, (Sprite)null, 0, false);
val2.AddComponent<MeleeWeaponAddEffect>().EffectPrefab = ((GameObject)SLMALoader.SDic["effects"]["6__E_FireArrowEffect"]).GetComponent<UnitEffectBase>();
val.RightWeapon = val2;
PropItemData val3 = new PropItemData();
val3.m_colors = new int[3] { -1, 3, -1 };
val3.m_isTeamColor = new bool[3];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
val.RightWeaponData = val3;
val.objectsToSpawnAsChildren = (GameObject[])(object)new GameObject[7]
{
(GameObject)SLMALoader.SDic["moves"]["Move_FireWave"],
(GameObject)SLMALoader.SDic["moves"]["Dodge"],
(GameObject)SLMALoader.SDic["moves"]["Fencer_Dodge"],
UPool.MyPool.GetObject("愤怒m"),
(GameObject)SLMALoader.SDic["moves"]["Jester_Dodge"],
(GameObject)SLMALoader.SDic["moves"]["BlockSlow"],
(GameObject)SLMALoader.SDic["moves"]["Superboxer_DodgPunch"]
};
val.m_props = (GameObject[])(object)new GameObject[13]
{
(GameObject)SLMALoader.SDic["clothes"]["Ancient_ShoulderPad001"],
(GameObject)SLMALoader.SDic["clothes"]["Asia_Armor001"],
(GameObject)SLMALoader.SDic["clothes"]["Asia_Shirt002"],
(GameObject)SLMALoader.SDic["clothes"]["Ancient_ChestArmor002"],
(GameObject)SLMALoader.SDic["clothes"]["asia_redjade_shoes001"],
(GameObject)SLMALoader.SDic["clothes"]["davinci_hair001"],
(GameObject)SLMALoader.SDic["clothes"]["Cp_good_cleric_chestarmor001"],
(GameObject)SLMALoader.SDic["clothes"]["Renaissance_ChestArmor"],
(GameObject)SLMALoader.SDic["clothes"]["evil_axeswap_torso001"],
(GameObject)SLMALoader.SDic["clothes"]["Asia_Pants003"],
(GameObject)SLMALoader.SDic["clothes"]["Asia_Pants002"],
(GameObject)SLMALoader.SDic["clothes"]["legacy_barrelroller_pants001"],
(GameObject)SLMALoader.SDic["clothes"]["Asia_WristArmor003"]
};
PropItemData[] array = new PropItemData[13];
val3 = new PropItemData();
val3.m_colors = new int[3] { -1, 3, 3 };
val3.m_isTeamColor = new bool[3];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[0] = val3;
val3 = new PropItemData();
val3.m_colors = new int[2] { 3, -1 };
val3.m_isTeamColor = new bool[2];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[1] = val3;
val3 = new PropItemData();
val3.m_colors = new int[1] { 3 };
val3.m_isTeamColor = new bool[1];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[2] = val3;
val3 = new PropItemData();
val3.m_colors = new int[4] { -1, -1, 3, -1 };
val3.m_isTeamColor = new bool[4];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[3] = val3;
val3 = new PropItemData();
val3.m_colors = new int[2] { 3, 3 };
val3.m_isTeamColor = new bool[2];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[4] = val3;
val3 = new PropItemData();
val3.m_colors = new int[1] { 47 };
val3.m_isTeamColor = new bool[1];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[5] = val3;
val3 = new PropItemData();
val3.m_colors = new int[4] { 3, -1, 3, -1 };
val3.m_isTeamColor = new bool[4];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[6] = val3;
val3 = new PropItemData();
val3.m_colors = new int[3] { 3, 3, 3 };
val3.m_isTeamColor = new bool[3];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[7] = val3;
val3 = new PropItemData();
val3.m_colors = new int[3] { 3, -1, 3 };
val3.m_isTeamColor = new bool[3];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[8] = val3;
val3 = new PropItemData();
val3.m_colors = new int[2] { 3, 3 };
val3.m_isTeamColor = new bool[2];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[9] = val3;
val3 = new PropItemData();
val3.m_colors = new int[2] { 3, -1 };
val3.m_isTeamColor = new bool[2];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[10] = val3;
val3 = new PropItemData();
val3.m_colors = new int[2] { -1, 3 };
val3.m_isTeamColor = new bool[2];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[11] = val3;
val3 = new PropItemData();
val3.m_colors = new int[3] { -1, 3, -1 };
val3.m_isTeamColor = new bool[3];
val3.m_positionOffset = new Vector3(0f, 0f, 0f);
val3.m_scale = new Vector3(1f, 1f, 1f);
array[12] = val3;
val.m_propData = (PropItemData[])(object)array;
}
public static Sprite GetSprite(string name)
{
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0014: Expected O, but got Unknown
//IL_0052: Unknown result type (might be due to invalid IL or missing references)
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
using Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(name);
Texture2D val = new Texture2D(4, 4);
byte[] array = new byte[stream.Length];
stream.Read(array, 0, (int)stream.Length);
ImageConversion.LoadImage(val, array);
return Sprite.Create(val, new Rect(0f, 0f, (float)((Texture)val).width, (float)((Texture)val).height), new Vector2(0.5f, 0.5f));
}
public static void SetMoveConditionalValue(ConditionalEventInstance gameObject, ConditionType type, ValueType valuet, float value)
{
//IL_0012: Unknown result type (might be due to invalid IL or missing references)
//IL_0017: Unknown result type (might be due to invalid IL or missing references)
//IL_001b: Unknown result type (might be due to invalid IL or missing references)
//IL_001c: Unknown result type (might be due to invalid IL or missing references)
//IL_0046: Unknown result type (might be due to invalid IL or missing references)
//IL_004b: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_004d: Unknown result type (might be due to invalid IL or missing references)
//IL_0052: Unknown result type (might be due to invalid IL or missing references)
//IL_0053: Unknown result type (might be due to invalid IL or missing references)
//IL_0054: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_0065: Expected O, but got Unknown
bool flag = false;
EventCondition[] conditions = gameObject.conditions;
foreach (EventCondition val in conditions)
{
if (val.conditionType == type)
{
val.valueType = valuet;
val.value = value;
flag = true;
}
}
if (!flag)
{
List<EventCondition> list = gameObject.conditions.ToList();
list.Add(new EventCondition
{
conditionType = type,
valueType = valuet,
value = value
});
gameObject.conditions = list.ToArray();
}
}
public void Unit4(Faction faction)
{
//IL_001e: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0106: Unknown result type (might be due to invalid IL or missing references)
//IL_0110: Expected O, but got Unknown
//IL_012a: Unknown result type (might be due to invalid IL or missing references)
//IL_0134: Expected O, but got Unknown
//IL_0135: Unknown result type (might be due to invalid IL or missing references)
//IL_013b: Expected O, but got Unknown
//IL_016e: Unknown result type (might be due to invalid IL or missing references)
//IL_0173: Unknown result type (might be due to invalid IL or missing references)
//IL_0188: Unknown result type (might be due to invalid IL or missing references)
//IL_018d: Unknown result type (might be due to invalid IL or missing references)
//IL_0199: Unknown result type (might be due to invalid IL or missing references)
//IL_019f: Expected O, but got Unknown
//IL_01d0: 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_01ea: Unknown result type (might be due to invalid IL or missing references)
//IL_01ef: Unknown result type (might be due to invalid IL or missing references)
//IL_021d: Unknown result type (might be due to invalid IL or missing references)
//IL_022d: Expected O, but got Unknown
//IL_0269: Unknown result type (might be due to invalid IL or missing references)
//IL_026f: Expected O, but got Unknown
//IL_02ac: Unknown result type (might be due to invalid IL or missing references)
//IL_02b2: Expected O, but got Unknown
//IL_02c0: Unknown result type (might be due to invalid IL or missing references)
//IL_02c6: Expected O, but got Unknown
//IL_02f2: Unknown result type (might be due to invalid IL or missing references)
//IL_02f7: Unknown result type (might be due to invalid IL or missing references)
//IL_030c: Unknown result type (might be due to invalid IL or missing references)
//IL_0311: Unknown result type (might be due to invalid IL or missing references)
UnitBlueprint val = SLMATool.CreateUnit("盒子王", (UnitBlueprint)SLMALoader.SDic["blueprints"]["CustomWobbler"], faction, GetSprite("Box.png"));
val.health = 3000f;
val.forceCost = 1u;
val.sizeMultiplier = 0.9f;
val.attackSpeedMultiplier = -1f;
val.damageMultiplier = 0.3f;
val.massMultiplier = 1.1f;
val.movementSpeedMuiltiplier = 2f;
val.holdinigWithTwoHands = false;
val.Entity.SetUnlockKey("Boss4");
GameObject unitBase = UPool.MyPool.AddObject("Boss4", val.UnitBase, true, (HideFlags)52, (Sprite)null, 0, false);
val.UnitBase = unitBase;
Boss boss = val.UnitBase.gameObject.AddComponent<Boss>();
boss.sprite = GetSprite("Box.png");
boss.unlock = "Boss5";
boss.unlockD = "在我面前,你是透明的。";
val.LeftWeapon = (GameObject)SLMALoader.SDic["weapons"]["Assassin_Dagger"];
val.RightWeapon = (GameObject)SLMALoader.SDic["weapons"]["Jester_Dagger_L"];
PropItemData val2 = new PropItemData();
val2.m_colors = new int[4] { 49, 40, -1, 43 };
val2.m_isTeamColor = new bool[4];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
val.LeftWeaponData = val2;
val2 = new PropItemData();
val2.m_colors = new int[2] { 49, -1 };
val2.m_isTeamColor = new bool[2];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
val.RightWeaponData = val2;
GameObject val3 = UPool.MyPool.AddObject("超级闪避", (GameObject)SLMALoader.SDic["moves"]["Assassin_Poof"], true, (HideFlags)52, (Sprite)null, 0, false);
SetMoveConditionalValue(val3.GetComponent<ConditionalEvent>().events[0], (ConditionType)0, (ValueType)0, 3.5f);
val.objectsToSpawnAsChildren = (GameObject[])(object)new GameObject[3]
{
(GameObject)SLMALoader.SDic["moves"]["Jump_Berserker"],
UPool.MyPool.GetObject("愤怒m"),
val3
};
val.m_props = (GameObject[])(object)new GameObject[1] { (GameObject)SLMALoader.SDic["clothes"]["cp_cardboard_head001"] };
PropItemData[] array = new PropItemData[1];
val2 = new PropItemData();
val2.m_colors = new int[1] { -1 };
val2.m_isTeamColor = new bool[1];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[0] = val2;
val.m_propData = (PropItemData[])(object)array;
}
public void Unit5(Faction faction)
{
//IL_001e: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0106: Unknown result type (might be due to invalid IL or missing references)
//IL_0110: Expected O, but got Unknown
//IL_012a: Unknown result type (might be due to invalid IL or missing references)
//IL_0134: Expected O, but got Unknown
//IL_0135: Unknown result type (might be due to invalid IL or missing references)
//IL_013b: Expected O, but got Unknown
//IL_016d: Unknown result type (might be due to invalid IL or missing references)
//IL_0172: Unknown result type (might be due to invalid IL or missing references)
//IL_0187: 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_01b9: Unknown result type (might be due to invalid IL or missing references)
//IL_01bf: Expected O, but got Unknown
//IL_01da: Unknown result type (might be due to invalid IL or missing references)
//IL_01e0: Expected O, but got Unknown
//IL_01fb: Unknown result type (might be due to invalid IL or missing references)
//IL_0201: Expected O, but got Unknown
//IL_021c: Unknown result type (might be due to invalid IL or missing references)
//IL_0222: Expected O, but got Unknown
//IL_023d: Unknown result type (might be due to invalid IL or missing references)
//IL_0243: Expected O, but got Unknown
//IL_025e: Unknown result type (might be due to invalid IL or missing references)
//IL_0264: Expected O, but got Unknown
//IL_027f: Unknown result type (might be due to invalid IL or missing references)
//IL_0285: Expected O, but got Unknown
//IL_02a0: Unknown result type (might be due to invalid IL or missing references)
//IL_02a6: Expected O, but got Unknown
//IL_02b4: Unknown result type (might be due to invalid IL or missing references)
//IL_02ba: Expected O, but got Unknown
//IL_02ed: Unknown result type (might be due to invalid IL or missing references)
//IL_02f2: Unknown result type (might be due to invalid IL or missing references)
//IL_0307: Unknown result type (might be due to invalid IL or missing references)
//IL_030c: Unknown result type (might be due to invalid IL or missing references)
//IL_0315: Unknown result type (might be due to invalid IL or missing references)
//IL_031b: Expected O, but got Unknown
//IL_0348: Unknown result type (might be due to invalid IL or missing references)
//IL_034d: Unknown result type (might be due to invalid IL or missing references)
//IL_0362: Unknown result type (might be due to invalid IL or missing references)
//IL_0367: Unknown result type (might be due to invalid IL or missing references)
//IL_0370: Unknown result type (might be due to invalid IL or missing references)
//IL_0376: Expected O, but got Unknown
//IL_03a8: Unknown result type (might be due to invalid IL or missing references)
//IL_03ad: Unknown result type (might be due to invalid IL or missing references)
//IL_03c2: Unknown result type (might be due to invalid IL or missing references)
//IL_03c7: Unknown result type (might be due to invalid IL or missing references)
//IL_03d0: Unknown result type (might be due to invalid IL or missing references)
//IL_03d6: Expected O, but got Unknown
//IL_0409: Unknown result type (might be due to invalid IL or missing references)
//IL_040e: Unknown result type (might be due to invalid IL or missing references)
//IL_0423: Unknown result type (might be due to invalid IL or missing references)
//IL_0428: Unknown result type (might be due to invalid IL or missing references)
//IL_0431: Unknown result type (might be due to invalid IL or missing references)
//IL_0437: Expected O, but got Unknown
//IL_0464: Unknown result type (might be due to invalid IL or missing references)
//IL_0469: Unknown result type (might be due to invalid IL or missing references)
//IL_047e: Unknown result type (might be due to invalid IL or missing references)
//IL_0483: Unknown result type (might be due to invalid IL or missing references)
//IL_048c: Unknown result type (might be due to invalid IL or missing references)
//IL_0492: Expected O, but got Unknown
//IL_04c5: Unknown result type (might be due to invalid IL or missing references)
//IL_04ca: 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_04e4: Unknown result type (might be due to invalid IL or missing references)
//IL_04ed: Unknown result type (might be due to invalid IL or missing references)
//IL_04f3: Expected O, but got Unknown
//IL_0525: Unknown result type (might be due to invalid IL or missing references)
//IL_052a: Unknown result type (might be due to invalid IL or missing references)
//IL_053f: Unknown result type (might be due to invalid IL or missing references)
//IL_0544: Unknown result type (might be due to invalid IL or missing references)
//IL_054d: Unknown result type (might be due to invalid IL or missing references)
//IL_0553: Expected O, but got Unknown
//IL_0585: Unknown result type (might be due to invalid IL or missing references)
//IL_058a: Unknown result type (might be due to invalid IL or missing references)
//IL_059f: Unknown result type (might be due to invalid IL or missing references)
//IL_05a4: Unknown result type (might be due to invalid IL or missing references)
UnitBlueprint val = SLMATool.CreateUnit("黑化之花", (UnitBlueprint)SLMALoader.SDic["blueprints"]["UNIT_SECRET_TREEGIANT"], faction, GetSprite("Flower.png"));
val.health = 2000f;
val.forceCost = 1u;
val.sizeMultiplier = 2.6f;
val.damageMultiplier = 1f;
val.attackSpeedMultiplier = 1.1f;
val.massMultiplier = 20f;
val.movementSpeedMuiltiplier = 1f;
val.holdinigWithTwoHands = false;
val.Entity.SetUnlockKey("Boss5");
GameObject unitBase = UPool.MyPool.AddObject("Boss5", val.UnitBase, true, (HideFlags)52, (Sprite)null, 0, false);
val.UnitBase = unitBase;
Boss boss = val.UnitBase.gameObject.AddComponent<Boss>();
boss.sprite = GetSprite("Flower.png");
boss.unlock = "Boss6";
boss.unlockD = "你没赢,我不管";
val.LeftWeapon = (GameObject)SLMALoader.SDic["weapons"]["GiantPunch"];
val.RightWeapon = (GameObject)SLMALoader.SDic["weapons"]["TreeSword"];
PropItemData val2 = new PropItemData();
val2.m_colors = new int[2] { 40, 49 };
val2.m_isTeamColor = new bool[2];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
val.RightWeaponData = val2;
val.m_props = (GameObject[])(object)new GameObject[8]
{
(GameObject)SLMALoader.SDic["clothes"]["FlowerHat001"],
(GameObject)SLMALoader.SDic["clothes"]["executionerHood001"],
(GameObject)SLMALoader.SDic["clothes"]["Crusader_Shirt001"],
(GameObject)SLMALoader.SDic["clothes"]["Medieval_Shirt004"],
(GameObject)SLMALoader.SDic["clothes"]["Western_gloves001"],
(GameObject)SLMALoader.SDic["clothes"]["Asia_WristArmor001"],
(GameObject)SLMALoader.SDic["clothes"]["Renaissance_Pants005"],
(GameObject)SLMALoader.SDic["clothes"]["misc_monsterfoot001"]
};
PropItemData[] array = new PropItemData[8];
val2 = new PropItemData();
val2.m_colors = new int[3] { 47, 40, 49 };
val2.m_isTeamColor = new bool[3];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[0] = val2;
val2 = new PropItemData();
val2.m_colors = new int[1] { 40 };
val2.m_isTeamColor = new bool[1];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[1] = val2;
val2 = new PropItemData();
val2.m_colors = new int[2] { 40, 40 };
val2.m_isTeamColor = new bool[2];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[2] = val2;
val2 = new PropItemData();
val2.m_colors = new int[3] { 40, 40, 40 };
val2.m_isTeamColor = new bool[3];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[3] = val2;
val2 = new PropItemData();
val2.m_colors = new int[1] { 40 };
val2.m_isTeamColor = new bool[1];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[4] = val2;
val2 = new PropItemData();
val2.m_colors = new int[3] { 40, 40, 40 };
val2.m_isTeamColor = new bool[3];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[5] = val2;
val2 = new PropItemData();
val2.m_colors = new int[2] { 40, 40 };
val2.m_isTeamColor = new bool[2];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[6] = val2;
val2 = new PropItemData();
val2.m_colors = new int[2] { 40, 40 };
val2.m_isTeamColor = new bool[2];
val2.m_positionOffset = new Vector3(0f, 0f, 0f);
val2.m_scale = new Vector3(1f, 1f, 1f);
array[7] = val2;
val.m_propData = (PropItemData[])(object)array;
}
public static void AddTransl(string key, string trans)
{
//IL_008b: Unknown result type (might be due to invalid IL or missing references)
Dictionary<int, Language> dictionary = new Dictionary<int, Language>();
dictionary.Add(0, (Language)7);
dictionary.Add(1, (Language)0);
dictionary.Add(2, (Language)8);
dictionary.Add(3, (Language)3);
dictionary.Add(4, (Language)1);
dictionary.Add(5, (Language)6);
dictionary.Add(6, (Language)4);
dictionary.Add(7, (Language)2);
Dictionary<Language, Dictionary<string, string>> dictionary2 = (Dictionary<Language, Dictionary<string, string>>)typeof(Localizer).GetField("m_localization", BindingFlags.Static | BindingFlags.NonPublic).GetValue(null);
string[] array = trans.Split(new string[1] { "#" }, StringSplitOptions.RemoveEmptyEntries);
for (int i = 0; i < dictionary.Count; i++)
{
if (i < array.Length)
{
dictionary2[dictionary[i]].Add(key, array[i]);
}
}
typeof(Localizer).GetField("m_localization", BindingFlags.Static | BindingFlags.NonPublic).SetValue(typeof(Localizer), dictionary2);
}
public void DoTrans()
{
AddTransl("....吾即是...", "....I am...#....我就是...#....Ich bin...#....Je suis...#....Я - это...#....Yo soy...#....Io sono...;");
AddTransl("烈火...熄灭了", "The Flame... is extinguished#烈火...熄灭了#Die Flamme... ist erloschen#La Flamme... est éteinte#Пламя... угашено#La llama... está apagada#La fiamma... è spenta;");
AddTransl("勇者史莱姆", "勇者史莱姆#You're the Hero#勇者史莱姆#Der Held#L'Érö#Герой#El Héroe#Il Eroe;");
AddTransl("暴走僵尸", "暴走僵尸#Out of Control Zombie#暴走僵尸#Der kontrolllose Zombie#Le Zombie hors de contrôle#Неконтролируемый зомби#El zombi fuera de control#Il zombie fuori controllo;");
AddTransl("迷失圣灵", "迷失圣灵#Lost Holy Spirit#迷失圣灵#Der verlorene Heilige Geist#L'Esprit saint perdu#Пропавший Святой Дух#El Espíritu Santo perdido#Lo Spirito Santo perduto;");
AddTransl("火焰铜甲战士", "火焰铜甲战士#Fire Armor Warrior#火焰铜甲战士#Der Feuermantel-Krieger#Le Guerrier en armure de feu#Огненный броневой воин#El guerrero en armadura de fuego#Il guerriero in armatura di fuoco;");
AddTransl("盒子王", "盒子王#Box King#盒子王#Der König der Boxen#Le Roi des Boîtes#Король коробок#El Rey de las cajas#Il Re dei cassetti;");
AddTransl("在我面前,你是透明的", "在我面前,你是透明的#You are transparent to me#在我面前,你是透明的#Du bist mir transparent#Vous êtes transparent pour moi#Вы для меня-transparent#Tú eres transparente para mí#Tu sei trasparente per me;");
AddTransl("黑化之花", "黑化之花#Blackened Flower#黑化之花#Die verfärbte Blume#La fleur noire#Чёрная цветок#La flor negra#La fiore nera;");
AddTransl("你没赢,我不管", "你没赢,我不管#You didn't win, I don't care#你没赢,我不管#Du hast nicht gewonnen, ich mache mich nicht darum#Vous n'avez pas gagné, je m'en fiche#Вы не выиграли, я не интересуюсь#Tú no ganaste, no me importa#Tu non hai vinto, non mi importa;");
AddTransl("你很强不过比起我哪位朋友还差了一点", "你很强不过比起我那位朋友还差了一点#You're very strong, but still behind my friend#你很强不过比起我那位朋友还差了一点#Du bist sehr stark, aber immer noch hinter meinem Freund#你很强不过比起我那位朋友还差了一点#Vous êtes très fort, mais toujours derrière mon ami#你很强不过比起我哪位朋友还差了一点#Вы очень сильны, но все еще позади моего друга#你很强不过比起我那位朋友还差了一点#Tú eres muy fuerte, pero todavía detrás de mi amigo#你很强不过比起我那位朋友还差了一点#Tu sei molto forte, ma ancora dietro il mio amico;");
}
}
public static AssetBundle Bundle;
public static AbilityControl Control { get; set; }
private void Awake()
{
((MonoBehaviour)this).StartCoroutine("Call");
}
private IEnumerator Call()
{
yield return (object)new WaitUntil((Func<bool>)(() => (Object)(object)Object.FindObjectOfType<ServiceLocator>() != (Object)null));
yield return (object)new WaitUntil((Func<bool>)(() => ServiceLocator.GetService<ISaveLoaderService>() != null));
yield return (object)new WaitForSeconds(0.3f);
Debug.Log((object)"Start Loading Mod");
_ = ContentDatabase.Instance().LandfallContentDatabase;
new Harmony("HeroUnit").PatchAll();
using Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("herounit");
GameObject obj = Object.Instantiate<GameObject>((Bundle = AssetBundle.LoadFromStream(stream)).LoadAsset<GameObject>("Ability"));
obj.AddComponent<AbilityControl>();
Object.DontDestroyOnLoad((Object)(object)obj);
Control = obj.GetComponent<AbilityControl>();
GameObject val = UPool.MyPool.AddObject("愤怒", (GameObject)SLMALoader.SDic["effects"]["E_Enrage"], true, (HideFlags)52, (Sprite)null, 0, false);
val.GetComponentInChildren<UnitDontTakeDamageForSeconds>().seconds = 0f;
val.GetComponentInChildren<DamageOverTimeEffect>().effectTime = 999999f;
val.GetComponentInChildren<DamageOverTimeEffect>().effectDuration = 999999f;
AnimationCurve colorCurve = val.GetComponentInChildren<DamageOverTimeEffect>().colorCurve;
Keyframe[] array = new Keyframe[2];
Keyframe val2 = default(Keyframe);
((Keyframe)(ref val2)).time = 0f;
((Keyframe)(ref val2)).value = 1f;
array[0] = val2;
val2 = default(Keyframe);
((Keyframe)(ref val2)).time = 1000f;
((Keyframe)(ref val2)).value = 1f;
array[1] = val2;
colorCurve.keys = (Keyframe[])(object)array;
((Behaviour)val.GetComponentInChildren<DelayEvent>()).enabled = false;
GameObject val3 = UPool.MyPool.AddObject("愤怒m", (GameObject)SLMALoader.SDic["moves"]["Move_Jarl_Enrage"], true, (HideFlags)52, (Sprite)null, 0, false);
val3.GetComponentInChildren<Cost>().m_cost = 0u;
val3.GetComponentInChildren<AddEffectToSelf>().EffectPrefab = val.GetComponent<UnitEffectBase>();
UnitBlueprint[] array2 = Resources.FindObjectsOfTypeAll<UnitBlueprint>();
foreach (UnitBlueprint obj2 in array2)
{
obj2.health *= 1.2f;
obj2.attackSpeedMultiplier *= 0.7f;
List<GameObject> list = obj2.objectsToSpawnAsChildren.ToList();
if (list == null)
{
list = new List<GameObject>();
}
list.Add(val3);
obj2.objectsToSpawnAsChildren = list.ToArray();
}
new FactionCreate().CFaction();
Debug.Log((object)"Loaded HeroUnit Successfully!");
}
private void Update()
{
if ((Object)(object)MainCam.instance != (Object)null)
{
CameraAbilityPossess componentInParent = ((Component)MainCam.instance).GetComponentInParent<CameraAbilityPossess>();
if (Object.op_Implicit((Object)(object)componentInParent) && (Object)(object)componentInParent.currentUnit != (Object)null && Object.op_Implicit((Object)(object)((Component)componentInParent.currentUnit).GetComponentInChildren<CameraPossession>()))
{
Control.unit = componentInParent.currentUnit;
((Component)Control).gameObject.SetActive(true);
}
else
{
Control.unit = null;
((Component)Control).gameObject.SetActive(false);
}
}
}
}
public class CameraPossession : MonoBehaviour
{
public class WeaponSet
{
public enum WeaponMode
{
NotHold,
Hold
}
public GameObject right;
public GameObject left;
public WeaponMode mode;
}
public Unit unit;
public GeneralInput input;
private MovementHandler movementHandler;
public float dashCooldown;
public PlayerActions playerActions;
public float dashMultiplier;
public float damageFallReductionTime;
public bool canDash;
public bool wait;
public UnitDontTakeDamageForSeconds takeDamageForSeconds;
public float HealCD;
public bool CanHeal;
public bool healwait;
public float DingCD;
public bool CanDing;
public bool Dingwait;
public float ChangeCD;
public bool CanChange;
public bool ChangeWait;
public float kickCD;
public bool CanKick;
public bool KickWait;
public int index;
public List<WeaponSet> sets = new List<WeaponSet>();
public void Start()
{
//IL_010e: Unknown result type (might be due to invalid IL or missing references)
//IL_0118: Expected O, but got Unknown
//IL_0132: Unknown result type (might be due to invalid IL or missing references)
//IL_013c: Expected O, but got Unknown
//IL_0168: Unknown result type (might be due to invalid IL or missing references)
//IL_0172: Expected O, but got Unknown
//IL_018c: Unknown result type (might be due to invalid IL or missing references)
//IL_0196: Expected O, but got Unknown
//IL_01c2: Unknown result type (might be due to invalid IL or missing references)
//IL_01cc: Expected O, but got Unknown
//IL_01e6: Unknown result type (might be due to invalid IL or missing references)
//IL_01f0: Expected O, but got Unknown
unit = ((Component)((Component)this).gameObject.transform.root).GetComponentInChildren<Unit>();
movementHandler = ((Component)unit).GetComponentInChildren<MovementHandler>();
takeDamageForSeconds = ((Component)unit).gameObject.AddComponent<UnitDontTakeDamageForSeconds>();
takeDamageForSeconds.playOnStart = false;
input = unit.Input;
playerActions = PlayerActions.Instance;
damageFallReductionTime = 10f;
dashCooldown = 2.5f;
dashMultiplier = 1750f;
HealCD = 10f;
canDash = true;
CanHeal = true;
healwait = false;
CanDing = true;
DingCD = 15f;
kickCD = 10f;
CanKick = true;
ChangeCD = 0.5f;
CanChange = true;
index = 0;
sets = new List<WeaponSet>
{
new WeaponSet
{
right = (GameObject)SLMALoader.SDic["weapons"]["ShortBow"],
left = (GameObject)SLMALoader.SDic["weapons"]["ShortBow"],
mode = WeaponSet.WeaponMode.Hold
},
new WeaponSet
{
right = (GameObject)SLMALoader.SDic["weapons"]["Berserker_axe"],
left = (GameObject)SLMALoader.SDic["weapons"]["KnightSword"],
mode = WeaponSet.WeaponMode.NotHold
},
new WeaponSet
{
right = (GameObject)SLMALoader.SDic["weapons"]["MonkStaff"],
left = (GameObject)SLMALoader.SDic["weapons"]["Bow"],
mode = WeaponSet.WeaponMode.Hold
}
};
Loader.Control.ui.Shift.CD = 0f;
Loader.Control.ui.Shift.inCD = false;
Loader.Control.ui.FirstAbility.CD = 0f;
Loader.Control.ui.FirstAbility.inCD = false;
Loader.Control.ui.SecondAbility.CD = 0f;
Loader.Control.ui.SecondAbility.inCD = false;
Loader.Control.ui.ThidAbility.CD = 0f;
Loader.Control.ui.ThidAbility.inCD = false;
Loader.Control.ui.Zb.CD = 0f;
Loader.Control.ui.Zb.inCD = false;
((MonoBehaviour)this).StartCoroutine("Change");
}
public void Update()
{
CameraAbilityPossess componentInParent = ((Component)MainCam.instance).GetComponentInParent<CameraAbilityPossess>();
if (!Object.op_Implicit((Object)(object)componentInParent) || !((Object)(object)componentInParent.currentUnit == (Object)(object)unit) || unit.data.Dead || !Object.op_Implicit((Object)(object)input) || !input.hasControl)
{
return;
}
if (!canDash && !wait)
{
wait = true;
((MonoBehaviour)this).StartCoroutine((IEnumerator)DashCooldown(dashCooldown));
Loader.Control.ui.Shift.SetCD(dashCooldown);
return;
}
if (canDash && ((OneAxisInputControl)playerActions.m_moveFast).IsPressed)
{
canDash = false;
Dash(dashMultiplier);
}
if (!CanHeal && !healwait)
{
healwait = true;
((MonoBehaviour)this).StartCoroutine((IEnumerator)HealCooldown(HealCD));
Loader.Control.ui.FirstAbility.SetCD(HealCD);
return;
}
if (CanHeal && Input.GetKeyDown((KeyCode)49))
{
CanHeal = false;
((MonoBehaviour)this).StartCoroutine("Heal", (object)300f);
}
if (!CanDing && !Dingwait)
{
Dingwait = true;
((MonoBehaviour)this).StartCoroutine((IEnumerator)DingCooldown(DingCD));
Loader.Control.ui.SecondAbility.SetCD(DingCD);
return;
}
if (CanDing && Input.GetKeyDown((KeyCode)50) && (Object)(object)unit.data.targetData != (Object)null)
{
CanDing = false;
((MonoBehaviour)this).StartCoroutine("Ding", (object)2f);
}
if (!CanKick && !KickWait)
{
KickWait = true;
((MonoBehaviour)this).StartCoroutine((IEnumerator)KickCooldown(kickCD));
Loader.Control.ui.ThidAbility.SetCD(kickCD);
return;
}
if (CanKick && Input.GetKeyDown((KeyCode)51) && (Object)(object)unit.data.targetData != (Object)null)
{
CanKick = false;
((MonoBehaviour)this).StartCoroutine("Kick", (object)2f);
}
if (!CanChange && !ChangeWait)
{
ChangeWait = true;
((MonoBehaviour)this).StartCoroutine((IEnumerator)ChangeCooldown(ChangeCD));
Loader.Control.ui.Zb.SetCD(ChangeCD);
}
else if (CanChange && Input.GetKeyDown((KeyCode)122))
{
CanChange = false;
((MonoBehaviour)this).StartCoroutine("Change");
}
}
public void Dash(float force)
{
//IL_003b: Unknown result type (might be due to invalid IL or missing references)
//IL_0040: Unknown result type (might be due to invalid IL or missing references)
//IL_0045: Unknown result type (might be due to invalid IL or missing references)
//IL_0066: Unknown result type (might be due to invalid IL or missing references)
//IL_006b: Unknown result type (might be due to invalid IL or missing references)
//IL_0070: Unknown result type (might be due to invalid IL or missing references)
//IL_009c: Unknown result type (might be due to invalid IL or missing references)
//IL_009e: Unknown result type (might be due to invalid IL or missing references)
//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
//IL_00ae: Unknown result type (might be due to invalid IL or missing references)
//IL_00e2: Unknown result type (might be due to invalid IL or missing references)
//IL_0119: Unknown result type (might be due to invalid IL or missing references)
//IL_011e: 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)
takeDamageForSeconds.seconds = 0.5f;
takeDamageForSeconds.Go();
Vector3 val = ((TwoAxisInputControl)playerActions.m_move).X * unit.data.characterForwardObject.right;
Vector3 val2 = ((TwoAxisInputControl)playerActions.m_move).Y * unit.data.characterForwardObject.forward;
((Vector3)(ref val)).Normalize();
((Vector3)(ref val2)).Normalize();
Rigidbody[] allRigs = unit.data.allRigs.AllRigs;
for (int i = 0; i < allRigs.Length; i++)
{
allRigs[i].AddForce(val * force, (ForceMode)5);
allRigs[i].AddForce(val2 * force, (ForceMode)5);
}
ServiceLocator.GetService<SoundPlayer>().PlaySoundEffect("Effects/Candlehead", 1.5f, unit.data.mainRig.position, (MaterialType)0, (Transform)null, 0.7f);
allRigs = unit.data.allRigs.AllRigs;
for (int j = 0; j < allRigs.Length; j++)
{
ServiceLocator.GetService<ParticlePlayer>().PlayEffect(2, allRigs[j].position, Vector3.up, (SkinnedMeshRenderer)null);
}
ServiceLocator.GetService<SoundPlayer>().PlaySoundEffect("Effects/Log", 1.5f, unit.data.mainRig.position, (MaterialType)0, (Transform)null, 0.7f);
}
private void SetTime(float targetTime)
{
Time.timeScale = targetTime;
}
public IEnumerator<WaitForSeconds> DashCooldown(float cooldown)
{
yield return new WaitForSeconds(cooldown);
wait = false;
canDash = true;
}
public IEnumerator Heal(float heal)
{
ServiceLocator.GetService<SoundPlayer>().PlaySoundEffect("Effects/PriestHeal", 1.5f, unit.data.mainRig.position, (MaterialType)0, (Transform)null, 0.7f);
UnitEffectBase[] componentsInChildren = ((Component)unit).gameObject.GetComponentsInChildren<UnitEffectBase>();
for (int j = 0; j < componentsInChildren.Length; j++)
{
Object.Destroy((Object)(object)componentsInChildren[j]);
}
GameObject val = Object.Instantiate<GameObject>(Loader.Bundle.LoadAsset<GameObject>("E_治疗"), UPool.MyPool.Pooler.transform);
UnitEffectBase val2 = UnitEffectBase.AddEffectToTarget(((Component)((Component)unit).transform).gameObject, val.GetComponent<UnitEffectBase>());
if ((Object)(object)val2 == (Object)null)
{
GameObject obj = Object.Instantiate<GameObject>(val, ((Component)unit.data.hip).transform.root);
obj.transform.position = ((Component)unit.data.hip).transform.position;
obj.transform.rotation = Quaternion.LookRotation(unit.data.mainRig.position);
val2 = obj.GetComponent<UnitEffectBase>();
TeamHolder.AddTeamHolder(obj, ((Component)unit).gameObject);
}
val2.DoEffect();
((Component)val2).transform.rotation = Quaternion.LookRotation(unit.data.mainRig.position);
((Component)val2).gameObject.transform.SetParent(((Component)unit.data.hip).transform);
val2.Ping();
for (int i = 0; i <= 5; i++)
{
((Damagable)((Component)this).GetComponentInChildren<HealthHandler>()).TakeDamage(0f - heal / 5f, Vector3.zero, (Unit)null, (DamageType)0);
yield return (object)new WaitForSeconds(0.1f);
}
}
public IEnumerator<WaitForSeconds> HealCooldown(float cooldown)
{
yield return new WaitForSeconds(cooldown);
healwait = false;
CanHeal = true;
}
public IEnumerator Ding(float time)
{
ServiceLocator.GetService<SoundPlayer>().PlaySoundEffect("Medieval Hits/KingSword", 1.5f, unit.data.targetData.mainRig.position, (MaterialType)0, (Transform)null, 0.7f);
Unit target = unit.data.targetData.unit;
GameObject val = Object.Instantiate<GameObject>(Loader.Bundle.LoadAsset<GameObject>("E_定身"), UPool.MyPool.Pooler.transform);
UnitEffectBase val2 = UnitEffectBase.AddEffectToTarget(((Component)((Component)target).transform).gameObject, val.GetComponent<UnitEffectBase>());
if ((Object)(object)val2 == (Object)null)
{
GameObject obj = Object.Instantiate<GameObject>(val, ((Component)target.data.hip).transform.root);
obj.transform.position = ((Component)target.data.hip).transform.position;
obj.transform.rotation = Quaternion.LookRotation(target.data.mainRig.position);
val2 = obj.GetComponent<UnitEffectBase>();
TeamHolder.AddTeamHolder(obj, ((Component)target.data).gameObject);
}
val2.DoEffect();
((Component)val2).transform.rotation = Quaternion.LookRotation(unit.data.mainRig.position);
((Component)val2).gameObject.transform.SetParent(((Component)unit.data.hip).transform);
val2.Ping();
Rigidbody[] allRigs = target.data.allRigs.AllRigs;
for (int i = 0; i < allRigs.Length; i++)
{
allRigs[i].isKinematic = true;
}
yield return (object)new WaitForSeconds(time);
allRigs = target.data.allRigs.AllRigs;
for (int j = 0; j < allRigs.Length; j++)
{
allRigs[j].isKinematic = false;
}
}
public IEnumerator<WaitForSeconds> DingCooldown(float cooldown)
{
yield return new WaitForSeconds(cooldown);
Dingwait = false;
CanDing = true;
}
public IEnumerator Kick(float mul)
{
GameObject gameObject2 = Object.Instantiate<GameObject>(Loader.Bundle.LoadAsset<GameObject>("E_红温"), UPool.MyPool.Pooler.transform);
UnitEffectBase val = UnitEffectBase.AddEffectToTarget(((Component)((Component)unit).transform).gameObject, gameObject2.GetComponent<UnitEffectBase>());
if ((Object)(object)val == (Object)null)
{
GameObject obj = Object.Instantiate<GameObject>(gameObject2, ((Component)unit.data.hip).transform.root);
obj.transform.position = ((Component)unit.data.hip).transform.position;
obj.transform.rotation = Quaternion.LookRotation(unit.data.mainRig.position);
val = obj.GetComponent<UnitEffectBase>();
TeamHolder.AddTeamHolder(obj, ((Component)unit).gameObject);
}
val.DoEffect();
((Component)val).transform.rotation = Quaternion.LookRotation(unit.data.mainRig.position);
((Component)val).gameObject.transform.SetParent(((Component)unit.data.hip).transform);
val.Ping();
gameObject2 = Object.Instantiate<GameObject>((GameObject)SLMALoader.SDic["moves"]["JumpKick_RedJade_L"], ((Component)unit).transform);
DodgeMove componentInChildren = gameObject2.GetComponentInChildren<DodgeMove>();
componentInChildren.forceMultiplier *= mul;
CollisionWeapon componentInChildren2 = gameObject2.GetComponentInChildren<CollisionWeapon>();
componentInChildren2.damage *= 0.8f;
gameObject2.GetComponentInChildren<ConditionalEvent>().DoMovesAndContinuousEvent(gameObject2.GetComponentInChildren<ConditionalEvent>().events[0].NetworkId);
yield return (object)new WaitForSeconds(4f);
Object.Destroy((Object)(object)gameObject2);
}
public IEnumerator<WaitForSeconds> KickCooldown(float cooldown)
{
yield return new WaitForSeconds(cooldown);
KickWait = false;
CanKick = true;
}
public IEnumerator Change()
{
GameObject val = Object.Instantiate<GameObject>(Loader.Bundle.LoadAsset<GameObject>("E_切换"), UPool.MyPool.Pooler.transform);
UnitEffectBase val2 = UnitEffectBase.AddEffectToTarget(((Component)((Component)unit).transform).gameObject, val.GetComponent<UnitEffectBase>());
if ((Object)(object)val2 == (Object)null)
{
GameObject obj = Object.Instantiate<GameObject>(val, ((Component)unit.data.hip).transform.root);
obj.transform.position = ((Component)unit.data.hip).transform.position;
obj.transform.rotation = Quaternion.LookRotation(unit.data.mainRig.position);
val2 = obj.GetComponent<UnitEffectBase>();
TeamHolder.AddTeamHolder(obj, ((Component)unit).gameObject);
}
val2.DoEffect();
((Component)val2).transform.rotation = Quaternion.LookRotation(unit.data.mainRig.position);
((Component)val2).gameObject.transform.SetParent(((Component)unit.data.hip).transform);
val2.Ping();
WeaponSet weaponSet = sets[index];
Component rightObject = (Component)(object)unit.holdingHandler.rightObject;
Holdable leftObject = unit.holdingHandler.leftObject;
unit.holdingHandler.LetGoOfAll();
if ((Object)(object)rightObject != (Object)null)
{
Object.Destroy((Object)(object)rightObject.gameObject);
}
if ((Object)(object)leftObject != (Object)null)
{
Object.Destroy((Object)(object)((Component)leftObject).gameObject);
}
unit.unitBlueprint.SetWeapon(unit, unit.Team, weaponSet.right, (PropItemData)null, (HandType)0, ((Component)unit.data.rightHand).transform.rotation, new List<GameObject>(), false);
unit.holdingHandler.rightHandActivity = (HandActivity)1;
unit.unitBlueprint.SetWeapon(unit, unit.Team, (weaponSet.mode == WeaponSet.WeaponMode.Hold) ? null : weaponSet.left, (PropItemData)null, (HandType)1, ((Component)unit.data.leftHand).transform.rotation, new List<GameObject>(), false);
unit.holdingHandler.leftHandActivity = (HandActivity)((weaponSet.mode == WeaponSet.WeaponMode.Hold) ? 1 : 2);
unit.data.weaponHandler.fistRefernce = null;
if (Object.op_Implicit((Object)(object)weaponSet.right))
{
unit.m_AttackDistance = weaponSet.right.GetComponentInChildren<Weapon>().maxRange;
unit.m_PreferedDistance = weaponSet.right.GetComponentInChildren<Weapon>().maxRange + 0.5f;
}
for (int i = 0; i < Loader.Control.ui.Z.Length; i++)
{
((Component)Loader.Control.ui.Z[i]).gameObject.SetActive(false);
}
((Component)Loader.Control.ui.Z[index]).gameObject.SetActive(true);
unit.api.UpdateECSValues();
if (index + 1 == sets.Count)
{
index = 0;
}
else
{
index++;
}
yield break;
}
public IEnumerator<WaitForSeconds> ChangeCooldown(float cooldown)
{
yield return new WaitForSeconds(cooldown);
ChangeWait = false;
CanChange = true;
}
}
public class AbilityControl : MonoBehaviour
{
public UI ui;
public Unit unit;
public void Start()
{
Loader.Control = this;
ui = new UI
{
Z = (Transform[])(object)new Transform[3]
{
((Component)this).transform.Find("Z").GetChild(0).GetChild(0),
((Component)this).transform.Find("Z").GetChild(0).GetChild(1),
((Component)this).transform.Find("Z").GetChild(0).GetChild(2)
},
Zb = ((Component)((Component)this).transform.Find("Z")).gameObject.AddComponent<UIButtom>(),
Shift = ((Component)((Component)this).transform.Find("Shift")).gameObject.AddComponent<UIButtom>(),
FirstAbility = ((Component)((Component)this).transform.Find("1")).gameObject.AddComponent<UIButtom>(),
SecondAbility = ((Component)((Component)this).transform.Find("2")).gameObject.AddComponent<UIButtom>(),
ThidAbility = ((Component)((Component)this).transform.Find("3")).gameObject.AddComponent<UIButtom>()
};
((MonoBehaviour)this).StartCoroutine("ResetW");
}
public void Update()
{
}
public void Reset()
{
if ((Object)(object)unit != (Object)null)
{
ui.Shift.CD = ((Component)unit).GetComponentInChildren<CameraPossession>().dashCooldown;
ui.Shift.inCD = ((Component)unit).GetComponentInChildren<CameraPossession>().dashCooldown > 0f;
ui.FirstAbility.CD = ((Component)unit).GetComponentInChildren<CameraPossession>().HealCD;
ui.FirstAbility.inCD = ((Component)unit).GetComponentInChildren<CameraPossession>().HealCD > 0f;
ui.SecondAbility.CD = ((Component)unit).GetComponentInChildren<CameraPossession>().DingCD;
ui.SecondAbility.inCD = ((Component)unit).GetComponentInChildren<CameraPossession>().DingCD > 0f;
ui.ThidAbility.CD = ((Component)unit).GetComponentInChildren<CameraPossession>().kickCD;
ui.ThidAbility.inCD = ((Component)unit).GetComponentInChildren<CameraPossession>().kickCD > 0f;
ui.Zb.CD = ((Component)unit).GetComponentInChildren<CameraPossession>().ChangeCD;
ui.Zb.inCD = ((Component)unit).GetComponentInChildren<CameraPossession>().ChangeCD > 0f;
}
}
private IEnumerator ResetW()
{
yield return (object)new WaitUntil((Func<bool>)(() => (Object)(object)MainCam.instance != (Object)null));
yield return (object)new WaitUntil((Func<bool>)(() => (Object)(object)((Component)MainCam.instance).GetComponentInParent<CameraAbilityPossess>() != (Object)null));
s.SetField<CameraAbilityPossess>(((Component)MainCam.instance).GetComponentInParent<CameraAbilityPossess>(), "m_OnPossessEnterAction", (object)(Action)delegate
{
Reset();
});
}
}
public class UIButtom : MonoBehaviour
{
public float CD;
public bool inCD;
private Transform Image;
private Transform Cooldown;
private void Start()
{
Image = ((Component)this).transform.GetChild(0).GetChild(0);
Cooldown = ((Component)this).transform.GetChild(0).Find("Cooldown");
inCD = false;
CD = 0f;
}
public void SetCD(float CD)
{
inCD = true;
this.CD = CD;
}
private void Update()
{
if (inCD && CD >= 0f)
{
((Component)Cooldown).gameObject.SetActive(true);
CD -= Time.deltaTime;
((Component)Cooldown).GetComponentInChildren<Text>().text = CD.ToString("F2") + "s";
}
else
{
((Component)Cooldown).gameObject.SetActive(false);
}
}
}
public class UI
{
public UIButtom Shift;
public UIButtom FirstAbility;
public UIButtom SecondAbility;
public UIButtom ThidAbility;
public UIButtom Zb;
public Transform[] Z;
}
public class Boss : MonoBehaviour
{
public string unlock;
public string unlockD;
public Sprite sprite;
private void Start()
{
((Component)this).GetComponentInChildren<Unit>().data.healthHandler.AddDieAction((Action)OnDeath);
}
private void OnDeath()
{
if (!string.IsNullOrWhiteSpace(unlock) && !ServiceLocator.GetService<ISaveLoaderService>().HasUnlockedSecret(unlock))
{
ServiceLocator.GetService<ISaveLoaderService>().UnlockSecret(unlock);
PlacementUI val = Object.FindObjectOfType<PlacementUI>();
if ((Object)(object)val != (Object)null)
{
val.RedrawUI(unlock);
}
ServiceLocator.GetService<ModalPanel>().OpenUnlockPanel(unlockD, sprite);
}
}
}