public bool SetPart(WeaponPart newPart) { if (newPart != null && newPart.partType != slotType) { return(false); } if (part != null) { part.Unload(); } part = newPart; if (part != null) { part.Load(transform); } if (SceneManager.GetActiveScene().name == "WeaponCustomization") { UiWeaponStats.UpdateStats(); } return(true); }
public void Delete() { if (playerData.WeaponCount() <= 1) { return; } playerData.ClearSlot(weapon.bodySlot, false); playerData.RemoveWeapon(selectedWeapon); Destroy(weaponPanels[selectedWeapon]); weaponPanels.RemoveAt(selectedWeapon); if (selectedWeapon >= playerData.WeaponCount()) { SetSelected(playerData.WeaponCount() - 1, false); } else { SetSelected(selectedWeapon, false); } uiWeaponPartList.UpdatePanels(); UiWeaponStats.UpdateStats(); }
public void New() { Save(); var wd = playerData.GetWeaponData(weapon); wd.rootPart.partShortCode = ""; wd.weaponName = "New weapon"; AddNew(wd); Save(); UiWeaponStats.UpdateStats(); }
void Load() { weapon.bodySlot.SetPart(null); playerData.LoadWeapon(selectedWeapon, weapon); weaponNameInput.text = weapon.weaponName; UiWeaponPartSlotPanel uiSlot = weapon.bodySlot.GetComponentInChildren <UiWeaponPartSlotPanel>(); if (uiSlot != null) { uiSlot.SetObject(weapon.bodySlot.part); } UiWeaponStats.UpdateStats(); }