public SpawnMenu() { Instance = this; StyleSheet.Load("/ui/SpawnMenu.scss"); var left = Add.Panel("left"); { var tabs = left.AddChild <ButtonGroup>(); tabs.AddClass("tabs"); var body = left.Add.Panel("body"); { var props = body.AddChild <SpawnList>(); tabs.SelectedButton = tabs.AddButtonActive("Props", (b) => props.SetClass("active", b)); var ents = body.AddChild <EntityList>(); tabs.AddButtonActive("Entities", (b) => ents.SetClass("active", b)); } } var right = Add.Panel("right"); { var tabs = right.Add.Panel("tabs"); { tabs.Add.Button("Tools").AddClass("active"); tabs.Add.Button("Utility"); } var body = right.Add.Panel("body"); { var list = body.Add.Panel("toollist"); { foreach (var entry in Library.GetAllAttributes <Sandbox.Tools.BaseTool>()) { if (entry.Title == "Sandbox.Tools.BaseTool") { continue; } var button = list.Add.Button(entry.Title); button.SetClass("active", entry.Name == ConsoleSystem.FindValue("tool_current")); button.AddEvent("onclick", () => { ConsoleSystem.Run("tool_current", entry.Name); ConsoleSystem.Run("inventory_current", "weapon_tool"); foreach (var child in list.Children) { child.SetClass("active", child == button); } }); } } body.Add.Panel("inspector"); } } }
public void SpawnToEdit() { //set all editUIs false for easy switching between edit types GameObject[] SpawnMenus = GameObject.FindGameObjectsWithTag("SpawnUI"); foreach (GameObject SpawnMenu in SpawnMenus) { if (SpawnMenu.activeSelf) { SpawnMenu.SetActive(false); } } EditButton.SetActive(true); }
public SpawnMenu() { Instance = this; StyleSheet.Load("/ui/SpawnMenu.scss"); var left = Add.Panel("left"); { var tabs = left.AddChild <ButtonGroup>(); tabs.AddClass("tabs"); var body = left.Add.Panel("body"); { var props = body.AddChild <SpawnList>(); tabs.SelectedButton = tabs.AddButtonActive("Props", (b) => props.SetClass("active", b)); var ents = body.AddChild <EntityList>(); tabs.AddButtonActive("Entities", (b) => ents.SetClass("active", b)); var models = body.AddChild <CloudModelList>(); tabs.AddButtonActive("s&works", (b) => models.SetClass("active", b)); } } var right = Add.Panel("right"); { var tabs = right.Add.Panel("tabs"); { tabs.Add.Button("Tools").AddClass("active"); tabs.Add.Button("Utility"); } var body = right.Add.Panel("body"); { toollist = body.Add.Panel("toollist"); { RebuildToolList(); } body.Add.Panel("inspector"); } } }
public GameObject[] Prefabs; // spawna guin vid död public void Awake() { _savedPoints = GameManager.Instance.Points; Instance = this; MenuSpawn = GetComponent <SpawnMenu>(); }
public override void OnApplicationStart() { Instance = this; base.OnApplicationStart(); ClassInjector.RegisterTypeInIl2Cpp <Grenade>(); ClassInjector.RegisterTypeInIl2Cpp <PinScript>(); ClassInjector.RegisterTypeInIl2Cpp <HandleScript>(); var folder = new DirectoryInfo(Path.Combine(Path.GetDirectoryName(Application.dataPath), "UserData", "Grenades")); if (!folder.Exists) { folder.Create(); } else { foreach (var file in folder.EnumerateFiles("*.grenade")) { try { var bundle = AssetBundle.LoadFromFile(file.FullName); bundle.hideFlags = HideFlags.DontUnloadUnusedAsset; TextAsset text = bundle.LoadAsset <TextAsset>("Grenades.xml"); var xml = XDocument.Parse(text.text); foreach (var grenadeXml in xml.Root.Elements("Grenade")) { var prefab = bundle.LoadAsset <GameObject>((string)grenadeXml.Attribute("prefab")); prefab.hideFlags = HideFlags.DontUnloadUnusedAsset; Shaders.ReplaceDummyShaders(prefab); var guid = Guid.NewGuid(); prefab.name = guidPrefix + guid.ToString(); this.definitions[guid] = grenadeXml; var g = prefab.AddComponent <Grenade>(); SpawnMenu.AddItem(prefab, (string)grenadeXml.Attribute("name") ?? "[Grenade]", (int?)grenadeXml.Attribute("pool") ?? 4, (CategoryFilters)Enum.Parse(typeof(CategoryFilters), (string)grenadeXml.Attribute("category") ?? "GADGETS", true)); } } catch (Exception e) { Log.LogError($"Failed when loading grenade bundle: {file.Name}\n{e.Message}\n{e.StackTrace}"); } } } CustomMapIntegration.Init(); if (Environment.GetCommandLineArgs().Contains("--grenades.debug")) { void ExportXml() { foreach (var def in Instance.definitions.Values) { var file = Path.Combine(folder.FullName, $"exported_{(string)def.Attribute("name") ?? "noname"}.xml"); def.Save(file); } } var i = Interfaces.AddNewInterface("Grenades Debug", Color.green); i.CreateFunctionElement("Output all xml", Color.green, null, null, ExportXml); } }
// Use this for initialization void Start() { theMenu = FindObjectOfType <SpawnMenu>(); menuSpawned = false; }