massive branch sync

This commit is contained in:
mark 2010-04-25 06:09:43 +00:00
parent 489bbabe93
commit b3e8ec0a08
192 changed files with 1249 additions and 1124 deletions

View file

@ -1620,46 +1620,7 @@ namespace Server.Items
public virtual void DisplayTo( Mobile to )
{
if ( !IsPublicContainer )
{
bool contains = false;
if ( m_Openers != null )
{
Point3D worldLoc = GetWorldLocation();
Map map = this.Map;
for ( int i = 0; i < m_Openers.Count; ++i )
{
Mobile mob = m_Openers[i];
if ( mob == to )
{
contains = true;
}
else
{
int range = GetUpdateRange( mob );
if ( mob.Map != map || !mob.InRange( worldLoc, range ) )
m_Openers.RemoveAt( i-- );
}
}
}
if ( !contains )
{
if ( m_Openers == null ) {
m_Openers = new List<Mobile>();
}
m_Openers.Add( to );
}
else if ( m_Openers != null && m_Openers.Count == 0 )
{
m_Openers = null;
}
}
ProcessOpeners( to );
to.Send( new ContainerDisplay( this ) );
@ -1677,6 +1638,51 @@ namespace Server.Items
}
}
public void ProcessOpeners( Mobile opener )
{
if ( !IsPublicContainer )
{
bool contains = false;
if ( m_Openers != null )
{
Point3D worldLoc = GetWorldLocation();
Map map = this.Map;
for ( int i = 0; i < m_Openers.Count; ++i )
{
Mobile mob = m_Openers[i];
if ( mob == opener )
{
contains = true;
}
else
{
int range = GetUpdateRange( mob );
if ( mob.Map != map || !mob.InRange( worldLoc, range ) )
m_Openers.RemoveAt( i-- );
}
}
}
if ( !contains )
{
if ( m_Openers == null )
{
m_Openers = new List<Mobile>();
}
m_Openers.Add( opener );
}
else if ( m_Openers != null && m_Openers.Count == 0 )
{
m_Openers = null;
}
}
}
public override void GetProperties( ObjectPropertyList list )
{
base.GetProperties( list );