本文整理汇总了C#中Server.Items.Corpse.DropItem方法的典型用法代码示例。如果您正苦于以下问题:C# Corpse.DropItem方法的具体用法?C# Corpse.DropItem怎么用?C# Corpse.DropItem使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Server.Items.Corpse
的用法示例。
在下文中一共展示了Corpse.DropItem方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GenerateFurs
public override int GenerateFurs(Corpse c)
{
Item i = new LightFur();
i.Amount = 2;
c.DropItem( i );
return 2;
}
示例2: OnCarve
public override void OnCarve( Mobile from, Corpse corpse, Item with )
{
base.OnCarve( from, corpse, with );
corpse.DropItem( new Bloodmoss( Utility.RandomMinMax( 8, 16 ) ) );
from.SendMessage( "You cut some bloodmoss from between the troll's toes; it remains on the corpse." );
}
示例3: OnCarve
public override void OnCarve(Mobile from, Corpse corpse, Item with)
{
if (corpse != null)
corpse.DropItem(new DragonBlood(8));
base.OnCarve(from, corpse, with);
}
示例4: OnCarve
public override void OnCarve(Mobile from, Corpse corpse, Item with)
{
if (corpse.Carved)
base.OnCarve(from, corpse, with);
TransformContext context = TransformationSpellHelper.GetContext(from);
if (context != null && context.Spell is NecromancerSpell && Utility.RandomDouble() < 0.3)
{
corpse.DropItem(new GlowingOre(Utility.Random(2,3)));
from.SendMessage("Le Wisp se fige à votre toucher");
}
else if (Utility.RandomDouble() < .1)
{
corpse.DropItem(new GlowingOre());
from.SendMessage("Seulement une partie du wisp se fige. Vous ne deviez pas être assez effrayant...");
}
base.OnCarve(from, corpse, with);
}
示例5: OnCarve
public override void OnCarve(Mobile from, Corpse corpse, Item with)
{
if (!corpse.Carved)
{
corpse.DropItem(new TitanTooth());
from.SendMessage("Vous arrachez une dent au titan");
}
base.OnCarve(from, corpse, with);
}
示例6: OnCarve
public override void OnCarve(Mobile from, Corpse corpse, Item with)
{
if (corpse.Carved)
base.OnCarve(from, corpse, with);
if (Utility.RandomDouble() < 0.15)
{
if (!from.CheckSkill(SkillName.Forensics, 30, 80))
from.SendMessage("Vous auriez gagné à mieux appréhender les cadavres");
else
{
corpse.DropItem(new ElementalRelic());
from.SendMessage("L'élémental se crystallise");
}
}
base.OnCarve(from, corpse, with);
}
示例7: OnCarve
public override void OnCarve(Mobile from, Corpse corpse, Item with)
{
if (corpse.Carved)
base.OnCarve(from, corpse, with);
if (Utility.RandomDouble() < 0.15)
{
if (!from.CheckSkill(SkillName.Forensics, 30, 80))
from.SendMessage("Vous auriez gagné à mieux appréhender les cadavres");
else
{
corpse.DropItem(new UndeadRelic());
from.SendMessage("Vous arrachez un morceau de chair à la liche");
}
}
base.OnCarve(from, corpse, with);
}
示例8: OnCarve
public override void OnCarve(Mobile from, Corpse corpse)
{
if (corpse.Carved)
{
base.OnCarve(from, corpse);
}
else
{
if (Utility.Random(5) == 1)
{
from.SendMessage("You dig through the worm goo and find some silk!");
corpse.DropItem(new WormSilk());
}
else
{
from.SendMessage("You carve into the gooey worm corpse, but find nothing useful.");
}
corpse.Carved = true;
}
}
示例9: OnCarve
public virtual void OnCarve( Mobile from, Corpse corpse )
{
int feathers = Feathers;
int wool = Wool;
int meat = Meat;
int hides = Hides;
int scales = Scales;
if ( (feathers == 0 && wool == 0 && meat == 0 && hides == 0 && scales == 0) || Summoned || IsBonded )
{
from.SendLocalizedMessage( 500485 ); // You see nothing useful to carve from the corpse.
}
else
{
if( Core.ML && from.Race == Race.Human )
{
hides = (int)Math.Ceiling( hides * 1.1 ); //10% Bonus Only applies to Hides, Ore & Logs
}
if ( corpse.Map == Map.Felucca )
{
feathers *= 2;
wool *= 2;
hides *= 2;
}
new Blood( 0x122D ).MoveToWorld( corpse.Location, corpse.Map );
if ( feathers != 0 )
{
corpse.DropItem( new Feather( feathers ) );
from.SendLocalizedMessage( 500479 ); // You pluck the bird. The feathers are now on the corpse.
}
if ( wool != 0 )
{
corpse.DropItem( new Wool( wool ) );
from.SendLocalizedMessage( 500483 ); // You shear it, and the wool is now on the corpse.
}
if ( meat != 0 )
{
if ( MeatType == MeatType.Ribs )
corpse.DropItem( new RawRibs( meat ) );
else if ( MeatType == MeatType.Bird )
corpse.DropItem( new RawBird( meat ) );
else if ( MeatType == MeatType.LambLeg )
corpse.DropItem( new RawLambLeg( meat ) );
from.SendLocalizedMessage( 500467 ); // You carve some meat, which remains on the corpse.
}
if ( hides != 0 )
{
if ( HideType == HideType.Regular )
corpse.DropItem( new Hides( hides ) );
else if ( HideType == HideType.Spined )
corpse.DropItem( new SpinedHides( hides ) );
else if ( HideType == HideType.Horned )
corpse.DropItem( new HornedHides( hides ) );
else if ( HideType == HideType.Barbed )
corpse.DropItem( new BarbedHides( hides ) );
from.SendLocalizedMessage( 500471 ); // You skin it, and the hides are now in the corpse.
}
if ( scales != 0 )
{
ScaleType sc = this.ScaleType;
switch ( sc )
{
case ScaleType.Red: corpse.DropItem( new RedScales( scales ) ); break;
case ScaleType.Yellow: corpse.DropItem( new YellowScales( scales ) ); break;
case ScaleType.Black: corpse.DropItem( new BlackScales( scales ) ); break;
case ScaleType.Green: corpse.DropItem( new GreenScales( scales ) ); break;
case ScaleType.White: corpse.DropItem( new WhiteScales( scales ) ); break;
case ScaleType.Blue: corpse.DropItem( new BlueScales( scales ) ); break;
case ScaleType.All:
{
corpse.DropItem( new RedScales( scales ) );
corpse.DropItem( new YellowScales( scales ) );
corpse.DropItem( new BlackScales( scales ) );
corpse.DropItem( new GreenScales( scales ) );
corpse.DropItem( new WhiteScales( scales ) );
corpse.DropItem( new BlueScales( scales ) );
break;
}
}
from.SendMessage( "You cut away some scales, but they remain on the corpse." );
}
corpse.Carved = true;
if ( corpse.IsCriminalAction( from ) )
from.CriminalAction( true );
}
}
示例10: OnCarve
public virtual void OnCarve( Mobile from, Corpse corpse )
{
if ( !from.InRange( corpse.Location, 1 ) )
{
from.SendMessage( "You are too far away." );
return;
}
BodyPartsContainer bpc = corpse.FindItemByType( typeof( BodyPartsContainer ) ) as BodyPartsContainer;
if (bpc == null)
{
bpc = new BodyPartsContainer();
corpse.DropItem( bpc );
}
if ( !corpse.Carved && !Summoned && !IsBonded )
{
AddBodyParts( bpc, corpse );
corpse.Carved = true;
}
if ( bpc.TotalItems > 0 )
{
from.CloseGump( typeof( SkinningGump ) );
from.SendGump( new SkinningGump( corpse, corpse.FindItemByType( typeof( BodyPartsContainer ) ) as BodyPartsContainer, from ) );
}
else
from.SendMessage( "There's nothing left to carve." );
PlayerMobile pm = from as PlayerMobile;
if ( pm != null )
{
OnXMLEvent( XMLEventType.OnCarveInvokeOnMobile, pm );
OnXMLEvent( XMLEventType.OnCarveInvokeOnItem, corpse );
OnXMLEvent( XMLEventType.OnCarve );
}
}
示例11: OnCarve
public virtual void OnCarve( Mobile from, Corpse corpse )
{
int feathers = Feathers;
int wool = Wool;
int meat = Meat;
int hides = Hides;
int scales = Scales;
if ( (feathers == 0 && wool == 0 && meat == 0 && hides == 0 && scales == 0) || Summoned || IsBonded )
{
from.SendLocalizedMessage( 500485 ); // You see nothing useful to carve from the corpse.
}
else
{
// 6/8/2004 - Pulse
// No longer doubles the resources from corpses if in Felucca, to re-add double resources
// un-comment the 6 lines of code below.
// if ( corpse.Map == Map.Felucca )
// {
// feathers *= 2;
// wool *= 2;
// hides *= 2;
// }
new Blood( 0x122D ).MoveToWorld( corpse.Location, corpse.Map );
if ( feathers != 0 )
{
corpse.DropItem( new Feather( feathers ) );
from.SendLocalizedMessage( 500479 ); // You pluck the bird. The feathers are now on the corpse.
}
if ( wool != 0 )
{
corpse.DropItem( new Wool( wool ) );
from.SendLocalizedMessage( 500483 ); // You shear it, and the wool is now on the corpse.
}
if ( meat != 0 )
{
if ( MeatType == MeatType.Ribs )
corpse.DropItem( new RawRibs( meat ) );
else if ( MeatType == MeatType.Bird )
corpse.DropItem( new RawBird( meat ) );
else if ( MeatType == MeatType.LambLeg )
corpse.DropItem( new RawLambLeg( meat ) );
from.SendLocalizedMessage( 500467 ); // You carve some meat, which remains on the corpse.
}
if ( hides != 0 )
{
if ( HideType == HideType.Regular )
corpse.DropItem( new Hides( hides ) );
else if ( HideType == HideType.Spined )
corpse.DropItem( new SpinedHides( hides ) );
else if ( HideType == HideType.Horned )
corpse.DropItem( new HornedHides( hides ) );
else if ( HideType == HideType.Barbed )
corpse.DropItem( new BarbedHides( hides ) );
from.SendLocalizedMessage( 500471 ); // You skin it, and the hides are now in the corpse.
}
if ( scales != 0 )
{
ScaleType sc = this.ScaleType;
switch ( sc )
{
case ScaleType.Red: corpse.DropItem( new RedScales( scales ) ); break;
case ScaleType.Yellow: corpse.DropItem( new YellowScales( scales ) ); break;
case ScaleType.Black: corpse.DropItem( new BlackScales( scales ) ); break;
case ScaleType.Green: corpse.DropItem( new GreenScales( scales ) ); break;
case ScaleType.White: corpse.DropItem( new WhiteScales( scales ) ); break;
case ScaleType.Blue: corpse.DropItem( new BlueScales( scales ) ); break;
case ScaleType.All:
{
corpse.DropItem( new RedScales( scales ) );
corpse.DropItem( new YellowScales( scales ) );
corpse.DropItem( new BlackScales( scales ) );
corpse.DropItem( new GreenScales( scales ) );
corpse.DropItem( new WhiteScales( scales ) );
corpse.DropItem( new BlueScales( scales ) );
break;
}
}
from.SendMessage( "You cut away some scales, but they remain on the corpse." );
}
corpse.Carved = true;
if ( corpse.IsCriminalAction( from ) )
from.CriminalAction( true );
}
}
示例12: Mobile_CreateCorpseHandler
public static Container Mobile_CreateCorpseHandler( Mobile owner, HairInfo hair, FacialHairInfo facialhair, List<Item> initialContent, List<Item> equipItems )
{
bool shouldFillCorpse = true;
Corpse c = new Corpse( owner, hair, facialhair, shouldFillCorpse ? equipItems : new List<Item>() );
owner.Corpse = c;
if ( shouldFillCorpse )
{
for ( int i = 0; i < initialContent.Count; ++i )
{
Item item = initialContent[i];
c.DropItem( item );
c.SetRestoreInfo( item, item.Location );
}
}
else
{
c.Carved = true; // TODO: Is it needed?
}
Point3D loc = owner.Location;
Map map = owner.Map;
if ( map == null || map == Map.Internal )
{
loc = owner.LogoutLocation;
map = owner.LogoutMap;
}
c.MoveToWorld( loc, map );
return c;
}
示例13: OnCarve
public override void OnCarve(Mobile from, Corpse corpse, Item with)
{
if (corpse.Carved)
base.OnCarve(from, corpse, with);
if (Utility.RandomDouble() < 0.15)
{
if (!from.CheckSkill(SkillName.Forensics, 30, 80))
from.SendMessage("Vous auriez gagné à mieux appréhender les cadavres");
else
{
corpse.DropItem(new ReptiledRelic());
from.SendMessage("Un pan de cuir se détache du ventre de la bête");
}
}
base.OnCarve(from, corpse, with);
}
示例14: OnCarve
public virtual void OnCarve( Mobile from, Corpse corpse, Item with )
{
int feathers = Feathers;
int wool = Wool;
int meat = Meat;
int hides = Hides;
int scales = Scales;
if ( (feathers == 0 && wool == 0 && meat == 0 && hides == 0 && scales == 0) || Summoned || IsBonded || corpse.Animated )
{
if ( corpse.Animated )
corpse.SendLocalizedMessageTo( from, 500464 ); // Use this on corpses to carve away meat and hide
else
from.SendLocalizedMessage( 500485 ); // You see nothing useful to carve from the corpse.
}
else
{
if( Core.ML && from.Race == Race.Human )
{
hides = (int)Math.Ceiling( hides * 1.1 ); //10% Bonus Only applies to Hides, Ore & Logs
}
if ( corpse.Map == Map.Felucca )
{
feathers *= 2;
wool *= 2;
hides *= 2;
if (Core.ML)
{
meat *= 2;
scales *= 2;
}
}
new Blood( 0x122D ).MoveToWorld( corpse.Location, corpse.Map );
if ( feathers != 0 )
{
corpse.AddCarvedItem( new Feather( feathers ), from );
from.SendLocalizedMessage( 500479 ); // You pluck the bird. The feathers are now on the corpse.
}
if ( wool != 0 )
{
corpse.AddCarvedItem( new TaintedWool( wool ), from );
from.SendLocalizedMessage( 500483 ); // You shear it, and the wool is now on the corpse.
}
if ( meat != 0 )
{
if ( MeatType == MeatType.Ribs )
corpse.AddCarvedItem( new RawRibs( meat ), from );
else if ( MeatType == MeatType.Bird )
corpse.AddCarvedItem( new RawBird( meat ), from );
else if ( MeatType == MeatType.LambLeg )
corpse.AddCarvedItem( new RawLambLeg( meat ), from );
from.SendLocalizedMessage( 500467 ); // You carve some meat, which remains on the corpse.
}
if ( hides != 0 )
{
Item holding = from.Weapon as Item;
if ( Core.AOS && ( holding is SkinningKnife /* TODO: || holding is ButcherWarCleaver || with is ButcherWarCleaver */ ) )
{
Item leather = null;
switch ( HideType )
{
case HideType.Regular: leather = new Leather( hides ); break;
case HideType.Spined: leather = new SpinedLeather( hides ); break;
case HideType.Horned: leather = new HornedLeather( hides ); break;
case HideType.Barbed: leather = new BarbedLeather( hides ); break;
}
if ( leather != null )
{
if ( !from.PlaceInBackpack( leather ) )
{
corpse.DropItem( leather );
from.SendLocalizedMessage( 500471 ); // You skin it, and the hides are now in the corpse.
}
else
from.SendLocalizedMessage( 1073555 ); // You skin it and place the cut-up hides in your backpack.
}
}
else
{
if ( HideType == HideType.Regular )
corpse.DropItem( new Hides( hides ) );
else if ( HideType == HideType.Spined )
corpse.DropItem( new SpinedHides( hides ) );
else if ( HideType == HideType.Horned )
corpse.DropItem( new HornedHides( hides ) );
else if ( HideType == HideType.Barbed )
corpse.DropItem( new BarbedHides( hides ) );
from.SendLocalizedMessage( 500471 ); // You skin it, and the hides are now in the corpse.
}
//.........这里部分代码省略.........
示例15: OnCarve
public virtual void OnCarve( Mobile from, Corpse corpse, Item with )
{
int feathers = Feathers;
int wool = Wool;
int meat = Meat;
int hides = Hides;
if ( ( feathers == 0 && wool == 0 && meat == 0 && hides == 0 ) || Summoned || IsBonded || corpse.Animated )
{
if ( corpse.Animated )
corpse.SendLocalizedMessageTo( from, 500464 ); // Use this on corpses to carve away meat and hide
else
from.SendLocalizedMessage( 500485 ); // You see nothing useful to carve from the corpse.
}
else
{
if ( corpse.Map == Map.Felucca )
{
feathers *= 2;
wool *= 2;
hides *= 2;
}
new Blood( 0x122D ).MoveToWorld( corpse.Location, corpse.Map );
if ( feathers != 0 )
{
corpse.AddCarvedItem( new Feather( feathers ), from );
from.SendLocalizedMessage( 500479 ); // You pluck the bird. The feathers are now on the corpse.
}
if ( wool != 0 )
{
corpse.AddCarvedItem( new TaintedWool( wool ), from );
from.SendLocalizedMessage( 500483 ); // You shear it, and the wool is now on the corpse.
}
if ( meat != 0 )
{
if ( MeatType == MeatType.Ribs )
corpse.AddCarvedItem( new RawRibs( meat ), from );
else if ( MeatType == MeatType.Bird )
corpse.AddCarvedItem( new RawBird( meat ), from );
else if ( MeatType == MeatType.LambLeg )
corpse.AddCarvedItem( new RawLambLeg( meat ), from );
from.SendLocalizedMessage( 500467 ); // You carve some meat, which remains on the corpse.
}
if ( hides != 0 )
{
Item holding = from.Weapon as Item;
if ( false && ( holding is SkinningKnife /* TODO: || holding is ButcherWarCleaver || with is ButcherWarCleaver */ ) )
{
Item leather = null;
switch ( HideType )
{
case HideType.Regular: leather = new Leather( hides ); break;
case HideType.Spined: leather = new SpinedLeather( hides ); break;
case HideType.Horned: leather = new HornedLeather( hides ); break;
case HideType.Barbed: leather = new BarbedLeather( hides ); break;
}
if ( leather != null )
{
if ( !from.PlaceInBackpack( leather ) )
{
corpse.DropItem( leather );
from.SendLocalizedMessage( 500471 ); // You skin it, and the hides are now in the corpse.
}
else
{
from.SendLocalizedMessage( 1073555 ); // You skin it and place the cut-up hides in your backpack.
}
}
}
else
{
if ( HideType == HideType.Regular )
corpse.DropItem( new Hides( hides ) );
else if ( HideType == HideType.Spined )
corpse.DropItem( new SpinedHides( hides ) );
else if ( HideType == HideType.Horned )
corpse.DropItem( new HornedHides( hides ) );
else if ( HideType == HideType.Barbed )
corpse.DropItem( new BarbedHides( hides ) );
from.SendLocalizedMessage( 500471 ); // You skin it, and the hides are now in the corpse.
}
}
corpse.Carved = true;
if ( corpse.IsCriminalAction( from ) )
from.CriminalAction( true );
}
}