From 2d7747154cea645518c0413eb5b964ec67df70d0 Mon Sep 17 00:00:00 2001 From: xavier Date: Thu, 7 Jul 2011 23:51:33 +0000 Subject: [PATCH] corrections for more champ spawn replicas. correction for mounted potion animation. --- .../Decorative/DemonSkull.cs | 3 +-- .../Champion Artifacts/Decorative/Pier.cs | 27 ++++++++++++++++++- .../Decorative/WallBlood.cs | 3 ++- .../Champion Artifacts/Decorative/Web.cs | 13 ++++++++- .../Unique/AcidProofRobe.cs | 3 ++- .../Unique/OrcChieftainHelm.cs | 5 ++-- .../Skill Items/Magical/Potions/BasePotion.cs | 2 +- Scripts/Items/Special/MonsterStatuette.cs | 4 +++ 8 files changed, 51 insertions(+), 9 deletions(-) diff --git a/Scripts/Items/Champion Artifacts/Decorative/DemonSkull.cs b/Scripts/Items/Champion Artifacts/Decorative/DemonSkull.cs index e12ff049c..e174c3167 100644 --- a/Scripts/Items/Champion Artifacts/Decorative/DemonSkull.cs +++ b/Scripts/Items/Champion Artifacts/Decorative/DemonSkull.cs @@ -4,11 +4,10 @@ using Server.Items; namespace Server.Items { - [FlipableAttribute( 0x2250, 0x2251 )] public class DemonSkull : Item { [Constructable] - public DemonSkull() : base( 0x2250 ) + public DemonSkull() : base( 0x224e + Utility.Random(4) ) { } diff --git a/Scripts/Items/Champion Artifacts/Decorative/Pier.cs b/Scripts/Items/Champion Artifacts/Decorative/Pier.cs index 7883ae112..2ff07a33c 100644 --- a/Scripts/Items/Champion Artifacts/Decorative/Pier.cs +++ b/Scripts/Items/Champion Artifacts/Decorative/Pier.cs @@ -6,8 +6,33 @@ namespace Server.Items { public class Pier : Item { + /* + * This does not make a lot of sense, being a "Pier" + * and having possible itemids that have nothing + * to do with piers. The three items here are basically + * permutations of the same "drop", or item that + * will be randomly selected when the item drops. + * + * It was either this, or make 2 + * new classes named to reflect that they are rocks + * in water, or put them all in one class. Either + * is kind of senseless, so it is what it is. + * + */ + + private static int[] m_itemids = new int[] + { + 0x3486, 0x348b, 0x3ae + }; + [Constructable] - public Pier() : base( 0x03AE ) + public Pier() + : base(m_itemids[Utility.Random(3)]) + { + } + + public Pier(int itemid) + : base(itemid) { } diff --git a/Scripts/Items/Champion Artifacts/Decorative/WallBlood.cs b/Scripts/Items/Champion Artifacts/Decorative/WallBlood.cs index 31d7a0f2c..c803bc011 100644 --- a/Scripts/Items/Champion Artifacts/Decorative/WallBlood.cs +++ b/Scripts/Items/Champion Artifacts/Decorative/WallBlood.cs @@ -7,7 +7,8 @@ namespace Server.Items public class WallBlood : Item { [Constructable] - public WallBlood() : base( 0x1D95 ) + public WallBlood() + : base(Utility.RandomBool() ? 0x1D95 : 0x1D94) { } diff --git a/Scripts/Items/Champion Artifacts/Decorative/Web.cs b/Scripts/Items/Champion Artifacts/Decorative/Web.cs index aad2f0e8d..b5bc45174 100644 --- a/Scripts/Items/Champion Artifacts/Decorative/Web.cs +++ b/Scripts/Items/Champion Artifacts/Decorative/Web.cs @@ -5,8 +5,19 @@ namespace Server.Items { public class Web : Item { + private static int[] m_itemids = new int[] + { + 0x10d7, 0x10d8, 0x10dd + }; + [Constructable] - public Web() : base( 0x10DD ) + public Web() + : base(m_itemids[Utility.Random(3)]) + { + } + + [Constructable] + public Web( int itemid ) : base( itemid ) { } diff --git a/Scripts/Items/Champion Artifacts/Unique/AcidProofRobe.cs b/Scripts/Items/Champion Artifacts/Unique/AcidProofRobe.cs index 0dfe9de58..29c61eceb 100644 --- a/Scripts/Items/Champion Artifacts/Unique/AcidProofRobe.cs +++ b/Scripts/Items/Champion Artifacts/Unique/AcidProofRobe.cs @@ -37,7 +37,8 @@ namespace Server.Items base.Deserialize( reader ); int version = reader.ReadInt(); - if (version < 1) + + if (version < 1 && Hue == 1) { Hue = 0x455; } diff --git a/Scripts/Items/Champion Artifacts/Unique/OrcChieftainHelm.cs b/Scripts/Items/Champion Artifacts/Unique/OrcChieftainHelm.cs index 7b694deac..d205c4962 100644 --- a/Scripts/Items/Champion Artifacts/Unique/OrcChieftainHelm.cs +++ b/Scripts/Items/Champion Artifacts/Unique/OrcChieftainHelm.cs @@ -48,9 +48,10 @@ namespace Server.Items base.Deserialize( reader ); int version = reader.ReadInt(); - if (version < 1) + + if (version < 1 && Hue == 0x3f) /* Pigmented? */ { - Hue = 0x1D6; + Hue = 0x2a3; } } } diff --git a/Scripts/Items/Skill Items/Magical/Potions/BasePotion.cs b/Scripts/Items/Skill Items/Magical/Potions/BasePotion.cs index d57a9af86..5b797c9c8 100644 --- a/Scripts/Items/Skill Items/Magical/Potions/BasePotion.cs +++ b/Scripts/Items/Skill Items/Magical/Potions/BasePotion.cs @@ -173,7 +173,7 @@ namespace Server.Items m.AddToBackpack( new Bottle() ); - if ( m.Body.IsHuman /*&& !m.Mounted*/ ) + if ( m.Body.IsHuman && !m.Mounted ) m.Animate( 34, 5, 1, true, false, 0 ); } diff --git a/Scripts/Items/Special/MonsterStatuette.cs b/Scripts/Items/Special/MonsterStatuette.cs index 72dbf2788..d84c43117 100644 --- a/Scripts/Items/Special/MonsterStatuette.cs +++ b/Scripts/Items/Special/MonsterStatuette.cs @@ -43,6 +43,8 @@ namespace Server.Items Spider, OphidianArchMage, OphidianWarrior, + OphidianKnight, + OphidianMage, DreadHorn } @@ -105,6 +107,8 @@ namespace Server.Items /* Spider */ new MonsterStatuetteInfo( 1029668, 0x25C4, 1170 ), /* OphidianArchMage */ new MonsterStatuetteInfo( 1029641, 0x25A9, 639 ), /* OphidianWarrior */ new MonsterStatuetteInfo( 1029645, 0x25AD, 634 ), + /* OphidianKnight */ new MonsterStatuetteInfo( 1029642, 0x25aa, 634 ), + /* OphidianMage */ new MonsterStatuetteInfo( 1029643, 0x25ab, 639 ), /* DreadHorn */ new MonsterStatuetteInfo( 1031651, 0x2D83, 0xA8 ) };