This commit is contained in:
parent
712037724a
commit
ac5a0827f2
7 changed files with 21 additions and 19 deletions
|
|
@ -2,6 +2,7 @@ using System;
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
namespace Server.Movement
|
||||
|
|
@ -319,13 +320,13 @@ namespace Server.Movement
|
|||
if ( (item.ItemData.Flags & reqFlags) == 0 )
|
||||
continue;
|
||||
|
||||
if ( sector == sectorStart && item.AtWorldPoint( xStart, yStart ) && item.ItemID <= TileData.MaxItemValue )
|
||||
if ( sector == sectorStart && item.AtWorldPoint( xStart, yStart ) && !(item is BaseMulti) && item.ItemID <= TileData.MaxItemValue )
|
||||
itemsStart.Add( item );
|
||||
else if ( sector == sectorForward && item.AtWorldPoint( xForward, yForward ) && item.ItemID <= TileData.MaxItemValue )
|
||||
else if ( sector == sectorForward && item.AtWorldPoint( xForward, yForward ) && !(item is BaseMulti) && item.ItemID <= TileData.MaxItemValue )
|
||||
itemsForward.Add( item );
|
||||
else if ( sector == sectorLeft && item.AtWorldPoint( xLeft, yLeft ) && item.ItemID <= TileData.MaxItemValue )
|
||||
else if ( sector == sectorLeft && item.AtWorldPoint( xLeft, yLeft ) && !(item is BaseMulti) && item.ItemID <= TileData.MaxItemValue )
|
||||
itemsLeft.Add( item );
|
||||
else if ( sector == sectorRight && item.AtWorldPoint( xRight, yRight ) && item.ItemID <= TileData.MaxItemValue )
|
||||
else if ( sector == sectorRight && item.AtWorldPoint( xRight, yRight ) && !(item is BaseMulti) && item.ItemID <= TileData.MaxItemValue )
|
||||
itemsRight.Add( item );
|
||||
}
|
||||
}
|
||||
|
|
@ -350,9 +351,9 @@ namespace Server.Movement
|
|||
if ( (item.ItemData.Flags & reqFlags) == 0 )
|
||||
continue;
|
||||
|
||||
if ( item.AtWorldPoint( xStart, yStart ) && item.ItemID <= TileData.MaxItemValue )
|
||||
if ( item.AtWorldPoint( xStart, yStart ) && !(item is BaseMulti) && item.ItemID <= TileData.MaxItemValue )
|
||||
itemsStart.Add( item );
|
||||
else if ( item.AtWorldPoint( xForward, yForward ) && item.ItemID <= TileData.MaxItemValue )
|
||||
else if ( item.AtWorldPoint( xForward, yForward ) && !(item is BaseMulti) && item.ItemID <= TileData.MaxItemValue )
|
||||
itemsForward.Add( item );
|
||||
}
|
||||
}
|
||||
|
|
@ -368,7 +369,7 @@ namespace Server.Movement
|
|||
if ( (item.ItemData.Flags & reqFlags) == 0 )
|
||||
continue;
|
||||
|
||||
if ( item.AtWorldPoint( xForward, yForward ) && item.ItemID <= TileData.MaxItemValue )
|
||||
if ( item.AtWorldPoint( xForward, yForward ) && !(item is BaseMulti) && item.ItemID <= TileData.MaxItemValue )
|
||||
itemsForward.Add( item );
|
||||
}
|
||||
|
||||
|
|
@ -382,7 +383,7 @@ namespace Server.Movement
|
|||
if ( (item.ItemData.Flags & reqFlags) == 0 )
|
||||
continue;
|
||||
|
||||
if ( item.AtWorldPoint( xStart, yStart ) && item.ItemID <= TileData.MaxItemValue )
|
||||
if ( item.AtWorldPoint( xStart, yStart ) && !(item is BaseMulti) && item.ItemID <= TileData.MaxItemValue )
|
||||
itemsStart.Add( item );
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -288,7 +288,7 @@ namespace Server.Items
|
|||
{
|
||||
Item item = items[i];
|
||||
|
||||
if ( item.ItemID <= TileData.MaxItemValue && item.AtWorldPoint( x, y ) && !(item is BaseDoor) )
|
||||
if ( !(item is BaseMulti) && item.ItemID <= TileData.MaxItemValue && item.AtWorldPoint( x, y ) && !(item is BaseDoor) )
|
||||
{
|
||||
ItemData id = item.ItemData;
|
||||
bool surface = id.Surface;
|
||||
|
|
|
|||
|
|
@ -1221,7 +1221,7 @@ namespace Server.Multis
|
|||
|
||||
foreach ( Item item in eable )
|
||||
{
|
||||
if ( item.ItemID > TileData.MaxItemValue || item.Z < p.Z || !item.Visible )
|
||||
if ( item is BaseMulti || item.ItemID > TileData.MaxItemValue || item.Z < p.Z || !item.Visible )
|
||||
continue;
|
||||
|
||||
int x = item.X - p.X + newComponents.Min.X;
|
||||
|
|
|
|||
|
|
@ -2242,7 +2242,7 @@ namespace Server.Multis
|
|||
|
||||
int byteIndex = (totalStairsUsed % MaxItemsPerStairBuffer) * 5;
|
||||
|
||||
stairBuffer[byteIndex++] = (byte)((mte.m_ItemID >> 8) & 0x3F);
|
||||
stairBuffer[byteIndex++] = (byte)(mte.m_ItemID >> 8);
|
||||
stairBuffer[byteIndex++] = (byte)mte.m_ItemID;
|
||||
|
||||
stairBuffer[byteIndex++] = (byte)mte.m_OffsetX;
|
||||
|
|
@ -2280,7 +2280,7 @@ namespace Server.Multis
|
|||
|
||||
int byteIndex = (totalStairsUsed % MaxItemsPerStairBuffer) * 5;
|
||||
|
||||
stairBuffer[byteIndex++] = (byte)((mte.m_ItemID >> 8) & 0x3F);
|
||||
stairBuffer[byteIndex++] = (byte)(mte.m_ItemID >> 8);
|
||||
stairBuffer[byteIndex++] = (byte)mte.m_ItemID;
|
||||
|
||||
stairBuffer[byteIndex++] = (byte)mte.m_OffsetX;
|
||||
|
|
@ -2292,7 +2292,7 @@ namespace Server.Multis
|
|||
else
|
||||
{
|
||||
m_PlaneUsed[plane] = true;
|
||||
m_PlaneBuffers[plane][index] = (byte)((mte.m_ItemID >> 8) & 0x3F);
|
||||
m_PlaneBuffers[plane][index] = (byte)(mte.m_ItemID >> 8);
|
||||
m_PlaneBuffers[plane][index + 1] = (byte)mte.m_ItemID;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ using System.Collections;
|
|||
using System.Collections.Generic;
|
||||
using System.Xml;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Regions
|
||||
{
|
||||
|
|
@ -309,7 +310,7 @@ namespace Server.Regions
|
|||
{
|
||||
Item item = sector.Items[j];
|
||||
|
||||
if ( item.ItemID <= TileData.MaxItemValue && item.AtWorldPoint( x, y ) )
|
||||
if ( !(item is BaseMulti) && item.ItemID <= TileData.MaxItemValue && item.AtWorldPoint( x, y ) )
|
||||
{
|
||||
m_SpawnBuffer2.Add( item );
|
||||
|
||||
|
|
|
|||
|
|
@ -3927,7 +3927,7 @@ namespace Server
|
|||
|
||||
foreach ( Item item in eable )
|
||||
{
|
||||
if ( item.ItemID > TileData.MaxItemValue )
|
||||
if ( item is BaseMulti || item.ItemID > TileData.MaxItemValue )
|
||||
continue;
|
||||
|
||||
items.Add( item );
|
||||
|
|
|
|||
|
|
@ -395,7 +395,7 @@ namespace Server
|
|||
{
|
||||
Item item = items[i];
|
||||
|
||||
if ( item.ItemID <= TileData.MaxItemValue && item.AtWorldPoint( x, y ) )
|
||||
if ( !(item is BaseMulti) && item.ItemID <= TileData.MaxItemValue && item.AtWorldPoint( x, y ) )
|
||||
{
|
||||
ItemData id = item.ItemData;
|
||||
surface = id.Surface;
|
||||
|
|
@ -470,7 +470,7 @@ namespace Server
|
|||
|
||||
foreach ( Item item in eable )
|
||||
{
|
||||
if ( item.ItemID <= TileData.MaxItemValue )
|
||||
if ( !(item is BaseMulti) && item.ItemID <= TileData.MaxItemValue )
|
||||
{
|
||||
items.Add( item );
|
||||
|
||||
|
|
@ -624,7 +624,7 @@ namespace Server
|
|||
{
|
||||
Item item = sector.Items[i];
|
||||
|
||||
if ( item.ItemID <= TileData.MaxItemValue && item.AtWorldPoint( p.X, p.Y ) && !item.Movable )
|
||||
if ( !(item is BaseMulti) && item.ItemID <= TileData.MaxItemValue && item.AtWorldPoint( p.X, p.Y ) && !item.Movable )
|
||||
{
|
||||
ItemData id = item.ItemData;
|
||||
|
||||
|
|
@ -1972,7 +1972,7 @@ namespace Server
|
|||
if( !i.Visible )
|
||||
continue;
|
||||
|
||||
if( i.ItemID > TileData.MaxItemValue )
|
||||
if( i is BaseMulti || i.ItemID > TileData.MaxItemValue )
|
||||
continue;
|
||||
|
||||
ItemData id = i.ItemData;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue