lover1973 said:I replaced the old D2 sockets system with the new version. so players can find The Gems in monsters' lootpacks, but no Socketed Items, I think that is because i removed all these codes about this system from Basecreature.cs. and I dont wanna let the socketed items can be crafted by players. how can I make gems and socketed items all in lootpack??
i lost the Basecreature.cs file with D2 socket system. Could anybody give that one?? Thanks..
public override bool OnBeforeDeath()
{
// <Socketed Weapon System>
// editable
private int m_WeaponSocketRoll = Utility.Random( 75 );
private int m_ArmorSocketRoll = Utility.Random( 100 );
private int m_ShieldSocketRoll = Utility.Random( 75 );
// end editable
private int m_SocketWeaponRoll = Utility.Random( 43 );
private int m_SocketArmorRoll = Utility.Random( 41 );
private int m_SocketShieldRoll = Utility.Random( 7 );
// editable
private int m_ChippedSocketGemRoll = Utility.Random( 32 );
private int m_FlawedSocketGemRoll = Utility.Random( 75 );
private int m_PlainSocketGemRoll = Utility.Random( 250 );
private int m_FlawlessSocketGemRoll = Utility.Random( 500 );
private int m_PerfectSocketGemRoll = Utility.Random( 1500 );
// end editable
private int m_GetChippedSocketGemRoll = Utility.Random( 7 );
private int m_GetFlawedSocketGemRoll = Utility.Random( 7 );
private int m_GetPlainSocketGemRoll = Utility.Random( 7 );
private int m_GetFlawlessSocketGemRoll = Utility.Random( 7 );
private int m_GetPerfectSocketGemRoll = Utility.Random( 7 );
// </Socketed Weapon System>
public override bool OnBeforeDeath()
{
// <Socketed Weapon System>
if ( m_WeaponSocketRoll == 0 )
{
if ( m_SocketWeaponRoll == 0 )
{
PackItem( new SocketedAxe() );
}
else if ( m_SocketWeaponRoll == 1 )
{
PackItem( new SocketedBattleAxe() );
}
else if ( m_SocketWeaponRoll == 2 )
{
PackItem( new SocketedDoubleAxe() );
}
else if ( m_SocketWeaponRoll == 3 )
{
PackItem( new SocketedExecutionersAxe() );
}
else if ( m_SocketWeaponRoll == 4 )
{
PackItem( new SocketedLargeBattleAxe() );
}
else if ( m_SocketWeaponRoll == 5 )
{
PackItem( new SocketedTwoHandedAxe() );
}
else if ( m_SocketWeaponRoll == 6 )
{
PackItem( new SocketedWarAxe() );
}
else if ( m_SocketWeaponRoll == 7 )
{
PackItem( new SocketedDagger() );
}
else if ( m_SocketWeaponRoll == 8 )
{
PackItem( new SocketedClub() );
}
else if ( m_SocketWeaponRoll == 9 )
{
PackItem( new SocketedHammerPick() );
}
else if ( m_SocketWeaponRoll == 10 )
{
PackItem( new SocketedMace() );
}
else if ( m_SocketWeaponRoll == 11 )
{
PackItem( new SocketedMaul() );
}
else if ( m_SocketWeaponRoll == 12 )
{
PackItem( new SocketedScepter() );
}
else if ( m_SocketWeaponRoll == 13 )
{
PackItem( new SocketedWarHammer() );
}
else if ( m_SocketWeaponRoll == 14 )
{
PackItem( new SocketedWarMace() );
}
else if ( m_SocketWeaponRoll == 15 )
{
PackItem( new SocketedBardiche() );
}
else if ( m_SocketWeaponRoll == 16 )
{
PackItem( new SocketedHalberd() );
}
else if ( m_SocketWeaponRoll == 17 )
{
PackItem( new SocketedScythe() );
}
else if ( m_SocketWeaponRoll == 18 )
{
PackItem( new SocketedBow() );
}
else if ( m_SocketWeaponRoll == 19 )
{
PackItem( new SocketedCompositeBow() );
}
else if ( m_SocketWeaponRoll == 20 )
{
PackItem( new SocketedCrossbow() );
}
else if ( m_SocketWeaponRoll == 21 )
{
PackItem( new SocketedHeavyCrossbow() );
}
else if ( m_SocketWeaponRoll == 22 )
{
PackItem( new SocketedRepeatingCrossbow() );
}
else if ( m_SocketWeaponRoll == 23 )
{
PackItem( new SocketedBladedStaff() );
}
else if ( m_SocketWeaponRoll == 24 )
{
PackItem( new SocketedDoubleBladedStaff() );
}
else if ( m_SocketWeaponRoll == 25 )
{
PackItem( new SocketedPike() );
}
else if ( m_SocketWeaponRoll == 26 )
{
PackItem( new SocketedShortSpear() );
}
else if ( m_SocketWeaponRoll == 27 )
{
PackItem( new SocketedSpear() );
}
else if ( m_SocketWeaponRoll == 28 )
{
PackItem( new SocketedWarFork() );
}
else if ( m_SocketWeaponRoll == 29 )
{
PackItem( new SocketedPitchfork() );
}
else if ( m_SocketWeaponRoll == 30 )
{
PackItem( new SocketedBlackStaff() );
}
else if ( m_SocketWeaponRoll == 31 )
{
PackItem( new SocketedGnarledStaff() );
}
else if ( m_SocketWeaponRoll == 32 )
{
PackItem( new SocketedQuarterStaff() );
}
else if ( m_SocketWeaponRoll == 33 )
{
PackItem( new SocketedBoneHarvester() );
}
else if ( m_SocketWeaponRoll == 34 )
{
PackItem( new SocketedBroadsword() );
}
else if ( m_SocketWeaponRoll == 35 )
{
PackItem( new SocketedCrescentBlade() );
}
else if ( m_SocketWeaponRoll == 36 )
{
PackItem( new SocketedCutlass() );
}
else if ( m_SocketWeaponRoll == 37 )
{
PackItem( new SocketedKatana() );
}
else if ( m_SocketWeaponRoll == 38 )
{
PackItem( new SocketedKryss() );
}
else if ( m_SocketWeaponRoll == 39 )
{
PackItem( new SocketedLance() );
}
else if ( m_SocketWeaponRoll == 40 )
{
PackItem( new SocketedLongSword() );
}
else if ( m_SocketWeaponRoll == 41 )
{
PackItem( new SocketedScimitar() );
}
else if ( m_SocketWeaponRoll == 42 )
{
PackItem( new SocketedVikingSword() );
}
}
if ( m_ArmorSocketRoll == 0 )
{
if ( m_SocketArmorRoll == 0 )
{
PackItem( new SocketedBoneArms() );
}
else if ( m_SocketArmorRoll == 1 )
{
PackItem( new SocketedBoneChest() );
}
else if ( m_SocketArmorRoll == 2 )
{
PackItem( new SocketedBoneGloves() );
}
else if ( m_SocketArmorRoll == 3 )
{
PackItem( new SocketedBoneLegs() );
}
else if ( m_SocketArmorRoll == 4 )
{
PackItem( new SocketedChainChest() );
}
else if ( m_SocketArmorRoll == 5 )
{
PackItem( new SocketedChainLegs() );
}
else if ( m_SocketArmorRoll == 6 )
{
PackItem( new SocketedBascinet() );
}
else if ( m_SocketArmorRoll == 7 )
{
PackItem( new SocketedBoneHelm() );
}
else if ( m_SocketArmorRoll == 8 )
{
PackItem( new SocketedChainCoif() );
}
else if ( m_SocketArmorRoll == 9 )
{
PackItem( new SocketedCloseHelm() );
}
else if ( m_SocketArmorRoll == 10 )
{
PackItem( new SocketedHelmet() );
}
else if ( m_SocketArmorRoll == 11 )
{
PackItem( new SocketedLeatherCap() );
}
else if ( m_SocketArmorRoll == 12 )
{
PackItem( new SocketedNorseHelm() );
}
else if ( m_SocketArmorRoll == 13 )
{
PackItem( new SocketedOrcHelm() );
}
else if ( m_SocketArmorRoll == 14 )
{
PackItem( new SocketedPlateHelm() );
}
else if ( m_SocketArmorRoll == 15 )
{
PackItem( new SocketedFemaleLeatherChest() );
}
else if ( m_SocketArmorRoll == 16 )
{
PackItem( new SocketedLeatherArms() );
}
else if ( m_SocketArmorRoll == 17 )
{
PackItem( new SocketedLeatherBustierArms() );
}
else if ( m_SocketArmorRoll == 18 )
{
PackItem( new SocketedLeatherChest() );
}
else if ( m_SocketArmorRoll == 19 )
{
PackItem( new SocketedLeatherGloves() );
}
else if ( m_SocketArmorRoll == 20 )
{
PackItem( new SocketedLeatherGorget() );
}
else if ( m_SocketArmorRoll == 21 )
{
PackItem( new SocketedLeatherLegs() );
}
else if ( m_SocketArmorRoll == 22 )
{
PackItem( new SocketedLeatherShorts() );
}
else if ( m_SocketArmorRoll == 23 )
{
PackItem( new SocketedLeatherSkirt() );
}
else if ( m_SocketArmorRoll == 24 )
{
PackItem( new SocketedFemalePlateChest() );
}
else if ( m_SocketArmorRoll == 25 )
{
PackItem( new SocketedPlateArms() );
}
else if ( m_SocketArmorRoll == 26 )
{
PackItem( new SocketedPlateChest() );
}
else if ( m_SocketArmorRoll == 27 )
{
PackItem( new SocketedPlateGloves() );
}
else if ( m_SocketArmorRoll == 28 )
{
PackItem( new SocketedPlateGorget() );
}
else if ( m_SocketArmorRoll == 29 )
{
PackItem( new SocketedPlateLegs() );
}
else if ( m_SocketArmorRoll == 30 )
{
PackItem( new SocketedRingmailArms() );
}
else if ( m_SocketArmorRoll == 31 )
{
PackItem( new SocketedRingmailChest() );
}
else if ( m_SocketArmorRoll == 32 )
{
PackItem( new SocketedRingmailGloves() );
}
else if ( m_SocketArmorRoll == 33 )
{
PackItem( new SocketedRingmailLegs() );
}
else if ( m_SocketArmorRoll == 34 )
{
PackItem( new SocketedFemaleStuddedChest() );
}
else if ( m_SocketArmorRoll == 35 )
{
PackItem( new SocketedStuddedArms() );
}
else if ( m_SocketArmorRoll == 36 )
{
PackItem( new SocketedStuddedBustierArms() );
}
else if ( m_SocketArmorRoll == 37 )
{
PackItem( new SocketedStuddedChest() );
}
else if ( m_SocketArmorRoll == 38 )
{
PackItem( new SocketedStuddedGloves() );
}
else if ( m_SocketArmorRoll == 39 )
{
PackItem( new SocketedStuddedGorget() );
}
else if ( m_SocketArmorRoll == 40 )
{
PackItem( new SocketedStuddedLegs() );
}
}
if ( m_ShieldSocketRoll == 0 )
{
if ( m_SocketShieldRoll == 0 )
{
PackItem( new SocketedBronzeShield() );
}
else if ( m_SocketShieldRoll == 1 )
{
PackItem( new SocketedBuckler() );
}
else if ( m_SocketShieldRoll == 2 )
{
PackItem( new SocketedHeaterShield() );
}
else if ( m_SocketShieldRoll == 3 )
{
PackItem( new SocketedMetalKiteShield() );
}
else if ( m_SocketShieldRoll == 4 )
{
PackItem( new SocketedMetalShield() );
}
else if ( m_SocketShieldRoll == 5 )
{
PackItem( new SocketedWoodenKiteShield() );
}
else if ( m_SocketShieldRoll == 6 )
{
PackItem( new SocketedWoodenShield() );
}
}
if ( m_ChippedSocketGemRoll == 0 )
{
if ( m_GetChippedSocketGemRoll == 0 )
{
PackItem( new ChippedAmethyst() );
}
else if ( m_GetChippedSocketGemRoll == 1 )
{
PackItem( new ChippedDiamond() );
}
else if ( m_GetChippedSocketGemRoll == 2 )
{
PackItem( new ChippedEmerald() );
}
else if ( m_GetChippedSocketGemRoll == 3 )
{
PackItem( new ChippedRuby() );
}
else if ( m_GetChippedSocketGemRoll == 4 )
{
PackItem( new ChippedSapphire() );
}
else if ( m_GetChippedSocketGemRoll == 5 )
{
PackItem( new ChippedSkull() );
}
else if ( m_GetChippedSocketGemRoll == 6 )
{
PackItem( new ChippedTopaz() );
}
}
if ( m_FlawedSocketGemRoll == 0 )
{
if ( m_GetFlawedSocketGemRoll == 0 )
{
PackItem( new FlawedAmethyst() );
}
else if ( m_GetFlawedSocketGemRoll == 1 )
{
PackItem( new FlawedDiamond() );
}
else if ( m_GetFlawedSocketGemRoll == 2 )
{
PackItem( new FlawedEmerald() );
}
else if ( m_GetFlawedSocketGemRoll == 3 )
{
PackItem( new FlawedRuby() );
}
else if ( m_GetFlawedSocketGemRoll == 4 )
{
PackItem( new FlawedSapphire() );
}
else if ( m_GetFlawedSocketGemRoll == 5 )
{
PackItem( new FlawedSkull() );
}
else if ( m_GetFlawedSocketGemRoll == 6 )
{
PackItem( new FlawedTopaz() );
}
}
if ( m_PlainSocketGemRoll == 0 )
{
if ( m_GetPlainSocketGemRoll == 0 )
{
PackItem( new PlainAmethyst() );
}
else if ( m_GetPlainSocketGemRoll == 1 )
{
PackItem( new PlainDiamond() );
}
else if ( m_GetPlainSocketGemRoll == 2 )
{
PackItem( new PlainEmerald() );
}
else if ( m_GetPlainSocketGemRoll == 3 )
{
PackItem( new PlainRuby() );
}
else if ( m_GetPlainSocketGemRoll == 4 )
{
PackItem( new PlainSapphire() );
}
else if ( m_GetPlainSocketGemRoll == 5 )
{
PackItem( new PlainSkull() );
}
else if ( m_GetPlainSocketGemRoll == 6 )
{
PackItem( new PlainTopaz() );
}
}
if ( m_FlawlessSocketGemRoll == 0 )
{
if ( m_GetFlawlessSocketGemRoll == 0 )
{
PackItem( new FlawlessAmethyst() );
}
else if ( m_GetFlawlessSocketGemRoll == 1 )
{
PackItem( new FlawlessDiamond() );
}
else if ( m_GetFlawlessSocketGemRoll == 2 )
{
PackItem( new FlawlessEmerald() );
}
else if ( m_GetFlawlessSocketGemRoll == 3 )
{
PackItem( new FlawlessRuby() );
}
else if ( m_GetFlawlessSocketGemRoll == 4 )
{
PackItem( new FlawlessSapphire() );
}
else if ( m_GetFlawlessSocketGemRoll == 5 )
{
PackItem( new FlawlessSkull() );
}
else if ( m_GetFlawlessSocketGemRoll == 6 )
{
PackItem( new FlawlessTopaz() );
}
}
if ( m_PerfectSocketGemRoll == 0 )
{
if ( m_GetPerfectSocketGemRoll == 0 )
{
PackItem( new PerfectAmethyst() );
}
else if ( m_GetPerfectSocketGemRoll == 1 )
{
PackItem( new PerfectDiamond() );
}
else if ( m_GetPerfectSocketGemRoll == 2 )
{
PackItem( new PerfectEmerald() );
}
else if ( m_GetPerfectSocketGemRoll == 3 )
{
PackItem( new PerfectRuby() );
}
else if ( m_GetPerfectSocketGemRoll == 4 )
{
PackItem( new PerfectSapphire() );
}
else if ( m_GetPerfectSocketGemRoll == 5 )
{
PackItem( new PerfectSkull() );
}
else if ( m_GetPerfectSocketGemRoll == 6 )
{
PackItem( new PerfectTopaz() );
}
}
// </Socketed Weapon System>
public virtual string SocketLabel{ get{ return m_SocketLabel; } set{ m_SocketLabel = value; } }
using System;
using System.IO;
using System.Reflection;
using Server;
using Server.Items;
namespace Server
{
public class Loot
{
#region List definitions
private static Type[] m_AosWeaponTypes = new Type[]
{
typeof( Scythe ), typeof( BoneHarvester ), typeof( Scepter ),
typeof( BladedStaff ), typeof( Pike ), typeof( DoubleBladedStaff ),
typeof( Lance ), typeof( CrescentBlade ), typeof( CompositeBow ),
typeof( RepeatingCrossbow )
};
public static Type[] AosWeaponTypes{ get{ return m_AosWeaponTypes; } }
private static Type[] m_WeaponTypes = new Type[]
{
typeof( Axe ), typeof( BattleAxe ), typeof( DoubleAxe ),
typeof( ExecutionersAxe ), typeof( Hatchet ), typeof( LargeBattleAxe ),
typeof( TwoHandedAxe ), typeof( WarAxe ), typeof( Club ),
typeof( Mace ), typeof( Maul ), typeof( WarHammer ),
typeof( WarMace ), typeof( Bardiche ), typeof( Halberd ),
typeof( Bow ), typeof( Crossbow ), typeof( HeavyCrossbow ),
typeof( Spear ), typeof( ShortSpear ), typeof( Pitchfork ),
typeof( WarFork ), typeof( BlackStaff ), typeof( GnarledStaff ),
typeof( QuarterStaff ), typeof( Broadsword ), typeof( Cutlass ),
typeof( Katana ), typeof( Kryss ), typeof( Longsword ),
typeof( Scimitar ), typeof( VikingSword )
};
public static Type[] WeaponTypes{ get{ return m_WeaponTypes; } }
private static Type[] m_ArmorTypes = new Type[]
{
typeof( BoneArms ), typeof( BoneChest ), typeof( BoneGloves ),
typeof( BoneLegs ), typeof( BoneHelm ), typeof( ChainChest ),
typeof( ChainLegs ), typeof( ChainCoif ), typeof( Bascinet ),
typeof( CloseHelm ), typeof( Helmet ), typeof( NorseHelm ),
typeof( OrcHelm ), typeof( FemaleLeatherChest ), typeof( LeatherArms ),
typeof( LeatherBustierArms ), typeof( LeatherChest ), typeof( LeatherGloves ),
typeof( LeatherGorget ), typeof( LeatherLegs ), typeof( LeatherShorts ),
typeof( LeatherSkirt ), typeof( LeatherCap ), typeof( FemalePlateChest ),
typeof( PlateArms ), typeof( PlateChest ), typeof( PlateGloves ),
typeof( PlateGorget ), typeof( PlateHelm ), typeof( PlateLegs ),
typeof( RingmailArms ), typeof( RingmailChest ), typeof( RingmailGloves ),
typeof( RingmailLegs ), typeof( FemaleStuddedChest ), typeof( StuddedArms ),
typeof( StuddedBustierArms ), typeof( StuddedChest ), typeof( StuddedGloves ),
typeof( StuddedGorget ), typeof( StuddedLegs )
};
public static Type[] ArmorTypes{ get{ return m_ArmorTypes; } }
private static Type[] m_ShieldTypes = new Type[]
{
typeof( BronzeShield ), typeof( Buckler ), typeof( HeaterShield ),
typeof( MetalKiteShield ), typeof( MetalShield ), typeof( WoodenKiteShield ),
typeof( WoodenShield )
};
public static Type[] ShieldTypes{ get{ return m_ShieldTypes; } }
private static Type[] m_GemTypes = new Type[]
{
typeof( Amber ), typeof( Amethyst ), typeof( Citrine ),
typeof( Diamond ), typeof( Emerald ), typeof( Ruby ),
typeof( Sapphire ), typeof( StarSapphire ), typeof( Tourmaline )
};
public static Type[] GemTypes{ get{ return m_GemTypes; } }
private static Type[] m_JewelryTypes = new Type[]
{
typeof( GoldRing ), typeof( GoldBracelet ),
typeof( SilverRing ), typeof( SilverBracelet )
};
public static Type[] JewelryTypes{ get{ return m_JewelryTypes; } }
private static Type[] m_RegTypes = new Type[]
{
typeof( BlackPearl ), typeof( Bloodmoss ), typeof( Garlic ),
typeof( Ginseng ), typeof( MandrakeRoot ), typeof( Nightshade ),
typeof( SulfurousAsh ), typeof( SpidersSilk )
};
public static Type[] RegTypes{ get{ return m_RegTypes; } }
private static Type[] m_NecroRegTypes = new Type[]
{
typeof( BatWing ), typeof( GraveDust ), typeof( DaemonBlood ),
typeof( NoxCrystal ), typeof( PigIron )
};
public static Type[] NecroRegTypes{ get{ return m_NecroRegTypes; } }
private static Type[] m_PotionTypes = new Type[]
{
typeof( AgilityPotion ), typeof( StrengthPotion ), typeof( RefreshPotion ),
typeof( LesserCurePotion ), typeof( LesserHealPotion ), typeof( LesserPoisonPotion )
};
public static Type[] PotionTypes{ get{ return m_PotionTypes; } }
private static Type[] m_InstrumentTypes = new Type[]
{
typeof( Drums ), typeof( Harp ), typeof( LapHarp ),
typeof( Lute ), typeof( Tambourine ), typeof( TambourineTassel )
};
private static Type[] m_StatueTypes = new Type[]
{
typeof( StatueSouth ), typeof( StatueSouth2 ), typeof( StatueNorth ),
typeof( StatueWest ), typeof( StatueEast ), typeof( StatueEast2 ),
typeof( StatueSouthEast ), typeof( BustSouth ), typeof( BustEast )
};
public static Type[] StatueTypes{ get{ return m_StatueTypes; } }
private static Type[] m_RegularScrollTypes = new Type[]
{
typeof( ClumsyScroll ), typeof( CreateFoodScroll ), typeof( FeeblemindScroll ), typeof( HealScroll ),
typeof( MagicArrowScroll ), typeof( NightSightScroll ), typeof( ReactiveArmorScroll ), typeof( WeakenScroll ),
typeof( AgilityScroll ), typeof( CunningScroll ), typeof( CureScroll ), typeof( HarmScroll ),
typeof( MagicTrapScroll ), typeof( MagicUnTrapScroll ), typeof( ProtectionScroll ), typeof( StrengthScroll ),
typeof( BlessScroll ), typeof( FireballScroll ), typeof( MagicLockScroll ), typeof( PoisonScroll ),
typeof( TelekinisisScroll ), typeof( TeleportScroll ), typeof( UnlockScroll ), typeof( WallOfStoneScroll ),
typeof( ArchCureScroll ), typeof( ArchProtectionScroll ), typeof( CurseScroll ), typeof( FireFieldScroll ),
typeof( GreaterHealScroll ), typeof( LightningScroll ), typeof( ManaDrainScroll ), typeof( RecallScroll ),
typeof( BladeSpiritsScroll ), typeof( DispelFieldScroll ), typeof( IncognitoScroll ), typeof( MagicReflectScroll ),
typeof( MindBlastScroll ), typeof( ParalyzeScroll ), typeof( PoisonFieldScroll ), typeof( SummonCreatureScroll ),
typeof( DispelScroll ), typeof( EnergyBoltScroll ), typeof( ExplosionScroll ), typeof( InvisibilityScroll ),
typeof( MarkScroll ), typeof( MassCurseScroll ), typeof( ParalyzeFieldScroll ), typeof( RevealScroll ),
typeof( ChainLightningScroll ), typeof( EnergyFieldScroll ), typeof( FlamestrikeScroll ), typeof( GateTravelScroll ),
typeof( ManaVampireScroll ), typeof( MassDispelScroll ), typeof( MeteorSwarmScroll ), typeof( PolymorphScroll ),
typeof( EarthquakeScroll ), typeof( EnergyVortexScroll ), typeof( ResurrectionScroll ), typeof( SummonAirElementalScroll ),
typeof( SummonDaemonScroll ), typeof( SummonEarthElementalScroll ), typeof( SummonFireElementalScroll ), typeof( SummonWaterElementalScroll )
};
private static Type[] m_NecromancyScrollTypes = new Type[]
{
typeof( AnimateDeadScroll ), typeof( BloodOathScroll ), typeof( CorpseSkinScroll ), typeof( CurseWeaponScroll ),
typeof( EvilOmenScroll ), typeof( HorrificBeastScroll ), typeof( LichFormScroll ), typeof( MindRotScroll ),
typeof( PainSpikeScroll ), typeof( PoisonStrikeScroll ), typeof( StrangleScroll ), typeof( SummonFamiliarScroll ),
typeof( VampiricEmbraceScroll ), typeof( VengefulSpiritScroll ), typeof( WitherScroll ), typeof( WraithFormScroll )
};
private static Type[] m_PaladinScrollTypes = new Type[0];
public static Type[] RegularScrollTypes{ get{ return m_RegularScrollTypes; } }
public static Type[] NecromancyScrollTypes{ get{ return m_NecromancyScrollTypes; } }
public static Type[] PaladinScrollTypes{ get{ return m_PaladinScrollTypes; } }
#endregion
#region Accessors
public static BaseWeapon RandomWeapon()
{
if ( Core.AOS )
return Construct( m_AosWeaponTypes, m_WeaponTypes ) as BaseWeapon;
return Construct( m_WeaponTypes ) as BaseWeapon;
}
public static Item RandomWeaponOrJewelry()
{
if ( Core.AOS )
return Construct( m_AosWeaponTypes, m_WeaponTypes, m_JewelryTypes );
return Construct( m_WeaponTypes, m_JewelryTypes );
}
public static BaseJewel RandomJewelry()
{
return Construct( m_JewelryTypes ) as BaseJewel;
}
public static BaseArmor RandomArmor()
{
return Construct( m_ArmorTypes ) as BaseArmor;
}
public static BaseShield RandomShield()
{
return Construct( m_ShieldTypes ) as BaseShield;
}
public static BaseArmor RandomArmorOrShield()
{
return Construct( m_ArmorTypes, m_ShieldTypes ) as BaseArmor;
}
public static Item RandomArmorOrShieldOrJewelry()
{
return Construct( m_ArmorTypes, m_ShieldTypes, m_JewelryTypes );
}
public static Item RandomArmorOrShieldOrWeapon()
{
if ( Core.AOS )
return Construct( m_AosWeaponTypes, m_WeaponTypes, m_ArmorTypes, m_ShieldTypes );
return Construct( m_WeaponTypes, m_ArmorTypes, m_ShieldTypes );
}
public static Item RandomArmorOrShieldOrWeaponOrJewelry()
{
if ( Core.AOS )
return Construct( m_AosWeaponTypes, m_WeaponTypes, m_ArmorTypes, m_ShieldTypes, m_JewelryTypes );
return Construct( m_WeaponTypes, m_ArmorTypes, m_ShieldTypes, m_JewelryTypes );
}
public static Item RandomGem()
{
return Construct( m_GemTypes );
}
public static Item RandomReagent()
{
return Construct( m_RegTypes );
}
public static Item RandomNecromancyReagent()
{
return Construct( m_NecroRegTypes );
}
public static Item RandomPossibleReagent()
{
if ( Core.AOS )
return Construct( m_RegTypes, m_NecroRegTypes );
return Construct( m_RegTypes );
}
public static Item RandomPotion()
{
return Construct( m_PotionTypes );
}
public static BaseInstrument RandomInstrument()
{
return Construct( m_InstrumentTypes ) as BaseInstrument;
}
public static Item RandomStatue()
{
return Construct( m_StatueTypes );
}
public static SpellScroll RandomScroll( int minIndex, int maxIndex, SpellbookType type )
{
Type[] types;
switch ( type )
{
default:
case SpellbookType.Regular: types = m_RegularScrollTypes; break;
case SpellbookType.Necromancer: types = m_NecromancyScrollTypes; break;
case SpellbookType.Paladin: types = m_PaladinScrollTypes; break;
}
return Construct( types, Utility.RandomMinMax( minIndex, maxIndex ) ) as SpellScroll;
}
#endregion
#region Construction methods
public static Item Construct( Type type )
{
try
{
return Activator.CreateInstance( type ) as Item;
}
catch
{
return null;
}
}
public static Item Construct( Type[] types )
{
if ( types.Length > 0 )
return Construct( types, Utility.Random( types.Length ) );
return null;
}
public static Item Construct( Type[] types, int index )
{
if ( index >= 0 && index < types.Length )
return Construct( types[index] );
return null;
}
public static Item Construct( params Type[][] types )
{
int totalLength = 0;
for ( int i = 0; i < types.Length; ++i )
totalLength += types[i].Length;
if ( totalLength > 0 )
{
int index = Utility.Random( totalLength );
for ( int i = 0; i < types.Length; ++i )
{
if ( index >= 0 && index < types[i].Length )
return Construct( types[i][index] );
index -= types[i].Length;
}
}
return null;
}
#endregion
}
}
Kalpon777 said:Alright, this is really sort of frustrating! In the "How To" The last script alteration in loot.cs asks for this;
"To alter Loot.cs you need to find this line of code:
public static Type[] ClothingTypes{ get{ return m_ClothingTypes; } }"
No where in my loot.cs do I see ClothingTypes, I've looked again and again, each line through and through. It's just not there! Everything else was easy, but this part is confusing. I'll post my loot.cs
Code:using System; using System.IO; using System.Reflection; using Server; using Server.Items; namespace Server { public class Loot { #region List definitions private static Type[] m_AosWeaponTypes = new Type[] { typeof( Scythe ), typeof( BoneHarvester ), typeof( Scepter ), typeof( BladedStaff ), typeof( Pike ), typeof( DoubleBladedStaff ), typeof( Lance ), typeof( CrescentBlade ), typeof( CompositeBow ), typeof( RepeatingCrossbow ) }; public static Type[] AosWeaponTypes{ get{ return m_AosWeaponTypes; } } private static Type[] m_WeaponTypes = new Type[] { typeof( Axe ), typeof( BattleAxe ), typeof( DoubleAxe ), typeof( ExecutionersAxe ), typeof( Hatchet ), typeof( LargeBattleAxe ), typeof( TwoHandedAxe ), typeof( WarAxe ), typeof( Club ), typeof( Mace ), typeof( Maul ), typeof( WarHammer ), typeof( WarMace ), typeof( Bardiche ), typeof( Halberd ), typeof( Bow ), typeof( Crossbow ), typeof( HeavyCrossbow ), typeof( Spear ), typeof( ShortSpear ), typeof( Pitchfork ), typeof( WarFork ), typeof( BlackStaff ), typeof( GnarledStaff ), typeof( QuarterStaff ), typeof( Broadsword ), typeof( Cutlass ), typeof( Katana ), typeof( Kryss ), typeof( Longsword ), typeof( Scimitar ), typeof( VikingSword ) }; public static Type[] WeaponTypes{ get{ return m_WeaponTypes; } } private static Type[] m_ArmorTypes = new Type[] { typeof( BoneArms ), typeof( BoneChest ), typeof( BoneGloves ), typeof( BoneLegs ), typeof( BoneHelm ), typeof( ChainChest ), typeof( ChainLegs ), typeof( ChainCoif ), typeof( Bascinet ), typeof( CloseHelm ), typeof( Helmet ), typeof( NorseHelm ), typeof( OrcHelm ), typeof( FemaleLeatherChest ), typeof( LeatherArms ), typeof( LeatherBustierArms ), typeof( LeatherChest ), typeof( LeatherGloves ), typeof( LeatherGorget ), typeof( LeatherLegs ), typeof( LeatherShorts ), typeof( LeatherSkirt ), typeof( LeatherCap ), typeof( FemalePlateChest ), typeof( PlateArms ), typeof( PlateChest ), typeof( PlateGloves ), typeof( PlateGorget ), typeof( PlateHelm ), typeof( PlateLegs ), typeof( RingmailArms ), typeof( RingmailChest ), typeof( RingmailGloves ), typeof( RingmailLegs ), typeof( FemaleStuddedChest ), typeof( StuddedArms ), typeof( StuddedBustierArms ), typeof( StuddedChest ), typeof( StuddedGloves ), typeof( StuddedGorget ), typeof( StuddedLegs ) }; public static Type[] ArmorTypes{ get{ return m_ArmorTypes; } } private static Type[] m_ShieldTypes = new Type[] { typeof( BronzeShield ), typeof( Buckler ), typeof( HeaterShield ), typeof( MetalKiteShield ), typeof( MetalShield ), typeof( WoodenKiteShield ), typeof( WoodenShield ) }; public static Type[] ShieldTypes{ get{ return m_ShieldTypes; } } private static Type[] m_GemTypes = new Type[] { typeof( Amber ), typeof( Amethyst ), typeof( Citrine ), typeof( Diamond ), typeof( Emerald ), typeof( Ruby ), typeof( Sapphire ), typeof( StarSapphire ), typeof( Tourmaline ) }; public static Type[] GemTypes{ get{ return m_GemTypes; } } private static Type[] m_JewelryTypes = new Type[] { typeof( GoldRing ), typeof( GoldBracelet ), typeof( SilverRing ), typeof( SilverBracelet ) }; public static Type[] JewelryTypes{ get{ return m_JewelryTypes; } } private static Type[] m_RegTypes = new Type[] { typeof( BlackPearl ), typeof( Bloodmoss ), typeof( Garlic ), typeof( Ginseng ), typeof( MandrakeRoot ), typeof( Nightshade ), typeof( SulfurousAsh ), typeof( SpidersSilk ) }; public static Type[] RegTypes{ get{ return m_RegTypes; } } private static Type[] m_NecroRegTypes = new Type[] { typeof( BatWing ), typeof( GraveDust ), typeof( DaemonBlood ), typeof( NoxCrystal ), typeof( PigIron ) }; public static Type[] NecroRegTypes{ get{ return m_NecroRegTypes; } } private static Type[] m_PotionTypes = new Type[] { typeof( AgilityPotion ), typeof( StrengthPotion ), typeof( RefreshPotion ), typeof( LesserCurePotion ), typeof( LesserHealPotion ), typeof( LesserPoisonPotion ) }; public static Type[] PotionTypes{ get{ return m_PotionTypes; } } private static Type[] m_InstrumentTypes = new Type[] { typeof( Drums ), typeof( Harp ), typeof( LapHarp ), typeof( Lute ), typeof( Tambourine ), typeof( TambourineTassel ) }; private static Type[] m_StatueTypes = new Type[] { typeof( StatueSouth ), typeof( StatueSouth2 ), typeof( StatueNorth ), typeof( StatueWest ), typeof( StatueEast ), typeof( StatueEast2 ), typeof( StatueSouthEast ), typeof( BustSouth ), typeof( BustEast ) }; public static Type[] StatueTypes{ get{ return m_StatueTypes; } } private static Type[] m_RegularScrollTypes = new Type[] { typeof( ClumsyScroll ), typeof( CreateFoodScroll ), typeof( FeeblemindScroll ), typeof( HealScroll ), typeof( MagicArrowScroll ), typeof( NightSightScroll ), typeof( ReactiveArmorScroll ), typeof( WeakenScroll ), typeof( AgilityScroll ), typeof( CunningScroll ), typeof( CureScroll ), typeof( HarmScroll ), typeof( MagicTrapScroll ), typeof( MagicUnTrapScroll ), typeof( ProtectionScroll ), typeof( StrengthScroll ), typeof( BlessScroll ), typeof( FireballScroll ), typeof( MagicLockScroll ), typeof( PoisonScroll ), typeof( TelekinisisScroll ), typeof( TeleportScroll ), typeof( UnlockScroll ), typeof( WallOfStoneScroll ), typeof( ArchCureScroll ), typeof( ArchProtectionScroll ), typeof( CurseScroll ), typeof( FireFieldScroll ), typeof( GreaterHealScroll ), typeof( LightningScroll ), typeof( ManaDrainScroll ), typeof( RecallScroll ), typeof( BladeSpiritsScroll ), typeof( DispelFieldScroll ), typeof( IncognitoScroll ), typeof( MagicReflectScroll ), typeof( MindBlastScroll ), typeof( ParalyzeScroll ), typeof( PoisonFieldScroll ), typeof( SummonCreatureScroll ), typeof( DispelScroll ), typeof( EnergyBoltScroll ), typeof( ExplosionScroll ), typeof( InvisibilityScroll ), typeof( MarkScroll ), typeof( MassCurseScroll ), typeof( ParalyzeFieldScroll ), typeof( RevealScroll ), typeof( ChainLightningScroll ), typeof( EnergyFieldScroll ), typeof( FlamestrikeScroll ), typeof( GateTravelScroll ), typeof( ManaVampireScroll ), typeof( MassDispelScroll ), typeof( MeteorSwarmScroll ), typeof( PolymorphScroll ), typeof( EarthquakeScroll ), typeof( EnergyVortexScroll ), typeof( ResurrectionScroll ), typeof( SummonAirElementalScroll ), typeof( SummonDaemonScroll ), typeof( SummonEarthElementalScroll ), typeof( SummonFireElementalScroll ), typeof( SummonWaterElementalScroll ) }; private static Type[] m_NecromancyScrollTypes = new Type[] { typeof( AnimateDeadScroll ), typeof( BloodOathScroll ), typeof( CorpseSkinScroll ), typeof( CurseWeaponScroll ), typeof( EvilOmenScroll ), typeof( HorrificBeastScroll ), typeof( LichFormScroll ), typeof( MindRotScroll ), typeof( PainSpikeScroll ), typeof( PoisonStrikeScroll ), typeof( StrangleScroll ), typeof( SummonFamiliarScroll ), typeof( VampiricEmbraceScroll ), typeof( VengefulSpiritScroll ), typeof( WitherScroll ), typeof( WraithFormScroll ) }; private static Type[] m_PaladinScrollTypes = new Type[0]; public static Type[] RegularScrollTypes{ get{ return m_RegularScrollTypes; } } public static Type[] NecromancyScrollTypes{ get{ return m_NecromancyScrollTypes; } } public static Type[] PaladinScrollTypes{ get{ return m_PaladinScrollTypes; } } #endregion #region Accessors public static BaseWeapon RandomWeapon() { if ( Core.AOS ) return Construct( m_AosWeaponTypes, m_WeaponTypes ) as BaseWeapon; return Construct( m_WeaponTypes ) as BaseWeapon; } public static Item RandomWeaponOrJewelry() { if ( Core.AOS ) return Construct( m_AosWeaponTypes, m_WeaponTypes, m_JewelryTypes ); return Construct( m_WeaponTypes, m_JewelryTypes ); } public static BaseJewel RandomJewelry() { return Construct( m_JewelryTypes ) as BaseJewel; } public static BaseArmor RandomArmor() { return Construct( m_ArmorTypes ) as BaseArmor; } public static BaseShield RandomShield() { return Construct( m_ShieldTypes ) as BaseShield; } public static BaseArmor RandomArmorOrShield() { return Construct( m_ArmorTypes, m_ShieldTypes ) as BaseArmor; } public static Item RandomArmorOrShieldOrJewelry() { return Construct( m_ArmorTypes, m_ShieldTypes, m_JewelryTypes ); } public static Item RandomArmorOrShieldOrWeapon() { if ( Core.AOS ) return Construct( m_AosWeaponTypes, m_WeaponTypes, m_ArmorTypes, m_ShieldTypes ); return Construct( m_WeaponTypes, m_ArmorTypes, m_ShieldTypes ); } public static Item RandomArmorOrShieldOrWeaponOrJewelry() { if ( Core.AOS ) return Construct( m_AosWeaponTypes, m_WeaponTypes, m_ArmorTypes, m_ShieldTypes, m_JewelryTypes ); return Construct( m_WeaponTypes, m_ArmorTypes, m_ShieldTypes, m_JewelryTypes ); } public static Item RandomGem() { return Construct( m_GemTypes ); } public static Item RandomReagent() { return Construct( m_RegTypes ); } public static Item RandomNecromancyReagent() { return Construct( m_NecroRegTypes ); } public static Item RandomPossibleReagent() { if ( Core.AOS ) return Construct( m_RegTypes, m_NecroRegTypes ); return Construct( m_RegTypes ); } public static Item RandomPotion() { return Construct( m_PotionTypes ); } public static BaseInstrument RandomInstrument() { return Construct( m_InstrumentTypes ) as BaseInstrument; } public static Item RandomStatue() { return Construct( m_StatueTypes ); } public static SpellScroll RandomScroll( int minIndex, int maxIndex, SpellbookType type ) { Type[] types; switch ( type ) { default: case SpellbookType.Regular: types = m_RegularScrollTypes; break; case SpellbookType.Necromancer: types = m_NecromancyScrollTypes; break; case SpellbookType.Paladin: types = m_PaladinScrollTypes; break; } return Construct( types, Utility.RandomMinMax( minIndex, maxIndex ) ) as SpellScroll; } #endregion #region Construction methods public static Item Construct( Type type ) { try { return Activator.CreateInstance( type ) as Item; } catch { return null; } } public static Item Construct( Type[] types ) { if ( types.Length > 0 ) return Construct( types, Utility.Random( types.Length ) ); return null; } public static Item Construct( Type[] types, int index ) { if ( index >= 0 && index < types.Length ) return Construct( types[index] ); return null; } public static Item Construct( params Type[][] types ) { int totalLength = 0; for ( int i = 0; i < types.Length; ++i ) totalLength += types[i].Length; if ( totalLength > 0 ) { int index = Utility.Random( totalLength ); for ( int i = 0; i < types.Length; ++i ) { if ( index >= 0 && index < types[i].Length ) return Construct( types[i][index] ); index -= types[i].Length; } } return null; } #endregion } }
Any help please??
public static Type[] PaladinScrollTypes{ get{ return m_PaladinScrollTypes; } }
#endregion
Scripts: Compiling C# scripts...failed (96 errors, 0 warnings)
- Error: Scripts\Misc\LootPack.cs: CS1513: (line 240, column 55) } expected
- Error: Scripts\Misc\LootPack.cs: CS1026: (line 240, column 55) ) expected
- Error: Scripts\Misc\LootPack.cs: CS1002: (line 240, column 55) ; expected
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 242, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 242, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 242, column 42) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1513: (line 250, column 55) } expected
- Error: Scripts\Misc\LootPack.cs: CS1026: (line 250, column 55) ) expected
- Error: Scripts\Misc\LootPack.cs: CS1002: (line 250, column 55) ; expected
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 252, column 8) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 252, column 23) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 252, column 41) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 253, column 8) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 253, column 23) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 253, column 40) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1513: (line 262, column 55) } expected
- Error: Scripts\Misc\LootPack.cs: CS1026: (line 262, column 55) ) expected
- Error: Scripts\Misc\LootPack.cs: CS1002: (line 262, column 55) ; expected
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 264, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 264, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 264, column 42) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 265, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 265, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 265, column 41) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 266, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 266, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 266, column 40) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1513: (line 275, column 55) } expected
- Error: Scripts\Misc\LootPack.cs: CS1026: (line 275, column 55) ) expected
- Error: Scripts\Misc\LootPack.cs: CS1002: (line 275, column 55) ; expected
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 277, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 277, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 277, column 42) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 278, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 278, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 278, column 41) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 279, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 279, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 279, column 40) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 280, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 280, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 280, column 43) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1513: (line 290, column 55) } expected
- Error: Scripts\Misc\LootPack.cs: CS1026: (line 290, column 55) ) expected
- Error: Scripts\Misc\LootPack.cs: CS1002: (line 290, column 55) ; expected
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 292, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 292, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 292, column 42) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 293, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 293, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 293, column 41) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 294, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 294, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 294, column 40) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 295, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 295, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 295, column 43) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 296, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 296, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 296, column 42) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1513: (line 308, column 55) } expected
- Error: Scripts\Misc\LootPack.cs: CS1026: (line 308, column 55) ) expected
- Error: Scripts\Misc\LootPack.cs: CS1002: (line 308, column 55) ; expected
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 310, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 310, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 310, column 42) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 311, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 311, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 311, column 41) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 312, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 312, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 312, column 40) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 313, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 313, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 313, column 43) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 314, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 314, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 314, column 42) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1513: (line 330, column 55) } expected
- Error: Scripts\Misc\LootPack.cs: CS1026: (line 330, column 55) ) expected
- Error: Scripts\Misc\LootPack.cs: CS1002: (line 330, column 55) ; expected
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 332, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 332, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 332, column 42) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 333, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 333, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 333, column 41) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 334, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 334, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 334, column 40) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 335, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 335, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 335, column 43) Invalid token
',' in class, struct, or interface member declaration
- Error: Scripts\Misc\LootPack.cs: CS1520: (line 336, column 9) Class, struct,
or interface method must have a return type
- Error: Scripts\Misc\LootPack.cs: CS1031: (line 336, column 24) Type expected
- Error: Scripts\Misc\LootPack.cs: CS1519: (line 336, column 42) Invalid token
',' in class, struct, or interface member declaration
Scripts: One or more scripts failed to compile or no script files were found.
- Press return to exit, or R to try again.
using System;
using System.IO;
using System.Reflection;
using Server;
using Server.Items;
namespace Server
{
public class Loot
{
#region List definitions
private static Type[] m_AosWeaponTypes = new Type[]
{
typeof( Scythe ),
typeof( BoneHarvester ), typeof( Scepter ),
typeof( BladedStaff ),
typeof( Pike ), typeof(
DoubleBladedStaff ),
typeof( Lance ),
typeof( CrescentBlade ), typeof( CompositeBow ),
typeof( RepeatingCrossbow )
};
public static Type[] AosWeaponTypes{ get{ return
m_AosWeaponTypes; } }
private static Type[] m_WeaponTypes = new Type[]
{
typeof( Axe ),
typeof( BattleAxe ), typeof( DoubleAxe ),
typeof( ExecutionersAxe ),
typeof( Hatchet ), typeof( LargeBattleAxe
),
typeof( TwoHandedAxe ),
typeof( WarAxe ), typeof( Club ),
typeof( Mace ),
typeof( Maul ), typeof(
WarHammer ),
typeof( WarMace ),
typeof( Bardiche ), typeof( Halberd
),
typeof( Bow ),
typeof( Crossbow ), typeof(
HeavyCrossbow ),
typeof( Spear ),
typeof( ShortSpear ), typeof( Pitchfork ),
typeof( WarFork ),
typeof( BlackStaff ), typeof( GnarledStaff ),
typeof( QuarterStaff ),
typeof( Broadsword ), typeof( Cutlass ),
typeof( Katana ),
typeof( Kryss ), typeof(
Longsword ),
typeof( Scimitar ),
typeof( VikingSword )
};
public static Type[] WeaponTypes{ get{ return
m_WeaponTypes; } }
private static Type[] m_ArmorTypes = new Type[]
{
typeof( BoneArms ),
typeof( BoneChest ), typeof( BoneGloves ),
typeof( BoneLegs ),
typeof( BoneHelm ), typeof(
ChainChest ),
typeof( ChainLegs ),
typeof( ChainCoif ), typeof( Bascinet ),
typeof( CloseHelm ),
typeof( Helmet ), typeof( NorseHelm ),
typeof( OrcHelm ),
typeof( FemaleLeatherChest ), typeof( LeatherArms ),
typeof( LeatherBustierArms ), typeof(
LeatherChest ), typeof( LeatherGloves ),
typeof( LeatherGorget ),
typeof( LeatherLegs ), typeof( LeatherShorts ),
typeof( LeatherSkirt ),
typeof( LeatherCap ), typeof( FemalePlateChest ),
typeof( PlateArms ),
typeof( PlateChest ), typeof( PlateGloves ),
typeof( PlateGorget ),
typeof( PlateHelm ), typeof( PlateLegs ),
typeof( RingmailArms ),
typeof( RingmailChest ), typeof( RingmailGloves ),
typeof( RingmailLegs ),
typeof( FemaleStuddedChest ), typeof( StuddedArms ),
typeof( StuddedBustierArms ), typeof(
StuddedChest ), typeof( StuddedGloves ),
typeof( StuddedGorget ),
typeof( StuddedLegs )
};
public static Type[] ArmorTypes{ get{ return
m_ArmorTypes; } }
private static Type[] m_ShieldTypes = new Type[]
{
typeof( BronzeShield ),
typeof( Buckler ), typeof( HeaterShield ),
typeof( MetalKiteShield ),
typeof( MetalShield ), typeof( WoodenKiteShield ),
typeof( WoodenShield )
};
public static Type[] ShieldTypes{ get{ return
m_ShieldTypes; } }
private static Type[] m_GemTypes = new Type[]
{
typeof( Amber ),
typeof( Amethyst ), typeof( Citrine
),
typeof( Diamond ),
typeof( Emerald ), typeof( Ruby ),
typeof( Sapphire ),
typeof( StarSapphire ), typeof( Tourmaline )
};
public static Type[] GemTypes{ get{ return m_GemTypes;
} }
private static Type[] m_JewelryTypes = new Type[]
{
typeof( GoldRing ),
typeof( GoldBracelet ),
typeof( SilverRing ),
typeof( SilverBracelet )
};
public static Type[] JewelryTypes{ get{ return
m_JewelryTypes; } }
private static Type[] m_RegTypes = new Type[]
{
typeof( BlackPearl ),
typeof( Bloodmoss ), typeof( Garlic ),
typeof( Ginseng ),
typeof( MandrakeRoot ), typeof( Nightshade ),
typeof( SulfurousAsh ),
typeof( SpidersSilk )
};
public static Type[] RegTypes{ get{ return m_RegTypes;
} }
private static Type[] m_NecroRegTypes = new Type[]
{
typeof( BatWing ),
typeof( GraveDust ), typeof( DaemonBlood ),
typeof( NoxCrystal ),
typeof( PigIron )
};
public static Type[] NecroRegTypes{ get{ return
m_NecroRegTypes; } }
private static Type[] m_PotionTypes = new Type[]
{
typeof( AgilityPotion ),
typeof( StrengthPotion ), typeof( RefreshPotion ),
typeof( LesserCurePotion ),
typeof( LesserHealPotion ), typeof( LesserPoisonPotion )
};
public static Type[] PotionTypes{ get{ return
m_PotionTypes; } }
private static Type[] m_InstrumentTypes = new Type[]
{
typeof( Drums ),
typeof( Harp ), typeof( LapHarp
),
typeof( Lute ),
typeof( Tambourine ), typeof(
TambourineTassel )
};
private static Type[] m_StatueTypes = new Type[]
{
typeof( StatueSouth ), typeof(
StatueSouth2 ), typeof( StatueNorth ),
typeof( StatueWest ), typeof(
StatueEast ), typeof( StatueEast2 ),
typeof( StatueSouthEast ), typeof(
BustSouth ), typeof( BustEast )
};
public static Type[] StatueTypes{ get{ return
m_StatueTypes; } }
private static Type[] m_RegularScrollTypes = new Type[]
{
typeof( ClumsyScroll ),
typeof( CreateFoodScroll ), typeof( FeeblemindScroll ),
typeof( HealScroll ),
typeof( MagicArrowScroll ),
typeof( NightSightScroll ), typeof( ReactiveArmorScroll ),
typeof( WeakenScroll ),
typeof( AgilityScroll ),
typeof( CunningScroll ), typeof( CureScroll ),
typeof( HarmScroll ),
typeof( MagicTrapScroll ),
typeof( MagicUnTrapScroll ), typeof( ProtectionScroll ),
typeof( StrengthScroll ),
typeof( BlessScroll ),
typeof( FireballScroll ), typeof( MagicLockScroll ),
typeof( PoisonScroll ),
typeof( TelekinisisScroll ), typeof(
TeleportScroll ), typeof( UnlockScroll ),
typeof( WallOfStoneScroll ),
typeof( ArchCureScroll ),
typeof( ArchProtectionScroll ), typeof( CurseScroll ),
typeof( FireFieldScroll ),
typeof( GreaterHealScroll ), typeof(
LightningScroll ), typeof( ManaDrainScroll ),
typeof( RecallScroll ),
typeof( BladeSpiritsScroll ), typeof(
DispelFieldScroll ), typeof( IncognitoScroll ), typeof(
MagicReflectScroll ),
typeof( MindBlastScroll ),
typeof( ParalyzeScroll ), typeof( PoisonFieldScroll ),
typeof( SummonCreatureScroll ),
typeof( DispelScroll ),
typeof( EnergyBoltScroll ), typeof( ExplosionScroll ),
typeof( InvisibilityScroll ),
typeof( MarkScroll ),
typeof( MassCurseScroll ), typeof( ParalyzeFieldScroll ),
typeof( RevealScroll ),
typeof( ChainLightningScroll ), typeof(
EnergyFieldScroll ), typeof( FlamestrikeScroll ), typeof(
GateTravelScroll ),
typeof( ManaVampireScroll ), typeof(
MassDispelScroll ), typeof( MeteorSwarmScroll ), typeof(
PolymorphScroll ),
typeof( EarthquakeScroll ),
typeof( EnergyVortexScroll ), typeof( ResurrectionScroll ), typeof(
SummonAirElementalScroll ),
typeof( SummonDaemonScroll ), typeof(
SummonEarthElementalScroll ), typeof( SummonFireElementalScroll ),
typeof( SummonWaterElementalScroll )
};
private static Type[] m_NecromancyScrollTypes = new
Type[]
{
typeof( AnimateDeadScroll ),
typeof( BloodOathScroll ), typeof( CorpseSkinScroll ),
typeof( CurseWeaponScroll ),
typeof( EvilOmenScroll ),
typeof( HorrificBeastScroll ), typeof( LichFormScroll ),
typeof( MindRotScroll ),
typeof( PainSpikeScroll ),
typeof( PoisonStrikeScroll ), typeof( StrangleScroll ),
typeof( SummonFamiliarScroll ),
typeof( VampiricEmbraceScroll ),
typeof( VengefulSpiritScroll ), typeof( WitherScroll ), typeof(
WraithFormScroll )
};
private static Type[] m_PaladinScrollTypes = new Type
[0];
public static Type[] RegularScrollTypes{ get{ return
m_RegularScrollTypes; } }
public static Type[] NecromancyScrollTypes{ get{ return
m_NecromancyScrollTypes; } }
public static Type[] PaladinScrollTypes{ get{ return
m_PaladinScrollTypes; } }
#endregion
// SOCKET ADDITION
private static Type[] m_ChippedGemTypes = new Type[]
{
typeof( ChippedAmethyst ), typeof(
ChippedDiamond ), typeof( ChippedEmerald ),
typeof( ChippedRuby ), typeof(
ChippedSapphire ), typeof( ChippedSkull ),
typeof( ChippedTopaz )
};
public static Type[] ChippedGemTypes{ get{ return
m_ChippedGemTypes; } }
private static Type[] m_FlawedGemTypes = new Type[]
{
typeof( FlawedAmethyst ), typeof(
FlawedDiamond ), typeof( FlawedEmerald ),
typeof( FlawedRuby ), typeof(
FlawedSapphire ), typeof( FlawedSkull ),
typeof( FlawedTopaz )
};
public static Type[] FlawedGemTypes{ get{ return
m_FlawedGemTypes; } }
private static Type[] m_PlainGemTypes = new Type[]
{
typeof( PlainAmethyst ), typeof(
PlainDiamond ), typeof( PlainEmerald ),
typeof( PlainRuby ), typeof(
PlainSapphire ), typeof( PlainSkull ),
typeof( PlainTopaz )
};
public static Type[] PlainGemTypes{ get{ return
m_PlainGemTypes; } }
private static Type[] m_FlawlessGemTypes = new Type[]
{
typeof( FlawlessAmethyst ), typeof(
FlawlessDiamond ), typeof( FlawlessEmerald ),
typeof( FlawlessRuby ), typeof(
FlawlessSapphire ), typeof( FlawlessSkull ),
typeof( FlawlessTopaz )
};
public static Type[] FlawlessGemTypes{ get{ return
m_FlawlessGemTypes; } }
private static Type[] m_PerfectGemTypes = new Type[]
{
typeof( PerfectAmethyst ), typeof(
PerfectDiamond ), typeof( PerfectEmerald ),
typeof( PerfectRuby ), typeof(
PerfectSapphire ), typeof( PerfectSkull ),
typeof( PerfectTopaz )
};
public static Type[] PerfectGemTypes{ get{ return
m_PerfectGemTypes; } }
// SOCKET ADDITION
public static Item RandomStatue()
{
return Construct( m_StatueTypes );
}
// SOCKET ADDITION
public static Item RandomChippedGem()
{
return Construct( m_ChippedGemTypes );
}
public static Item RandomFlawedGem()
{
return Construct( m_FlawedGemTypes );
}
public static Item RandomPlainGem()
{
return Construct( m_PlainGemTypes );
}
public static Item RandomFlawlessGem()
{
return Construct( m_FlawlessGemTypes );
}
public static Item RandomPerfectGem()
{
return Construct( m_PerfectGemTypes );
}
// SOCKET ADDITION
#region Accessors
public static BaseWeapon RandomWeapon()
{
if ( Core.AOS )
return Construct( m_AosWeaponTypes,
m_WeaponTypes ) as BaseWeapon;
return Construct( m_WeaponTypes ) as
BaseWeapon;
}
public static Item RandomWeaponOrJewelry()
{
if ( Core.AOS )
return Construct( m_AosWeaponTypes,
m_WeaponTypes, m_JewelryTypes );
return Construct( m_WeaponTypes, m_JewelryTypes
);
}
public static BaseJewel RandomJewelry()
{
return Construct( m_JewelryTypes ) as
BaseJewel;
}
public static BaseArmor RandomArmor()
{
return Construct( m_ArmorTypes ) as BaseArmor;
}
public static BaseShield RandomShield()
{
return Construct( m_ShieldTypes ) as
BaseShield;
}
public static BaseArmor RandomArmorOrShield()
{
return Construct( m_ArmorTypes, m_ShieldTypes )
as BaseArmor;
}
public static Item RandomArmorOrShieldOrJewelry()
{
return Construct( m_ArmorTypes, m_ShieldTypes,
m_JewelryTypes );
}
public static Item RandomArmorOrShieldOrWeapon()
{
if ( Core.AOS )
return Construct( m_AosWeaponTypes,
m_WeaponTypes, m_ArmorTypes, m_ShieldTypes );
return Construct( m_WeaponTypes, m_ArmorTypes,
m_ShieldTypes );
}
public static Item
RandomArmorOrShieldOrWeaponOrJewelry()
{
if ( Core.AOS )
return Construct( m_AosWeaponTypes,
m_WeaponTypes, m_ArmorTypes, m_ShieldTypes, m_JewelryTypes );
return Construct( m_WeaponTypes, m_ArmorTypes,
m_ShieldTypes, m_JewelryTypes );
}
public static Item RandomGem()
{
return Construct( m_GemTypes );
}
public static Item RandomReagent()
{
return Construct( m_RegTypes );
}
public static Item RandomNecromancyReagent()
{
return Construct( m_NecroRegTypes );
}
public static Item RandomPossibleReagent()
{
if ( Core.AOS )
return Construct( m_RegTypes,
m_NecroRegTypes );
return Construct( m_RegTypes );
}
public static Item RandomPotion()
{
return Construct( m_PotionTypes );
}
public static BaseInstrument RandomInstrument()
{
return Construct( m_InstrumentTypes ) as
BaseInstrument;
}
public static Item RandomStatue()
{
return Construct( m_StatueTypes );
}
public static SpellScroll RandomScroll( int minIndex,
int maxIndex, SpellbookType type )
{
Type[] types;
switch ( type )
{
default:
case SpellbookType.Regular: types =
m_RegularScrollTypes; break;
case SpellbookType.Necromancer: types =
m_NecromancyScrollTypes; break;
case SpellbookType.Paladin: types =
m_PaladinScrollTypes; break;
}
return Construct( types, Utility.RandomMinMax(
minIndex, maxIndex ) ) as SpellScroll;
}
#endregion
#region Construction methods
public static Item Construct( Type type )
{
try
{
return Activator.CreateInstance( type )
as Item;
}
catch
{
return null;
}
}
public static Item Construct( Type[] types )
{
if ( types.Length > 0 )
return Construct( types,
Utility.Random( types.Length ) );
return null;
}
public static Item Construct( Type[] types, int index )
{
if ( index >= 0 && index < types.Length )
return Construct( types[index] );
return null;
}
public static Item Construct( params Type[][] types )
{
int totalLength = 0;
for ( int i = 0; i < types.Length; ++i )
totalLength += types[i].Length;
if ( totalLength > 0 )
{
int index = Utility.Random( totalLength
);
for ( int i = 0; i < types.Length; ++i
)
{
if ( index >= 0 && index <
types[i].Length )
return Construct(
types[i][index] );
index -= types[i].Length;
}
}
return null;
}
#endregion
}
}
#region AOS definitions
public static readonly LootPack AosPoor = new LootPack( new LootPackEntry[]
{
new LootPackEntry( true, Gold, 100.00, "1d10+10" ),
new LootPackEntry( false, MagicItems, 0.02, 1, 5, 0, 90 ),
new LootPackEntry( false, Instruments, 0.02, 1 )
// SOCKET ADDITION START
new LootPackEntry( false, ChippedGems, 0.05, 1 )
// SOCKET ADDITION END
} );
#region AOS definitions
public static readonly LootPack AosPoor = new LootPack( new LootPackEntry[]
{
new LootPackEntry( true, Gold, 100.00, "1d10+10" ),
new LootPackEntry( false, MagicItems, 0.02, 1, 5, 0, 90 ),
new LootPackEntry( false, Instruments, 0.02, 1 ),
// SOCKET ADDITION START
new LootPackEntry( false, ChippedGems, 0.05, 1 )
// SOCKET ADDITION END
} );
Kasumix said:hello i saw this script and i started to Love it. I playd D2 a while ago and the socketsystem was realy great there. and i got some suggestions to this script now. first is it possible to make magic items dropp with a chance to have sockles? and second is there alredy a second release of the horadric Cube?
i think to make the items drop with sockles would be a great add on to this system.
Realy nice work.