ModernUO/Scripts/Engines/Quests/Witch Apprentice/Ingredient.cs
mark 208acafd7e Runic sewing kits will no longer apply durability
http://www.uodemise.com/forum/showthread.php?t=133757

Vendor Look/Browse/View will now work properly
http://www.uodemise.com/forum/showthread.php?t=135531

Stacked Eggbombs will now unstack correctly
http://www.uodemise.com/forum/showthread.php?t=134321

Unbonded pets should logout too
http://www.uodemise.com/forum/showthread.php?t=119262

Paragon chests placed on player vendors will now behave correctly
http://www.uodemise.com/forum/showthread.php?t=116864

Proper party fame/karma sharing
http://www.uodemise.com/forum/showthread.php?t=122749

Guild Alliance/War update bug fixed
http://www.uodemise.com/forum/showthread.php?t=115236

Fukiya properties updates and loading bug fixed
http://www.uodemise.com/forum/showthread.php?t=136042

Shuriken, same problems as fukiya
http://www.uodemise.com/forum/showthread.php?t=120212

greater mongbats will now be recognised as quest objectives
http://www.uodemise.com/forum/showthread.php?t=128072

divine fury sound tweaks.
http://www.uodemise.com/forum/showthread.php?t=136489

pet stat gains fix
http://www.uodemise.com/forum/showthread.php?t=134820

Pets follow speed corrected
http://www.uodemise.com/forum/showthread.php?t=124774

E-fields no longer block in trammel rulesets.
http://www.uodemise.com/forum/showthread.php?t=116680

Disguise kit timer fix
http://www.uodemise.com/forum/showthread.php?t=133913

Meer Mage special abilities fixes.
http://www.uodemise.com/forum/showthread.php?t=122134

Missing food property if eggs, in animal lore gump
http://www.uodemise.com/forum/showthread.php?t=135258

Pets will follow after an attack is completed.
http://www.uodemise.com/forum/showthread.php?t=135962

Hides should not be scissored whilst still on the corpse
http://www.uodemise.com/forum/showthread.php?t=118799

Pet bonding changed to include jewelry skill adjustments.
http://www.uodemise.com/forum/showthread.php?t=121060

Skinning knife can be used to cut corpses
http://www.uodemise.com/forum/showthread.php?t=115248

PlayerVendors will correctly send update packets to the client when hair is changed
http://www.uodemise.com/forum/showthread.php?t=120216

Corrections to house sign gump
http://www.uodemise.com/forum/showthread.php?t=134406

pet "guarding" system message added
http://www.uodemise.com/forum/showthread.php?t=134091

Giant toads should be aggressive
http://www.uodemise.com/forum/showthread.php?t=133984

bardiche and halberds are axe tools.
http://www.uodemise.com/forum/showthread.php?t=122739
2010-01-17 06:59:32 +00:00

112 lines
No EOL
3 KiB
C#

using System;
using Server;
using Server.Mobiles;
namespace Server.Engines.Quests.Hag
{
public enum Ingredient
{
SheepLiver,
RabbitsFoot,
MongbatWing,
ChickenGizzard,
RatTail,
FrogsLeg,
DeerHeart,
LizardTongue,
SlimeOoze,
SpiritEssence,
SwampWater,
RedMushrooms,
Bones,
StarChart,
Whiskey
}
public class IngredientInfo
{
private static IngredientInfo[] m_Table = new IngredientInfo[]
{
// sheep liver
new IngredientInfo( 1055020, 5, typeof( Sheep ) ),
// rabbit's foot
new IngredientInfo( 1055021, 5, typeof( Rabbit ), typeof( JackRabbit ) ),
// mongbat wing
new IngredientInfo( 1055022, 5, typeof( Mongbat ), typeof( GreaterMongbat ) ),
// chicken gizzard
new IngredientInfo( 1055023, 5, typeof( Chicken ) ),
// rat tail
new IngredientInfo( 1055024, 5, typeof( Rat ), typeof( GiantRat ), typeof( Sewerrat ) ),
// frog's leg
new IngredientInfo( 1055025, 5, typeof( BullFrog ) ),
// deer heart
new IngredientInfo( 1055026, 5, typeof( Hind ), typeof( GreatHart ) ),
// lizard tongue
new IngredientInfo( 1055027, 5, typeof( LavaLizard ), typeof( Lizardman ) ),
// slime ooze
new IngredientInfo( 1055028, 5, typeof( Slime ) ),
// spirit essence
new IngredientInfo( 1055029, 5, typeof( Ghoul ), typeof( Spectre ), typeof( Shade ), typeof( Wraith ), typeof( Bogle ) ),
// Swamp Water
new IngredientInfo( 1055030, 1 ),
// Freshly Cut Red Mushrooms
new IngredientInfo( 1055031, 1 ),
// Bones Buried In Hallowed Ground
new IngredientInfo( 1055032, 1 ),
// Star Chart
new IngredientInfo( 1055033, 1 ),
// Captain Blackheart's Whiskey
new IngredientInfo( 1055034, 1 )
};
public static IngredientInfo Get( Ingredient ingredient )
{
int index = (int)ingredient;
if ( index >= 0 && index < m_Table.Length )
return m_Table[index];
else
return m_Table[0];
}
public static Ingredient RandomIngredient( Ingredient[] oldIngredients )
{
int length = m_Table.Length - oldIngredients.Length;
Ingredient[] ingredients = new Ingredient[length];
for ( int i = 0, n = 0; i < m_Table.Length && n < ingredients.Length; i++ )
{
Ingredient currIngredient = (Ingredient)i;
bool found = false;
for ( int j = 0; !found && j < oldIngredients.Length; j++ )
{
if ( oldIngredients[j] == currIngredient )
found = true;
}
if ( !found )
ingredients[n++] = currIngredient;
}
int index = Utility.Random( ingredients.Length );
return ingredients[index];
}
private int m_Name;
private Type[] m_Creatures;
private int m_Quantity;
public int Name{ get{ return m_Name; } }
public Type[] Creatures{ get{ return m_Creatures; } }
public int Quantity{ get{ return m_Quantity; } }
private IngredientInfo( int name, int quantity, params Type[] creatures )
{
m_Name = name;
m_Creatures = creatures;
m_Quantity = quantity;
}
}
}