private void OnNextArtClicked() { int i = artable.stages.FindIndex(s => s.id == artable.CurrentStage); Artable.Stage desiredStage = (i + 1 == artable.stages.Count) ? artable.stages[0] : artable.stages[i + 1]; artable.SetStage(desiredStage.id, false); }
/*private void OnCopySettings(object data) * { * throw new NotImplementedException("This one is not thrown..."); * PickableLook component = ((UnityEngine.GameObject)data).GetComponent<PickableLook>(); * if (!((UnityEngine.Object)component != (UnityEngine.Object)null)) * return; * this.artable.SetStage(component.artable.CurrentStage, false); * Debug.Log("SelectableArt: copied"); * }*/ private void OnNextArtClicked() { Artable.Status status = artable.stages.Find(s => s.id == artable.CurrentStage).statusItem; List <Artable.Stage> potential_stages = new List <Artable.Stage>(); foreach (Artable.Stage s in artable.stages) { if (s.statusItem == status) { potential_stages.Add(s); } } int i = potential_stages.FindIndex(s => s.id == artable.CurrentStage); Artable.Stage desiredStage = (i + 1 == potential_stages.Count) ? potential_stages[0] : potential_stages[i + 1]; artable.SetStage(desiredStage.id, false); }