private void OnCopySettings(object data) { GameObject gameObject = (GameObject)data; CreatureLure component = gameObject.GetComponent <CreatureLure>(); if ((Object)component != (Object)null) { ChangeBaitSetting(component.activeBaitSetting); } }
public override void ConfigureBuildingTemplate(GameObject prefab, Tag prefab_tag) { CreatureLure creatureLure = prefab.AddOrGet <CreatureLure>(); creatureLure.baitStorage = prefab.AddOrGet <Storage>(); creatureLure.baitTypes = new List <Tag> { GameTags.SlimeMold, GameTags.Phosphorite }; creatureLure.baitStorage.storageFilters = creatureLure.baitTypes; creatureLure.baitStorage.allowItemRemoval = false; creatureLure.baitStorage.SetDefaultStoredItemModifiers(Storage.StandardFabricatorStorage); prefab.AddOrGet <Operational>(); }
public override void SetTarget(GameObject target) { base.SetTarget(target); target_lure = target.GetComponent <CreatureLure>(); foreach (Tag baitType in target_lure.baitTypes) { Tag key = baitType; if (!toggles_by_tag.ContainsKey(baitType)) { GameObject gameObject = Util.KInstantiateUI(prefab_toggle, toggle_container, true); Image reference = gameObject.GetComponent <HierarchyReferences>().GetReference <Image>("FGImage"); gameObject.GetComponent <HierarchyReferences>().GetReference <LocText>("Label").text = ElementLoader.GetElement(baitType).name; reference.sprite = Def.GetUISpriteFromMultiObjectAnim(ElementLoader.GetElement(baitType).substance.anim, "ui", false, string.Empty); MultiToggle component = gameObject.GetComponent <MultiToggle>(); toggles_by_tag.Add(key, component); } toggles_by_tag[baitType].onClick = delegate { Tag tag = baitType; SelectToggle(tag); }; } RefreshToggles(); }