public RolePlayActor CreateRolePlayActor(GameRolePlayActorInformations actor) { if (actor is GameRolePlayCharacterInformations) return new Character(actor as GameRolePlayCharacterInformations, this); if (actor is GameRolePlayGroupMonsterInformations) return new GroupMonster(actor as GameRolePlayGroupMonsterInformations, this); if (actor is GameRolePlayMerchantWithGuildInformations) return new Merchant(actor as GameRolePlayMerchantWithGuildInformations, this); if (actor is GameRolePlayMerchantInformations) return new Merchant(actor as GameRolePlayMerchantInformations, this); if (actor is GameRolePlayMountInformations) return new MountActor(actor as GameRolePlayMountInformations, this); if (actor is GameRolePlayMutantInformations) return new Mutant(actor as GameRolePlayMutantInformations, this); if (actor is GameRolePlayNpcWithQuestInformations) return new Npc(actor as GameRolePlayNpcWithQuestInformations, this); if (actor is GameRolePlayNpcInformations) return new Npc(actor as GameRolePlayNpcInformations, this); if (actor is GameRolePlayTaxCollectorInformations) return new TaxCollector(actor as GameRolePlayTaxCollectorInformations, this); if (actor is GameRolePlayPrismInformations) return new Prism(actor as GameRolePlayPrismInformations, this); throw new Exception(string.Format("Actor {0} not handled", actor.GetType())); }
public void AddActor(GameRolePlayActorInformations actor) { m_actors.Add(CreateRolePlayActor(actor)); }