- Terrible Hatchlings quest fixed to only reward SE weapons and armor.
- Slayer and opposition systems now account for inheritance. - Added Satyrs to the fey opposition group. - Added fey slayer vulnerability to cu sidhes. - Added reptilian and dragon slayer vulnerabilities to reptalons. - Various mage AI additions for necromancers. (Spirit speak for healing, pain spike and strangle for damage, automatic mage/necro bias by skill value.) - Fixed a targeting issue not accounting for FightMode.Evil versus low karma targeting. - Added melee damage bonus for Talisman killer properties. - Added general ML loot for ML areas. - Added ML minor artifact drops for named ML mobs. - Added named ML mobs for Bedlam.
This commit is contained in:
parent
a0bc5e2349
commit
43e5982fbb
22 changed files with 1207 additions and 231 deletions
|
|
@ -71,17 +71,23 @@ namespace Server.Engines.Quests.Zento
|
|||
|
||||
if ( Utility.RandomBool() )
|
||||
{
|
||||
BaseWeapon weapon = Loot.RandomWeapon( true );
|
||||
BaseRunicTool.ApplyAttributesTo( weapon, 3, 10, 30 );
|
||||
BaseWeapon weapon = Loot.Construct( Loot.SEWeaponTypes ) as BaseWeapon;
|
||||
|
||||
cont.DropItem( weapon );
|
||||
if ( weapon != null )
|
||||
{
|
||||
BaseRunicTool.ApplyAttributesTo( weapon, 3, 10, 30 );
|
||||
cont.DropItem( weapon );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
BaseArmor armor = Loot.RandomArmor( true );
|
||||
BaseRunicTool.ApplyAttributesTo( armor, 1, 10, 20 );
|
||||
BaseArmor armor = Loot.Construct( Loot.SEArmorTypes ) as BaseArmor;
|
||||
|
||||
cont.DropItem( armor );
|
||||
if ( armor != null )
|
||||
{
|
||||
BaseRunicTool.ApplyAttributesTo( armor, 1, 10, 20 );
|
||||
cont.DropItem( armor );
|
||||
}
|
||||
}
|
||||
|
||||
if ( player.PlaceInBackpack( cont ) )
|
||||
|
|
|
|||
|
|
@ -7,7 +7,6 @@ namespace Server.Items
|
|||
{
|
||||
public abstract class BasePigmentsOfTokuno : Item, IUsesRemaining
|
||||
{
|
||||
|
||||
private static Type[] m_Glasses = new Type[]
|
||||
{
|
||||
typeof( MaritimeGlasses ),
|
||||
|
|
@ -61,23 +60,23 @@ namespace Server.Items
|
|||
};
|
||||
|
||||
public override int LabelNumber { get { return 1070933; } } // Pigments of Tokuno
|
||||
|
||||
|
||||
private int m_UsesRemaining;
|
||||
private TextDefinition m_Label;
|
||||
|
||||
protected TextDefinition Label
|
||||
{
|
||||
|
||||
protected TextDefinition Label
|
||||
{
|
||||
get { return m_Label; }
|
||||
set { m_Label = value; InvalidateProperties(); }
|
||||
}
|
||||
|
||||
|
||||
#region Old Item Serialization Vars
|
||||
/* DO NOT USE! Only used in serialization of pigments that originally derived from Item */
|
||||
private bool m_InheritsItem;
|
||||
|
||||
|
||||
protected bool InheritsItem
|
||||
{
|
||||
get{ return m_InheritsItem; }
|
||||
{
|
||||
get{ return m_InheritsItem; }
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
|
@ -86,13 +85,13 @@ namespace Server.Items
|
|||
Weight = 1.0;
|
||||
m_UsesRemaining = 1;
|
||||
}
|
||||
|
||||
|
||||
public BasePigmentsOfTokuno( int uses ) : base( 0xEFF )
|
||||
{
|
||||
Weight = 1.0;
|
||||
m_UsesRemaining = uses;
|
||||
}
|
||||
|
||||
|
||||
public BasePigmentsOfTokuno( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
|
@ -117,7 +116,7 @@ namespace Server.Items
|
|||
else
|
||||
from.SendLocalizedMessage( 502436 ); // That is not accessible.
|
||||
}
|
||||
|
||||
|
||||
private void InternalCallback( Mobile from, object targeted, object state )
|
||||
{
|
||||
BasePigmentsOfTokuno pigment = (BasePigmentsOfTokuno)state;
|
||||
|
|
@ -154,7 +153,7 @@ namespace Server.Items
|
|||
from.PlaySound(0x23E); // As per OSI TC1
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static bool IsValidItem( Item i )
|
||||
{
|
||||
if( i is BasePigmentsOfTokuno )
|
||||
|
|
@ -177,12 +176,12 @@ namespace Server.Items
|
|||
if ( i is ITokunoDyable )
|
||||
return true;
|
||||
|
||||
return(
|
||||
return(
|
||||
IsInTypeList( t, TreasuresOfTokuno.LesserArtifactsTotal )
|
||||
|| IsInTypeList( t, TreasuresOfTokuno.GreaterArtifacts )
|
||||
|| IsInTypeList( t, TreasuresOfTokuno.GreaterArtifacts )
|
||||
|| IsInTypeList( t, DemonKnight.ArtifactRarity10 )
|
||||
|| IsInTypeList( t, DemonKnight.ArtifactRarity11 )
|
||||
|| IsInTypeList( t, BaseCreature.MinorArtifactsMl )
|
||||
|| IsInTypeList( t, MondainsLegacy.Artifacts )
|
||||
|| IsInTypeList( t, StealableArtifactsSpawner.TypesOfEntires )
|
||||
|| IsInTypeList( t, Paragon.Artifacts )
|
||||
|| IsInTypeList( t, Leviathan.Artifacts )
|
||||
|
|
@ -191,7 +190,7 @@ namespace Server.Items
|
|||
|| IsInTypeList( t, m_DyableHeritageItems )
|
||||
|| IsInTypeList( t, m_Glasses )
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
private static bool IsInTypeList( Type t, Type[] list )
|
||||
{
|
||||
|
|
@ -202,7 +201,7 @@ namespace Server.Items
|
|||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
|
@ -217,10 +216,10 @@ namespace Server.Items
|
|||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
|
||||
switch ( version )
|
||||
{
|
||||
case 1:
|
||||
case 1:
|
||||
{
|
||||
m_UsesRemaining = reader.ReadEncodedInt();
|
||||
break;
|
||||
|
|
@ -228,23 +227,23 @@ namespace Server.Items
|
|||
case 0: // Old pigments that inherited from item
|
||||
{
|
||||
m_InheritsItem = true;
|
||||
|
||||
|
||||
if ( this is LesserPigmentsOfTokuno )
|
||||
((LesserPigmentsOfTokuno)this).Type = (LesserPigmentType)reader.ReadEncodedInt();
|
||||
else if ( this is PigmentsOfTokuno )
|
||||
((PigmentsOfTokuno)this).Type = (PigmentType)reader.ReadEncodedInt();
|
||||
else if ( this is MetalPigmentsOfTokuno )
|
||||
reader.ReadEncodedInt();
|
||||
|
||||
|
||||
m_UsesRemaining = reader.ReadEncodedInt();
|
||||
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
#region IUsesRemaining Members
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
|
|
@ -259,7 +258,7 @@ namespace Server.Items
|
|||
get { return true; }
|
||||
set {}
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue