Heritage items, talismans

This commit is contained in:
xavier 2011-07-24 01:47:01 +00:00
parent e7db1fd9f7
commit 129cac945b
109 changed files with 11659 additions and 188 deletions

View file

@ -630,6 +630,44 @@ namespace Server
{
return Construct( m_LibraryBookTypes ) as BaseBook;
}
public static BaseTalisman RandomTalisman()
{
BaseTalisman talisman = new BaseTalisman( BaseTalisman.GetRandomItemID() );
talisman.Summoner = BaseTalisman.GetRandomSummoner();
if ( talisman.Summoner.IsEmpty )
{
talisman.Removal = BaseTalisman.GetRandomRemoval();
if ( talisman.Removal != TalismanRemoval.None )
{
talisman.MaxCharges = BaseTalisman.GetRandomCharges();
talisman.MaxChargeTime = 1200;
}
}
else
{
talisman.MaxCharges = Utility.RandomMinMax( 10, 50 );
if ( talisman.Summoner.IsItem )
talisman.MaxChargeTime = 60;
else
talisman.MaxChargeTime = 1800;
}
talisman.Blessed = BaseTalisman.GetRandomBlessed();
talisman.Slayer = BaseTalisman.GetRandomSlayer();
talisman.Protection = BaseTalisman.GetRandomProtection();
talisman.Killer = BaseTalisman.GetRandomKiller();
talisman.Skill = BaseTalisman.GetRandomSkill();
talisman.ExceptionalBonus = BaseTalisman.GetRandomExceptional();
talisman.SuccessBonus = BaseTalisman.GetRandomSuccessful();
talisman.Charges = talisman.MaxCharges;
return talisman;
}
#endregion
#region Construction methods