public EnemyVO(EnemyVO enemy) : base(enemy as GuestVO) { Faction = enemy.Faction; imageInt = enemy.imageInt; attackNumber = enemy.attackNumber; FlavorText = enemy.FlavorText; }
public void Execute(string faction) { PartyModel model = AmbitionApp.GetModel <PartyModel>(); EnemyVO e = new EnemyVO(); _phrases = AmbitionApp.GetModel <LocalizationModel>(); // TODO: Find Preset Enemy in model e.Faction = faction; EnemyInventory.enemyInventory.Add(e); e.Like = model.Interests[Util.RNG.Generate(0, model.Interests.Length)]; e.Gender = (Util.RNG.Generate(0, 2) == 0) ? Gender.Male : Gender.Female; if (e.Gender == Gender.Female) { e.Title = rndStr("female_title"); e.FirstName = rndStr("female_name"); } else { e.Title = rndStr("male_title"); e.FirstName = rndStr("male_name"); } e.LastName = rndStr("last_name"); e.imageInt = Util.RNG.Generate(0, (e.Gender == Gender.Female ? 4 : 5)); e.FlavorText = "This person is a great big jerk"; }
public void Execute(int intoxication) { PartyModel model = AmbitionApp.GetModel <PartyModel>(); PartyVO party = model.Party; if (intoxication >= party.MaxIntoxication) { InventoryModel inventory = AmbitionApp.GetModel <InventoryModel>(); ItemVO item; //Determine Random Effect switch (Util.RNG.Generate(0, 10)) { case 0: model.Party.Rewards.Add(new CommodityVO(CommodityType.Reputation, -Util.RNG.Generate(20, 51))); break; case 1: model.Party.Rewards.Add(new CommodityVO(CommodityType.Reputation, party.Faction, -Util.RNG.Generate(20, 51))); break; // Outfit penalized case 2: item = inventory.GetEquipped(ItemConsts.OUTFIT); if (item is OutfitVO) { ((OutfitVO)item).Novelty -= Util.RNG.Generate(20, 51); } break; // Outfit Ruined case 3: item = inventory.GetEquipped(ItemConsts.OUTFIT); if (item is OutfitVO) { model.Party.Rewards.Add(new CommodityVO(CommodityType.Item, item.Name, -1)); } break; // Accessory Lost case 4: item = inventory.GetEquipped(ItemConsts.ACCESSORY); if (item != null) { model.Party.Rewards.Add(new CommodityVO(CommodityType.Item, item.Name, -1)); } else { model.Party.Rewards.Add(new CommodityVO(CommodityType.Livre, -Util.RNG.Generate(30, 61))); } break; // Livre Lost case 5: model.Party.Rewards.Add(new CommodityVO(CommodityType.Livre, -Util.RNG.Generate(30, 61))); break; // Enemy made case 6: model.Party.Rewards.Add(new CommodityVO(CommodityType.Enemy, party.Faction)); break; // Forgot gossip case 7: model.Party.Rewards.RemoveAll(r => r.Type == CommodityType.Gossip); { model.Party.Rewards.Add(new CommodityVO(CommodityType.Enemy, party.Faction)); } break; case 8: switch (Util.RNG.Generate(0, 6)) { case 1: model.Party.Rewards.Add(new CommodityVO(CommodityType.Reputation, Util.RNG.Generate(20, 51))); break; case 2: model.Party.Rewards.Add(new CommodityVO(CommodityType.Reputation, party.Faction, Util.RNG.Generate(20, 51))); break; case 3: model.Party.Rewards.Add(new CommodityVO(CommodityType.Livre, Util.RNG.Generate(30, 61))); break; case 4: model.Party.Rewards.Add(new CommodityVO(CommodityType.Gossip, party.Faction, 1)); break; default: EnemyVO enemy = Util.RNG.TakeRandom(party.Enemies); if (enemy != null) { model.Party.Rewards.Add(new CommodityVO(CommodityType.Enemy, enemy.Name, -1)); } else { model.Party.Rewards.Add(new CommodityVO(CommodityType.Gossip, party.Faction, 1)); } break; } break; } } }
public void Execute(NotableVO notable) { EnemyVO enemy = new EnemyVO(notable as GuestVO); enemy.Faction = notable.Faction; }