public ResearchObject(string n, ResearchIcon i, string desc, string act) { name = n; icon = i; description = desc; action = act; }
// ------ // For constructing hierarchy public void Init() { foreach (ResearchItem item in children) { if (item) { item.SetParent(this); } } if (m_Icon == null) { m_Icon = (weaponID != E_WeaponID.None) ? ResearchSupport.Instance.GetNewResearchWeaponIcon() : ResearchSupport.Instance.GetNewResearchRestIcon(); } m_Icon.Init(GetComponent <GUIBase_Widget>(), weaponID != E_WeaponID.None); m_Icon.SetButtonCallback(ButtonPressed); if (weaponID != E_WeaponID.None) { m_UpgradeIcons = new UpgradeIcon[MAX_UPGRADES]; for (int i = 0; i < MAX_UPGRADES; i++) { m_UpgradeIcons[i] = ResearchSupport.Instance.GetNewUpgradeIcon(); } m_Icon.SetUpgradeIcons(m_UpgradeIcons); } InitData(); ResearchSupport.Instance.RegisterResearchItem(this, SetDirtyFlag); m_StateDirty = true; }