From 619d88cbffbcd409f3b047c2da2f9be4f9c67d78 Mon Sep 17 00:00:00 2001 From: Lee Salzman Date: Tue, 14 Oct 2008 21:39:53 +0000 Subject: [PATCH] newmap fix git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@3021 e016b1c5-ed68-44aa-a2f7-31cac88cffde --- source/src/clientgame.cpp | 7 +++++-- source/src/protos.h | 2 +- source/src/world.cpp | 4 ++-- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/source/src/clientgame.cpp b/source/src/clientgame.cpp index 448453ff..c6cfd122 100644 --- a/source/src/clientgame.cpp +++ b/source/src/clientgame.cpp @@ -669,8 +669,9 @@ void resetmap() int suicided = -1; -void startmap(const char *name) // called just after a map load +void startmap(const char *name, bool reset) // called just after a map load { + s_strcpy(clientmap, name); senditemstoserver = true; // Added by Rick if(m_botmode) BotManager.BeginMap(name); @@ -683,9 +684,11 @@ void startmap(const char *name) // called just after a map load spawncycle = -1; if(m_valid(gamemode) && !m_mp(gamemode)) respawnself(); else findplayerstart(player1); + + if(!reset) return; + player1->frags = player1->flagscore = player1->deaths = player1->lifesequence = 0; loopv(players) if(players[i]) players[i]->frags = players[i]->flagscore = players[i]->deaths = players[i]->lifesequence = 0; - s_strcpy(clientmap, name); if(editmode) toggleedit(); showscores(false); intermission = false; diff --git a/source/src/protos.h b/source/src/protos.h index 5b5779eb..225da527 100644 --- a/source/src/protos.h +++ b/source/src/protos.h @@ -309,7 +309,7 @@ extern flaginfo flaginfos[2]; extern bool autoteambalance; extern void updateworld(int curtime, int lastmillis); extern void resetmap(); -extern void startmap(const char *name); +extern void startmap(const char *name, bool reset = true); extern void changemap(const char *name); extern void initclient(); extern void deathstate(playerent *pl); diff --git a/source/src/world.cpp b/source/src/world.cpp index 39ef231b..20dacac8 100644 --- a/source/src/world.cpp +++ b/source/src/world.cpp @@ -346,7 +346,7 @@ bool empty_world(int factor, bool force) // main empty world creation routine delete[] oldworld; if(factor>=0) { - toggleedit(); + //toggleedit(); pushscontext(IEXC_MAPCFG); persistidents = false; execfile("config/default_map_settings.cfg"); @@ -358,7 +358,7 @@ bool empty_world(int factor, bool force) // main empty world creation routine if(factor>=0) { findplayerstart(player1, true); - startmap(""); + startmap("", false); } return true; }