public void AddActor(Model.Actor actor, string displayName) { ActorInitiativeViewModel actorViewModel = ActorInitiativeViewModelFactory.GetActorViewModel(actor, this); actorViewModel.DisplayName = displayName; InitiativeCardViewModel initCardViewModel = InitiativeCardViewModelFactory.GetInitiativeCardViewModel(actorViewModel); AddInitiativeCard(initCardViewModel); }
public static ActorInitiativeViewModel GetActorViewModel(Model.Actor actor, EncounterViewModel encounterViewModel) { if (actor is Model.PlayerActor) { return(new PlayerActorInitiativeViewModel(actor as Model.PlayerActor)); } else if (actor is Model.Creature) { return(new CreatureInitiativeViewModel(actor as Model.Creature, encounterViewModel)); } else { throw new ArgumentException("Unknown type: " + actor.GetType().ToString()); } }
public void UpdateActor(Model.Actor updatedActor) { foreach (InitiativeCardViewModel initCard in InitiativeTrack) { if (initCard.ActorViewModel.Actor.ActorName == updatedActor.ActorName && initCard.ActorViewModel.Actor.GetType() == updatedActor.GetType()) { if (initCard.ActorViewModel is PlayerActorInitiativeViewModel) { PlayerActorInitiativeViewModel newViewModel = new PlayerActorInitiativeViewModel(updatedActor as Model.PlayerActor); newViewModel.DisplayName = initCard.ActorViewModel.DisplayName; (initCard as PlayerActorInitiativeCardViewModel).ActorViewModel = newViewModel; } } } }
private void ExecuteAddActorToEncounter(object actorObj) { if (actorObj is Model.Actor) { if (actorObj is Model.PlayerActor) { Model.PlayerActor playerActor = actorObj as Model.PlayerActor; Encounter.AddActor(playerActor, playerActor.ActorName); } else { Model.Actor actor = actorObj as Model.Actor; string defaultActorName = actor.ActorName + " " + (Encounter.GetNumberOfActorsWithName(actor.ActorName) + 1); Encounter.AddActor(actor, defaultActorName); } } }
public virtual void ReadActorXML(XmlNode xmlNode) { Model.Actor actor = new Model.Actor(xmlNode); Actor = actor; }