public void UpdateList(bl_ClassCustomize target) { List <bl_GunInfo> all = bl_GameData.Instance.AllWeapons; for (int i = 0; i < all.Count; i++) { int index = AllWeapons.FindIndex(x => x.Name == all[i].Name); if (index < 0) { WeaponItemData wid = new WeaponItemData() { Name = all[i].Name, GunID = i, }; AllWeapons.Add(wid); #if UNITY_EDITOR EditorUtility.SetDirty(target); #endif } else { if (AllWeapons[index].GunID != i) { AllWeapons[index].GunID = i; #if UNITY_EDITOR EditorUtility.SetDirty(target); #endif } } } //clean non existing fields for (int i = 0; i < AllWeapons.Count; i++) { int index = all.FindIndex(x => x.Name == AllWeapons[i].Name); if (index < 0) { AllWeapons.RemoveAt(i); #if UNITY_EDITOR EditorUtility.SetDirty(target); #endif } } }
private void OnEnable() { script = (bl_ClassCustomize)target; }
/// <summary> /// /// </summary> public void ChangeSlot() { bl_ClassCustomize c = FindObjectOfType <bl_ClassCustomize>(); c.ChangeSlotClass(ID, ClassId, ListID); }