*Merge from Mangos. Add MapReference. Author: hunuza.

*Also re-commit the patches reverted in 255.

--HG--
branch : trunk
This commit is contained in:
megamage
2008-11-18 19:40:06 -06:00
parent 78f343397c
commit ea68727d27
39 changed files with 949 additions and 760 deletions

View File

@@ -10,12 +10,12 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "MapManager.h"
@@ -111,7 +111,7 @@ MapManager::_GetBaseMap(uint32 id)
const MapEntry* entry = sMapStore.LookupEntry(id);
if (entry && entry->Instanceable())
{
m = new MapInstanced(id, i_gridCleanUpDelay, 0);
m = new MapInstanced(id, i_gridCleanUpDelay);
}
else
{
@@ -246,6 +246,8 @@ MapManager::Update(time_t diff)
if( !i_timer.Passed() )
return;
ObjectAccessor::Instance().UpdatePlayers(i_timer.GetCurrent());
for(MapMapType::iterator iter=i_maps.begin(); iter != i_maps.end(); ++iter)
{
checkAndCorrectGridStatesArray(); // debugging code, should be deleted some day
@@ -336,7 +338,7 @@ uint32 MapManager::GetNumPlayersInInstances()
MapInstanced::InstancedMaps &maps = ((MapInstanced *)map)->GetInstancedMaps();
for(MapInstanced::InstancedMaps::iterator mitr = maps.begin(); mitr != maps.end(); ++mitr)
if(mitr->second->IsDungeon())
ret += ((InstanceMap*)mitr->second)->GetPlayers().size();
ret += ((InstanceMap*)mitr->second)->GetPlayers().getSize();
}
return ret;
}