changeset 18798:38b1e0421e48 draft

(svn r23646) -Fix [FS#4901]: rescan the Game Scripts when done downloading one.
author truebrain <truebrain@openttd.org>
date Wed, 21 Dec 2011 12:25:10 +0000
parents 39606db9c431
children 270c78416600
files projects/openttd_vs100.vcxproj src/company_cmd.cpp src/music/dmusic.cpp src/network/network_content_gui.cpp src/script/api/script_list.cpp
diffstat 5 files changed, 20 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/projects/openttd_vs100.vcxproj
+++ b/projects/openttd_vs100.vcxproj
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <ItemGroup Label="ProjectConfigurations">
     <ProjectConfiguration Include="Debug|Win32">
@@ -144,6 +144,7 @@
       </DataExecutionPrevention>
       <TargetMachine>MachineX86</TargetMachine>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <Profile>true</Profile>
     </Link>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
@@ -243,6 +244,7 @@
       <OptimizeReferences>true</OptimizeReferences>
       <TargetMachine>MachineX64</TargetMachine>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <Profile>true</Profile>
     </Link>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
@@ -1221,4 +1223,4 @@
     </ProjectReference>
   </ItemGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
-</Project>
+</Project>
\ No newline at end of file
--- a/src/company_cmd.cpp
+++ b/src/company_cmd.cpp
@@ -695,7 +695,7 @@
 	}
 
 	if (_next_competitor_start == 0) {
-		_next_competitor_start = AI::GetStartNextTime() * DAY_TICKS;
+		_next_competitor_start = 1; //AI::GetStartNextTime() * DAY_TICKS;
 	}
 
 	if (AI::CanStartNew() && _game_mode != GM_MENU && --_next_competitor_start == 0) {
--- a/src/music/dmusic.cpp
+++ b/src/music/dmusic.cpp
@@ -9,7 +9,7 @@
 
 /** @file dmusic.cpp Playing music via DirectMusic. */
 
-#ifdef WIN32_ENABLE_DIRECTMUSIC_SUPPORT
+#ifdef WIN32_ENABLE_DIRECTMUSIC_SUPPORT_2
 
 #define INITGUID
 #include "../stdafx.h"
--- a/src/network/network_content_gui.cpp
+++ b/src/network/network_content_gui.cpp
@@ -16,6 +16,7 @@
 #include "../window_func.h"
 #include "../error.h"
 #include "../ai/ai.hpp"
+#include "../game/game.hpp"
 #include "../base_media_base.h"
 #include "../sortlist_type.h"
 #include "../querystring_gui.h"
@@ -130,6 +131,10 @@
 				case CONTENT_TYPE_AI_LIBRARY:
 					/* AI::Rescan calls the scanner. */
 					break;
+				case CONTENT_TYPE_GAME:
+				case CONTENT_TYPE_GAME_LIBRARY:
+					/* Game::Rescan calls the scanner. */
+					break;
 
 				case CONTENT_TYPE_BASE_GRAPHICS:
 				case CONTENT_TYPE_BASE_SOUNDS:
@@ -161,6 +166,11 @@
 					AI::Rescan();
 					break;
 
+				case CONTENT_TYPE_GAME:
+				case CONTENT_TYPE_GAME_LIBRARY:
+					Game::Rescan();
+					break;
+
 				case CONTENT_TYPE_BASE_GRAPHICS:
 					BaseGraphics::FindSets();
 					SetWindowDirty(WC_GAME_OPTIONS, WN_GAME_OPTIONS_GAME_OPTIONS);
--- a/src/script/api/script_list.cpp
+++ b/src/script/api/script_list.cpp
@@ -818,13 +818,15 @@
 	sq_push(vm, 2);
 
 	for (ScriptListMap::iterator iter = this->items.begin(); iter != this->items.end(); iter++) {
+		int key = (*iter).first;
+
 		/* Check for changing of items. */
 		int previous_modification_count = this->modifications;
 
 		/* Push the root table as instance object, this is what squirrel does for meta-functions. */
 		sq_pushroottable(vm);
 		/* Push all arguments for the valuator function. */
-		sq_pushinteger(vm, (*iter).first);
+		sq_pushinteger(vm, key);
 		for (int i = 0; i < nparam - 1; i++) {
 			sq_push(vm, i + 3);
 		}
@@ -868,7 +870,7 @@
 			return sq_throwerror(vm, _SC("modifying valuated list outside of valuator function"));
 		}
 
-		this->SetValue((*iter).first, value);
+		this->SetValue(key, value);
 
 		/* Pop the return value. */
 		sq_poptop(vm);