public void OnPressed() { if (repairable != null) { repairable.Break(); } }
private void DestroyRepariable(Repairable item) { List <PickupType> availableMats = item.GetAvailableMaterials(); List <int> indexes = new List <int>(); for (int i = 0; i < (availableMats.Count <= 2 ? availableMats.Count : 3); i++) { int val = Random.Range(0, availableMats.Count - 1); if (!indexes.Contains(val)) { indexes.Add(val); } else { i--; } } List <RepairStage> repairStages = new List <RepairStage>(); for (int i = 0; i < (availableMats.Count <= 2 ? availableMats.Count : 3); i++) { repairStages.Add(new RepairStage(availableMats[indexes[i]], Random.Range(1, 3), Color.black)); } item.Break(repairStages); repairables.Remove(item); }