public void AddInitiativeCard(InitiativeCardViewModel initCardViewModel) { if (initCardViewModel is PlayerActorInitiativeCardViewModel) { PlayerActorInitiativeCardViewModel playerCardVM = initCardViewModel as PlayerActorInitiativeCardViewModel; playerCardVM.OnWeaponsChange += AddWeaponSet; InitiativeTrack.Add(playerCardVM); Model.WeaponSet weaponSet = new Model.WeaponSet(playerCardVM.ActorViewModel.Actor); AddWeaponSet(weaponSet); } else { initCardViewModel.StartEncounter(); InitiativeTrack.Add(initCardViewModel); } }
public void AddWeaponSet(Model.WeaponSet weaponSet) { bool found = false; for (int i = 0; i < WeaponList.Count; ++i) { if (WeaponList[i].Owner == weaponSet.Owner) { WeaponList[i] = weaponSet; found = true; } } if (!found) { WeaponList.Add(weaponSet); } }
private void OnWeaponsChanged() { NotifyPropertyChanged("Weapons"); Model.WeaponSet weaponSet = new Model.WeaponSet(ActorViewModel.Actor); OnWeaponsChange?.Invoke(weaponSet); }