本文整理汇总了C#中Static.MoveToWorld方法的典型用法代码示例。如果您正苦于以下问题:C# Static.MoveToWorld方法的具体用法?C# Static.MoveToWorld怎么用?C# Static.MoveToWorld使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Static
的用法示例。
在下文中一共展示了Static.MoveToWorld方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: PreviewHouse
public PreviewHouse( int multiID ) : base( multiID | 0x8000 )
{
m_Components = new List<Item>();
MultiComponentList mcl = this.Components;
for ( int i = 1; i < mcl.List.Length; ++i )
{
MultiTileEntry entry = mcl.List[i];
if ( entry.m_Flags == 0 )
{
#region SA
Item item = new Static( entry.m_ItemID & 0x7FFF );
#endregion
item.MoveToWorld( new Point3D( X + entry.m_OffsetX, Y + entry.m_OffsetY, Z + entry.m_OffsetZ ), Map );
m_Components.Add( item );
}
}
m_Timer = new DecayTimer( this );
m_Timer.Start();
}
示例2: AddTrunk
public virtual void AddTrunk()
{
if( m_Trunk != null )
m_Trunk.Delete();
if( TrunkID > 0 )
{
m_TrunkID = TrunkID;
m_Trunk = new Static( TrunkID );
m_Trunk.Name = "a tree trunk";
m_Trunk.MoveToWorld( this.Location, this.Map );
}
}
示例3: Execute
public override void Execute( CommandEventArgs args, object o )
{
if( o is AddonComponent )
{
BaseAddon addon = ((AddonComponent)o).Addon;
if( addon.Components.Count > 0 )
{
for( int i = 0; i < addon.Components.Count; i++ )
{
AddonComponent component = addon.Components[i];
Static newStatic = new Static( component.ItemID );
newStatic.Hue = component.Hue;
newStatic.Name = component.Name;
newStatic.MoveToWorld( new Point3D( component.Location ), component.Map );
}
}
addon.Delete();
AddResponse( "The add-on has been converted to static objects." );
}
else if( o is Item && !(o is Static) )
{
Item i = (Item)o;
Static newItem = new Static( i.ItemID );
newItem.Hue = i.Hue;
newItem.Layer = i.Layer;
newItem.Light = i.Light;
newItem.Name = i.Name;
newItem.MoveToWorld( new Point3D( i.Location ), i.Map );
if( i.Parent == args.Mobile )
newItem.Bounce( args.Mobile );
if( i is Container )
((Container)i).Destroy();
else
i.Delete();
AddResponse( "The item has been converted to a static." );
}
else
{
LogFailure( "This command only works with non-static items or add-ons." );
}
}
示例4: Build
/// <summary>
/// Builds a structure received from PB
/// </summary>
/// <param name="account">The account name for the user requesting the builder</param>
/// <param name="items">An ArrayList of BuiltItem objects</param>
/// <param name="map">The map on which the generation occurs</param>
public static void Build( string account, ArrayList items, Map map )
{
ArrayList worldItems = new ArrayList();
m_UserData[ account ] = worldItems;
foreach( BuildItem bItem in items )
{
Static item = new Static( bItem.ID );
item.Hue = bItem.Hue;
item.MoveToWorld( new Point3D( bItem.X, bItem.Y, bItem.Z ), map );
worldItems.Add( item );
}
}
示例5: Generate
public static void Generate()
{
ExperimentalRoomController controller = new ExperimentalRoomController();
controller.MoveToWorld(new Point3D(980, 1117, -42), Map.TerMur);
//Room 0 to 1
ExperimentalRoomDoor door = new ExperimentalRoomDoor(Room.RoomZero, DoorFacing.WestCCW);
ExperimentalRoomBlocker blocker = new ExperimentalRoomBlocker(Room.RoomZero);
door.Hue = 1109;
door.MoveToWorld(new Point3D(984, 1116, -42), Map.TerMur);
blocker.MoveToWorld(new Point3D(984, 1116, -42), Map.TerMur);
door = new ExperimentalRoomDoor(Room.RoomZero, DoorFacing.EastCW);
blocker = new ExperimentalRoomBlocker(Room.RoomZero);
door.Hue = 1109;
door.MoveToWorld(new Point3D(985, 1116, -42), Map.TerMur);
blocker.MoveToWorld(new Point3D(985, 1116, -42), Map.TerMur);
//Room 1 to 2
door = new ExperimentalRoomDoor(Room.RoomOne, DoorFacing.WestCCW);
blocker = new ExperimentalRoomBlocker(Room.RoomOne);
door.Hue = 1109;
door.MoveToWorld(new Point3D(984, 1102, -42), Map.TerMur);
blocker.MoveToWorld(new Point3D(984, 1102, -42), Map.TerMur);
door = new ExperimentalRoomDoor(Room.RoomOne, DoorFacing.EastCW);
blocker = new ExperimentalRoomBlocker(Room.RoomOne);
door.Hue = 1109;
door.MoveToWorld(new Point3D(985, 1102, -42), Map.TerMur);
blocker.MoveToWorld(new Point3D(985, 1102, -42), Map.TerMur);
//Room 2 to 3
door = new ExperimentalRoomDoor(Room.RoomTwo, DoorFacing.WestCCW);
blocker = new ExperimentalRoomBlocker(Room.RoomTwo);
door.Hue = 1109;
door.MoveToWorld(new Point3D(984, 1090, -42), Map.TerMur);
blocker.MoveToWorld(new Point3D(984, 1090, -42), Map.TerMur);
door = new ExperimentalRoomDoor(Room.RoomTwo, DoorFacing.EastCW);
blocker = new ExperimentalRoomBlocker(Room.RoomTwo);
door.Hue = 1109;
door.MoveToWorld(new Point3D(985, 1090, -42), Map.TerMur);
blocker.MoveToWorld(new Point3D(985, 1090, -42), Map.TerMur);
//Room 3 to 4
door = new ExperimentalRoomDoor(Room.RoomTwo, DoorFacing.WestCCW);
blocker = new ExperimentalRoomBlocker(Room.RoomThree);
door.Hue = 1109;
door.MoveToWorld(new Point3D(984, 1072, -42), Map.TerMur);
blocker.MoveToWorld(new Point3D(984, 1072, -42), Map.TerMur);
door = new ExperimentalRoomDoor(Room.RoomTwo, DoorFacing.EastCW);
blocker = new ExperimentalRoomBlocker(Room.RoomThree);
door.Hue = 1109;
door.MoveToWorld(new Point3D(985, 1072, -42), Map.TerMur);
blocker.MoveToWorld(new Point3D(985, 1072, -42), Map.TerMur);
ExperimentalRoomChest chest = new ExperimentalRoomChest();
chest.MoveToWorld(new Point3D(984, 1064, -37), Map.TerMur);
ExperimentalBook instr = new ExperimentalBook();
instr.Movable = false;
instr.MoveToWorld(new Point3D(995, 1114, -36), Map.TerMur);
SecretDungeonDoor dd = new SecretDungeonDoor(DoorFacing.NorthCCW);
dd.ClosedID = 87;
dd.OpenedID = 88;
dd.MoveToWorld(new Point3D(1007, 1119, -42), Map.TerMur);
LocalizedSign sign = new LocalizedSign(3026, 1113407); // Experimental Room Access
sign.Movable = false;
sign.MoveToWorld(new Point3D(980, 1119, -37), Map.TerMur);
//Puzze Room
PuzzleBox box = new PuzzleBox(PuzzleType.WestBox);
box.MoveToWorld(new Point3D(1090, 1171, 11), Map.TerMur);
box = new PuzzleBox(PuzzleType.EastBox);
box.MoveToWorld(new Point3D(1104, 1171, 11), Map.TerMur);
box = new PuzzleBox(PuzzleType.NorthBox);
box.MoveToWorld(new Point3D(1097, 1163, 11), Map.TerMur);
XmlSpawner spawner = new XmlSpawner("MagicKey");
spawner.MoveToWorld(new Point3D(1109, 1150, -12), Map.TerMur);
spawner.SpawnRange = 0;
spawner.MinDelay = TimeSpan.FromSeconds(30);
spawner.MaxDelay = TimeSpan.FromSeconds(45);
spawner.DoRespawn = true;
PuzzleBook book = new PuzzleBook();
book.Movable = false;
book.MoveToWorld(new Point3D(1109, 1153, -17), Map.TerMur);
PuzzleRoomTeleporter tele = new PuzzleRoomTeleporter();
tele.PointDest = new Point3D(1097, 1173, 1);
tele.MapDest = Map.TerMur;
tele.MoveToWorld(new Point3D(1097, 1175, 0), Map.TerMur);
tele = new PuzzleRoomTeleporter();
//.........这里部分代码省略.........
示例6: Execute
public override void Execute( CommandEventArgs e, object obj )
{
int max;
bool west;
IPoint3D p = obj as IPoint3D;
if ( p == null )
return;
else if ( p is Item )
p = ((Item)p).GetWorldTop();
Item item;
if (e.Arguments.Length == 1 && Convert.ToInt32(e.Arguments[0]) <= 1)
{
LogFailure("Invalid size, must be larger than 1");
return;
}
else if (e.Arguments.Length == 1)
{
max = Convert.ToInt32(e.Arguments[0]);
west = false;
}
else
{
max = Convert.ToInt32(e.Arguments[1]);
west = e.Arguments[0].ToString().StartsWith( "w" );
}
if (max <= 1)
{
LogFailure("Invalid size, must be larger than 1");
return;
}
int PointX = west ? p.X : p.X - (max % 2 == 0 ? ((max / 2) - 1) : (max / 2));
int PointY = west ? p.Y - (max % 2 == 0 ? ((max / 2) - 1) : (max / 2)) : p.Y;
for (int i=1;i<=max;i++)
{
if (i == 1)
{
item = new Static( west ? 2824 : 2818 );
item.MoveToWorld( new Point3D(west ? PointX : (PointX + (i-1)), west ? (PointY + (i-1)) : PointY, p.Z), e.Mobile.Map);
item = new Static( west ? 2821 : 2815 );
item.MoveToWorld( new Point3D(west ? PointX : (PointX + (i-1)), west ? (PointY + (i-1)) : PointY, p.Z + 3), e.Mobile.Map);
}
else if (i == max)
{
item = new Static( west ? 2822 : 2816 );
item.MoveToWorld( new Point3D(west ? PointX : (PointX + (i-1)), west ? (PointY + (i-1)) : PointY, p.Z), e.Mobile.Map);
item = new Static( west ? 2819 : 2813 );
item.MoveToWorld( new Point3D(west ? PointX : (PointX + (i-1)), west ? (PointY + (i-1)) : PointY, p.Z + 3), e.Mobile.Map);
}
else
{
item = new Static( west ? 2823 : 2817 );
item.MoveToWorld( new Point3D(west ? PointX : (PointX + (i-1)), west ? (PointY + (i-1)) : PointY, p.Z), e.Mobile.Map);
item = new Static( west ? 2820 : 2814 );
item.MoveToWorld( new Point3D(west ? PointX : (PointX + (i-1)), west ? (PointY + (i-1)) : PointY, p.Z + 3), e.Mobile.Map);
}
}
AddResponse("Finished creating display case");
}
示例7: IncreaseTier
public override void IncreaseTier()
{
base.IncreaseTier();
List<object> list = new List<object>();
Item c;
switch ( Tier )
{
case 1:
// decorative armor
c = new Static( 0x1508 );
c.MoveToWorld( new Point3D( 1409, 1610, 30 ), Map );
list.Add( c );
// cannon
c = new Static( 0xE94 );
c.MoveToWorld( new Point3D( 1409, 1610, 30 ), Map );
list.Add( c );
c = new Static( 0xE95 );
c.MoveToWorld( new Point3D( 1410, 1610, 30 ), Map );
list.Add( c );
c = new Static( 0xE96 );
c.MoveToWorld( new Point3D( 1411, 1610, 30 ), Map );
list.Add( c );
break;
}
if ( list.Count > 0 )
Tiers.Add( list );
}
示例8: CommodityStyle3
public CommodityStyle3() : base(0x1774)
{
Item comp = new Static(16527);
comp.MoveToWorld(new Point3D(this.X, this.Y, this.Z), this.Map);
AddComponent(comp);
}
示例9: Destroy
public bool Destroy( )
{
if( this == null || this.Deleted )
return false;
if( OnBeforeDestroyed( ) )
{
if( m_Child != null && !m_Child.Deleted && !m_Child.Alive )
{
Rubble rubble = new Rubble( m_DestroyedID, this.Name );
if( rubble != null && !rubble.Deleted && this.Map != null && this.Map != Map.Internal )
{
rubble.MoveToWorld( this.Location, this.Map );
}
WoodenBox lootbox = new WoodenBox( );
lootbox.Name = this.Name + " Loot Box";
OnDestroyed( lootbox );
if( lootbox != null && !lootbox.Deleted )
{
if( DropsLoot )
lootbox.MoveToWorld( new Point3D( this.X, this.Y, this.Z ), this.Map );
else
lootbox.Delete( );
}
if( m_Child != null )
m_Child.Delete( );
Delete( );
return true;
}
else
{
Static rubble = new Static( m_DestroyedID );
if( rubble != null && !rubble.Deleted && this.Map != null && this.Map != Map.Internal )
rubble.MoveToWorld( this.Location, this.Map );
WoodenBox lootbox = new WoodenBox( );
lootbox.Name = this.Name + " Loot Box";
OnDestroyed( lootbox );
if( lootbox != null && !lootbox.Deleted )
{
if( DropsLoot )
lootbox.MoveToWorld( new Point3D( this.X, this.Y, this.Z ), this.Map );
else
lootbox.Delete( );
}
Delete( );
return true;
}
}
return false;
}
示例10: ShowSpawnPoints_OnCommand
public static void ShowSpawnPoints_OnCommand( CommandEventArgs e )
{
ArrayList ToShow = new ArrayList();
foreach( Item item in World.Items.Values )
{
if( item is XmlSpawner )
{
//turned off visibility. Admins will still see masts but players will not.
item.Visible = false; // set the spawn item visibility
item.Movable = false; // Make the spawn item movable
item.Hue = 88; // Bright blue colour so its easy to spot
item.ItemID = ShowItemId; // Ship Mast (Very tall, easy to see if beneath other objects)
// find container-held spawners to be marked with an external static
if( (item.Parent != null) && (item.RootParent is Container) )
{
ToShow.Add( item );
}
}
}
// place the statics
foreach( Item i in ToShow )
{
XmlSpawner xml_item = (XmlSpawner)i;
// does the spawner already have a static attached to it? could happen if two showall commands are issued in a row.
// if so then dont add another
if( (xml_item.m_ShowContainerStatic == null || xml_item.m_ShowContainerStatic.Deleted) && xml_item.RootParent is Container )
{
Container root_item = xml_item.RootParent as Container;
// calculate a world location for the static. Position it just above the container
int x = root_item.Location.X;
int y = root_item.Location.Y;
int z = root_item.Location.Z + 10;
Static s = new Static( ShowItemId );
s.Visible = false;
s.MoveToWorld( new Point3D( x, y, z ), root_item.Map );
xml_item.m_ShowContainerStatic = s;
}
}
}
示例11: GenGauntlet_OnCommand
public static void GenGauntlet_OnCommand( CommandEventArgs e )
{
/* Begin healer room */
CreatePricedHealer( 5000, 387, 400 );
CreateTeleporter( 390, 407, 394, 405 );
BaseDoor healerDoor = CreateDoorSet( 393, 404, true, 0x44E );
healerDoor.Locked = true;
healerDoor.KeyValue = Key.RandomValue();
if ( healerDoor.Link != null )
{
healerDoor.Link.Locked = true;
healerDoor.Link.KeyValue = Key.RandomValue();
}
/* End healer room */
/* Begin supply room */
CreateMorphItem( 433, 371, 0x29F, 0x116, 3, 0x44E );
CreateMorphItem( 433, 372, 0x29F, 0x115, 3, 0x44E );
CreateVarietyDealer( 492, 369 );
for ( int x = 434; x <= 478; ++x )
{
for ( int y = 371; y <= 372; ++y )
{
Static item = new Static( 0x524 );
item.Hue = 1;
item.MoveToWorld( new Point3D( x, y, -1 ), Map.Malas );
}
}
/* End supply room */
/* Begin gauntlet cycle */
CreateTeleporter( 471, 428, 474, 428 );
CreateTeleporter( 462, 494, 462, 498 );
CreateTeleporter( 403, 502, 399, 506 );
CreateTeleporter( 357, 476, 356, 480 );
CreateTeleporter( 361, 433, 357, 434 );
GauntletSpawner sp1 = CreateSpawner( "DarknightCreeper", 491, 456, 473, 432, 417, 426, true, 473, 412, 39, 60 );
GauntletSpawner sp2 = CreateSpawner( "FleshRenderer", 482, 520, 468, 496, 426, 422, false, 448, 496, 56, 48 );
GauntletSpawner sp3 = CreateSpawner( "Impaler", 406, 538, 408, 504, 432, 430, false, 376, 504, 64, 48 );
GauntletSpawner sp4 = CreateSpawner( "ShadowKnight", 335, 512, 360, 478, 424, 439, false, 300, 478, 72, 64 );
GauntletSpawner sp5 = CreateSpawner( "AbysmalHorror", 326, 433, 360, 429, 416, 435, true, 300, 408, 60, 56 );
GauntletSpawner sp6 = CreateSpawner( "DemonKnight", 423, 430, 0, 0, 423, 430, true, 392, 392, 72, 96 );
sp1.Sequence = sp2;
sp2.Sequence = sp3;
sp3.Sequence = sp4;
sp4.Sequence = sp5;
sp5.Sequence = sp6;
sp6.Sequence = sp1;
sp1.State = GauntletSpawnerState.InProgress;
/* End gauntlet cycle */
/* Begin exit gate */
ConfirmationMoongate gate = new ConfirmationMoongate();
gate.Dispellable = false;
gate.Target = new Point3D( 2350, 1270, -85 );
gate.TargetMap = Map.Malas;
gate.GumpWidth = 420;
gate.GumpHeight = 280;
gate.MessageColor = 0x7F00;
gate.MessageNumber = 1062109; // You are about to exit Dungeon Doom. Do you wish to continue?
gate.TitleColor = 0x7800;
gate.TitleNumber = 1062108; // Please verify...
gate.Hue = 0x44E;
gate.MoveToWorld( new Point3D( 433, 326, 4 ), Map.Malas );
/* End exit gate */
}
示例12: Setup
public static void Setup(CommandEventArgs e)
{
if (VoidPoolController.InstanceTram != null || VoidPoolController.InstanceFel != null)
e.Mobile.SendMessage("This has already been setup!");
else
{
var one = new VoidPoolController(Map.Trammel);
WeakEntityCollection.Add("newcovetous", one);
one.MoveToWorld(new Point3D(5605, 1998, 10), Map.Trammel);
var two = new VoidPoolController(Map.Felucca);
WeakEntityCollection.Add("newcovetous", two);
two.MoveToWorld(new Point3D(5605, 1998, 10), Map.Felucca);
int id = 0;
int hue = 0;
for (int x = 5497; x <= 5503; x++)
{
for (int y = 1995; y <= 2001; y++)
{
if (x == 5497 && y == 1995) id = 1886;
else if (x == 5497 && y == 2001) id = 1887;
else if (x == 5503 && y == 1995) id = 1888;
else if (x == 5503 && y == 2001) id = 1885;
else if (x == 5497) id = 1874;
else if (x == 5503) id = 1876;
else if (y == 1995) id = 1873;
else if (y == 2001) id = 1875;
else
{
//id = 1168;
id = Utility.Random(8511, 6);
}
hue = id >= 8511 ? 0 : 1954;
var item = new Static(id);
item.Name = "Void Pool";
item.Hue = hue;
WeakEntityCollection.Add("newcovetous", item);
item.MoveToWorld(new Point3D(x, y, 5), Map.Trammel);
item = new Static(id);
item.Name = "Void Pool";
item.Hue = hue;
WeakEntityCollection.Add("newcovetous", item);
item.MoveToWorld(new Point3D(x, y, 5), Map.Felucca);
}
}
XmlSpawner spawner = new XmlSpawner("corathesorceress");
spawner.MoveToWorld(new Point3D(5457, 1808, 0), Map.Trammel);
spawner.SpawnRange = 5;
spawner.MinDelay = TimeSpan.FromHours(1);
spawner.MaxDelay = TimeSpan.FromHours(1.5);
spawner.DoRespawn = true;
spawner = new XmlSpawner("corathesorceress");
spawner.MoveToWorld(new Point3D(5457, 1808, 0), Map.Felucca);
spawner.SpawnRange = 5;
spawner.MinDelay = TimeSpan.FromHours(1);
spawner.MaxDelay = TimeSpan.FromHours(1.5);
spawner.DoRespawn = true;
spawner = new XmlSpawner("velathesorceress");
spawner.MoveToWorld(new Point3D(2254, 1207, 0), Map.Trammel);
spawner.SpawnRange = 0;
spawner.DoRespawn = true;
spawner = new XmlSpawner("velathesorceress");
spawner.MoveToWorld(new Point3D(2254, 1207, 0), Map.Felucca);
spawner.SpawnRange = 0;
spawner.DoRespawn = true;
AddWaypoints();
ConvertSpawners();
}
}
示例13: IncreaseTier
public override void IncreaseTier()
{
base.IncreaseTier();
List<object> list = new List<object>();
Item c;
switch ( Tier )
{
case 1:
// easel with canvas
c = new Static( 0xF66 );
c.MoveToWorld( new Point3D( 1417, 1602, 30 ), Map );
list.Add( c );
// table
c = new Static( 0xB6B );
c.MoveToWorld( new Point3D( 1417, 1606, 30 ), Map );
list.Add( c );
c = new Static( 0xB6D );
c.MoveToWorld( new Point3D( 1417, 1605, 30 ), Map );
list.Add( c );
c = new Static( 0xB6C );
c.MoveToWorld( new Point3D( 1417, 1604, 30 ), Map );
list.Add( c );
// bonsai tree
c = new Static( 0x28DC );
c.MoveToWorld( new Point3D( 1417, 1604, 36 ), Map );
list.Add( c );
// bottles
c = new Static( 0xE29 );
c.MoveToWorld( new Point3D( 1417, 1605, 37 ), Map );
list.Add( c );
c = new Static( 0xE28 );
c.MoveToWorld( new Point3D( 1417, 1605, 36 ), Map );
list.Add( c );
c = new Static( 0xE2C );
c.MoveToWorld( new Point3D( 1417, 1606, 37 ), Map );
list.Add( c );
// pen and ink
c = new Static( 0xFBF );
c.MoveToWorld( new Point3D( 1417, 1606, 36 ), Map );
list.Add( c );
// cooking book
c = new Static( 0xFBE );
c.MoveToWorld( new Point3D( 1418, 1606, 42 ), Map );
c.Name = "A Cookbook";
list.Add( c );
break;
}
if ( list.Count > 0 )
Tiers.Add( list );
}
示例14: CheckSignpost
public override void CheckSignpost()
{
MultiComponentList mcl = this.Components;
int x = mcl.Min.X;
int y = mcl.Height - 2 - mcl.Center.Y;
if (m_Signpost == null)
{
m_Signpost = new Static(m_SignpostGraphic);
m_Signpost.MoveToWorld(new Point3D(X + x, Y + y, Z + 7), Map);
}
else
{
m_Signpost.ItemID = m_SignpostGraphic;
m_Signpost.MoveToWorld(new Point3D(X + x, Y + y, Z + 7), Map);
}
}
示例15: OnTarget
protected override void OnTarget(Mobile from, object targeted)
{
IPoint3D p = targeted as IPoint3D;
if ( p != null )
{
foreach( BuildItem bItem in m_Items )
{
Static item = new Static( bItem.ID );
item.Hue = bItem.Hue;
int x = p.X + bItem.X;
int y = p.Y + bItem.Y;
Map map = from.Map;
int z = map.Tiles.GetLandTile( x, y ).Z;
item.MoveToWorld( new Point3D( x, y, z ), map );
}
from.SendMessage( BoxConfig.MessageHue, "{0} items created.", m_Items.Count );
}
}