protected virtual void GenerateTreasure()
{
DropItem(new Gold(1500, 3000));
Item item = null;
for (int i = 0; i < Loot.GemTypes.Length; i++)
{
item = Activator.CreateInstance(Loot.GemTypes[i]) as Item;
item.Amount = Utility.Random(1, 6);
DropItem(item);
}
if (0.25 > Utility.RandomDouble())
{
item = new SmokeBomb(Utility.Random(3, 6));
DropItem(item);
}
if (0.25 > Utility.RandomDouble())
{
switch (Utility.Random(2))
{
case 0:
item = new ParasiticPotion(Utility.Random(1, 3)); break;
case 1:
item = new InvisibilityPotion(Utility.Random(1, 3)); break;
}
DropItem(item);
}
if (0.2 > Utility.RandomDouble())
{
item = Loot.RandomEssence();
item.Amount = Utility.Random(3, 6);
DropItem(item);
}
if (0.1 > Utility.RandomDouble())
{
switch (Utility.Random(4))
{
case 0: DropItem(new Taint()); break;
case 1: DropItem(new Corruption()); break;
case 2: DropItem(new Blight()); break;
case 3: DropItem(new LuminescentFungi()); break;
}
}
}