Show
Ignore:
Timestamp:
11/22/08 00:36:29 (17 years ago)
Author:
yumileroy
Message:

Merge with 273 (aab191f73e46).

Original author: gvcoman
Date: 2008-11-21 19:16:19-05:00

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/src/game/Object.cpp

    r272 r281  
    991991WorldObject::~WorldObject() 
    992992{ 
    993     if(m_isActive && IsInWorld()) 
    994         ObjectAccessor::Instance().RemoveActiveObject(this); 
     993    if(m_isActive && !isType(TYPEMASK_PLAYER) && IsInWorld()) 
     994        GetMap()->RemoveActiveObject(this); 
    995995} 
    996996 
     
    998998{ 
    999999    // if already in the same activity state as we try to set, do nothing 
    1000     if(isActive == m_isActive) 
     1000    if(isActive == m_isActive || isType(TYPEMASK_PLAYER)) 
    10011001        return; 
     1002 
    10021003    m_isActive = isActive; 
    10031004    if(IsInWorld()) 
    10041005    { 
    10051006        if(isActive) 
    1006             ObjectAccessor::Instance().AddActiveObject(this); 
     1007            GetMap()->AddActiveObject(this); 
    10071008        else 
    1008             ObjectAccessor::Instance().RemoveActiveObject(this); 
     1009            GetMap()->RemoveActiveObject(this); 
    10091010    } 
    10101011} 
     
    10131014{ 
    10141015    Object::AddToWorld(); 
    1015     if(m_isActive) 
    1016         ObjectAccessor::Instance().AddActiveObject(this); 
     1016    if(m_isActive && !isType(TYPEMASK_PLAYER)) 
     1017        GetMap()->AddActiveObject(this); 
    10171018} 
    10181019 
    10191020void WorldObject::RemoveFromWorld() 
    10201021{ 
    1021     if(m_isActive) 
    1022         ObjectAccessor::Instance().RemoveActiveObject(this); 
     1022    if(m_isActive && !isType(TYPEMASK_PLAYER)) 
     1023        GetMap()->RemoveActiveObject(this); 
    10231024    Object::RemoveFromWorld(); 
    10241025}