Compare commits
92 Commits
1.0.0-beta
...
0.7.4
Author | SHA1 | Date | |
---|---|---|---|
|
89f9c9ce20 | ||
|
b6834cf135 | ||
|
a1fb44c417 | ||
|
c607e6cb37 | ||
|
49ac7c9338 | ||
|
b4ba357017 | ||
|
e4b45169c1 | ||
|
d8c4ed5118 | ||
|
7b6e449f15 | ||
|
072270f9b9 | ||
|
9360409b4e | ||
|
9443dea1f1 | ||
|
36649f354a | ||
|
88f87bc4ac | ||
|
57992d5eac | ||
|
429eb416ac | ||
|
803e452fab | ||
|
a6251ba1a5 | ||
|
edbd568094 | ||
|
6e14331cda | ||
|
58ebb4c65c | ||
|
a442343076 | ||
|
0a4299bdfd | ||
|
ad2fbaddc1 | ||
|
36497b584e | ||
|
47ae295ee1 | ||
|
ca66a61cc9 | ||
|
e492c5928d | ||
|
a0bc64394c | ||
|
91078be657 | ||
|
86725561d5 | ||
|
2801567da7 | ||
|
c16325b939 | ||
|
53983ec1af | ||
|
a61574a033 | ||
|
ad2c54d119 | ||
|
fa713d0e3b | ||
|
645664eced | ||
|
19cad228e8 | ||
|
f39f14aceb | ||
|
a86469d6bc | ||
|
d567f99ecf | ||
|
969d538026 | ||
|
5cde77086d | ||
|
6d8d781d5c | ||
|
08dc96571a | ||
|
a123484ee0 | ||
|
3edbb1a543 | ||
|
893bccf4c8 | ||
|
a97240dede | ||
|
876d064c4d | ||
|
660fe672e8 | ||
|
b49c6e0cbd | ||
|
0ffca06944 | ||
|
024aa14f94 | ||
|
2d454f37f0 | ||
|
a00a4b5ad8 | ||
|
b1d2a8876b | ||
|
253702529d | ||
|
65c5e26913 | ||
|
9456d20800 | ||
|
7ccaa82206 | ||
|
02f3d2d8af | ||
|
7742f8c080 | ||
|
ba01583ce3 | ||
|
498e5989d1 | ||
|
ab7b117c50 | ||
|
085b498c28 | ||
|
30eff93341 | ||
|
139a213d4d | ||
|
06c45d6fe5 | ||
|
8446d6b8c2 | ||
|
9676072298 | ||
|
2db7e3a0a8 | ||
|
1e9fd18e6a | ||
|
909af50aaa | ||
|
07a16f9282 | ||
|
28e7981a5b | ||
|
f7cc97fe5c | ||
|
d9ed2d380f | ||
|
60901368cc | ||
|
9f5e690118 | ||
|
2fbd7ff6cc | ||
|
1595413545 | ||
|
76b2e1c5ab | ||
|
7e1385b6eb | ||
|
4ec28e1ba7 | ||
|
30afba1d10 | ||
|
61e97110c9 | ||
|
9e592b9986 | ||
|
de7a4a4006 | ||
|
53dc1a89da |
10
Doxyfile
@@ -1,10 +1,3 @@
|
||||
# $Id$
|
||||
|
||||
# This file is part of OpenTTD.
|
||||
# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
# OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Project related configuration options
|
||||
#---------------------------------------------------------------------------
|
||||
@@ -33,6 +26,7 @@ STRIP_FROM_INC_PATH =
|
||||
SHORT_NAMES = NO
|
||||
JAVADOC_AUTOBRIEF = YES
|
||||
MULTILINE_CPP_IS_BRIEF = NO
|
||||
DETAILS_AT_TOP = NO
|
||||
INHERIT_DOCS = YES
|
||||
DISTRIBUTE_GROUP_DOC = NO
|
||||
TAB_SIZE = 2
|
||||
@@ -94,7 +88,7 @@ FILE_PATTERNS = *.c \
|
||||
RECURSIVE = YES
|
||||
EXCLUDE =
|
||||
EXCLUDE_SYMLINKS = NO
|
||||
EXCLUDE_PATTERNS = */3rdparty */.svn
|
||||
EXCLUDE_PATTERNS =
|
||||
EXAMPLE_PATH =
|
||||
EXAMPLE_PATTERNS = *
|
||||
EXAMPLE_RECURSIVE = NO
|
||||
|
@@ -1,10 +1,3 @@
|
||||
# $Id$
|
||||
|
||||
# This file is part of OpenTTD.
|
||||
# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
# OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#
|
||||
# Creation of bundles
|
||||
#
|
||||
@@ -29,16 +22,12 @@ endif
|
||||
|
||||
# An OSX application bundle needs the data files, lang files and openttd executable in a different location.
|
||||
ifdef OSXAPP
|
||||
AI_DIR = $(BUNDLE_DIR)/$(OSXAPP)/Contents/Resources/ai
|
||||
DATA_DIR = $(BUNDLE_DIR)/$(OSXAPP)/Contents/Resources/data
|
||||
LANG_DIR = $(BUNDLE_DIR)/$(OSXAPP)/Contents/Resources/lang
|
||||
GM_DIR = $(BUNDLE_DIR)/$(OSXAPP)/Contents/Resources/gm
|
||||
TTD_DIR = $(BUNDLE_DIR)/$(OSXAPP)/Contents/MacOS
|
||||
else
|
||||
AI_DIR = $(BUNDLE_DIR)/ai
|
||||
DATA_DIR = $(BUNDLE_DIR)/data
|
||||
LANG_DIR = $(BUNDLE_DIR)/lang
|
||||
GM_DIR = $(BUNDLE_DIR)/gm
|
||||
TTD_DIR = $(BUNDLE_DIR)
|
||||
endif
|
||||
|
||||
@@ -50,31 +39,25 @@ bundle: all
|
||||
$(Q)mkdir -p "$(BUNDLE_DIR)/media"
|
||||
$(Q)mkdir -p "$(BUNDLE_DIR)/scripts"
|
||||
$(Q)mkdir -p "$(TTD_DIR)"
|
||||
$(Q)mkdir -p "$(AI_DIR)"
|
||||
$(Q)mkdir -p "$(DATA_DIR)"
|
||||
$(Q)mkdir -p "$(LANG_DIR)"
|
||||
$(Q)mkdir -p "$(GM_DIR)"
|
||||
ifdef OSXAPP
|
||||
$(Q)mkdir -p "$(BUNDLE_DIR)/$(OSXAPP)/Contents/Resources"
|
||||
$(Q)echo "APPL????" > "$(BUNDLE_DIR)/$(OSXAPP)/Contents/PkgInfo"
|
||||
$(Q)cp "$(ROOT_DIR)/os/macosx/openttd.icns" "$(BUNDLE_DIR)/$(OSXAPP)/Contents/Resources/openttd.icns"
|
||||
$(Q)$(ROOT_DIR)/os/macosx/plistgen.sh "$(BUNDLE_DIR)/$(OSXAPP)" "$(REV)"
|
||||
$(Q)cp "$(ROOT_DIR)/docs/OSX_install_instructions.txt" "$(BUNDLE_DIR)/docs/"
|
||||
$(Q)cp "$(ROOT_DIR)/os/macosx/splash.png" "$(DATA_DIR)"
|
||||
endif
|
||||
$(Q)cp "$(BIN_DIR)/$(TTD)" "$(TTD_DIR)/"
|
||||
$(Q)cp "$(BIN_DIR)/ai/"compat_*.nut "$(AI_DIR)/"
|
||||
$(Q)cp "$(BIN_DIR)/data/"*.grf "$(DATA_DIR)/"
|
||||
$(Q)cp "$(BIN_DIR)/data/"*.obg "$(DATA_DIR)/"
|
||||
$(Q)cp "$(BIN_DIR)/data/"*.obs "$(DATA_DIR)/"
|
||||
$(Q)cp "$(BIN_DIR)/data/opntitle.dat" "$(DATA_DIR)/"
|
||||
$(Q)cp "$(BIN_DIR)/lang/"*.lng "$(LANG_DIR)/"
|
||||
$(Q)cp "$(BIN_DIR)/gm/"*.obm "$(GM_DIR)/"
|
||||
$(Q)cp "$(ROOT_DIR)/readme.txt" "$(BUNDLE_DIR)/"
|
||||
$(Q)cp "$(ROOT_DIR)/COPYING" "$(BUNDLE_DIR)/"
|
||||
$(Q)cp "$(ROOT_DIR)/known-bugs.txt" "$(BUNDLE_DIR)/"
|
||||
$(Q)cp "$(ROOT_DIR)/docs/obg_format.txt" "$(BUNDLE_DIR)/docs/"
|
||||
$(Q)cp "$(ROOT_DIR)/docs/obm_format.txt" "$(BUNDLE_DIR)/docs/"
|
||||
$(Q)cp "$(ROOT_DIR)/docs/obs_format.txt" "$(BUNDLE_DIR)/docs/"
|
||||
$(Q)cp "$(ROOT_DIR)/docs/multiplayer.txt" "$(BUNDLE_DIR)/docs/"
|
||||
$(Q)cp "$(ROOT_DIR)/docs/32bpp.txt" "$(BUNDLE_DIR)/docs/"
|
||||
$(Q)cp "$(ROOT_DIR)/changelog.txt" "$(BUNDLE_DIR)/"
|
||||
@@ -112,11 +95,6 @@ bundle_zip: bundle
|
||||
$(Q)mkdir -p "$(BUNDLES_DIR)"
|
||||
$(Q)cd "$(BUNDLE_DIR)" && zip -r $(shell if test -z "$(VERBOSE)"; then echo '-q'; fi) "$(BUNDLES_DIR)/$(BUNDLE_NAME).zip" .
|
||||
|
||||
bundle_7z: bundle
|
||||
@echo '[BUNDLE] Creating $(BUNDLE_NAME).7z'
|
||||
$(Q)mkdir -p "$(BUNDLES_DIR)"
|
||||
$(Q)cd "$(BUNDLE_DIR)" && 7z a "$(BUNDLES_DIR)/$(BUNDLE_NAME).7z" .
|
||||
|
||||
bundle_gzip: bundle
|
||||
@echo '[BUNDLE] Creating $(BUNDLE_NAME).tar.gz'
|
||||
$(Q)mkdir -p "$(BUNDLES_DIR)/.gzip/$(BUNDLE_NAME)"
|
||||
@@ -131,13 +109,6 @@ bundle_bzip2: bundle
|
||||
$(Q)cd "$(BUNDLES_DIR)/.bzip2" && tar -jc$(shell if test -n "$(VERBOSE)"; then echo 'v'; fi)f "$(BUNDLES_DIR)/$(BUNDLE_NAME).tar.bz2" "$(BUNDLE_NAME)"
|
||||
$(Q)rm -rf "$(BUNDLES_DIR)/.bzip2"
|
||||
|
||||
bundle_lzma: bundle
|
||||
@echo '[BUNDLE] Creating $(BUNDLE_NAME).tar.lzma'
|
||||
$(Q)mkdir -p "$(BUNDLES_DIR)/.lzma/$(BUNDLE_NAME)"
|
||||
$(Q)cp -R "$(BUNDLE_DIR)/"* "$(BUNDLES_DIR)/.lzma/$(BUNDLE_NAME)/"
|
||||
$(Q)cd "$(BUNDLES_DIR)/.lzma" && tar --lzma -c$(shell if test -n "$(VERBOSE)"; then echo 'v'; fi)f "$(BUNDLES_DIR)/$(BUNDLE_NAME).tar.lzma" "$(BUNDLE_NAME)"
|
||||
$(Q)rm -rf "$(BUNDLES_DIR)/.lzma"
|
||||
|
||||
bundle_lha: bundle
|
||||
@echo '[BUNDLE] Creating $(BUNDLE_NAME).lha'
|
||||
$(Q)mkdir -p "$(BUNDLES_DIR)/.lha/$(BUNDLE_NAME)"
|
||||
@@ -156,8 +127,8 @@ bundle_exe: all
|
||||
@echo '[BUNDLE] Creating $(BUNDLE_NAME).exe'
|
||||
$(Q)mkdir -p "$(BUNDLES_DIR)"
|
||||
$(Q)unix2dos "$(ROOT_DIR)/docs/"* "$(ROOT_DIR)/readme.txt" "$(ROOT_DIR)/COPYING" "$(ROOT_DIR)/changelog.txt" "$(ROOT_DIR)/known-bugs.txt"
|
||||
$(Q)cd $(ROOT_DIR)/os/windows/installer && makensis.exe //DVERSION_INCLUDE=version_$(PLATFORM).txt install.nsi
|
||||
$(Q)mv $(ROOT_DIR)/os/windows/installer/*$(PLATFORM).exe "$(BUNDLES_DIR)/$(BUNDLE_NAME).exe"
|
||||
$(Q)cd $(ROOT_DIR)/os/win32/installer && makensis.exe //DVERSION_INCLUDE=version_$(PLATFORM).txt install.nsi
|
||||
$(Q)mv $(ROOT_DIR)/os/win32/installer/*$(PLATFORM).exe "$(BUNDLES_DIR)/$(BUNDLE_NAME).exe"
|
||||
|
||||
ifdef OSXAPP
|
||||
install:
|
||||
@@ -168,10 +139,8 @@ install: bundle
|
||||
$(Q)install -d "$(INSTALL_BINARY_DIR)"
|
||||
$(Q)install -d "$(INSTALL_ICON_DIR)"
|
||||
$(Q)install -d "$(INSTALL_DATA_DIR)/gm"
|
||||
$(Q)install -d "$(INSTALL_DATA_DIR)/ai"
|
||||
$(Q)install -d "$(INSTALL_DATA_DIR)/data"
|
||||
$(Q)install -d "$(INSTALL_DATA_DIR)/lang"
|
||||
$(Q)install -d "$(INSTALL_DATA_DIR)/gm"
|
||||
$(Q)install -d "$(INSTALL_DATA_DIR)/scripts"
|
||||
$(Q)install -d "$(INSTALL_DOC_DIR)"
|
||||
ifeq ($(TTD), openttd.exe)
|
||||
@@ -180,9 +149,7 @@ else
|
||||
$(Q)install -m 755 "$(BUNDLE_DIR)/$(TTD)" "$(INSTALL_BINARY_DIR)/${BINARY_NAME}"
|
||||
endif
|
||||
$(Q)install -m 644 "$(BUNDLE_DIR)/lang/"* "$(INSTALL_DATA_DIR)/lang"
|
||||
$(Q)install -m 644 "$(BUNDLE_DIR)/ai/"* "$(INSTALL_DATA_DIR)/ai"
|
||||
$(Q)install -m 644 "$(BUNDLE_DIR)/data/"* "$(INSTALL_DATA_DIR)/data"
|
||||
$(Q)install -m 644 "$(BUNDLE_DIR)/gm/"* "$(INSTALL_DATA_DIR)/gm"
|
||||
$(Q)install -m 644 "$(BUNDLE_DIR)/scripts/"* "$(INSTALL_DATA_DIR)/scripts"
|
||||
$(Q)install -m 644 "$(BUNDLE_DIR)/docs/"* "$(INSTALL_DOC_DIR)"
|
||||
$(Q)install -m 644 "$(BUNDLE_DIR)/"*.txt "$(INSTALL_DOC_DIR)"
|
||||
|
61
Makefile.in
@@ -1,10 +1,3 @@
|
||||
# $Id$
|
||||
|
||||
# This file is part of OpenTTD.
|
||||
# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
# OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
# Check if we want to show what we are doing
|
||||
ifdef VERBOSE
|
||||
Q =
|
||||
@@ -14,36 +7,36 @@ endif
|
||||
|
||||
include Makefile.am
|
||||
|
||||
CONFIG_CACHE_PWD = !!CONFIG_CACHE_PWD!!
|
||||
SOURCE_LIST = !!SOURCE_LIST!!
|
||||
CONFIG_CACHE_SOURCE_LIST = !!CONFIG_CACHE_SOURCE_LIST!!
|
||||
BIN_DIR = !!BIN_DIR!!
|
||||
ICON_THEME_DIR = !!ICON_THEME_DIR!!
|
||||
MAN_DIR = !!MAN_DIR!!
|
||||
MENU_DIR = !!MENU_DIR!!
|
||||
SRC_DIR = !!SRC_DIR!!
|
||||
ROOT_DIR = !!ROOT_DIR!!
|
||||
BUNDLE_DIR = "$(ROOT_DIR)/bundle"
|
||||
BUNDLES_DIR = "$(ROOT_DIR)/bundles"
|
||||
INSTALL_DIR = !!INSTALL_DIR!!
|
||||
INSTALL_BINARY_DIR = "$(INSTALL_DIR)/"!!BINARY_DIR!!
|
||||
INSTALL_MAN_DIR = "$(INSTALL_DIR)/$(MAN_DIR)"
|
||||
INSTALL_MENU_DIR = "$(INSTALL_DIR)/$(MENU_DIR)"
|
||||
INSTALL_ICON_DIR = "$(INSTALL_DIR)/"!!ICON_DIR!!
|
||||
INSTALL_ICON_THEME_DIR = "$(INSTALL_DIR)/$(ICON_THEME_DIR)"
|
||||
INSTALL_DATA_DIR = "$(INSTALL_DIR)/"!!DATA_DIR!!
|
||||
INSTALL_DOC_DIR = "$(INSTALL_DIR)/"!!DOC_DIR!!
|
||||
SOURCE_LIST = !!SOURCE_LIST!!
|
||||
CONFIG_CACHE_PWD = !!CONFIG_CACHE_PWD!!
|
||||
CONFIGURE_FILES = !!CONFIGURE_FILES!!
|
||||
LIPO = !!LIPO!!
|
||||
BIN_DIR = !!BIN_DIR!!
|
||||
ICON_THEME_DIR = !!ICON_THEME_DIR!!
|
||||
MAN_DIR = !!MAN_DIR!!
|
||||
MENU_DIR = !!MENU_DIR!!
|
||||
SRC_DIR = !!SRC_DIR!!
|
||||
ROOT_DIR = !!ROOT_DIR!!
|
||||
BUNDLE_DIR = "$(ROOT_DIR)/bundle"
|
||||
BUNDLES_DIR = "$(ROOT_DIR)/bundles"
|
||||
INSTALL_DIR = !!INSTALL_DIR!!
|
||||
INSTALL_BINARY_DIR = "$(INSTALL_DIR)/"!!BINARY_DIR!!
|
||||
INSTALL_MAN_DIR = "$(INSTALL_DIR)/$(MAN_DIR)"
|
||||
INSTALL_MENU_DIR = "$(INSTALL_DIR)/$(MENU_DIR)"
|
||||
INSTALL_ICON_DIR = "$(INSTALL_DIR)/"!!ICON_DIR!!
|
||||
INSTALL_ICON_THEME_DIR = "$(INSTALL_DIR)/$(ICON_THEME_DIR)"
|
||||
INSTALL_DATA_DIR = "$(INSTALL_DIR)/"!!DATA_DIR!!
|
||||
INSTALL_DOC_DIR = "$(INSTALL_DIR)/"!!DOC_DIR!!
|
||||
BINARY_NAME = !!BINARY_NAME!!
|
||||
STRIP = !!STRIP!!
|
||||
TTD = !!TTD!!
|
||||
TTDS = $(SRC_DIRS:%=%/$(TTD))
|
||||
OS = !!OS!!
|
||||
OSXAPP = !!OSXAPP!!
|
||||
LIPO = !!LIPO!!
|
||||
REVISION = !!REVISION!!
|
||||
AWK = !!AWK!!
|
||||
DISTCC = !!DISTCC!!
|
||||
STRIP = !!STRIP!!
|
||||
TTD = !!TTD!!
|
||||
TTDS = $(SRC_DIRS:%=%/$(TTD))
|
||||
OS = !!OS!!
|
||||
OSXAPP = !!OSXAPP!!
|
||||
REVISION = !!REVISION!!
|
||||
AWK = !!AWK!!
|
||||
DISTCC = !!DISTCC!!
|
||||
|
||||
RES := $(shell if [ ! -f $(CONFIG_CACHE_PWD) ] || [ "`pwd`" != "`cat $(CONFIG_CACHE_PWD)`" ]; then echo "`pwd`" > $(CONFIG_CACHE_PWD); fi )
|
||||
RES := $(shell if [ ! -f $(CONFIG_CACHE_SOURCE_LIST) ] || [ -n "`cmp $(CONFIG_CACHE_SOURCE_LIST) $(SOURCE_LIST) 2>/dev/null`" ]; then cp $(SOURCE_LIST) $(CONFIG_CACHE_SOURCE_LIST); fi )
|
||||
|
@@ -1,30 +1,22 @@
|
||||
# $Id$
|
||||
|
||||
# This file is part of OpenTTD.
|
||||
# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
# OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
STRGEN = !!STRGEN!!
|
||||
ENDIAN_CHECK = !!ENDIAN_CHECK!!
|
||||
SRC_DIR = !!SRC_DIR!!
|
||||
LANG_DIR = !!LANG_DIR!!
|
||||
BIN_DIR = !!BIN_DIR!!
|
||||
LANGS_SRC = $(shell ls $(LANG_DIR)/*.txt)
|
||||
LANGS = $(LANGS_SRC:$(LANG_DIR)/%.txt=%.lng)
|
||||
CXX_BUILD = !!CXX_BUILD!!
|
||||
CFLAGS_BUILD = !!CFLAGS_BUILD!!
|
||||
LDFLAGS_BUILD = !!LDFLAGS_BUILD!!
|
||||
STRGEN_FLAGS = !!STRGEN_FLAGS!!
|
||||
STAGE = !!STAGE!!
|
||||
LANG_SUPPRESS = !!LANG_SUPPRESS!!
|
||||
LANG_OBJS_DIR = !!LANG_OBJS_DIR!!
|
||||
STRGEN = !!STRGEN!!
|
||||
ENDIAN_CHECK = !!ENDIAN_CHECK!!
|
||||
SRC_DIR = !!SRC_DIR!!
|
||||
LANG_DIR = !!LANG_DIR!!
|
||||
BIN_DIR = !!BIN_DIR!!
|
||||
LANGS_SRC = $(shell ls $(LANG_DIR)/*.txt)
|
||||
LANGS = $(LANGS_SRC:$(LANG_DIR)/%.txt=%.lng)
|
||||
CXX_BUILD = !!CXX_BUILD!!
|
||||
CFLAGS_BUILD = !!CFLAGS_BUILD!!
|
||||
STRGEN_FLAGS = !!STRGEN_FLAGS!!
|
||||
STAGE = !!STAGE!!
|
||||
LANG_SUPPRESS= !!LANG_SUPPRESS!!
|
||||
LANG_OBJS_DIR= !!LANG_OBJS_DIR!!
|
||||
|
||||
ifeq ($(LANG_SUPPRESS), yes)
|
||||
LANG_ERRORS = >/dev/null 2>&1
|
||||
endif
|
||||
|
||||
# Make sure endian_host.h is reachable as if it was in the src/ dir
|
||||
# Make sure endian_host.h is reasable as if it was in the src/ dir
|
||||
CFLAGS_BUILD += -I $(LANG_OBJS_DIR)
|
||||
|
||||
ENDIAN_TARGETS := endian_host.h endian_target.h $(ENDIAN_CHECK)
|
||||
@@ -42,7 +34,7 @@ RES := $(shell mkdir -p $(BIN_DIR)/lang )
|
||||
|
||||
all: table/strings.h $(LANGS)
|
||||
|
||||
strgen.o: $(SRC_DIR)/strgen/strgen.cpp endian_host.h $(SRC_DIR)/table/control_codes.h $(SRC_DIR)/table/strgen_tables.h
|
||||
strgen.o: $(SRC_DIR)/strgen/strgen.cpp endian_host.h $(SRC_DIR)/table/control_codes.h
|
||||
$(E) '$(STAGE) Compiling $(<:$(SRC_DIR)/%.cpp=%.cpp)'
|
||||
$(Q)$(CXX_BUILD) $(CFLAGS_BUILD) -DSTRGEN -c -o $@ $<
|
||||
|
||||
@@ -60,7 +52,7 @@ lang/english.txt: $(LANG_DIR)/english.txt
|
||||
|
||||
$(STRGEN): alloc_func.o string.o strgen.o
|
||||
$(E) '$(STAGE) Compiling and Linking $@'
|
||||
$(Q)$(CXX_BUILD) $(LDFLAGS_BUILD) $^ -o $@
|
||||
$(Q)$(CXX_BUILD) $^ -o $@
|
||||
|
||||
table/strings.h: lang/english.txt $(STRGEN)
|
||||
$(E) '$(STAGE) Generating $@'
|
||||
|
@@ -1,10 +1,3 @@
|
||||
# $Id$
|
||||
|
||||
# This file is part of OpenTTD.
|
||||
# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
# OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#
|
||||
# Makefile for creating bundles of MSVC's binaries in the same way as we make
|
||||
# the zip bundles for ALL other OSes.
|
||||
@@ -20,14 +13,14 @@ else
|
||||
Q = @
|
||||
endif
|
||||
|
||||
AWK = "awk"
|
||||
ROOT_DIR := $(shell pwd)
|
||||
BIN_DIR = "$(ROOT_DIR)/bin"
|
||||
SRC_DIR = "$(ROOT_DIR)/src"
|
||||
BUNDLE_DIR = "$(ROOT_DIR)/bundle"
|
||||
AWK = "awk"
|
||||
ROOT_DIR := $(shell pwd)
|
||||
BIN_DIR = "$(ROOT_DIR)/bin"
|
||||
SRC_DIR = "$(ROOT_DIR)/src"
|
||||
BUNDLE_DIR = "$(ROOT_DIR)/bundle"
|
||||
BUNDLES_DIR = "$(ROOT_DIR)/bundles"
|
||||
TTD = openttd.exe
|
||||
TARGET := $(shell echo $(PLATFORM) | sed "s@win64@x64@;s@win32@Win32@")
|
||||
TTD = openttd.exe
|
||||
TARGET := $(shell echo $(PLATFORM) | sed "s@win64@x64@;s@win32@Win32@")
|
||||
|
||||
all:
|
||||
$(Q)cp objs/$(TARGET)/Release/$(TTD) $(BIN_DIR)/$(TTD)
|
||||
|
106
Makefile.src.in
@@ -1,43 +1,32 @@
|
||||
# $Id$
|
||||
|
||||
# This file is part of OpenTTD.
|
||||
# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
# OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
CC_HOST = !!CC_HOST!!
|
||||
CXX_HOST = !!CXX_HOST!!
|
||||
CC_BUILD = !!CC_BUILD!!
|
||||
CXX_BUILD = !!CXX_BUILD!!
|
||||
WINDRES = !!WINDRES!!
|
||||
STRIP = !!STRIP!!
|
||||
CFLAGS = !!CFLAGS!!
|
||||
CFLAGS_BUILD = !!CFLAGS_BUILD!!
|
||||
CXXFLAGS = !!CXXFLAGS!!
|
||||
CXXFLAGS_BUILD = !!CXXFLAGS_BUILD!!
|
||||
LIBS = !!LIBS!!
|
||||
LDFLAGS = !!LDFLAGS!!
|
||||
LDFLAGS_BUILD = !!LDFLAGS_BUILD!!
|
||||
ROOT_DIR = !!ROOT_DIR!!
|
||||
BIN_DIR = !!BIN_DIR!!
|
||||
LANG_DIR = !!LANG_DIR!!
|
||||
SRC_OBJS_DIR = !!SRC_OBJS_DIR!!
|
||||
LANG_OBJS_DIR = !!LANG_OBJS_DIR!!
|
||||
SRC_DIR = !!SRC_DIR!!
|
||||
SCRIPT_SRC_DIR = !!SCRIPT_SRC_DIR!!
|
||||
MEDIA_DIR = !!MEDIA_DIR!!
|
||||
TTD = !!TTD!!
|
||||
STRGEN = !!STRGEN!!
|
||||
ENDIAN_CHECK = !!ENDIAN_CHECK!!
|
||||
DEPEND = !!DEPEND!!
|
||||
ENDIAN_FORCE = !!ENDIAN_FORCE!!
|
||||
OS = !!OS!!
|
||||
STAGE = !!STAGE!!
|
||||
MAKEDEPEND = !!MAKEDEPEND!!
|
||||
CFLAGS_MAKEDEP = !!CFLAGS_MAKEDEP!!
|
||||
SORT = !!SORT!!
|
||||
REVISION = !!REVISION!!
|
||||
AWK = !!AWK!!
|
||||
CC_HOST = !!CC_HOST!!
|
||||
CXX_HOST = !!CXX_HOST!!
|
||||
CC_BUILD = !!CC_BUILD!!
|
||||
CXX_BUILD = !!CXX_BUILD!!
|
||||
WINDRES = !!WINDRES!!
|
||||
STRIP = !!STRIP!!
|
||||
CFLAGS = !!CFLAGS!!
|
||||
CFLAGS_BUILD = !!CFLAGS_BUILD!!
|
||||
LIBS = !!LIBS!!
|
||||
LDFLAGS = !!LDFLAGS!!
|
||||
ROOT_DIR = !!ROOT_DIR!!
|
||||
BIN_DIR = !!BIN_DIR!!
|
||||
LANG_DIR = !!LANG_DIR!!
|
||||
SRC_OBJS_DIR = !!SRC_OBJS_DIR!!
|
||||
LANG_OBJS_DIR= !!LANG_OBJS_DIR!!
|
||||
SRC_DIR = !!SRC_DIR!!
|
||||
SCRIPT_SRC_DIR=!!SCRIPT_SRC_DIR!!
|
||||
MEDIA_DIR = !!MEDIA_DIR!!
|
||||
TTD = !!TTD!!
|
||||
STRGEN = !!STRGEN!!
|
||||
ENDIAN_CHECK = !!ENDIAN_CHECK!!
|
||||
ENDIAN_FORCE = !!ENDIAN_FORCE!!
|
||||
OS = !!OS!!
|
||||
STAGE = !!STAGE!!
|
||||
MAKEDEPEND = !!MAKEDEPEND!!
|
||||
CFLAGS_MAKEDEP= !!CFLAGS_MAKEDEP!!
|
||||
SORT = !!SORT!!
|
||||
REVISION = !!REVISION!!
|
||||
AWK = !!AWK!!
|
||||
CONFIG_CACHE_COMPILER = $(SRC_OBJS_DIR)/!!CONFIG_CACHE_COMPILER!!
|
||||
CONFIG_CACHE_LINKER = $(SRC_OBJS_DIR)/!!CONFIG_CACHE_LINKER!!
|
||||
CONFIG_CACHE_ENDIAN = $(SRC_OBJS_DIR)/!!CONFIG_CACHE_ENDIAN!!
|
||||
@@ -109,7 +98,7 @@ REV_NR := 0
|
||||
endif
|
||||
|
||||
# This helps to recompile if flags change
|
||||
RES := $(shell if [ "`cat $(CONFIG_CACHE_COMPILER) 2>/dev/null`" != "$(CXXFLAGS) $(CFLAGS)" ]; then echo "$(CXXFLAGS) $(CFLAGS)" > $(CONFIG_CACHE_COMPILER); fi )
|
||||
RES := $(shell if [ "`cat $(CONFIG_CACHE_COMPILER) 2>/dev/null`" != "$(CFLAGS)" ]; then echo "$(CFLAGS)" > $(CONFIG_CACHE_COMPILER); fi )
|
||||
RES := $(shell if [ "`cat $(CONFIG_CACHE_LINKER) 2>/dev/null`" != "$(LDFLAGS) $(LIBS)" ]; then echo "$(LDFLAGS) $(LIBS)" > $(CONFIG_CACHE_LINKER); fi )
|
||||
RES := $(shell if [ "`cat $(CONFIG_CACHE_ENDIAN) 2>/dev/null`" != "$(ENDIAN_FORCE)" ]; then echo "$(ENDIAN_FORCE)" > $(CONFIG_CACHE_ENDIAN); fi )
|
||||
|
||||
@@ -138,18 +127,18 @@ endif
|
||||
|
||||
$(OBJS_C:%.o=%.d): %.d: $(SRC_DIR)/%.c $(FILE_DEP)
|
||||
$(E) '$(STAGE) DEP $(<:$(SRC_DIR)/%.c=%.c)'
|
||||
$(Q)$(CC_HOST) $(CFLAGS) -MM $< | sed 's@^$(@F:%.d=%.o):@$@ $(@:%.d=%.o):@' > $@
|
||||
$(Q)$(CC_HOST) $(CC_CFLAGS) $(CFLAGS) -MM $< | sed 's@^$(@F:%.d=%.o):@$@ $(@:%.d=%.o):@' > $@
|
||||
|
||||
$(OBJS_CPP:%.o=%.d): %.d: $(SRC_DIR)/%.cpp $(FILE_DEP)
|
||||
$(E) '$(STAGE) DEP $(<:$(SRC_DIR)/%.cpp=%.cpp)'
|
||||
$(Q)$(CXX_HOST) $(CXXFLAGS) $(CFLAGS) -MM $< | sed 's@^$(@F:%.d=%.o):@$@ $(@:%.d=%.o):@' > $@
|
||||
$(Q)$(CXX_HOST) $(CFLAGS) -MM $< | sed 's@^$(@F:%.d=%.o):@$@ $(@:%.d=%.o):@' > $@
|
||||
|
||||
$(OBJS_MM:%.o=%.d): %.d: $(SRC_DIR)/%.mm $(FILE_DEP)
|
||||
$(E) '$(STAGE) DEP $(<:$(SRC_DIR)/%.mm=%.mm)'
|
||||
$(Q)$(CC_HOST) $(CFLAGS) -MM $< | sed 's@^$(@F:%.d=%.o):@$@ $(@:%.d=%.o):@' > $@
|
||||
|
||||
$(OBJS_RC:%.o=%.d): %.d: $(SRC_DIR)/%.rc $(FILE_DEP)
|
||||
$(E) '$(STAGE) DEP $(<:$(SRC_DIR)/%.rc=%.rc)'
|
||||
$(E) '$(STAGE) DEP $(<:$(SRC_DIR)/%.mm=%.mm)'
|
||||
$(Q)touch $@
|
||||
|
||||
else
|
||||
@@ -162,18 +151,11 @@ ifeq ($(filter $(ENDIAN_TARGETS) depend clean mrproper, $(MAKECMDGOALS)),)
|
||||
-include Makefile.dep
|
||||
endif
|
||||
|
||||
ifeq ("$(SRC_OBJS_DIR)/$(DEPEND)","$(MAKEDEPEND)")
|
||||
DEP := $(MAKEDEPEND)
|
||||
$(SRC_OBJS_DIR)/$(DEPEND): $(SRC_DIR)/depend/depend.cpp
|
||||
$(E) '$(STAGE) Compiling and linking $(DEPEND)'
|
||||
$(Q)$(CXX_BUILD) $(CXXFLAGS_BUILD) $(CFLAGS_BUILD) $(LDFLAGS_BUILD) -o $@ $<
|
||||
endif
|
||||
|
||||
# Make sure that only 'make depend' ALWAYS triggers a recheck
|
||||
ifeq ($(filter depend, $(MAKECMDGOALS)),)
|
||||
Makefile.dep: $(FILE_DEP) $(SRCS:%=$(SRC_DIR)/%) $(CONFIG_CACHE_SOURCE) $(DEP)
|
||||
Makefile.dep: $(FILE_DEP) $(SRCS:%=$(SRC_DIR)/%) $(CONFIG_CACHE_SOURCE)
|
||||
else
|
||||
Makefile.dep: $(FILE_DEP) $(SRCS:%=$(SRC_DIR)/%) $(DEP) FORCE
|
||||
Makefile.dep: FORCE
|
||||
endif
|
||||
$(E) '$(STAGE) DEP CHECK (all files)'
|
||||
$(Q)rm -f Makefile.dep.tmp
|
||||
@@ -228,13 +210,9 @@ endif
|
||||
|
||||
# Compile all the files according to the targets
|
||||
|
||||
$(OBJS_C): %.o: $(SRC_DIR)/%.c $(DEP_MASK) $(FILE_DEP)
|
||||
$(E) '$(STAGE) Compiling $(<:$(SRC_DIR)/%.c=%.c)'
|
||||
$(Q)$(CC_HOST) $(CFLAGS) -c -o $@ $<
|
||||
|
||||
$(OBJS_CPP): %.o: $(SRC_DIR)/%.cpp $(DEP_MASK) $(FILE_DEP)
|
||||
$(E) '$(STAGE) Compiling $(<:$(SRC_DIR)/%.cpp=%.cpp)'
|
||||
$(Q)$(CXX_HOST) $(CXXFLAGS) $(CFLAGS) -c -o $@ $<
|
||||
$(Q)$(CXX_HOST) $(CFLAGS) -c -o $@ $<
|
||||
|
||||
$(OBJS_MM): %.o: $(SRC_DIR)/%.mm $(DEP_MASK) $(FILE_DEP)
|
||||
$(E) '$(STAGE) Compiling $(<:$(SRC_DIR)/%.mm=%.mm)'
|
||||
@@ -242,7 +220,7 @@ $(OBJS_MM): %.o: $(SRC_DIR)/%.mm $(DEP_MASK) $(FILE_DEP)
|
||||
|
||||
$(OBJS_RC): %.o: $(SRC_DIR)/%.rc $(FILE_DEP)
|
||||
$(E) '$(STAGE) Compiling resource $(<:$(SRC_DIR)/%.rc=%.rc)'
|
||||
$(Q)$(WINDRES) -o $@ -I `basename $<` $<
|
||||
$(Q)$(WINDRES) -o $@ -I $(MEDIA_DIR) $<
|
||||
|
||||
$(BIN_DIR)/$(TTD): $(TTD)
|
||||
$(Q)cp $< $@
|
||||
@@ -273,15 +251,15 @@ endian_target.h: $(ENDIAN_CHECK) $(CONFIG_CACHE_ENDIAN)
|
||||
|
||||
$(ENDIAN_CHECK): $(SRC_DIR)/endian_check.cpp
|
||||
$(E) '$(STAGE) Compiling and Linking $@'
|
||||
$(Q)$(CXX_BUILD) $(CXXFLAGS_BUILD) $(CFLAGS_BUILD) $< -o $@
|
||||
$(Q)$(CXX_BUILD) $(CFLAGS_BUILD) $< -o $@
|
||||
|
||||
# Revision files
|
||||
|
||||
$(SRC_DIR)/rev.cpp: $(CONFIG_CACHE_VERSION) $(SRC_DIR)/rev.cpp.in
|
||||
$(Q)cat $(SRC_DIR)/rev.cpp.in | sed "s@\!\!REVISION\!\!@$(REV_NR)@g;s@!!VERSION!!@$(REV)@g;s@!!MODIFIED!!@$(MODIFIED)@g;s@!!DATE!!@`date +%d.%m.%y`@g" > $(SRC_DIR)/rev.cpp
|
||||
|
||||
$(SRC_DIR)/os/windows/ottdres.rc: $(CONFIG_CACHE_VERSION) $(SRC_DIR)/os/windows/ottdres.rc.in
|
||||
$(Q)cat $(SRC_DIR)/os/windows/ottdres.rc.in | sed "s@\!\!REVISION\!\!@$(REV_NR)@g;s@!!VERSION!!@$(REV)@g;s@!!DATE!!@`date +%d.%m.%y`@g" > $(SRC_DIR)/os/windows/ottdres.rc
|
||||
$(SRC_DIR)/ottdres.rc: $(CONFIG_CACHE_VERSION) $(SRC_DIR)/ottdres.rc.in
|
||||
$(Q)cat $(SRC_DIR)/ottdres.rc.in | sed "s@\!\!REVISION\!\!@$(REV_NR)@g;s@!!VERSION!!@$(REV)@g;s@!!DATE!!@`date +%d.%m.%y`@g" > $(SRC_DIR)/ottdres.rc
|
||||
|
||||
FORCE:
|
||||
|
||||
@@ -289,10 +267,10 @@ depend: $(DEPS)
|
||||
|
||||
clean:
|
||||
$(E) '$(STAGE) Cleaning up object files'
|
||||
$(Q)rm -f $(DEPS) $(OBJS) $(TTD) $(DEPEND) $(TTD:%=$(BIN_DIR)/%) $(CONFIG_CACHE_COMPILER) $(CONFIG_CACHE_LINKER) $(CONFIG_CACHE_ENDIAN) $(CONFIG_CACHE_SOURCE) $(ENDIAN_TARGETS)
|
||||
$(Q)rm -f $(DEPS) $(OBJS) $(TTD) $(TTD:%=$(BIN_DIR)/%) $(CONFIG_CACHE_COMPILER) $(CONFIG_CACHE_LINKER) $(CONFIG_CACHE_ENDIAN) $(CONFIG_CACHE_SOURCE) $(ENDIAN_TARGETS)
|
||||
|
||||
mrproper: clean
|
||||
$(Q)rm -f $(SRC_DIR)/rev.cpp $(SRC_DIR)/os/windows/ottdres.rc
|
||||
$(Q)rm -f $(SRC_DIR)/rev.cpp $(SRC_DIR)/ottdres.rc
|
||||
|
||||
%.o:
|
||||
@echo '$(STAGE) No such source-file: $(@:%.o=%).[c|cpp|mm|rc]'
|
||||
|
@@ -1,260 +0,0 @@
|
||||
/* $Id$ */
|
||||
|
||||
/*
|
||||
* This file is part of OpenTTD.
|
||||
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
* OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
AILog.Info("0.7 API compatability in effect:");
|
||||
AILog.Info(" - AITown::GetLastMonthProduction's behaviour has slightly changed.");
|
||||
AILog.Info(" - AISubsidy::GetDestination returns STATION_INVALID for awarded subsidies.");
|
||||
AILog.Info(" - AISubsidy::GetSource returns STATION_INVALID for awarded subsidies.");
|
||||
|
||||
AISign.GetMaxSignID <- function()
|
||||
{
|
||||
local list = AISignList();
|
||||
local max_id = 0;
|
||||
foreach (id, d in list) {
|
||||
if (id > max_id) max_id = id;
|
||||
}
|
||||
return max_id;
|
||||
}
|
||||
|
||||
AITile.GetHeight <- function(tile)
|
||||
{
|
||||
if (!AIMap.IsValidTile(tile)) return -1;
|
||||
|
||||
return AITile.GetCornerHeight(tile, AITile.CORNER_N);
|
||||
}
|
||||
|
||||
AIOrder.ChangeOrder <- function(vehicle_id, order_position, order_flags)
|
||||
{
|
||||
return AIOrder.SetOrderFlags(vehicle_id, order_position, order_flags);
|
||||
}
|
||||
|
||||
AIWaypoint.WAYPOINT_INVALID <- 0xFFFF;
|
||||
|
||||
AISubsidy.SourceIsTown <- function(subsidy_id)
|
||||
{
|
||||
if (!AISubsidy.IsValidSubsidy(subsidy_id) || AISubsidy.IsAwarded(subsidy_id)) return false;
|
||||
|
||||
return AISubsidy.GetSourceType(subsidy_id) == AISubsidy.SPT_TOWN;
|
||||
}
|
||||
|
||||
AISubsidy.GetSource <- function(subsidy_id)
|
||||
{
|
||||
if (!AISubsidy.IsValidSubsidy(subsidy_id)) return AIBaseStation.STATION_INVALID;
|
||||
|
||||
if (AISubsidy.IsAwarded(subsidy_id)) {
|
||||
return AIBaseStation.STATION_INVALID;
|
||||
}
|
||||
|
||||
return AISubsidy.GetSourceIndex(subsidy_id);
|
||||
}
|
||||
|
||||
AISubsidy.DestinationIsTown <- function(subsidy_id)
|
||||
{
|
||||
if (!AISubsidy.IsValidSubsidy(subsidy_id) || AISubsidy.IsAwarded(subsidy_id)) return false;
|
||||
|
||||
return AISubsidy.GetDestinationType(subsidy_id) == AISubsidy.SPT_TOWN;
|
||||
}
|
||||
|
||||
AISubsidy.GetDestination <- function(subsidy_id)
|
||||
{
|
||||
if (!AISubsidy.IsValidSubsidy(subsidy_id)) return AIBaseStation.STATION_INVALID;
|
||||
|
||||
if (AISubsidy.IsAwarded(subsidy_id)) {
|
||||
return AIBaseStation.STATION_INVALID;
|
||||
}
|
||||
|
||||
return AISubsidy.GetDestinationIndex(subsidy_id);
|
||||
}
|
||||
|
||||
AITown.GetMaxProduction <- function(town_id, cargo_id)
|
||||
{
|
||||
return AITown.GetLastMonthProduction(town_id, cargo_id);
|
||||
}
|
||||
|
||||
AIRail.RemoveRailWaypoint <- function(tile)
|
||||
{
|
||||
return AIRail.RemoveRailWaypointTileRect(tile, tile, true);
|
||||
}
|
||||
|
||||
AIRail.RemoveRailStationTileRect <- function(tile, tile2)
|
||||
{
|
||||
return AIRail.RemoveRailStationTileRectangle(tile, tile2, false);
|
||||
}
|
||||
|
||||
AIVehicle.SkipToVehicleOrder <- function(vehicle_id, order_position)
|
||||
{
|
||||
return AIOrder.SkipToOrder(vehicle_id, order_position);
|
||||
}
|
||||
|
||||
AIEngine.IsValidEngine <- function(engine_id)
|
||||
{
|
||||
return AIEngine.IsBuildable(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetName <- AIEngine.GetName;
|
||||
AIEngine.GetName <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return null;
|
||||
return AIEngine._GetName(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetCargoType <- AIEngine.GetCargoType;
|
||||
AIEngine.GetCargoType <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return 255;
|
||||
return AIEngine._GetCargoType(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._CanRefitCargo <- AIEngine.CanRefitCargo;
|
||||
AIEngine.CanRefitCargo <- function(engine_id, cargo_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return false;
|
||||
return AIEngine._CanRefitCargo(engine_id, cargo_id);
|
||||
}
|
||||
|
||||
AIEngine._CanPullCargo <- AIEngine.CanPullCargo;
|
||||
AIEngine.CanPullCargo <- function(engine_id, cargo_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return false;
|
||||
return AIEngine._CanPullCargo(engine_id, cargo_id);
|
||||
}
|
||||
|
||||
AIEngine._GetCapacity <- AIEngine.GetCapacity;
|
||||
AIEngine.GetCapacity <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return -1;
|
||||
return AIEngine._GetCapacity(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetReliability <- AIEngine.GetReliability;
|
||||
AIEngine.GetReliability <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return -1;
|
||||
return AIEngine._GetReliability(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetMaxSpeed <- AIEngine.GetMaxSpeed;
|
||||
AIEngine.GetMaxSpeed <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return -1;
|
||||
return AIEngine._GetMaxSpeed(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetPrice <- AIEngine.GetPrice;
|
||||
AIEngine.GetPrice <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return -1;
|
||||
return AIEngine._GetPrice(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetMaxAge <- AIEngine.GetMaxAge;
|
||||
AIEngine.GetMaxAge <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return -1;
|
||||
return AIEngine._GetMaxAge(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetRunningCost <- AIEngine.GetRunningCost;
|
||||
AIEngine.GetRunningCost <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return -1;
|
||||
return AIEngine._GetRunningCost(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetPower <- AIEngine.GetPower;
|
||||
AIEngine.GetPower <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return -1;
|
||||
return AIEngine._GetPower(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetWeight <- AIEngine.GetWeight;
|
||||
AIEngine.GetWeight <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return -1;
|
||||
return AIEngine._GetWeight(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetMaxTractiveEffort <- AIEngine.GetMaxTractiveEffort;
|
||||
AIEngine.GetMaxTractiveEffort <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return -1;
|
||||
return AIEngine._GetMaxTractiveEffort(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetDesignDate <- AIEngine.GetDesignDate;
|
||||
AIEngine.GetDesignDate <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return -1;
|
||||
return AIEngine._GetDesignDate(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetVehicleType <- AIEngine.GetVehicleType;
|
||||
AIEngine.GetVehicleType <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return AIVehicle.VT_INVALID;
|
||||
return AIEngine._GetVehicleType(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._IsWagon <- AIEngine.IsWagon;
|
||||
AIEngine.IsWagon <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return false;
|
||||
return AIEngine._IsWagon(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._CanRunOnRail <- AIEngine.CanRunOnRail;
|
||||
AIEngine.CanRunOnRail <- function(engine_id, track_rail_type)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return false;
|
||||
return AIEngine._CanRunOnRail(engine_id, track_rail_type);
|
||||
}
|
||||
|
||||
AIEngine._HasPowerOnRail <- AIEngine.HasPowerOnRail;
|
||||
AIEngine.HasPowerOnRail <- function(engine_id, track_rail_type)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return false;
|
||||
return AIEngine._HasPowerOnRail(engine_id, track_rail_type);
|
||||
}
|
||||
|
||||
AIEngine._GetRoadType <- AIEngine.GetRoadType;
|
||||
AIEngine.GetRoadType <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return AIRoad.ROADTYPE_INVALID;
|
||||
return AIEngine._GetRoadType(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetRailType <- AIEngine.GetRailType;
|
||||
AIEngine.GetRailType <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return AIRail.RAILTYPE_INVALID;
|
||||
return AIEngine._GetRailType(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._IsArticulated <- AIEngine.IsArticulated;
|
||||
AIEngine.IsArticulated <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return false;
|
||||
return AIEngine._IsArticulated(engine_id);
|
||||
}
|
||||
|
||||
AIEngine._GetPlaneType <- AIEngine.GetPlaneType;
|
||||
AIEngine.GetPlaneType <- function(engine_id)
|
||||
{
|
||||
if (!AIEngine.IsBuildable(engine_id)) return -1;
|
||||
return AIEngine._GetPlaneType(engine_id);
|
||||
}
|
||||
|
||||
_AIWaypointList <- AIWaypointList;
|
||||
class AIWaypointList extends _AIWaypointList {
|
||||
constructor()
|
||||
{
|
||||
::_AIWaypointList.constructor(AIWaypoint.WAYPOINT_RAIL);
|
||||
}
|
||||
}
|
@@ -1,8 +0,0 @@
|
||||
/* $Id$ */
|
||||
|
||||
/*
|
||||
* This file is part of OpenTTD.
|
||||
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
* OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
@@ -805,20 +805,6 @@ function Regression::Marine()
|
||||
print(" IsCanalTile(): " + AIMarine.IsCanalTile(32127));
|
||||
print(" GetBankBalance(): " + AICompany.GetBankBalance(AICompany.COMPANY_SELF));
|
||||
|
||||
local list = AIWaypointList(AIWaypoint.WAYPOINT_BUOY);
|
||||
print("");
|
||||
print("--AIWaypointList(BUOY)--");
|
||||
print(" Count(): " + list.Count());
|
||||
print(" Location ListDump:");
|
||||
for (local i = list.Begin(); list.HasNext(); i = list.Next()) {
|
||||
print(" " + AIWaypoint.GetLocation(i));
|
||||
}
|
||||
print(" HasWaypointType:");
|
||||
for (local i = list.Begin(); list.HasNext(); i = list.Next()) {
|
||||
print(" " + AIWaypoint.HasWaypointType(i, AIWaypoint.WAYPOINT_RAIL) + " " + AIWaypoint.HasWaypointType(i, AIWaypoint.WAYPOINT_BUOY) + " " + AIWaypoint.HasWaypointType(i, AIWaypoint.WAYPOINT_ANY));
|
||||
}
|
||||
print("");
|
||||
|
||||
print(" RemoveWaterDepot(): " + AIMarine.RemoveWaterDepot(28479));
|
||||
print(" RemoveDock(): " + AIMarine.RemoveDock(29253));
|
||||
print(" RemoveBuoy(): " + AIMarine.RemoveBuoy(28481));
|
||||
@@ -842,37 +828,14 @@ function Regression::Order()
|
||||
print(" GetOrderCount(): " + AIOrder.GetOrderCount(12));
|
||||
print(" GetOrderDestination(): " + AIOrder.GetOrderDestination(12, 1));
|
||||
print(" AreOrderFlagsValid(): " + AIOrder.AreOrderFlagsValid(33416, AIOrder.AIOF_TRANSFER));
|
||||
print(" AreOrderFlagsValid(): " + AIOrder.AreOrderFlagsValid(33416, AIOrder.AIOF_TRANSFER | AIOrder.AIOF_UNLOAD));
|
||||
print(" AreOrderFlagsValid(): " + AIOrder.AreOrderFlagsValid(33416, AIOrder.AIOF_TRANSFER | AIOrder.AIOF_FULL_LOAD));
|
||||
print(" AreOrderFlagsValid(): " + AIOrder.AreOrderFlagsValid(33417, AIOrder.AIOF_SERVICE_IF_NEEDED));
|
||||
print(" AreOrderFlagsValid(): " + AIOrder.AreOrderFlagsValid(33417, AIOrder.AIOF_STOP_IN_DEPOT));
|
||||
print(" AreOrderFlagsValid(): " + AIOrder.AreOrderFlagsValid(0, AIOrder.AIOF_SERVICE_IF_NEEDED | AIOrder.AIOF_GOTO_NEAREST_DEPOT));
|
||||
print(" IsValidConditionalOrder(): " + AIOrder.IsValidConditionalOrder(AIOrder.OC_LOAD_PERCENTAGE, AIOrder.CF_EQUALS));
|
||||
print(" IsValidConditionalOrder(): " + AIOrder.IsValidConditionalOrder(AIOrder.OC_RELIABILITY, AIOrder.CF_IS_TRUE));
|
||||
print(" IsValidConditionalOrder(): " + AIOrder.IsValidConditionalOrder(AIOrder.OC_REQUIRES_SERVICE, AIOrder.CF_IS_FALSE));
|
||||
print(" IsValidConditionalOrder(): " + AIOrder.IsValidConditionalOrder(AIOrder.OC_AGE, AIOrder.CF_INVALID));
|
||||
print(" IsValidVehicleOrder(): " + AIOrder.IsValidVehicleOrder(12, 1));
|
||||
print(" IsGotoStationOrder(): " + AIOrder.IsGotoStationOrder(12, 1));
|
||||
print(" IsGotoDepotOrder(): " + AIOrder.IsGotoDepotOrder(12, 1));
|
||||
print(" IsGotoWaypointOrder(): " + AIOrder.IsGotoWaypointOrder(12, 1));
|
||||
print(" IsConditionalOrder(): " + AIOrder.IsConditionalOrder(12, 1));
|
||||
print(" IsCurrentOrderPartOfOrderList(): " + AIOrder.IsCurrentOrderPartOfOrderList(12));
|
||||
print(" GetOrderFlags(): " + AIOrder.GetOrderFlags(12, 1));
|
||||
print(" AppendOrder(): " + AIOrder.AppendOrder(12, 33416, AIOrder.AIOF_TRANSFER));
|
||||
print(" InsertOrder(): " + AIOrder.InsertOrder(12, 0, 33416, AIOrder.AIOF_TRANSFER));
|
||||
print(" GetOrderCount(): " + AIOrder.GetOrderCount(12));
|
||||
print(" IsValidVehicleOrder(): " + AIOrder.IsValidVehicleOrder(12, 1));
|
||||
print(" IsGotoStationOrder(): " + AIOrder.IsGotoStationOrder(12, 1));
|
||||
print(" IsGotoDepotOrder(): " + AIOrder.IsGotoDepotOrder(12, 1));
|
||||
print(" IsGotoWaypointOrder(): " + AIOrder.IsGotoWaypointOrder(12, 1));
|
||||
print(" IsConditionalOrder(): " + AIOrder.IsConditionalOrder(12, 1));
|
||||
print(" IsCurrentOrderPartOfOrderList(): " + AIOrder.IsCurrentOrderPartOfOrderList(12));
|
||||
print(" GetOrderFlags(): " + AIOrder.GetOrderFlags(12, 0));
|
||||
print(" GetOrderFlags(): " + AIOrder.GetOrderFlags(12, 1));
|
||||
print(" GetOrderJumpTo(): " + AIOrder.GetOrderJumpTo(12, 1));
|
||||
print(" RemoveOrder(): " + AIOrder.RemoveOrder(12, 0));
|
||||
print(" SetOrderFlags(): " + AIOrder.SetOrderFlags(12, 0, AIOrder.AIOF_FULL_LOAD));
|
||||
print(" GetOrderFlags(): " + AIOrder.GetOrderFlags(12, 0));
|
||||
print(" GetOrderDestination(): " + AIOrder.GetOrderDestination(12, 0));
|
||||
print(" CopyOrders(): " + AIOrder.CopyOrders(12, 1));
|
||||
print(" CopyOrders(): " + AIOrder.CopyOrders(13, 12));
|
||||
@@ -992,7 +955,7 @@ function Regression::Rail()
|
||||
print(" IsRailStationTile(): " + AIRail.IsRailStationTile(7957));
|
||||
print(" IsRailStationTile(): " + AIRail.IsRailStationTile(7958));
|
||||
print(" IsRailStationTile(): " + AIRail.IsRailStationTile(7959));
|
||||
print(" RemoveRailStationTileRectangle():" + AIRail.RemoveRailStationTileRectangle(7959, 7959, false));
|
||||
print(" RemoveRailStationTileRect(): " + AIRail.RemoveRailStationTileRect(7959, 7959));
|
||||
print(" IsRailStationTile(): " + AIRail.IsRailStationTile(7957));
|
||||
print(" IsRailStationTile(): " + AIRail.IsRailStationTile(7958));
|
||||
print(" IsRailStationTile(): " + AIRail.IsRailStationTile(7959));
|
||||
@@ -1232,7 +1195,7 @@ function Regression::TileList()
|
||||
list.AddRectangle(34436, 256 * 2 + 34436 + 8);
|
||||
print(" Count(): " + list.Count());
|
||||
|
||||
list.Valuate(AITile.GetCornerHeight, AITile.CORNER_N);
|
||||
list.Valuate(AITile.GetHeight);
|
||||
print(" Height(): done");
|
||||
print(" Count(): " + list.Count());
|
||||
print(" ListDump:");
|
||||
@@ -1664,15 +1627,15 @@ function Regression::Vehicle()
|
||||
function Regression::PrintSubsidy(subsidy_id)
|
||||
{
|
||||
print(" --Subsidy (" + subsidy_id + ") --");
|
||||
print(" IsValidSubsidy(): " + AISubsidy.IsValidSubsidy(subsidy_id));
|
||||
print(" IsAwarded(): " + AISubsidy.IsAwarded(subsidy_id));
|
||||
print(" GetAwardedTo(): " + AISubsidy.GetAwardedTo(subsidy_id));
|
||||
print(" GetExpireDate(): " + AISubsidy.GetExpireDate(subsidy_id));
|
||||
print(" GetSourceType(): " + AISubsidy.GetSourceType(subsidy_id));
|
||||
print(" GetSourceIndex(): " + AISubsidy.GetSourceIndex(subsidy_id));
|
||||
print(" GetDestinationType(): " + AISubsidy.GetDestinationType(subsidy_id));
|
||||
print(" GetDestinationIndex(): " + AISubsidy.GetDestinationIndex(subsidy_id));
|
||||
print(" GetCargoType(): " + AISubsidy.GetCargoType(subsidy_id));
|
||||
print(" IsValidSubsidy(): " + AISubsidy.IsValidSubsidy(subsidy_id));
|
||||
print(" IsAwarded(): " + AISubsidy.IsAwarded(subsidy_id));
|
||||
print(" GetAwardedTo(): " + AISubsidy.GetAwardedTo(subsidy_id));
|
||||
print(" GetExpireDate(): " + AISubsidy.GetExpireDate(subsidy_id));
|
||||
print(" SourceIsTown(): " + AISubsidy.SourceIsTown(subsidy_id));
|
||||
print(" GetSource(): " + AISubsidy.GetSource(subsidy_id));
|
||||
print(" DestionationIsTown(): " + AISubsidy.DestinationIsTown(subsidy_id));
|
||||
print(" GetDestionation(): " + AISubsidy.GetDestination(subsidy_id));
|
||||
print(" GetCargoType(): " + AISubsidy.GetCargoType(subsidy_id));
|
||||
}
|
||||
|
||||
|
||||
@@ -1682,15 +1645,12 @@ function Regression::Start()
|
||||
this.Std();
|
||||
this.Base();
|
||||
this.List();
|
||||
|
||||
/* Do this first as it gains maximum loan (which is faked to quite a lot). */
|
||||
this.Company();
|
||||
|
||||
this.Airport();
|
||||
this.Bridge();
|
||||
this.BridgeList();
|
||||
this.Cargo();
|
||||
this.CargoList();
|
||||
this.Company();
|
||||
this.Engine();
|
||||
this.EngineList();
|
||||
this.Group();
|
||||
|
@@ -6,7 +6,6 @@ class Regression extends AIInfo {
|
||||
function GetShortName() { return "REGR"; }
|
||||
function GetDescription() { return "This runs regression-tests on all commands. On the same map the result should always be the same."; }
|
||||
function GetVersion() { return 1; }
|
||||
function GetAPIVersion() { return "1.0"; }
|
||||
function GetDate() { return "2007-03-18"; }
|
||||
function CreateInstance() { return "Regression"; }
|
||||
}
|
||||
|
@@ -24,7 +24,7 @@ TRGI.GRF = da6a6c9dcc451eec88d79211437b76a8
|
||||
TRGC.GRF = ed446637e034104c5559b32c18afe78d
|
||||
TRGH.GRF = ee6616fb0e6ef6b24892c58c93d86fc9
|
||||
TRGT.GRF = e30e8a398ae86c03dc534a8ac7dfb3b6
|
||||
OPENTTDD.GRF = 356cf9663aacb212fdbff609d99090d6
|
||||
OPENTTDD.GRF = c886c7d5b38a93f2cb1cdc0d33472eb8
|
||||
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
||||
|
@@ -1,19 +0,0 @@
|
||||
; $Id$
|
||||
;
|
||||
; This represents the original sounds as on the Transport
|
||||
; Tycoon Deluxe DOS CD.
|
||||
;
|
||||
[metadata]
|
||||
name = original_dos
|
||||
shortname = TTDO
|
||||
version = 0
|
||||
description = Original Transport Tycoon Deluxe DOS edition sounds
|
||||
|
||||
[files]
|
||||
samples = SAMPLE.CAT
|
||||
|
||||
[md5s]
|
||||
SAMPLE.CAT = 422ea3dd074d2859bb51639a6e0e85da
|
||||
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
@@ -24,7 +24,7 @@ TRGI.GRF = da6a6c9dcc451eec88d79211437b76a8
|
||||
TRGC.GRF = ed446637e034104c5559b32c18afe78d
|
||||
TRGH.GRF = ee6616fb0e6ef6b24892c58c93d86fc9
|
||||
TRGT.GRF = fcde1d7e8a74197d72a62695884b909e
|
||||
OPENTTDD.GRF = 356cf9663aacb212fdbff609d99090d6
|
||||
OPENTTDD.GRF = c886c7d5b38a93f2cb1cdc0d33472eb8
|
||||
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
||||
|
@@ -24,7 +24,7 @@ TRGIR.GRF = 0c2484ff6be49fc63a83be6ab5c38f32
|
||||
TRGCR.GRF = 3668f410c761a050b5e7095a2b14879b
|
||||
TRGHR.GRF = 06bf2b7a31766f048baac2ebe43457b1
|
||||
TRGTR.GRF = de53650517fe661ceaa3138c6edb0eb8
|
||||
OPENTTDW.GRF = 80346ea80de167068cfb975f93963941
|
||||
OPENTTDW.GRF = b6689105405fa3ea34cb8a5543633d29
|
||||
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
||||
|
@@ -1,19 +0,0 @@
|
||||
; $Id$
|
||||
;
|
||||
; This represents the original sounds as on the Transport
|
||||
; Tycoon Deluxe for Windows CD.
|
||||
;
|
||||
[metadata]
|
||||
name = original_windows
|
||||
shortname = TTDO
|
||||
version = 0
|
||||
description = Original Transport Tycoon Deluxe Windows edition sounds
|
||||
|
||||
[files]
|
||||
samples = SAMPLE.CAT
|
||||
|
||||
[md5s]
|
||||
SAMPLE.CAT = 9212e81e72badd4bbe1eaeae66458e10
|
||||
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
@@ -1,48 +0,0 @@
|
||||
; $Id$
|
||||
;
|
||||
; This represents more or less nothingness
|
||||
;
|
||||
[metadata]
|
||||
name = NoMusic
|
||||
shortname = NOMU
|
||||
version = 0
|
||||
description = A music pack without actual music
|
||||
|
||||
[files]
|
||||
theme =
|
||||
old_0 =
|
||||
old_1 =
|
||||
old_2 =
|
||||
old_3 =
|
||||
old_4 =
|
||||
old_5 =
|
||||
old_6 =
|
||||
old_7 =
|
||||
old_8 =
|
||||
old_9 =
|
||||
new_0 =
|
||||
new_1 =
|
||||
new_2 =
|
||||
new_3 =
|
||||
new_4 =
|
||||
new_5 =
|
||||
new_6 =
|
||||
new_7 =
|
||||
new_8 =
|
||||
new_9 =
|
||||
ezy_0 =
|
||||
ezy_1 =
|
||||
ezy_2 =
|
||||
ezy_3 =
|
||||
ezy_4 =
|
||||
ezy_5 =
|
||||
ezy_6 =
|
||||
ezy_7 =
|
||||
ezy_8 =
|
||||
ezy_9 =
|
||||
|
||||
[md5s]
|
||||
|
||||
[names]
|
||||
|
||||
[origin]
|
@@ -1,94 +0,0 @@
|
||||
; $Id$
|
||||
;
|
||||
; This represents the original music as on the Transport
|
||||
; Tycoon Deluxe for Windows CD.
|
||||
;
|
||||
[metadata]
|
||||
name = original_windows
|
||||
shortname = TTDW
|
||||
version = 1
|
||||
description = Original Transport Tycoon Deluxe Windows edition music
|
||||
|
||||
[files]
|
||||
theme = GM_TT00.GM
|
||||
old_0 = GM_TT02.GM
|
||||
old_1 = GM_TT06.GM
|
||||
old_2 = GM_TT03.GM
|
||||
old_3 = GM_TT12.GM
|
||||
old_4 = GM_TT08.GM
|
||||
old_5 = GM_TT13.GM
|
||||
old_6 = GM_TT14.GM
|
||||
old_7 = GM_TT19.GM
|
||||
old_8 =
|
||||
old_9 =
|
||||
new_0 = GM_TT04.GM
|
||||
new_1 = GM_TT01.GM
|
||||
new_2 = GM_TT05.GM
|
||||
new_3 = GM_TT15.GM
|
||||
new_4 = GM_TT11.GM
|
||||
new_5 = GM_TT16.GM
|
||||
new_6 = GM_TT09.GM
|
||||
new_7 =
|
||||
new_8 =
|
||||
new_9 =
|
||||
ezy_0 = GM_TT18.GM
|
||||
ezy_1 = GM_TT19.GM
|
||||
ezy_2 = GM_TT21.GM
|
||||
ezy_3 = GM_TT17.GM
|
||||
ezy_4 = GM_TT20.GM
|
||||
ezy_5 = GM_TT07.GM
|
||||
ezy_6 =
|
||||
ezy_7 =
|
||||
ezy_8 =
|
||||
ezy_9 =
|
||||
|
||||
[md5s]
|
||||
GM_TT00.GM = 45cfec1b9d8c7a0ad45e755833cbf221
|
||||
GM_TT01.GM = ab14ed3392d848abd2a2e90a9d75d121
|
||||
GM_TT02.GM = dd4f696e4be5987ce738257b08b50171
|
||||
GM_TT03.GM = a1bfde23343df9e4063419bf29c166b8
|
||||
GM_TT04.GM = 4e6943aa0c455203d76c79389054747d
|
||||
GM_TT05.GM = cee281cb85a2e2343552d97640545a47
|
||||
GM_TT06.GM = 26d1de5efa8675f94065784e9d539e49
|
||||
GM_TT07.GM = 6f2691e17558f552ec4c565e4ab7139c
|
||||
GM_TT08.GM = a42bf2cb3340a822f1a69646fc7a487d
|
||||
GM_TT09.GM = eb35761a58a8df3c59ed8929cce13916
|
||||
GM_TT10.GM = 42fecd686720a785d20a78590c466a82
|
||||
GM_TT11.GM = 50ef1ef02e49d2112786dd45e69dc3ee
|
||||
GM_TT12.GM = 4ce707a0e0e72419f0681dd9bd95271b
|
||||
GM_TT13.GM = e765753be29d889ec818f38009103619
|
||||
GM_TT14.GM = 270e2d63bd32b95a4d007ce15a6ce45f
|
||||
GM_TT15.GM = 89e116a1c0c69f1845cc903a9bfbe460
|
||||
GM_TT16.GM = f824e2371b3bedfe61aad4b9c62dd6be
|
||||
GM_TT17.GM = 1b23eebb0796c1ab99cd97fa7082cf7b
|
||||
GM_TT18.GM = 15650de3bad645d0e88c4f5c7a2df92a
|
||||
GM_TT19.GM = 7aec079e15bd09588660b85545ac4dfc
|
||||
GM_TT20.GM = 1509097889dee617aa1e9a1738a5a930
|
||||
GM_TT21.GM = a8d0aaad02e1a762d8d54cf81da56bab
|
||||
|
||||
[names]
|
||||
GM_TT00.GM = Tycoon DELUXE Theme
|
||||
GM_TT01.GM = Snarl Up
|
||||
GM_TT02.GM = Easy Driver
|
||||
GM_TT03.GM = Little Red Diesel
|
||||
GM_TT04.GM = City Groove
|
||||
GM_TT05.GM = Aliens Ate My Railway
|
||||
GM_TT06.GM = Stoke It
|
||||
GM_TT07.GM = Don't Walk!
|
||||
GM_TT08.GM = Sawyer's Tune
|
||||
GM_TT09.GM = Fell Apart On Me
|
||||
GM_TT10.GM = Can't Get There From Here
|
||||
GM_TT11.GM = Hard Drivin'
|
||||
GM_TT12.GM = Road Hog
|
||||
GM_TT13.GM = Hold That Train!
|
||||
GM_TT14.GM = Broomer's Oil Rag
|
||||
GM_TT15.GM = Goss Groove
|
||||
GM_TT16.GM = Small Town
|
||||
GM_TT17.GM = Cruise Control
|
||||
GM_TT18.GM = Stroll On
|
||||
GM_TT19.GM = Funk Central
|
||||
GM_TT20.GM = Jammit
|
||||
GM_TT21.GM = Movin' On
|
||||
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
525
changelog.txt
@@ -1,256 +1,3 @@
|
||||
1.0.0-beta3 (2010-01-21)
|
||||
------------------------------------------------------------------------
|
||||
- Feature: Make building (long) roads work like building rail; build upon the first obstruction instead of failing totally [FS#3318] (r18803)
|
||||
- Feature: Allow user customisable compression levels for the zlib compression (r18772)
|
||||
- Feature: [NoAI] Rerandomise AIs on reloading (via the debug window) when they were randomly chosen [FS#3095] (r18763)
|
||||
- Feature: [NewGRF] Implement VarAction2Houses variables 66 and 67 (r18736)
|
||||
- Change: [SDL/Allegro] Make the number of samples/frequency runtime configurable (r18821, r18820)
|
||||
- Change: Be consistent with airport naming [FS#3493] (r18819)
|
||||
- Change: [NewGRF] Consider callback 19 only broken after subcargos 0 to 255 have been used, instead of stopping at 15 (r18774)
|
||||
- Change: Replace MiniLZO with the real library (r18769)
|
||||
- Fix: Town noise population settings could not be changed in-game [FS#3532] (r18864)
|
||||
- Fix: Do not pass AI strings through iconv [FS#3544] (r18862)
|
||||
- Fix: Do not do screen redraw when the landscape contains broken slopes [FS#3540] (r18850)
|
||||
- Fix: Default-waypoint was drawn incorrectly for monorail and maglev in the waypoint picker (r18841)
|
||||
- Fix: In some cases error messages were not properly sent to the client before closing the connection. As a result the client would say 'connection lost' when the cause was something completely different (r18801)
|
||||
- Fix: In some cases with invalid packets one can crash OpenTTD (r18800)
|
||||
- Fix: [SDL] Possible deadlock when killing OpenTTD while starting it [FS#3521] (r18796)
|
||||
- Fix: When copying an 'image' back into the buffer the 32bpp anim blitter triggered palette check of the whole window instead of only the part the got copied back [FS#3504] (r18791)
|
||||
- Fix: Viewport could jump under high CPU load [FS#3515] (r18790)
|
||||
- Fix: Crash when getting the tooltip of the industry amount in the world generation window [FS#3516] (r18787)
|
||||
- Fix: [NoAI] NoAI's custom implementation of DoCommandP has several flaws (not masking of bits, not resetting town authority updates on checks/estimates, ...). Let it use DoCommandPInternal, DoCommandP without showing error messages and such, instead [FS#3507] (r18786)
|
||||
- Fix: [NoAI] AIs did update their last cost incorrectly in network games if the cost of the DC_EXEC phase differed from the ~DC_EXEC phase (r18781)
|
||||
- Fix: [YAPP] Remove a special check for two-sided signals when reserving a path as this causes trains to get stuck in front of them [FS#3483] (r18778)
|
||||
- Fix: Assertions because the unloading and signal wait counter got into eachother's way [FS#3422] (r18764)
|
||||
- Fix: [NewGRF] Spritelayouts do not need an Action 1 if only using default sprites [FS#3497] (r18761)
|
||||
- Fix: [NewGRF] Action 9 did not properly detect whether an Action 8 was encountered already [FS#3500] (r18760)
|
||||
- Fix: [NewGRF] Do not segfault when a NewGRF contains an Action 2 and Action 3 but no Action 0 (r18759)
|
||||
- Fix: [NewGRF] CircularTileSearch skipped a few tiles close to the starting tile, as a result some NewGRF houses could be placed too close together [FS#3495] (r18755)
|
||||
- Fix: The cargo payment button states were not properly set on opening the window [FS#3492] (r18750)
|
||||
- Fix: [NoAI] The AI's name and version in the debug panel was not properly centered [FS#3491] (r18749)
|
||||
- Fix: Clear the cached NewGRFs of a server when receiving a reply instead of when requesting the information. With slow/unstable network connections it would look like the NewGRF settings button went randomly missing [FS#3489] (r18746)
|
||||
- Fix: Do not toggle the sticky- and shading-button twice per mouseclick when clicking fast [FS#3487] (r18744)
|
||||
- Fix: [NewGRF] House prop 1D was trashed when a NewGRF contains prop 14 after prop 1D (r18742)
|
||||
- Fix: Building trees on snow with rocks underneed caused an assert [FS#3501] (r18739)
|
||||
- Fix: When a tree died while there was snow the amount of snow on the tile changed (r18738)
|
||||
- Fix: [NewGRF] VarAction2Station variable 67 was not swapped properly for orientation (r18737)
|
||||
|
||||
|
||||
1.0.0-beta2 (2010-01-05)
|
||||
------------------------------------------------------------------------
|
||||
- Feature: Do not delete the rough/rocky status of a tile when it is covered by snow, this allows rocky tiles under snow if you have a variable snowline (r18719)
|
||||
- Feature: [NewGRF] Add support for custom station foundation graphics (r18708)
|
||||
- Feature: Allow virtually paying a percentage of the leg profit in feeder chains. This to give the user a better chance to get a feeder system without 'losses' (r18703)
|
||||
- Feature: Configurable slope steepness for trains from 0% to 10%, default is 3% as before [FS#3459] (r18674)
|
||||
- Feature: Allow contour-map to be shown with coloured industries in smallmap [FS#567] (r18665)
|
||||
- Add: [NoAI] AIEngine::IsBuildable to check if you can build a certain engine (r18687)
|
||||
- Change: [NoAI] Merge buoy and waypoint functions (r18725)
|
||||
- Change: [NoAI] AIEngine::IsValidEngine will now also return true when you have at least one vehicle of that type even if you cannot build it anymore (r18687)
|
||||
- Change: Update Squirrel from 2.2.3 to 2.2.4 (r18639)
|
||||
- Fix: New viewports did not center on the correct position [FS#3414] (r18730)
|
||||
- Fix: The lock in the company window was only drawn for your own company [FS#3427] (r18729)
|
||||
- Fix: Some invalid gender/plural indices in strings, which could eventually cause crashes [FS#3480] (r18727)
|
||||
- Fix: With non-uniform industries the 'supplies' text when building a station could be incorrect (missing a cargo) [FS#3463] (r18726)
|
||||
- Fix: Refitting a non-refittable vehicle to it's default cargotype failed, causing problems for AIs [FS#3475] (r18724)
|
||||
- Fix: The join station window did not account for scrolling, so if you did scroll the station was not joined with the selected station [FS#3476] (r18713)
|
||||
- Fix: The wrong town is mentioned in the error when trying to make one way roads of town owned roads [FS#3478] (r18710)
|
||||
- Fix: Animation buffer for 32bpp-anim blitter was only validated during sprite blitting, other drawing operations did not check it. Initial startup and window resize could therefore lead to crash [FS#3464] (r18709)
|
||||
- Fix: Enable DrawGroundSpriteAt() to deal with foundations as DrawGroundSprite() does, and use this for drawing one-way-road-signs and clear-land-fences [FS#3467] (r18702)
|
||||
- Fix: When deleting an industry on water (oil rigs) the tiles on water were not marked dirty (r18700)
|
||||
- Fix: [NewGRF] GRF parameters were not properly initialised to zero, and not always checked for valid range (r18699)
|
||||
- Fix: Crash when scrolling to an item removed by filtering in the 'add NewGRF window' [FS#3471] (r18697)
|
||||
- Fix: [NoAI] AITile::IsCoastTile returned false for coast tiles with trees on them [FS#3404] (r18696)
|
||||
- Fix: After a company went bankrupt it was impossible to build a new waypoint close to a deleted one until the grey sign was gone (r18692)
|
||||
- Fix: Some keys that open windows that want to be located relatively to the toolbars/statusbar could cause a crash when in one of the end game screens [FS#3469] (r18690)
|
||||
- Fix: In some cases _sl.chs is used when not initialised. As _sl.chs always refers to a single table when initialised replace _sl.chs with the actual table [FS#3470] (r18686)
|
||||
- Fix: [NewGRF] Tile area of waypoints was not correctly given to NewGRFs in case of multi tile waypoints (r18679)
|
||||
- Fix: [NewGRF] If an action B did not have a 'data' string but would print it OpenTTD would segfault [FS#3452] (r18671)
|
||||
- Fix: Update all tiles when snowline height changes in larger steps than one tile [FS#3455] (r18670)
|
||||
- Fix: [NoAI] Crash when trying to get the order destination of a 'nearest depot' order [FS#3454] (r18667)
|
||||
- Fix: Aircraft on the metropolitan airport took a long route to the closest loading pad [FS#3169] (r18661)
|
||||
- Fix: [NewGRF] Wrong strings drawn for cargo subtype in vehicle details [FS#3443] (r18658)
|
||||
- Fix: When trying to attach a wagon to an existing free wagon chain, do not attach it to itself [FS#3442] (r18653)
|
||||
- Fix: [NoAI] When AI tried to create NO_UNLOAD order, GOTO_NEAREST_DEPOT order was created instead [FS#3438] (r18651)
|
||||
- Fix: [YAPP] Treat the backside of an one-way path signals as a safe waiting point [FS#3430] (r18648)
|
||||
- Fix: [YAPP] A train inside a station was not always found when checking for trains on a reserved path (r18647)
|
||||
- Fix: [YAPP] Do not extend the reserved path through a newly built path signal directly in front of a stopped or loading train. Also restore the reserved path in more cases after removing a signal [FS#3418] (r18646)
|
||||
- Fix: Company league window was too narrow [FS#3434] (r18644)
|
||||
- Fix: Rotation could not be changed for heightmaps [FS#3436] (r18643)
|
||||
- Fix: When a company goes bankrupt and has vehicles on a drive through road stop that is not theirs, the 'filled' cache of the road stops would get corrupted [FS#3432] (r18642)
|
||||
- Fix: Downloading music sets would fail (r18638)
|
||||
- Fix: Crash when invalid pointers are left due to saveload failing at e.g. decompressing the savegame [FS#3421] (r18634)
|
||||
- Fix: When making a screenshot the name of the previous screenshot went missing in the 'successful screenshot' message and the console command would be shown twice [FS#3419] (r18631, r18630)
|
||||
- Fix: (un)loading counter being reset while loading a train and changing the (path) signal setup around the station [FS#3422] (r18628)
|
||||
- Fix: {CARGO} takes 2 parameters, not 1. This made {N:XYZ} commands after CARGO mess up their indices and that then triggered an assertion [FS#3425] (r18626)
|
||||
|
||||
|
||||
1.0.0-beta1 (2009-12-24)
|
||||
------------------------------------------------------------------------
|
||||
- Feature: Music replacement sets, like graphics and sound replacement sets (r18608)
|
||||
- Feature: Add shading and unshading of windows [FS#2943] (r18588)
|
||||
- Feature: Initially select the last joined server when going to the server list [FS#3311] (r18578)
|
||||
- Feature: Additional map variety option for TGP landscape generator (r18541)
|
||||
- Feature: Add the possibility to not make new tree tiles in-game (r18522)
|
||||
- Feature: Moving of AIs in the AI configuration window [FS#3359] (r18516)
|
||||
- Feature: Make maximum pathfinder penalties for finding depots customisable, also increase it slightly to 20 tiles worth of penalties (r18481)
|
||||
- Feature: [Strgen] Allow G and P to 'select' substrings of STRINGn for getting their gender (r18444)
|
||||
- Feature: Make penalty for road stop occupancy user configurable (r18404)
|
||||
- Feature: Fully scalable, by font size and content, GUI and improved right-to-left language support [FS#1905] (r15800-r18350)
|
||||
- Feature: Set the start time of a timetable (r18294)
|
||||
- Feature: Show the expected arrival/departure dates in the timetable window (r18285)
|
||||
- Feature: [NewGRF] Add new price bases for removing industries, building/removing unmovables (new objects), building/removing rail-waypoints/buoys, interacting with town-authority, building foundations, funding primary industries (when not prospecting) and towns (r18283)
|
||||
- Feature: Founding towns in-game (r18281)
|
||||
- Feature: [NewGRF] Make price base multipliers related to vehicles only apply to the GRF locally, if it defines engines of that type itself (r18268)
|
||||
- Feature: [NewGRF] CB 36 for roadvehicle property 09 'running cost factor' (r18011)
|
||||
- Feature: Non-automatic screenshot name can be entered in console (r17938)
|
||||
- Feature: Make it possible to disable background saving, only via the config file/in game console though [FS#2633] (r17893)
|
||||
- Feature: Automatically select the railtype with the most engines for the autoreplace window/try to avoid showing an empty autoreplace list [FS#1760] (r17892)
|
||||
- Feature: Show maximum tractive effort in the 'exclusive test'/'early offer'/'engine preview' window [FS#1619] (r17891)
|
||||
- Feature: Double clicking on a NewGRF opens the parameters window (r17890)
|
||||
- Feature: Double click on a item in the refit list refits without the need to click on the refit button (r17889)
|
||||
- Feature: [NewGRF] Textstack support for CB 37 [FS#1862] (r17802)
|
||||
- Feature: [OSX] Implement automatic fallback font selection for OSX (r17794)
|
||||
- Feature: Translatable base sound/graphics set descriptions (r17790)
|
||||
- Feature: Show the nickname of the person you are PMing [FS#3116] (r17741)
|
||||
- Feature: [OSX] Add a MIDI driver using Cocoa/CoreAudio [FS#3223] (r17710)
|
||||
- Feature: [OSX] Implement clipboard support for OS X [FS#2053] (r17708)
|
||||
- Feature: Possibility to choose (randomise or enter custom) town name before its creation (r17612)
|
||||
- Feature: [NewGRF] Callbacks for houses to disable drawing foundations and to disable slope changes, like industry tile callbacks 30 and 3C (r17558)
|
||||
- Feature: [NewGRF] Implement callback 145 (custom station rating) (r17547)
|
||||
- Feature: Filtering in Add-NewGRF dialog (r17541)
|
||||
- Feature: Add the date to all logging in the (real, not in-game) console if show_date_in_console is set. For dedicated server binaries the default is 'on', for the rest it is 'off' [FS#2339] (r17488)
|
||||
- Feature: Reconnect console command (r17466)
|
||||
- Feature: Allow building rail stations over existing rail without signals but will upgrade normal rail to electrified rail if necessary (r17460)
|
||||
- Feature: Crash logger for all Unixy OSes in a similar way as the Windows crash logger (r17453)
|
||||
- Feature: Open the 'Rename group' dialog after creating new group (r17281)
|
||||
- Feature: [NoAI] Older API compatability wrappers, so one can get the 0.7 API in later versions while keeping the real API clean (r17214)
|
||||
- Feature: The Windows installer can now optionnaly download OpenGFX and OpenSFX (r17191)
|
||||
- Feature: Sort vehicle lists on (timetable) delay [FS#2945] (r17182)
|
||||
- Feature: Localised decimal separator (r17157)
|
||||
- Feature: Improved the sample rate conversion a bit (r17146)
|
||||
- Feature: Allow higher sample rate and higher quality samples (r17140)
|
||||
- Feature: Sound replacement sets, like graphics replacement sets (r17139)
|
||||
- Feature: Multi tile waypoints (r17002, r17000, r16993)
|
||||
- Feature: [NewGRF] Turn variable 0E/8E (vertical offset for trains in depot) and variable 1E/9E bit 3 (wagon width in depot) into grf-local variables (r16867)
|
||||
- Feature: Highlight whole articulated vehicles in traindepot instead of only the first part (r16818)
|
||||
- Feature: Ability to enter server and company password via command line when joining a server [FS#570] (r16555)
|
||||
- Feature: Give the town generator a slight tendency to build towns near water by not discarding watery random tiles but by searching for near land [FS#2635] (r16147)
|
||||
- Feature: Configurable digit group separator per language with user override (r16129)
|
||||
- Feature: Make the first 4 rail building tools behave more like autorail (r16095)
|
||||
- Feature: Allow sorting stations by the lowest cargo rating instead of only by the highest cargo rating [FS#597] (r16045)
|
||||
- Feature: Allow filtering of vehicle purchase lists by cargo [FS#1941] (r16042)
|
||||
- Feature: Allow (per order) to let a train stop at the near end, middle or far end of a platform from the point of view of the driver of the train that enters the station (r16037)
|
||||
- Feature: Listen on multiple IPs/sockets and register all IPs to the master server (r16014, r15975, r15973, r15971)
|
||||
- Feature: Full IPv6 support (r16000)
|
||||
- Feature: Allow train vehicles to be shorten to 1/8 length, even if not at the end of the train (r15793)
|
||||
- Add: [NoAI] AIOrder::AIOF_GOTO_NEAREST_DEPOT for goto nearest depot orders (r18518)
|
||||
- Add: [NoAI] Enable the squirrel standard math library (r17498)
|
||||
- Add: [NoAI] A vehicle list for all vehicle that are ordered to a specific depot (r17486)
|
||||
- Add: [NoAI] AISubsidy::SubsidyParticipantType, AISubsidy::GetSourceType, AISubsidy::GetSourceIndex, AISubsidy::GetDestinationType, AISubsidy::GetDestinationIndex for better subsidy management (r17115)
|
||||
- Change: Forbid industries to clear sea/river when leveling land (r18554)
|
||||
- Change: Make it visible when you are to pass the next signal on danger and possible to cancel it (r18515)
|
||||
- Change: Move the 'check online content' button from the AI list window to the AI configuration window. This makes it consistent with the NewGRF windows [FS#3340] (r18507)
|
||||
- Change: Use zł instead of zl for the Polish Zloty [FS#565] (r18434)
|
||||
- Change: Show different texts in town GUI when the town does not need food the whole year to grow (r18433)
|
||||
- Change: Make road vehicles behave more like trains 'around' stations and use pathfinder penalties to determine to which 'part' to go (r18382)
|
||||
- Change: Do not split up articulated vehicles in the train details view. If an articulated vehicle it too 'wide' draw the information on the next line and if there are multiple cargos split that over multiple lines too [FS#2923] (r18344)
|
||||
- Change: Make pause on join pause during the whole joining (including download) phase [FS#3287] (r18054)
|
||||
- Change: Prefer extmidi over allegro midi and allegro over null driver [FS#3272] (r17875)
|
||||
- Change: Several improvements to the performance of CargoPackets/CargoLists; time spent in those functions reduces by 55-85% (r17840, r17836, r17818, r17814, r17812, r17801, r17736, r17735, r17733, r17731, r17730)
|
||||
- Change: [SDL] Make 'update the video card'-process asynchronious. Improvements of 2%-25% (real time) during fast forward on dual core/hyperthreading-enabled CPUs (r17776)
|
||||
- Change: [NoAI] Make AIEngine:CanRefitCargo() not report refittability to Mail by default for aircraft. It is not necessarily true, and the special case of carrying both passenger&mail is better handled by AIs themself than by the API (r17719)
|
||||
- Change: [OSX] Do not use deprecated methods/undocumented functions [FS#1411] (r17712, r17711)
|
||||
- Change: Make SDL's video driver more likely to be loaded than Allegro's video driver; SDL seems to perform better (r17583)
|
||||
- Change: Do not assume that there is always 'another' industry tile after two '0x18' industry tiles (r17521)
|
||||
- Change: Make the performance ratings harder to exploit; only count profitable vehicles and recently serviced stations [FS2459] (r17485)
|
||||
- Change: When removing a station or waypoint keep the rail unless Ctrl is pressed. This makes the behaviour consistent between the two (r17471)
|
||||
- Change: Show the client id in join messages at the server (r17467)
|
||||
- Change: NewGRF price modifiers now take effect everytime when loading NewGRFs instead of once on gamestart (r17433)
|
||||
- Change: Make a distinction between missing and corrupted data files. If (at least) one data file is missing do not consider the set to be useable. Do also no autodetect sets with missing files (r17241)
|
||||
- Change: Update MiniLZO to 2.0.3 (r17215)
|
||||
- Change: Update Squirrel to 2.2.3 (r17195)
|
||||
- Change: Remove UNICODE notice in windows installer (r17186)
|
||||
- Change: Apply the subsidy when subsidy's destination is in station's catchment area and cargo packets originate from subsidy's source [FS#265,FS#2094,FS#2589] (r17113)
|
||||
- Change: Subsidies are not bound to stations after awarding anymore, they still apply to town or industry, no matter what station is used for loading and unloading. Awarded subsidies from older savegames are lost [FS#1134] (r17113)
|
||||
- Change: [NoAI] Add AIBaseStation as a parentclass for AIStation and AIWaypoint, and move GetName, SetName and GetLocation to AIBaseStation (r17011)
|
||||
- Fix: Conditional orders were seen as 'valid' and as such aircraft with only conditional orders did not crash (r18615)
|
||||
- Fix: Pressing default for the starting year/snow line height edit boxes of the world generation windows did not work [FS#3398] (r18586)
|
||||
- Fix: [OSX] Try to get a generic RGB colour space if getting the system colour profile failed [FS#3198] (r18573)
|
||||
- Fix: [NewGRF] House property 15 did not work [FS#2613] (r18567)
|
||||
- Fix: Do not try to overtake a vehicle in a road station as overtaking in a station is not allowed [FS#3390] (r18561)
|
||||
- Fix: Make aircraft behave the same on autoreplace/autorenew as other vehicle types (r18553)
|
||||
- Fix: First do the time-since-last-service check and only then determine whether autoreplace needs to take place. This way they will not keep autoreplacing continuously on failure, but only after some timeout. Also check some minimal requirements (engine availability, refittability) and a heuristic for the needed money when sending vehicles for autoreplace [FS#1762] (r18551, r18549)
|
||||
- Fix: Do not account for path reservation costs when entering a signal block via a 'block' signal. This way you won't get double penalties, both red signals and reservation costs, for the block signalled tracks [FS#2722] (r18535)
|
||||
- Fix: [NewGRF] An industry NewGRF that defined a too small size for action0 prop 0A could cause a crash (r18527)
|
||||
- Fix: Allegro does not like to work with extmidi, so warn the user about that [FS#3272] (r18520)
|
||||
- Fix: When you pass a signal at danger, in a PBS controlled area, do not try to do the 'safe' thing and stop, but continue going; the user wanted the train to pass the signal at danger so (s)he has to suffer the consequences. Ofcourse one can always stop the train manually [FS#2891] (r18515)
|
||||
- Fix: No error message was created for the first fatal NewGRF error [FS#3368] (r18506)
|
||||
- Fix: Improve airport movement on several airports [FS#3169] (r18505)
|
||||
- Fix: Autoreplace and autorenew always reset their cargo sub type to 0. Now find a sub cargo type with the exact same name and use that, otherwise fallback to 0. So cargo sub types can be maintained via autoreplace *if* the new vehicle supports the same cargo sub type [FS#3159] (r18499)
|
||||
- Fix: Cloning of vehicles could create vehicles with invalid cargo sub types for the build year of the vehicle. Fall back to another cargo sub type with the exact same name, otherwise fallback to cargo sub type 0 [FS#2616] (r18498)
|
||||
- Fix: [NewGRF] Direction is accounted for long before motion counter is updated (r18479)
|
||||
- Fix: Moving vehicles around/selling vehicle in the train depot could create states that are not allowed by the NewGRF attach callback [FS#3146] (r18472, r18470)
|
||||
- Fix: Unselect an AI in the AI Settings window when it falls out of the range of active AIs [FS#3357] (r18436)
|
||||
- Fix: Road vehicles would not pick an empty drive through stop. Now they will *if* the penalty for driving around is less than the occupancy penalty [FS#1944] (r18404)
|
||||
- Fix: Long (articulated) road vehicles could block loading of others when the following road vehicle already got 'permission' to go to the next bay even when it could not reach it [FS#1495] (r18404)
|
||||
- Fix: The tree 'which one to draw' hash wasn't anywhere near random and thus showed a very visible repeated pattern when only one tree type was used [FS#3343] (r18398)
|
||||
- Fix: [NoAI] Make AIIndustryType::GetConstructionCost() return -1, if the industry is neither buildable nor prospectable (r18276)
|
||||
- Fix: Use free type ascender/descender metrics to position font offset correctly (r18096)
|
||||
- Fix: Make the 'pause' chat message when actually executing the pause command. This to prevent showing paused and especially unpaused to be shown when the state does not change. Output now mentions whether pause changes keep the game paused and what reasons for pausing there 'currently' are (r18052)
|
||||
- Fix: [NoAI] Improve behaviour of (AIEngine|AIEventEnginePreview)::GetCargoType() and AIEngine::CanRefitCargo() wrt. articulated vehicles (r17898)
|
||||
- Fix: [NewGRF] CB15 and CB36 (capacity) were not always called when they should [FS#3255] (r17897)
|
||||
- Fix: Invalidate cache of vehicle vars 40-43 after testruns of certain commands, that change them temporarily (r17894)
|
||||
- Fix: [OSX] The splash image was not displayed if the Quartz video driver was used (r17793)
|
||||
- Fix: Do not let aircraft drive a while over the grass when landing at high altitude airports [FS#3259] (r17762
|
||||
- Fix: Make the -c <config file> location relative to the current directory instead of the directory of the binary [FS#3247] (r17686)
|
||||
- Fix: Some semaphore signals fell outside of the signal GUI. Now the signals are properly centered which should make that problem go away [FS#3242] (r17657)
|
||||
- Fix: Some inconsistencies with the difficulty settings in the scenario editor. Also re-enable changing some difficulty settings (e.g. max loan) in the scenario editor [FS#3219] (r17644)
|
||||
- Fix: Do not accept cargo produced in the same industry; generalise and improve the check used only for valuables (r17437)
|
||||
- Fix: Pay only for cargo actually delivered, not for all cargo unloaded at station; can differ with 'stockpiling' industries (r17436)
|
||||
- Fix: Improve movement of aircraft; do not make turns bigger then 45 degrees while in flight, do not move while turning on the ground (r17415, r17405)
|
||||
- Fix: Crash in order GUI when changing some orders with both the mouse and keyboard at the exact same time [FS#2859] (r17384)
|
||||
- Fix: Trains would not show smoke if the load/unload counter was not 0, though there does not seem to be a reason to check that variable anyhow anymore [FS#3162] (r17352)
|
||||
- Fix: One was not offered to take over bankrupt companies anymore; caused by the introduction NoAI, although NewAI had the same problem too [FS#2769] (r17345)
|
||||
- Fix: Minor improvements of the airport state machines (r17338, r17337, r17334)
|
||||
- Fix: Road vehicles forgetting their servicing order when the path takes them away (in bird distance) from their destination first [FS#3057] (r17333)
|
||||
- Fix: Mention of Ctrl modifier was missing from some tooltips [FS#3120] (r17300, r17297)
|
||||
- Fix: Keep vehicle news and viewports following vehicles, when autoreplacing/renewing them [FS#3048] (r17147)
|
||||
- Fix: Inconsistency between signs of stations and waypoints [FS#3081] (r17040)
|
||||
- Fix: NewGRF stations would be triggering assertions for waypoints all over the place when using the more advanced station types [FS#2996] (r16909)
|
||||
- Fix: Skipping a 'nearest depot order' because none could be found could cause multiple orders to get skipped [FS#2925] (r16457)
|
||||
- Fix: Makedepend cannot handle the amount of files we have and it also miss some dependencies. So use our custom implementation of makedepend (r16307)
|
||||
- Fix: Autopause and manual pausing conflict with eachother, new game + pause on new game + autopause make the game not unpause on the first join [FS#2864] (r16242)
|
||||
- Remove: [NoAI] AIVehicle::SkipToVehicleOrder as it was a duplicate of AIOrder.SkipToOrder (r18504)
|
||||
- Remove: OPF for RVs and NTP for trains; both the oldest path finders (r18362)
|
||||
- Remove: Support for gcc2. It has not been able to compile OTTD for months. All attempts to do another workaround failed (r16492)
|
||||
|
||||
|
||||
0.7.5 (2009-12-23)
|
||||
------------------------------------------------------------------------
|
||||
(None)
|
||||
|
||||
|
||||
0.7.5-RC1 (2009-12-14)
|
||||
------------------------------------------------------------------------
|
||||
- Add: Some missing latin-ish characters from the OpenGFX set (r18431)
|
||||
- Change: Recolour the bubble generator just like any other industry [FS#3349] (r18409)
|
||||
- Fix: Read after free in case no network connection could be made with the content server (r18493)
|
||||
- Fix: [NewGRF] Initialisation of cargo payment was broken for NewGRF cargos [FS#3344] (r18475)
|
||||
- Fix: [NoAI] AIOrder::SkipToOrder did not properly resolve ORDER_CURRENT (r18471)
|
||||
- Fix: When moving a wagon and only the last part of a dual headed engine you could split the dual headed engine over two vehicles. This could be used to crash servers [CVE-2009-4007] (r18462)
|
||||
- Fix: [Windows] Forgot to load the symbol from SDL.dll (r18439)
|
||||
- Fix: Do not run the 'jam protection' for vehicles in a depot [FS#3360] (r18428)
|
||||
- Fix: [Windows] The help window would be too large in some cases [FS#3327] (r18424)
|
||||
- Fix: Under some circumstances a pointer could be left untouched and then freed. Make sure this does not happen by ensuring it starts out as NULL instead of 'garbage' [FS#3298] (r18418)
|
||||
- Fix: On slopes the original and better road layouts did not check their minimum distance requirements [FS#3332] (r18415)
|
||||
- Fix: Aqueducts were not influenced by the 'long bridges' setting [FS#3338] (r18407)
|
||||
- Fix: Drive through road stops did not get flooded (r18401)
|
||||
- Fix: [YAPP] Trains on bridges were not found, when searching for the origin of a reservation [FS#3345] (r18392)
|
||||
- Fix: (Invalid) GRFs could trigger invalid reads (r18391)
|
||||
- Fix: One could not share orders between buses carrying different cargos (r18380)
|
||||
- Fix: Off-by-one in the preconfigured music lists [FS#3339] (r18369)
|
||||
|
||||
|
||||
0.7.4 (2009-12-01)
|
||||
------------------------------------------------------------------------
|
||||
- Fix: Endianness issue with saving the zoom level [FS#3333] (r18351)
|
||||
@@ -388,7 +135,7 @@
|
||||
0.7.2-RC2 (2009-07-21)
|
||||
------------------------------------------------------------------------
|
||||
- Fix: When marking trains stuck do not reset the unload/stuck counter when the vehicle is unloading. It will be automatically reset once the vehicle wants to leave the station [FS#3038] (r16901)
|
||||
- Fix: [NoAI] Small errors in the API documentation [FS#3037] (r16865)
|
||||
- Fix: [NoAI]: Small errors in the API documentation [FS#3037] (r16865)
|
||||
- Fix: Savegames from before 0.4 would get their waypoint 'index' messed up (r16854)
|
||||
- Fix: Cargo payments were not destroyed when a vehicle was destructed. This only happened when you crashed a vehicle while it was unloading [FS#3032, FS#3046] (r16801)
|
||||
|
||||
@@ -404,7 +151,7 @@
|
||||
- Fix: Houses would not get build on the map edge [FS#3025] (r16795)
|
||||
- Fix: Audio playback rate was fixed at 11025Hz regardless of the rate specified to the audio driver, resulting in incorrect playback speed. It is still preferable to use 11025Hz output rate if possible as OpenTTD's sample rate converter is very low quality (r16784)
|
||||
- Fix: Do not use the same error message for turning around road vehicles and flipping parts of trains in the depot [FS#3019] (r16772)
|
||||
- Fix: [Windows] The binary packages would not get their readme converted to DOS line endings (r16769)
|
||||
- Fix: The win32 and win64 binary packages would not get their readme converted to DOS line endings (r16769)
|
||||
- Fix: [NoAI] AITile::GetCargoProduction/Acceptance did not accept a radius of 0 anymore (r16767)
|
||||
- Fix: In the refit window the 'Select cargo type to carry' line always showed the ship refit tooltip [FS#3018] (r16757)
|
||||
- Fix: When loading a savegame Engine::grffile might be left NULL in certain cases (dynamic_engines enabled, articulated vehicle with only wagon-override action3s) (r16737)
|
||||
@@ -573,7 +320,7 @@
|
||||
0.7.0-RC2 (2009-03-23)
|
||||
------------------------------------------------------------------------
|
||||
- Change: [NewGRF] Expose GRF ID of engines in var action property 0x25 (r15739)
|
||||
- Fix: Some (newer) GCCs have trouble compiling the Windows specific part of fontcache.cpp; jumps across variable declarations [FS#2752] (r15818)
|
||||
- Fix: Some (newer) GCCs have trouble compiling the Win32 specific part of fontcache.cpp; jumps across variable declarations [FS#2752] (r15818)
|
||||
- Fix: When sorting on cost do not sort on the running cost [FS#2749] (r15778)
|
||||
- Fix: Do not show the message about reporting an AI crash for the dummy AI (r15774)
|
||||
- Fix: Number of active clients was not always properly updated [FS#2475] (r15773)
|
||||
@@ -628,7 +375,7 @@
|
||||
- Fix: Undeterministic file sorting when the date is equal for all files [FS#2716] (r15657)
|
||||
- Fix: Changing vehicle.dynamic_engines when there are already vehicles can cause crashes (r15656, r15586)
|
||||
- Fix: Only ever call any vehicle callbacks after the whole articulated engine has been built (except 0x16) (r15654)
|
||||
- Fix: C++'s new (this) is seldom a good idea as destructors of member variables are not run causing memory leaks [FS#2706] (r15652)
|
||||
- Fix: new (this) is seldom a good idea as destructors of member variables are not run causing memory leaks [FS#2706] (r15652)
|
||||
- Fix: [OSX] Hack around an OSX stupidity in < 10.4 w.r.t. signals by not having any signal handling support for OSX < 10.4 (r15648)
|
||||
- Fix: Add an EngineOverrideManager to give the term 'compatible NewGRF' again some sense and to not crash because of trivial changes [FS#2612] (r15645)
|
||||
- Fix: Closing a network connection twice in the case that sending packets starts failing while disconnecting [FS#2710] (r15644)
|
||||
@@ -650,8 +397,8 @@
|
||||
- Fix: Crash when saving a preset with unknown NewGRFs [FS#2646] (r15561)
|
||||
- Fix: The font width cache was not updated when changing fonts causing the font spacing to be off when changing fonts in-game (auto font detection) (r15557)
|
||||
- Fix: -v null crashing in 2051 due to trying to show the high score of the spectator (r15554)
|
||||
- Fix: [NoAI] Crash when setting a depot order to the southern part of a ship depot [FS#2656] (r15551)
|
||||
- Fix: The keep_all_autosave setting was ignored for dedicated servers/spectators [FS#2651] (r15546)
|
||||
- Fix: [NoAI] crash when setting a depot order to the southern part of a ship depot [FS#2656] (r15551)
|
||||
- Fix: keep_all_autosave was ignored for dedicated servers/spectators [FS#2651] (r15546)
|
||||
- Fix: If a buoy was placed directly in front of a dock, that dock was seen as a buoy and thus skipped once within 3 tiles [FS#2653] (r15545)
|
||||
- Fix: Extracting downloaded content did not work for Windows if one uses a non-ASCII path [FS#2650] (r15544)
|
||||
- Fix: [NewGRF] When articulated parts have no available default cargo, use the cargo type of the first part for livery selection [FS#2617] (r15541)
|
||||
@@ -709,7 +456,7 @@
|
||||
- Feature: Double click to join selected server/company (r14209)
|
||||
- Feature: Allow both the German as well as non-German toyland graphics as 'correct' and official graphics (r14197)
|
||||
- Feature: Allow people to create their own base graphics easily and without requiring code changes (r14197)
|
||||
- Feature: [NewGRF] Add support for property 0x13 for Bridges. In other words, one can now specifies a 16 bits cost multiplier (r14172)
|
||||
- Feature: [NewGRF]: Add support for property 0x13 for Bridges. In other words, one can now specifies a 16 bits cost multiplier (r14172)
|
||||
- Feature: Make it possible to choose between the DOS and Windows graphics packs while retaining the possibility to override the palette (r14151)
|
||||
- Feature: Increase the size of the console backlog. Now it'll only remove backlog items when there are more than a threshold and when they are there longer than (another) threshold (r14056)
|
||||
- Feature: Make it possible to filter list_patches output like it's done for other list_* console commands (r14041)
|
||||
@@ -820,7 +567,7 @@
|
||||
- Fix: Moving the first vehicle of a train elsewhere might require a new unitnumber for the remaining chain which might not be available (r14384)
|
||||
- Fix: Trams jumping when reversing on a single trambit (like caused during road construction reworks) or when (manually) reversing in a corner [FS#1852] (r14371)
|
||||
- Fix: Multiheaded parts in free wagon chains were not connected (could cause desyncs) (r14366, r14362)
|
||||
- Fix: [Windows] Some keypress combinations could be handled twice [FS#2206] (r14363)
|
||||
- Fix: [Win32] Some keypress combinations could be handled twice [FS#2206] (r14363)
|
||||
- Fix: The ownership of roadtiles was not properly set for very old savegames (including TTD's) making it impossible to remove some pieces of road [FS#2311] (r14359)
|
||||
- Fix: Desync due to randomly ordered vehicle hash by flooding and road vehicle overtake/following (r14356, r14258)
|
||||
- Fix: Signs were not updated on company bankruptcy/sell, and thus could have the colour of invalid player (r14348)
|
||||
@@ -853,7 +600,7 @@
|
||||
- Fix: Incorrect cargo weights (r14144)
|
||||
- Fix: GetSlopeZ() gets a virtual coordinate, not a tile (r14139)
|
||||
- Fix: Close the 'manage vehicles' dropdown once the number of vehicles in the list reaches 0 [FS#2249] (r14133)
|
||||
- Fix: [Strgen] Changing order of parameters {X:...} did not work for strings including some {StringY} (r14111)
|
||||
- Fix: [strgen] Changing order of parameters {X:...} did not work for strings including some {StringY} (r14111)
|
||||
- Fix: Desync due to bubbles in toyland (r14110)
|
||||
- Fix: Make NewGRF action 0x06's changes persistent over the several loading stages [FS#1986] (r14102)
|
||||
- Fix: Make the 'Transfer Credit' display aware of the entire consist, not only the first vehicle (r14098)
|
||||
@@ -864,7 +611,7 @@
|
||||
- Fix: NewGRF callback 23 did not use the NewGRF compatible text stack [FS#2224] (r14058)
|
||||
- Fix: NewGRF text stack's 'push word' did not move the data around properly (r14057)
|
||||
- Fix: Long strings in the edit box would cause OpenTTD to stop drawing the string. This is especially noticable with low resolutions and the chat input box (r14054)
|
||||
- Fix: [OSX] Changed the condition for selecting 8 or 32 bpp blitter by default. Now we will pick 32 bpp if no 8 bpp fullscreen resolutions are available on the main display (the one with the dock) (r14032)
|
||||
- Fix: [OSX] changed the condition for selecting 8 or 32 bpp blitter by default. Now we will pick 32 bpp if no 8 bpp fullscreen resolutions are available on the main display (the one with the dock) (r14032)
|
||||
- Fix: Crash when the AI tries to find the depot of an airport that does not have a depot [FS#2190] (r13999)
|
||||
- Fix: MSVC cannot handle changed files in the prebuild event, so make the version determination a separate subproject [FS#2004] (r13998)
|
||||
- Fix: The dedicated console removed any character that was not a printable ASCII character instead. Now it allows UTF8 formated strings too [FS#2189] (r13992)
|
||||
@@ -879,7 +626,7 @@
|
||||
- Fix: In some cases the sprite cache could be filled with unremovable items [FS#2153] (r13869)
|
||||
- Fix: Return of wrong parent scope of (NewGRF) industry variables (r13868)
|
||||
- Fix: Loading of TTD(Patch) savegames from the command line did not work (r13859)
|
||||
- Fix: Buffer overflow for too long filename supplied as '-g' parameter [CVE-2008-3577] (r13858)
|
||||
- Fix: Buffer overflow for too long filename supplied as '-g' parameter (r13858)
|
||||
- Fix: Cargo type lookup was incorrect for NewGRF version 7 files without a translation table [FS#2157] (r13855)
|
||||
- Fix: GetTownByTile() is only valid for houses and roads (r13851)
|
||||
- Fix: Power, running cost and capacity of multiheaded engines were (too often) doubled in newspaper resp. offer window (r13844)
|
||||
@@ -900,13 +647,13 @@
|
||||
- Fix: Possible desync on the autorenew settings 20+ game years (i.e. 4.5+ hours) after a company was started (r13718)
|
||||
- Fix: Any player could construct new companies [FS#2144] (r13716)
|
||||
- Fix: Remove the unique_id from the message that a client has joined as it is only exposes the unique_id more than needed (r13714)
|
||||
- Fix: Possible crash on creating a network packet [CVE-2008-3547] (r13713)
|
||||
- Fix: Possible crash on creating a network packet (r13713)
|
||||
- Fix: Enforce the length restrictions of company and president name in the commands too (r13712)
|
||||
|
||||
|
||||
0.6.2-RC1 (2008-07-16)
|
||||
------------------------------------------------------------------------
|
||||
- Fix: Possible buffer overflow in string truncation code [CVE-2008-3576] (r13700)
|
||||
- Fix: Possible buffer overflow in string truncation code (r13700)
|
||||
- Fix: Handle SETX(Y) properly when truncating a string instead of ignoring it and returning a too long string (r13699)
|
||||
- Fix: In some cases the (sound) mixer could overflow causing artefacts in the sound [FS#2120] (r13695)
|
||||
- Fix: Do not rely on .tar files always ending with a block of zeros (r13693)
|
||||
@@ -997,7 +744,7 @@
|
||||
- Fix: Infinite loop in case your compiler decides that enums are unsigned by default (r12622)
|
||||
- Fix: The convert signal button disallowed signal dragging when the signal GUI was closed (r12577)
|
||||
- Fix: Binding to a specific IP could cause OpenTTD to not register properly with the masterserver if one has multiple external interfaces (r12574)
|
||||
- Fix: The function min() has 32bit arguments, clamping of 64bit values did not work (r12572)
|
||||
- Fix: min() has 32bit arguments, clamping of 64bit values did not work (r12572)
|
||||
- Fix: Towns could not terraform when inflation rised terraform prices enough (r12564)
|
||||
- Fix: Do not affect town rating change by the order in which we examine stations (r12561)
|
||||
- Fix: Redraw the signal GUI when the signal drag density changes in the patch settings and vice versa (r12553)
|
||||
@@ -1029,7 +776,7 @@
|
||||
- Fix: Refresh vehicle details window when cached values are updated (r12378)
|
||||
- Fix: Set cached value for vehicle property 25 before other cached values [FS#1854] (r12377)
|
||||
- Fix: Do not close a dropmenu when clicking on a dropdown widget (r12374)
|
||||
- Fix: Windows music driver fails if path is too long or if containing non-latin chars [FS#1849] (r12373, r12372)
|
||||
- Fix: win32 music driver fails if path is too long or if containing non-latin chars [FS#1849] (r12373, r12372)
|
||||
- Fix: Do not let window hide behind the main toolbar after resizing the screen [FS#1823] (r12371)
|
||||
- Fix: Close language drop down when parent window is clicked/closed [FS#1853] (r12370)
|
||||
- Fix: Reset train speed limits when _patches.realistic_acceleration changes (r12369)
|
||||
@@ -1065,7 +812,7 @@
|
||||
- Fix: YAPF and NTP did not apply penalty for uphill tracks on steep slopes (r12313)
|
||||
- Fix: Restore timetable from backupped orders and add group ID to the backup [FS#1549] (r12296)
|
||||
- Fix: Do not draw trees nor lamps between tram tracks (r12290) [FS#1807]
|
||||
- Fix: [Windows] Do not create save dir on install (r12269)
|
||||
- Fix: [Win32] Do not create save dir on install (r12269)
|
||||
- Fix: Autoreplace did not update vehicle index for timetable window [FS#1805] (r12261)
|
||||
- Fix: GetProductionAroundTiles() may fail if only the second production slot exists (r12258)
|
||||
- Fix: Town variables 0x9E to 0xAD (company ratings) returned wrong values (r12247)
|
||||
@@ -1186,14 +933,14 @@
|
||||
- Fix: Do not allow modifying roadbits when other roadtypes would need different foundation (r11953)
|
||||
- Fix: Loading of very old savegames was broken (r11951)
|
||||
- Fix: Slope detection of bridge ramps. Helps YAPF and Trolly (r11946)
|
||||
- Fix: [Windows] FileExists() failed for non latin paths (r11945)
|
||||
- Fix: FileExists() failed for non latin paths (win32) (r11945)
|
||||
- Fix: Allow building drive-through road/tram stops at road/tram track that has no owner (r11944)
|
||||
- Fix: 'BRIDGE_TOO_LOW_FOR_TERRAIN'-check was wrong for steep slopes (r11936)
|
||||
- Fix: [Autoreplace] Single to dualhead locomotive replacefailed when player had enough money to replace and refit one but not enough to refit the last one as well [FS#1624] (r11929)
|
||||
- Fix: [Autoreplace] Autoreplace could refit train engines to the wrong cargo type if the old engine had no cargo capacity and the new one had (r11928)
|
||||
- Fix: Loading old, pre savegame version 2, savegames (r11925)
|
||||
- Fix: AI was reading wrong tile slope while building road bridge (r11917)
|
||||
- Fix: Set correctly crossing state after train reversal, train leaving crossing, train crash (r11900)
|
||||
- Fix: set correctly crossing state after train reversal, train leaving crossing, train crash (r11900)
|
||||
- Fix: Segmentation faults/wrong frees due uninitialized memory in the AI [FS#1658] (r11887)
|
||||
- Fix: Assert when trying to remove rail from a house or industry tile [FS#1663,FS#1665-6-7-8,FS#1680,FS#1686-7-8 FS#1715 FS#1742 FS#1771 FS#1776](r11883)
|
||||
- Fix: Crash in MP in vehicle group window if the currently selected group is deleted by another player (r11878)
|
||||
@@ -1458,7 +1205,7 @@
|
||||
- Fix: Clone vehicles will no longer refit for free (r9689)
|
||||
- Fix: Improved loading does not use a huge amount of processing power anymore when having a lot of trains [FS#423] (r9683)
|
||||
- Fix: Truncate the NewGRF information text in the NewGRF GUI if it is too long (r9449)
|
||||
- Fix: Cancel in password queries reduces amount of players in the network game when they have not joined the game yet [FS#688] (r9378)
|
||||
- Fix: Cancel in password queries reduces amount of players in the network game when they have not joined the game yet [FS#688] r9378
|
||||
- Fix: If all news-setting buttons show 'full', make the ALL-button show 'full' too (r9137)
|
||||
- Fix: Open and close messages now have their own setting, so you can hide economy changes, but do show open/close of industries [FS#525] (r9097)
|
||||
- Fix: Do not make owner signs transparent, as then you loose the information who it owns [FS#637] (r9067)
|
||||
@@ -1476,8 +1223,8 @@
|
||||
- Fix: Rail vehicles can no longer enter tunnels or bridgeheads with wrong railtype (r7976)
|
||||
- Fix: When path finding onto a bridge or tunnel end from previous tile (but not warping from the opposite end) check the enter direction. This fixes signal setting if a rail ends on the top of a tunnel end (r7718)
|
||||
- Fix: When following path for signals, do not skip back to the previous tile, as for tunnels and bridge ends the entering direction is wrong (r7717)
|
||||
- Fix: [YAPF] Suppress 'Train is lost' message if path finding ended on the first two-way red signal due to YAPF.rail_firstred_twoway_eol option (r7628)
|
||||
- Fix: [OPF] Signal update was incorrectly propagated (r7620)
|
||||
- Fix: [YAPF] suppress 'Train is lost' message if path finding ended on the first two-way red signal due to YAPF.rail_firstred_twoway_eol option (r7628)
|
||||
- Fix: [OPF] signal update was incorrectly propagated (r7620)
|
||||
|
||||
|
||||
0.5.3 (2007-09-15)
|
||||
@@ -1522,7 +1269,7 @@
|
||||
0.5.3-RC1 (2007-06-28)
|
||||
------------------------------------------------------------------------
|
||||
- Feature: Make the client list window (for network games) stickyable (r10293)
|
||||
- Feature: Console command to get the current game date (r10137)
|
||||
- Feature: console command to get the current game date (r10137)
|
||||
- Fix: Waypoints could be renamed when you are not the owner (r10368)
|
||||
- Fix: Smooth economy did not close primary industries and it allowed increasing of production of industries that should not have rising productions (r10348, r10347, r10290)
|
||||
- Fix: Acceleration for trains on slopes is not calculated properly [FS#786] (r10344, r10317)
|
||||
@@ -1582,7 +1329,7 @@
|
||||
- Fix: Only non dedicated servers cannot have 0 players [FS#765] (r9785)
|
||||
- Fix: Remove arbitrary limit on length of NewGRF strings (r9775)
|
||||
- Fix: [NewGRF] Ignore axis-bit of station tile layouts [FS#756] (r9758)
|
||||
- Fix: [Windows] Dead key and open/close console (r9728)
|
||||
- Fix: [win32] Dead key and open/close console (r9728)
|
||||
- Fix: When you have closed the 'Load game'/'New game' windows which you started from the 'start server' menu, you should not start a server when starting a new game [SF#1244842] (r9757)
|
||||
- Fix: Trains were lost after autorenewal/autoreplace [FS#732] (r9753)
|
||||
- Fix: Stop flooded towns from building roads on water [FS#598] (r9743)
|
||||
@@ -1617,8 +1364,8 @@
|
||||
|
||||
0.5.1-RC2 (2007-03-23)
|
||||
------------------------------------------------------------------------
|
||||
- Fix: Crashes when the chatbox would be drawn outside of the main window [FS#701] (r9420)
|
||||
- Fix: Reading out of an array caused a segmentation fault [FS#694] (r9394)
|
||||
- Fix: crashes when the chatbox would be drawn outside of the main window [FS#701] (r9420)
|
||||
- Fix: reading out of an array caused a segmentation fault [FS#694] (r9394)
|
||||
|
||||
|
||||
0.5.1-RC1 (2007-03-20)
|
||||
@@ -1640,7 +1387,7 @@
|
||||
- Fix: Difficulty level button was not selected when opening the difficulty window (r9117)
|
||||
- Fix: The wrong catenary wires were drawn for tunnel entrances [FS#612] (r9077)
|
||||
- Fix: The intercontinental airport used 'T-junction' runway sprites when there is no exit in the middle of the runway as in the city airport [FS#529] (r9076)
|
||||
- Fix: [Windows] Dedicated console now does not need an extra 'enter' to fully quit [FS#459] (r9074)
|
||||
- Fix: [win] dedicated console now does not need an extra 'enter' to fully quit [FS#459] (r9074)
|
||||
- Fix: Take over companies properly in multiplayer games [FS#459] (r9071)
|
||||
- Fix: When a bribe failed and you have not picked up cargo yet, you would never be able to do so for a given station [FS#404] (r9070)
|
||||
- Fix: Do not keep on scrolling for non-numeric values in settings, but require reclick [FS#663] (r9064)
|
||||
@@ -1650,12 +1397,12 @@
|
||||
- Fix: Play the correct engine sound based on the engine type instead of the sprite (r9009)
|
||||
- Fix: New locomotive names were not announced in the news, it said 'new railway locomotive available - railway locomotive' [FS#581] (r9000, r9001)
|
||||
- Fix: [NewGRF] Do not select a disabled platform length/number of track count when going out of drag-drop mode [FS#450] (r8999)
|
||||
- Fix: [Windows] Resolution doubled in cfg file when fullscreen mode used [FS#642] (r8994)
|
||||
- Fix: [win] Resolution doubled in cfg file when fullscreen mode used [FS#642] (r8994)
|
||||
- Fix: The industry list should also be (re)set when the number of industries is 0 [FS#656] (r8980)
|
||||
- Fix: [Windows] Possible buffer overflow if unicode text is pasted into an input box and needs trimming (r8975)
|
||||
- Fix: [Windows] Support compilation with the Vista Platform SDK (r8974)
|
||||
- Fix: [win] Possible buffer overflow if unicode text is pasted into an input box and needs trimming (r8975)
|
||||
- Fix: [win] Support compilation with the Vista Platform SDK (r8974)
|
||||
- Fix: Crash on loading savegames with GRFs that do not have their GRF info/name set (r8955)
|
||||
- Fix: [NewGRF] Support for vehicle variable 48 was wrong (r8943)
|
||||
- Fix: [NewGRF] support for vehicle variable 48 was wrong (r8943)
|
||||
|
||||
|
||||
0.5.0 (2007-02-27)
|
||||
@@ -1714,10 +1461,10 @@
|
||||
------------------------------------------------------------------------
|
||||
- Codechange: Add Lithuanian language as an official translation (r7806)
|
||||
- Fix: The configure script did not work work for dash, a sh compatible shell [FS#485] (r7893)
|
||||
- Fix: [OSX] Control + enter no longer fullscreens, interfered with team-chat (r7886)
|
||||
- Fix: [OSX] control + enter no longer fullscreens, interfered with team-chat (r7886)
|
||||
- Fix: Offset engines/wagons by half width in details window; fixes overflowing for display (r7864)
|
||||
- Fix: [OSX] Remove incorrect debug message about missing grf files (r7766)
|
||||
- Fix: [SDL] Sometimes ALT-TAB could trigger the fast forward (r7727)
|
||||
- Fix: [sdl] sometimes ALT-TAB could trigger the fast forward (r7727)
|
||||
|
||||
|
||||
0.5.0-RC2 (2006-12-31)
|
||||
@@ -1753,7 +1500,7 @@
|
||||
- Feature: Allow towns to be built on top of trees in the scenario editor [FS#396] (r7152)
|
||||
- Feature: Allow over-building of compatible railtypes, i.e. normal and electrified rail. If building electrified rail, normal rail is upgraded for you (at a cost) (r7106)
|
||||
- Feature: Additional positioning for long dropdown lists with scrollbar support if dropdown list would not fit (r7086)
|
||||
- Feature: [Windows] Remember the window size between restarts when quit in fullscreen mode (r7061)
|
||||
- Feature: [win32] Remember the window size between restarts when quit in fullscreen mode (r7061)
|
||||
- Feature: Increase the chatbuffer of chat messages, messages longer than the graphical box will be wrapped to a new line (r6956)
|
||||
- Feature: Allow typing longer text than visible for an editbox; it will scroll properly now (r6954)
|
||||
- Feature: Allow spectators to team-speak to eachother (r6933)
|
||||
@@ -1784,7 +1531,7 @@
|
||||
- Feature: Possibility to generate scenarios by importing heightmaps. It can be in PNG or BMP format
|
||||
- Feature: New (optional) landscape generator based on TerraGenesis Perlin noise with GUI, progress bar and fine-tuning options (r5946)
|
||||
- Feature: Filter for textboxes to only allow input of certain patterns (like numbers only) (r5944)
|
||||
- Feature: [Windows] Remember the maximized state of the game window and restore on start [FS#234] (r5874)
|
||||
- Feature: [win32] Remember the maximized state of the game window and restore on start [FS#234] (r5874)
|
||||
- Feature: Add an icon to the SDL openttd executable (r5872)
|
||||
- Feature: Also allow horizontal and vertical rails on steep slopes (r5864)
|
||||
- Feature: Allow building of (certain) rails, roads and bridge ramps on steep sloped tiles (r5833)
|
||||
@@ -1827,10 +1574,10 @@
|
||||
- Codechange: Remove the 'unsorted' vehicle sorter, because it's plain useless (r6270)
|
||||
- Codechange: Remove MSVC6 support. The compiler was too stupid and too many workarounds were needed. Please switch to mingw or VC2005++ express (r5286)
|
||||
- Codechange: Allow a switch in Makefile.config to disable threads in OpenTTD (r5978)
|
||||
- Codechange: [Windows] Add native x64 target to VS2005 project files (r5813)
|
||||
- Codechange: [Windows] The exception dialog showed the last modification-date of win32.c instead of the last compilation-date (r5801)
|
||||
- Codechange: [win32] Add native x64 target to VS2005 project files (r5813)
|
||||
- Codechange: [win32]The exception dialog showed the last modification-date of win32.c instead of the last compilation-date (r5801)
|
||||
- Codechange: Add owner attribute to canals and locks. This makes them more useful in multiplayer games, as only the owner can delete them. Does not affect usage (r5084)
|
||||
- Codechange: [Windows] Add MSVC2005 support, project and solution files are in the _vs80.* files (r4581)
|
||||
- Codechange: Add MSVC2005 support, project and solution files are in the _vs80.* files (r4581)
|
||||
- Codechange: [OSX] Shark (Xcode's profiling tool) can now relate CPU usage to lines (r3611)
|
||||
- Codechange: Rewrite the multistop slot assignment system. More resource-friendly, several slot-assignment improvements (r3730, r4259)
|
||||
- Codechange: Completely remove the deprecated -p parameter (is superseded by -n) (r3508)
|
||||
@@ -1872,7 +1619,7 @@
|
||||
- Fix: Disable main toolbar buttons showing company list drop downs when there are no companies [FS#356] (r6695)
|
||||
- Fix: Autoreplace can now use the money for selling the old vehicle to build the new one (r6640)
|
||||
- Fix: A loop-hole that allowed docks to be built regardless of town authority rating (r6477)
|
||||
- Fix: [Windows] The dedicated server could overwrite the keyboard input buffer before it was handled by OpenTTD (r6449)
|
||||
- Fix: [win32] The dedicated server could overwrite the keyboard input buffer before it was handled by OpenTTD (r6449)
|
||||
- Fix: Reset the location of the last sound as that location can be outside the map when you are loading another, (smaller) map (r6437)
|
||||
- Fix: Show an error message when executing 'scrollto x' with x < 0 or >= MapSize() instead of asserting later on [FS#340] (r6435)
|
||||
- Fix: Station catchment area persists after switching tools [FS#136] (r6368)
|
||||
@@ -1946,7 +1693,7 @@
|
||||
- Fix: Crash when sorting an empty server list
|
||||
- Fix: The build-tree window button defaulted to a place-push-button on opening where no treetype is selected
|
||||
- Fix: Game crashes when cloning/autoreplace reaches train-limit
|
||||
- Fix: [NTP] Properly check for railtypes on non-plain-rail-tiles
|
||||
- Fix: [NTP] properly check for railtypes on non-plain-rail-tiles
|
||||
- Fix: Trains could enter certain sloped rail tiles under bridges with incompatible rail type
|
||||
- Fix: Ensure the map memory is cleared after it is allocated. This fixes random deserts that sometimes occurred
|
||||
- Fix: Some weird behaviour with tile selection near bridges
|
||||
@@ -1965,10 +1712,10 @@
|
||||
- Fix: Danish town names were saved/loaded as Swiss
|
||||
- Fix: Removing roads on crossings was done without a check for ownership
|
||||
- Fix: [Autoreplace] Fix drawing of train list for outdated engines
|
||||
- Fix: Malicious clients/servers could crash the game [CVE-2006-1999, CVE-2006-1998]
|
||||
- Fix: [Autoreplace] Allow replacement of wagons even when the engine fails to be replaced
|
||||
- Fix: Malicious clients/servers could crash the game
|
||||
- Fix: [Autoreplace] allow replacement of wagons even when the engine fails to be replaced
|
||||
- Fix: Certain operations involving trains inside a depot could cause a crash
|
||||
- Fix: [Autoreplace] Cost for refitting a new vehicle is added to the cost animation (player always paid for it, it just was not shown)
|
||||
- Fix: [Autoreplace] cost for refitting a new vehicle is added to the cost animation (player always paid for it, it just was not shown)
|
||||
- Fix: [OSX] Save/Load issues solved for OSX 10.3.9 universal binaries
|
||||
- Fix: Illegal servers in the master-server list could kick the client back to the main menu, effectively making Multiplayer impossible
|
||||
- Fix: [NPF] Do not mark tiles when debugging in multiplayer, this will cause desyncs
|
||||
@@ -1978,7 +1725,7 @@
|
||||
0.4.7 (2006-03-26)
|
||||
------------------------------------------------------------------------
|
||||
- Feature: [OSX] Add support for triple-binaries (PPC, PPC970, i386) (r4102)
|
||||
- Fix: [OSX] Crash when going to fullscreen (r4100)
|
||||
- Fix: [OSX] crash when going to fullscreen (r4100)
|
||||
- Fix: Allow unused wagons to have their first cache set. Fixes faulty cache-warning message and noticably speeds up depot operations (r4094)
|
||||
- Fix: [NPF] Trains & busses were unable to find a route when leaving a depot or bus stop (r4072)
|
||||
|
||||
@@ -1986,12 +1733,12 @@
|
||||
0.4.6 (2006-03-22)
|
||||
------------------------------------------------------------------------
|
||||
|
||||
- Codechange: [Windows] Show the revision in crash.txt and enable the button to show the crash text in the crash-window (r3965)
|
||||
- Codechange: [win32] Show the revision in crash.txt and enable the button to show the crash text in the crash-window (r3965)
|
||||
- Codechange: Add additional linker information to release builds to help figure out crashes more easily (r3526)
|
||||
- Fix: [OSX] Cannot save game if name contains german umlauts (loading savegames with certain chars still look odd) [SF#1157244] (r4038)
|
||||
- Fix: [OSX] Major speedup for PPC fullscreen (r4034)
|
||||
- Fix: [OSX] major speedup for PPC fullscreen (r4034)
|
||||
- Fix: [Makefile] Make sure the ICON_DIR gets created before copying files there (r4032)
|
||||
- Fix: [Windows] Change compiler settings to use the multithreaded CRT. This prevents certain crashes on multi-threaded machines (r4031)
|
||||
- Fix: [win32] Change compiler settings to use the multithreaded CRT. This prevents certain crashes on multi-threaded machines (r4031)
|
||||
- Fix: [NPF] Road vehicles planning through the back of depots and stations [SF#1453646] (r4029)
|
||||
- Fix: Use the title of a savegame in the saveload dialog-editbox (r4018)
|
||||
- Fix: Improper resolution written to the configuration file when exiting from fullscreen (r4017)
|
||||
@@ -2011,11 +1758,11 @@
|
||||
- Fix: The tooltips for raising and lowering land buttons in the scenario editor are interchanged [FS#61] (r3959)
|
||||
- Fix: Correctly restore the roadside after roadworks are finished (r3957)
|
||||
- Fix: [Multistop] Check the status of the destination road stop instead of a station's first road stop. This only has effect with road vehicle queuing disabled (r3956)
|
||||
- Fix: Validate the setting of max_companies/spectators through the console (r3955)
|
||||
- Fix: validate the setting of max_companies/spectators through the console (r3955)
|
||||
- Fix: Improve game-load times (r3954)
|
||||
- Fix: On loading a game, GetPlayerRailtypes() did not account for the fact that vehicles are introduced a year after their introduction date. This will also relieve possible (rare) network desyncs (r3952)
|
||||
- Fix: Restore plural forms of cargo types for several languages (r3951)
|
||||
- Fix: [Windows] Add directives to allow Visual Studio 2005 compilation (r3950)
|
||||
- Fix: [win32] Add directives to allow Visual Studio 2005 compilation (r3950)
|
||||
- Fix: Crash in string code with openbsd/zaurus; alignment issues [SF#1415782] (r3948)
|
||||
|
||||
|
||||
@@ -2032,10 +1779,10 @@
|
||||
- Feature: New display option: 'transparent station signs' (r2438)
|
||||
- Feature: You can now give transfer order to set up feeder systems (r2441)
|
||||
- Feature: Removing tracks with the 'remove' tool, automatically removes signals on the tracks (r2469)
|
||||
- Feature: [Localisation] Allow changing the order of parameters in translated strings (r2573)
|
||||
- Feature: [Localisation] New way to specify plural forms (r2592)
|
||||
- Feature: [Localisation] Support genders (r2594)
|
||||
- Feature: [Localisation] Support cases (r2597)
|
||||
- Feature: [localisation] Allow changing the order of parameters in translated strings (r2573)
|
||||
- Feature: [localisation] New way to specify plural forms (r2592)
|
||||
- Feature: [localisation] Support genders (r2594)
|
||||
- Feature: [localisation] Support cases (r2597)
|
||||
- Feature: Add support for truncating strings to a given (pixel) length (r2607)
|
||||
- Feature: Overhaul DirectMusic MIDI backend, remove 'experimental' status (r2712)
|
||||
- Feature: Change the driver probing algorithm: Use the first music/sound/video which succeeds initialising instead of bailing out after the first. No need to specify -snull if no soundcard is present anymore (r2728)
|
||||
@@ -2043,7 +1790,7 @@
|
||||
- Feature: Clone vehicles (r2764)
|
||||
- Feature: When starting without a config file determine the language on basis of the current locale (r2777)
|
||||
- Feature: [NewGRF] Add support for 'extended bytes' (r2872)
|
||||
- Feature: [Localisation] Major step twoards ISO-8859-15: Implement missing characters (r2879)
|
||||
- Feature: [localisation] Major step twoards ISO-8859-15: Implement missing characters (r2879)
|
||||
- Feature: Implement the console command rm to remove savegames (r2941)
|
||||
- Feature: Danish town names (r2957)
|
||||
- Feature: Menu option to toggle console (r2958)
|
||||
@@ -2079,9 +1826,9 @@
|
||||
- Fix: Refitting to a cargo which is already carried by some vehicles takes their capacities into account for display (r2365)
|
||||
- Fix: Add 'multihead' TTDPatch option to OpenTTD NewGRF flags-emulation (r2368)
|
||||
- Fix: Make install tried to install scenarios in the (non-existing) personal dir when USE_HOMEDIR is specified (r2371)
|
||||
- Fix: [Console] Update the example scripts in the scripts/ directory to reflect the new console functionality (r2372)
|
||||
- Fix: [Console] Any line starting with a '#' is a comment so ignore it (r2372)
|
||||
- Fix: [Console] The special variables whose value can only be set by a custom process should, also print out their newly set value there (r2372)
|
||||
- Fix: [console] update the example scripts in the scripts/ directory to reflect the new console functionality (r2372)
|
||||
- Fix: [console] any line starting with a '#' is a comment so ignore it (r2372)
|
||||
- Fix: [console] The special variables whose value can only be set by a custom process should, also print out their newly set value there (r2372)
|
||||
- Fix: [NewGRF] Ignore action 0 prop 0x20 (air drag) (r2377)
|
||||
- Fix: [NewGRF] Further property stubs, help prevents subsequent incorrect reading of NewGRF data (r2378)
|
||||
- Fix: Build year for mail compartment of planes was not set correctly, affected station ratings (r2380)
|
||||
@@ -2089,7 +1836,7 @@
|
||||
- Fix: Check the airport type when building an airport (r2382)
|
||||
- Fix: Monkey-testing turned up some command crashes (r2383)
|
||||
- Fix: Check selling land and setting player colour. Also an extra map-bounds check for terraforming (r2384)
|
||||
- Fix: [Realistic acceleration] Very slow trains no longer get an increase in maximum speed when part of them is in a depot (r2388)
|
||||
- Fix: [realistic accel] Very slow trains no longer get an increase in maximum speed when part of them is in a depot (r2388)
|
||||
- Fix: [NewGRF] Load power for dual-headed engines correctly (r2400)
|
||||
- Fix: [NewGRF] When resolving callbacks, dont ignore wagon overrides (r2410)
|
||||
- Fix: Station ratings are not affected by speed limits from realistic acceleration anymore (r2411)
|
||||
@@ -2103,7 +1850,7 @@
|
||||
- Fix: Using the mouse wheel could lead to a crash if mouse was not over a widget (r2530)
|
||||
- Fix: Blinking 'lock' gfx in multiplayer games (r2548)
|
||||
- Fix: Remove original train pathfinder. Enhanced old pathfinder (r2553)
|
||||
- Fix: Spaces in the path to the MIDI files caused the Windows MIDI player to fail (r2563)
|
||||
- Fix: Spaces in the path to the MIDI files caused the win32 MIDI player to fail (r2563)
|
||||
- Fix: Set server map name to the loaded name of the game/scenario (r2610)
|
||||
- Fix: Improve the old pathfinder. Changed it to A* instead of Dijkstra. Benchmark shows that NTP is now around 10x faster than NPF (r2635)
|
||||
- Fix: Correctly save and load company_value, it's 64 bits wide, not 32 bits (r2684)
|
||||
@@ -2115,12 +1862,12 @@
|
||||
- Fix: On OS/2 show the trailing \ if the current directory is a root directory (r2860)
|
||||
- Fix: Return a proper version number, when testing the TTDPatch version in the SkipIf action (r2862)
|
||||
- Fix: Change the way NewGRFs are loaded, this saves quite some sprite slots - about 2000 for DBSetXL for example (r2868)
|
||||
- Fix: Several format string vulnerabilities and buffer overflows in the network code [CVE-2005-2764, CVE-2005-2763] (r2899)
|
||||
- Fix: Fixed issue where autorenewed vehicles did not get all stats updated (r2912)
|
||||
- Fix: Several format string vulnerabilities and buffer overflows in the network code (r2899)
|
||||
- Fix: fixed issue where autorenewed vehicles did not get all stats updated (r2912)
|
||||
- Fix: Exit the child of the extmidi backend with _exit() instead of exit(), because we do not want any atexit handlers - especially flushing output streams - to run, if exec() fails (r2938)
|
||||
- Fix: Server crash with 'say'-command (r2950)
|
||||
- Fix: Fix Windows midi volume level control which did not work (r2960)
|
||||
- Fix: [OSX] Quitting the game no longer leaves a process behind that eats all the CPU power (r3281)
|
||||
- Fix: Fix win32 midi volume level control which did not work (r2960)
|
||||
- Fix: [OSX] quitting the game no longer leaves a process behind that eats all the CPU power (r3281)
|
||||
- Fix: Fix for UFO-broken waypoint [SF#1216203] (r2961)
|
||||
- Fix: [NewGRF] Include missing grf feature canal
|
||||
- Fix: [NewGRF] Add bounds checking to VehicleChangeInfo for vehicles
|
||||
@@ -2175,8 +1922,8 @@
|
||||
------------------------------------------------------------------------
|
||||
|
||||
- Feature: Add 'clear' command and CTRL+L to empty console window
|
||||
- Feature: Add the possibility to print out the current debug-level
|
||||
- Fix: [MacOSX] Default path for midi player on mac is now correct again
|
||||
- Feature: add the possibility to print out the current debug-level
|
||||
- Fix: [MacOSX] default path for midi player on mac is now correct again
|
||||
- Fix: Updated makefile for FreeBSD
|
||||
- Fix: Text overflows in about box
|
||||
- Fix: Link error while compiling as dedicated server
|
||||
@@ -2208,30 +1955,30 @@
|
||||
- Feature: Saving vehicle sorting criteria for each vehicle type [SF#1093261]
|
||||
- Feature: Resizable orders GUI [SF#1107690]
|
||||
- Feature: Focus keyboard on input-box in Multiplayer Menu [SF#1166978]
|
||||
- Feature: Terrain hotkeys nonfunctional in scenario editor (D,Q,W,E,R,T,Y,U fltr) [SF#1174313]
|
||||
- Feature: terrain hotkeys nonfunctional in scenario editor (D,Q,W,E,R,T,Y,U fltr) [SF#1174313]
|
||||
- Feature: Complete rework of console and new commands like ls, save, load, help, etc
|
||||
- Feature: Signs are shown in the colour of the player who created them
|
||||
- Feature: Add cheat option to set production of raw-material industries in game
|
||||
- Feature: Replace trian GUI remembers railtype selected from the dropdown menu
|
||||
- Feature: Improved Autoreplace
|
||||
- Feature: <any more smaller features :D
|
||||
- Feature: many more smaller features :D
|
||||
- Fix: A wrong error message was displayed when trying to [SF#1108618]
|
||||
- Fix: Game does not crash any more when a NewGRF file does not exist [SF#1110407]
|
||||
- Fix: Clearing land for free by reallocating HQ [SF#1112469]
|
||||
- Fix: Clearing land for free by reallocating HQ [SF#1112469]
|
||||
- Fix: Crash when accessing hi-scores in editor, it is now disabled [SF#1113037]
|
||||
- Fix: crash when accessing hi-scores in editor, it is now disabled [SF#1113037]
|
||||
- Fix: Game no longer crashes when right-clicking a disabled Full Load button [SF#1113399]
|
||||
- Fix: Dedicated server boots again [SF#1114100]
|
||||
- Fix: Game crashed sometimes when there were no industries in the map [SF#1114950]
|
||||
- Fix: In the main menu, when starting a new game while the load game dialog is open, openttd asserts [SF#1115200]
|
||||
- Fix: Non-stop orders are no longer accidently skipped [SF#1117538]
|
||||
- Fix: non-stop orders are no longer accidently skipped [SF#1117538]
|
||||
- Fix: Generate the correct smoke type for diesel trains [SF#1116619]
|
||||
- Fix: Max passengers / mail variables are now 32 bit [SF#1119308]
|
||||
- Fix: Better test if a string actually contains any console command [SF#1109400]
|
||||
- Fix: 'Play scenario' now loads game options and difficulty, 'Load game' starts game with user-selected values [SF#1108637]
|
||||
- Fix: Carriages of NewGRFs can be refitted again [SF#1143587]
|
||||
- Fix: carriages of NewGRFs can be refitted again [SF#1143587]
|
||||
- Fix: Production values of temperate-climate banks can now be altered [SF#1117730]
|
||||
- Fix: Mapwrap fixed in ship_cmd.c (was implicitely ok before biggermaps) [SF#1118810]
|
||||
- Fix: openttd: ship_cmd.c:642 ... Assertion failed. Mapwrap fixed in ship_cmd.c (was implicitely ok before biggermaps) [SF#1118810]
|
||||
- Fix: Assertion error on kick. When a company is cleaned all its windows need to be closed. For global vehicle lists, the no-staiton index of -1 was not taken into account [SF#1117327]
|
||||
- Fix: Speeding up when pressing ALT+TAB (Windows) [SF#1114261]
|
||||
- Fix: Signals dissaper after typing text and pressing enter!. Signs in Scenario Editor have no owner so ignore that [SF#1149403]
|
||||
@@ -2241,11 +1988,11 @@
|
||||
- Fix: Crash with german umlauts in station names [SF#1155696]
|
||||
- Fix: Segmentation fault when loading savegame, out of bounds array check [SF#1158618]
|
||||
- Fix: Autosave ignoring settings [SF#1149487]
|
||||
- Fix: [Windows] Infinite access for A:\. Only requery drive(s) if the user changes a directory, also supress the OS error box that pops up on some windows machines [SF#1024703]
|
||||
- Fix: Infinite access for A:\ (win32). Patch [1171208]. Only requery drive(s) if the user changes a directory, also surpress the OS error box that pops up on some windows machines [SF#1024703]
|
||||
- Fix: Create Lake and draggable Create Desert tools [SF#1095110]
|
||||
- Fix: Trains 'Go to depot' button: click twice skip to next order [SF#1172878]
|
||||
- Fix: Engine power not updated w/auto replace' autoreplace now forces an update of the cache [SF#1146215]
|
||||
- Fix: [Windows] Path displaying as 'C:\\' [SF#1173690]
|
||||
- Fix: Path displaying as 'C:\\' in saveload window win32-only [SF#1173690]
|
||||
- Fix: Click & drag removal of road assertion fail [SF#1179892]
|
||||
- Fix: Max loan always in euros, use _opt_ptr instead of _opt [SF#1174237]
|
||||
- Fix: AI orders its vehicles to a competitor's truck stop [SF#1184201]
|
||||
@@ -2257,15 +2004,15 @@
|
||||
- Fix: No HQ present for competitor, disable 'View HQ' button [SF#1187613]
|
||||
- Fix: Pre-signal stays red when there is only a single exit signal [SF#1193048]
|
||||
- Fix: Train in tunnel is not properly detected by signal code [SF#1185176]
|
||||
- Fix: [NewGRF] Rotors of custom helicopters are displayed correctly in the hangar window
|
||||
- Fix: [NewGRF] rotors of custom helicopters are displayed correctly in the hangar window
|
||||
- Fix: Scenario Editor now handles human-made roads better (try to build a city layout before placing the city, finally that works very nice)
|
||||
- Fix: [NewGRF] Helicopters are correctly recognized
|
||||
- Fix: [Autoreplace] Made sure that planes only show planes in replace GUI and helicopters only show helicopters
|
||||
- Fix: [NewGRF] helicopters are correctly recognized
|
||||
- Fix: [Autoreplace] made sure that planes only show planes in replace GUI and helicopters only show helicopters
|
||||
- Fix: Crash when generating tropical maps
|
||||
- Fix: [Autoreplace] Cheaters can no longer exploit autoreplace to get vehicles, that's not invented yet
|
||||
- Fix: [Autoreplace] Fixed a stupid bug introduced in r1687, that made a crash if anybody tried to autoreplace anything but an aircraft
|
||||
- Fix: Expand railroad stations beyond maximum spread
|
||||
- Fix: [Autoreplace] Fixed a typo that could prevent autoreplaced aircraft from automatically go to a hangar
|
||||
- Fix: [Autoreplace] fixed a typo that could prevent autoreplaced aircraft from automatically go to a hangar
|
||||
- Fix: Hacked clients can no longer be used to build vehicles that are not available yet
|
||||
- Fix: Minimum profit of vehicles was calculated wrong for Performance Rating
|
||||
- Fix: No longer a station where you only unload is bad for your town-rating
|
||||
@@ -2276,38 +2023,38 @@
|
||||
|
||||
0.3.6 (2005-01-24)
|
||||
------------------------------------------------------------------------
|
||||
- Feature: Resizable windows. All useful windows are already made resizable
|
||||
- Feature: Highscore chart (accessible from the difficulty window) with top5 companies for a given difficulty (select the difficulty in the menu)
|
||||
- Feature: Endgame score on 1 jan 2051 where you are added to the highscore if sufficiently large points have been accumulated. Game is paused while
|
||||
- Feature: resizable windows. All useful windows are already made resizable
|
||||
- Feature: highscore chart (accessible from the difficulty window) with top5 companies for a given difficulty (select the difficulty in the menu)
|
||||
- Feature: endgame score on 1 jan 2051 where you are added to the highscore if sufficiently large points have been accumulated. Game is paused while
|
||||
- Feature: Visually enhanced autorail placing
|
||||
- Feature: Autoreplace Vehicles (accessible from the vehicle lists)
|
||||
- Feature: A counter to tell how many engines you have of each type to the autoreplace vehicle windows
|
||||
- Feature: A display for the total map population to the town display
|
||||
- Feature: [Network] RCon (Remote console)
|
||||
- Feature: Hotkeys for dock and airport toolbar (see http://wiki.openttd.org/index.php/Hotkeys)
|
||||
- Feature: [Network] Banning system (mostly tnx to guru3) A server can ban people via ClientList using 'ban', 'unban', 'banlist'
|
||||
- Feature: [Network] Server can now pause and unpause a game through the console. Use 'pause' and 'unpause'
|
||||
- Feature: [network] RCon (Remote console)
|
||||
- Feature: hotkeys for dock and airport toolbar (see http://wiki.openttd.org/index.php/Hotkeys)
|
||||
- Feature: [Network] banning system (mostly tnx to guru3) A server can ban people via ClientList using 'ban', 'unban', 'banlist'
|
||||
- Feature: [Network] server can now pause and unpause a game through the console. Use 'pause' and 'unpause'
|
||||
- Feature: [OS/2] OS/2 support is now finished (Fixes for networking, file selection, keyboard input, plus many other minor issues)
|
||||
- Feature: [SDL] Show revision number in window title
|
||||
- Feature: [Unix] Check which gcc version is present and only set available compiler flags
|
||||
- Feature: [Windows] CTRL+V (Paste) now works on all editboxes. This includes 'Add Server', chat, etc
|
||||
- Feature: [Windows] Dedicated server is now functioning correctly
|
||||
- Feature: [Windows] dedicated server is now functioning correctly
|
||||
- Feature: Addded keyboard shortcuts for the order window
|
||||
- Feature: Aircraft refit options have been restricted to 'sane' values
|
||||
- Feature: Allows setting the production values of the rawmaterial producing industries in the editor
|
||||
- Feature: Console support for loading maps. Use 'load', 'list_files' and 'goto_dir' to navigate and load games
|
||||
- Feature: allows setting the production values of the rawmaterial producing industries in the editor
|
||||
- Feature: console support for loading maps. Use 'load', 'list_files' and 'goto_dir' to navigate and load games
|
||||
- Feature: Display server port in the multiplayer game info window
|
||||
- Feature: Dynamite in landscaping toolbar (hotkey 'D')
|
||||
- Feature: dynamite in landscaping toolbar (hotkey 'D')
|
||||
- Feature: Improved Network Lobby GUI with a green dot if company income is positive (else red dot) and lock icon if company is password protected
|
||||
- Feature: Make ottd compile on Zeta
|
||||
- Feature: MD5 hash check for TTD files
|
||||
- Feature: New companies receive a 5-year protection period against buying-up
|
||||
- Feature: Norwegian townnames
|
||||
- Feature: norwegian townnames
|
||||
- Feature: Order Checking is only execute for ONE vehicle in an order-share system
|
||||
- Feature: Passengers aircraft now ignore the amount of mail for 'full load any' options
|
||||
- Feature: Place multiple accepting industies nearby in the editor mode if the appropriate patches are set
|
||||
- Feature: Population in label of the town (patch setting)
|
||||
- Feature: Scrolling credits list (in alphabetical order)
|
||||
- Feature: place multiple accepting industies nearby in the editor mode if the appropriate patches are set
|
||||
- Feature: population in label of the town (patch setting)
|
||||
- Feature: scrolling credits list (in alphabetical order)
|
||||
- Feature: Train window now shows the number of vehicles per row
|
||||
- Feature: Swiss town-names [SF#1039061]
|
||||
- Feature: Adding 16:10 resolutions for mainly laptops [SF#1090950]
|
||||
@@ -2322,78 +2069,78 @@
|
||||
- Fix: Slopes under high bridges were not flooded [SF#1090495]
|
||||
- Fix: In scenario editor, when trees are placed randomly, they are no longer placed on farmland [SF#1092473]
|
||||
- Fix: On create, the scrollbar of the server-list was not updated [SF#1092661]
|
||||
- Fix: Placing rocks in scenario editor. You can place rocks on trees and vice versa [SF#1092707]
|
||||
- Fix: placing rocks in scenario editor. You can place rocks on trees and vice versa [SF#1092707]
|
||||
- Fix: Drive side in new games. Setting the driver side is possible during the game until someone buys road vehicles. In networked games only the server can change it [SF#1093200]
|
||||
- Fix: No more glitches with many maps in the scenario list when creating server [SF#1093466]
|
||||
- Fix: no more glitches with many maps in the scenario list when creating server [SF#1093466]
|
||||
- Fix: Dissappearing rocks in Scenario Editor [SF#1093485]
|
||||
- Fix: Toolbars accessible via keyboard in spectator mode [SF#1094092]
|
||||
- Fix: When all stations in an aircraft's order list are demolished, the plane eventually crashes (running out of fuel) [SF#1095020]
|
||||
- Fix: Servers list now also saves the port [SF#1095143]
|
||||
- Fix: Crash when all vehicles from a vehicles per station list had been removed [SF#1098553]
|
||||
- Fix: Starting year patch goes out of range. Clamped year between 1920-2090 [SF#1099101]
|
||||
- Fix: starting year patch goes out of range. Clamped year between 1920-2090 [SF#1099101]
|
||||
- Fix: Bug Fix - Vehicle Lists not updated at Acqusition [SF#1099225]
|
||||
- Fix: Game crashes after the click on Rename (see also Bug 10992). There was no check for non-selected engine [SF#1099451]
|
||||
- Fix: Wrong tooltip for place desert button [SF#1100736]
|
||||
- Fix: Fast forward in main menu [SF#1100767]
|
||||
- Fix: wrong tooltip for place desert button [SF#1100736]
|
||||
- Fix: fast forward in main menu [SF#1100767]
|
||||
- Fix: Crash if generating land while industry window is open. This also happened for towns and the land information window [SF#1101179]
|
||||
- Fix: Configure Patches window text overflow [SF#1101906]
|
||||
- Fix: Console in dedicated server [SF#1101963]
|
||||
- Fix: console in dedicated server [SF#1101963]
|
||||
- Fix: Game crashed when clicking 'new face' or 'company color' twice [SF#1102275]
|
||||
- Fix: Vehicle lists are now redrawn when a vehicle arrives in a depot. Station-specific vehicle lists are now redrawn daily as well (not only the master list) [SF#1099535, SF#1102776]
|
||||
- Fix: Font size changing. Dedicated server did not have code filtering, 'tab' could result in bigger fonts [SF#1103113]
|
||||
- Fix: font size changing. Dedicated server did not have code filtering, 'tab' could result in bigger fonts [SF#1103113]
|
||||
- Fix: Order Check messages are now validated before displayed [SF#1103187]
|
||||
- Fix: Railroad tracks on slopes were not flooded [SF#1103301]
|
||||
- Fix: Crashed trains do not initiate the lost vehicle message anymore [SF#1104350]
|
||||
- Fix: On horizontal/vertical tracks you are also charged for building/removing signals on the parallel track on the same tile [SF#110452]
|
||||
- Fix: Aircraft in hangar messages are now revalidated before display [SF#1104969]
|
||||
- Fix: Destroyed train locks crossings [SF#1105112]
|
||||
- Fix: Upgrade rail fails when train under bridge [SF#1105281]
|
||||
- Fix: upgrade rail fails when train under bridge [SF#1105281]
|
||||
- Fix: Trains do not think they're on a slope any more while they drive around in a tunnel [SF#1105959]
|
||||
- Fix: Buoys can now only be removed if no ship has it in their schedule. (This makes buoys more useable in multiplayer games again, as buoys cannot be deleted by other players if they are used.) [SF#1105963]
|
||||
- Fix: Graph's keys get confused [SF#1106354]
|
||||
- Fix: Placing signals with 2x1 drags is treated as placing a single signal [SF#1106930]
|
||||
- Fix: Console ignoring return character occasionally [SF#1107350]
|
||||
- Fix: placing signals with 2x1 drags is treated as placing a single signal [SF#1106930]
|
||||
- Fix: console ignoring return character occasionally [SF#1107350]
|
||||
- Fix: Scenario creation bug; engines are of correct year when scenario is saved [SF#1108008]
|
||||
- Fix: Little red box in scenario editor [SF#1092474]
|
||||
- Fix: Scrolling through console sometimes crashed the whole game [SF#1099197]
|
||||
- Fix: little red box in scenario editor [SF#1092474]
|
||||
- Fix: scrolling through console sometimes crashed the whole game [SF#1099197]
|
||||
- Fix: Catchment area with drag&drop stations [SF#1099209]
|
||||
- Fix: [Network] 'kick 1' did crash dedicated servers
|
||||
- Fix: [Network] A server no longer crashes when a client sends an invalid DoCommand, but drops the client instead
|
||||
- Fix: [Network] Added packet protection. No longer a client or server
|
||||
- Fix: [Network] Bug in bind system. Advertising failed on systems with more then 1 ip, and server_bind active to one of them
|
||||
- Fix: [Network] Disabled 'money-cheat' (read: bug which could give people a lot of money)
|
||||
- Fix: [SDL] Now the binary never links to SDL if DEDICATED is set
|
||||
- Fix: [Windows] Somehow mousewheel was disabled on windows using SDL; reenabled again
|
||||
- Fix: A modified client could try to replace a vehicle to an invalid engine ID and crash the server
|
||||
- Fix: Autoreplace vehicle lists are now redrawn when a new vehicle becomes available
|
||||
- Fix: [SDL] now the binary never links to SDL if DEDICATED is set
|
||||
- Fix: [Windows] somehow mousewheel was disabled on windows using SDL; reenabled again
|
||||
- Fix: a modified client could try to replace a vehicle to an invalid engine ID and crash the server
|
||||
- Fix: autoreplace vehicle lists are now redrawn when a new vehicle becomes available
|
||||
- Fix: Buy Vehicle GUI now shows HPs bigger than 32000 correctly
|
||||
- Fix: Console alias, load_game functionality and load fix
|
||||
- Fix: Correct error message for when trying to build a railroad station over a bus/truck/etc-station
|
||||
- Fix: correct error message for when trying to build a railroad station over a bus/truck/etc-station
|
||||
- Fix: Correct landscaping buttons in monorail and maglev toolbars
|
||||
- Fix: Dedicated server also writes to log file if active
|
||||
- Fix: dedicated server also writes to log file if active
|
||||
- Fix: Desert-landscape does no longer crash
|
||||
- Fix: Expand town is a bit more agressive
|
||||
- Fix: Finally zooming in/out always works
|
||||
- Fix: Fixed chat-bug (that from a certain moment, nobody could talk)
|
||||
- Fix: Fixed weight for double-head trains and with that the acceleration (now maglev lvl4 can reach their top speed, and are faster than lvl3)
|
||||
- Fix: finally zooming in/out always works
|
||||
- Fix: fixed chat-bug (that from a certain moment, nobody could talk)
|
||||
- Fix: fixed weight for double-head trains and with that the acceleration (now maglev lvl4 can reach their top speed, and are faster than lvl3)
|
||||
- Fix: Full-Loading trains no longer get 'lost' after a while
|
||||
- Fix: Graphs were not updated correctly when one graph with a certain selection was already open and another graph window was opened
|
||||
- Fix: In multiplayer clientlist can only be opened once
|
||||
- Fix: in multiplayer clientlist can only be opened once
|
||||
- Fix: Loan does not count against the company value
|
||||
- Fix: Nasty bug where one could build one station OVER the other
|
||||
- Fix: nasty bug where one could build one station OVER the other
|
||||
- Fix: No crash when creating a game with New English town names any more
|
||||
- Fix: Now helicopters will use a hangar in schedule to be replaced in, even if they are only set to service there. Since helicopters are serviced at helipads, they will only go there if they needs to be replaced or renewed. They will also use a hangar in an airport in the schedule if needed
|
||||
- Fix: Only a server can rename a town in a MP game
|
||||
- Fix: Really old maps do load again
|
||||
- Fix: now helicopters will use a hangar in schedule to be replaced in, even if they are only set to service there. Since helicopters are serviced at helipads, they will only go there if they needs to be replaced or renewed. They will also use a hangar in an airport in the schedule if needed
|
||||
- Fix: only a server can rename a town in a MP game
|
||||
- Fix: really old maps do load again
|
||||
- Fix: Refit engine button is now disabled when cargo capacity equals zero
|
||||
- Fix: Server issue where some company names were wrong
|
||||
- Fix: server issue where some company names were wrong
|
||||
- Fix: Ship Vehicle Lists are now redrawn correctly
|
||||
- Fix: Signal stays red if a track is removed
|
||||
- Fix: Solve AI related order-problem
|
||||
- Fix: Starting openttd with -g <invalid_name> now acts normal
|
||||
- Fix: signal stays red if a track is removed
|
||||
- Fix: solve AI related order-problem
|
||||
- Fix: starting openttd with -g <invalid_name> now acts normal
|
||||
- Fix: The cost for an autorenew was not always send to the right player ;)
|
||||
- Fix: Autorenewing multiheaded train engines now costs the correct amount. Used to be twice the correct price
|
||||
- Fix: The scrollbar in the network gui (server list) now updates when scrolling
|
||||
- Fix: the scrollbar in the network gui (server list) now updates when scrolling
|
||||
- Fix: Train crashes should no longer desync the game
|
||||
- Fix: When deleting an order, the next pointer was not cleared, resulting in some unusual behavoir from time to time
|
||||
- Fix: You can now also delete automatically found servers by pressing 'del'
|
||||
@@ -2419,7 +2166,7 @@
|
||||
- Feature: Game compiles under BEOS_SERVER
|
||||
- Feature: Game compiles under OS/2 (no network-support)
|
||||
- Feature: OpenTTD runs with the grf files of the DOS version
|
||||
- Feature: [Big Endian computers, which are mac and MorphOS] Load savegames by TTD(Patch)
|
||||
- Feature: [Big Endian computers, which are mac and MorphOS]: are able to load savegames by TTD(Patch)
|
||||
- Add: 'l' openes the landscaping toolbar globally
|
||||
- Add: Make the town sometimes build streets on slopes
|
||||
- Add: Manpage
|
||||
@@ -2443,7 +2190,7 @@
|
||||
- Fix: Saving or loading a map doesnt pauses the game anymore
|
||||
- Fix: Some bridge part is not displayed transparent in transparent mode
|
||||
- Fix: Starting with -r option allows all resolutions
|
||||
- Fix: The pathfinder no longer sees rail with another owner as a possible route
|
||||
- Fix: The pathfinder no longer sees rail with an other owner as a possible route
|
||||
- Fix: Unable to select other screenshot format in Game Option
|
||||
- Fix: Unwanted town renaming
|
||||
- Fix: Vehicles slow down under bridge if the track is on a foundation
|
||||
@@ -2587,10 +2334,10 @@
|
||||
- Fix: [Makefile] Fixed issue where sdl-config was needed even on systems without SDL
|
||||
- Fix: [SDL] Performance fix fo palette animation and mouse jumping
|
||||
- Fix: [SDL] Same resolution was displayed more than once in game options
|
||||
- Fix: [SDL] Smoother mouse and performance fix, like in the Windows video driver
|
||||
- Fix: [SDL] Smoother mouse and performance fix, like in Win32
|
||||
- Fix: Wrong trains you can buy with scenarios [SF#963056]
|
||||
- Fix: Minimap crash [SF#972087]
|
||||
- Fix: Bug in 'weird non-uniform stations handling' [SF#972247]
|
||||
- Fix: Bug in '[a] weird non-uniform stations handling' [SF#972247]
|
||||
- Fix: Parent_list was too small [SF#976583]
|
||||
- Fix: Memoryleak in parent_list [SF#981934]
|
||||
- Fix: Max_loan in editor bug [SF#982666]
|
||||
@@ -2617,8 +2364,8 @@
|
||||
- Fix: Scenario editor pause bug [SF#1007630]
|
||||
- Fix: Signals not updated after ClearTunnel Bug [SF#1008605, SF#985920]
|
||||
- Fix: Too many save games prevented loading [SF#1009385]
|
||||
- Fix: Problem with transferred cargo crashes game [SF#1009567]
|
||||
- Fix: Build in pause is now a cheat instead of a patch [SF#1009621]
|
||||
- Fix: problem with transferred cargo crashes game [SF#1009567]
|
||||
- Fix: build in pause is now a cheat instead of a patch [SF#1009621]
|
||||
- Fix: Wrong multihead selling [SF#1009631]
|
||||
- Fix: Turning on the magic bulldozer removes oil rigs [SF#1010833]
|
||||
- Fix: Drunk pilot [SF#1012086]
|
||||
@@ -2654,7 +2401,7 @@
|
||||
- Feature: Added support for 64 bit CPUs
|
||||
- Feature: Added water quantity level 'very low', which is the default for easy mode now
|
||||
- Feature: Realistic acceleration turned on, train must first slow down and stop before it can reverse
|
||||
- Feature: [MorphOS] Various small improvement to make the the game feel more native
|
||||
- Feature: [MorphOS]: Various small improvement to make the the game feel more native
|
||||
- Feature: Alt + f now toggles full screen (alt + enter still works)
|
||||
- Feature: [OSX] Command + q shows the quit window and command + f or enter toggles full screen (alt and control still works too)
|
||||
- Feature: Autorenew, autorenews vehicles if enabled
|
||||
@@ -2891,11 +2638,11 @@
|
||||
- Feature: Clicking on the money brings up finances
|
||||
- Feature: [OSX] Distribution now uses Apples package system for easier updates
|
||||
- Feature: [OSX] Application is now a proper bundle application
|
||||
- Change: [Windows] Use save/ as save folder
|
||||
- Change: Use save/ as save folder on win32
|
||||
- Change: Moved date in news window
|
||||
- Change: Do not check if tiles around the clicked station is a station in order gui
|
||||
- Change: Keep checkpoint button down after placing
|
||||
- Change: [Windows] Moved disk devices to bottom of list
|
||||
- Change: Moved disk devices to bottom of list on win32
|
||||
- Change: Changed speedkey from Shift to Tab
|
||||
- Change: Enhanced patches window with pages
|
||||
- Change: Do not slow down trains as much on hills
|
||||
@@ -2958,7 +2705,7 @@
|
||||
- Feature: Road and rail removal by dragging a selection
|
||||
- Feature: News item for 'train is unprofitable'
|
||||
- Feature: News item for 'train is lost'
|
||||
- Feature: [Windows] Double size mode (Ctrl-d to toggle)
|
||||
- Feature: [Win32] Double size mode (Ctrl-d to toggle)
|
||||
- Feature: 'Multiple similar industries in close proximity' option
|
||||
- Feature: 'Multiple industries per down' option
|
||||
- Feature: 'Crossing tunnels' option
|
||||
@@ -3002,7 +2749,7 @@
|
||||
|
||||
0.1.4 (2004-03-25)
|
||||
------------------------------------------------------------------------
|
||||
- Feature: Crash submit system on Windows
|
||||
- Feature: Crash submit system on win32
|
||||
- Feature: Autosave
|
||||
- Feature: In-game resolution selection via settings window
|
||||
- Feature: Dutch town names
|
||||
@@ -3065,8 +2812,8 @@
|
||||
|
||||
0.1.2 (2004-03-15)
|
||||
------------------------------------------------------------------------
|
||||
- Feature: Mouse wheel can be used to zoom in out on Windows
|
||||
- Feature: Implemented some support for resizing the window dynamically in Windows
|
||||
- Feature: Mouse wheel can be used to zoom in out on win32
|
||||
- Feature: Implemented some support for resizing the window dynamically in win32
|
||||
- Fix: Tunnel mouse icon for maglev and monorail
|
||||
|
||||
|
||||
@@ -3076,7 +2823,7 @@
|
||||
- Feature: Center windows properly in higher resolutions
|
||||
- Feature: Command line -g flag now optionally takes a game to load
|
||||
- Add: External MIDI driver for Unix version
|
||||
- Add: DirectMusic driver for Windows version
|
||||
- Add: DirectMusic driver for Win32 version
|
||||
- Add: 'build tracks on slopes' feature
|
||||
- Fix: Problem where directories were not displayed under Linux
|
||||
- Fix: Colors in map window for routes
|
||||
|
550
config.lib
@@ -1,9 +1,3 @@
|
||||
# $Id$
|
||||
|
||||
# This file is part of OpenTTD.
|
||||
# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
# OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
log() {
|
||||
if [ $1 = "1" ]; then echo "$2"; fi
|
||||
@@ -11,7 +5,7 @@ log() {
|
||||
}
|
||||
|
||||
set_default() {
|
||||
released_version="1.0.0-beta3"
|
||||
released_version="0.7.4"
|
||||
|
||||
ignore_extra_parameters="0"
|
||||
# We set all kinds of defaults for params. Later on the user can override
|
||||
@@ -48,14 +42,13 @@ set_default() {
|
||||
enable_debug="0"
|
||||
enable_desync_debug="0"
|
||||
enable_profiling="0"
|
||||
enable_lto="0"
|
||||
enable_dedicated="0"
|
||||
enable_network="1"
|
||||
enable_static="1"
|
||||
enable_translator="0"
|
||||
enable_unicode="1"
|
||||
enable_assert="1"
|
||||
enable_strip="0"
|
||||
enable_assert="0"
|
||||
enable_strip="1"
|
||||
enable_universal="1"
|
||||
enable_osx_g5="0"
|
||||
enable_cocoa_quartz="1"
|
||||
@@ -67,10 +60,8 @@ set_default() {
|
||||
with_sdl="1"
|
||||
with_cocoa="1"
|
||||
with_zlib="1"
|
||||
with_lzo2="1"
|
||||
with_png="1"
|
||||
enable_builtin_depend="1"
|
||||
with_makedepend="0"
|
||||
with_makedepend="1"
|
||||
with_direct_music="1"
|
||||
with_sort="1"
|
||||
with_iconv="1"
|
||||
@@ -119,7 +110,6 @@ set_default() {
|
||||
enable_debug
|
||||
enable_desync_debug
|
||||
enable_profiling
|
||||
enable_lto
|
||||
enable_dedicated
|
||||
enable_network
|
||||
enable_static
|
||||
@@ -137,9 +127,7 @@ set_default() {
|
||||
with_sdl
|
||||
with_cocoa
|
||||
with_zlib
|
||||
with_lzo2
|
||||
with_png
|
||||
enable_builtin_depend
|
||||
with_makedepend
|
||||
with_direct_music
|
||||
with_sort
|
||||
@@ -155,7 +143,7 @@ set_default() {
|
||||
with_threads
|
||||
with_distcc
|
||||
with_ccache
|
||||
CC CXX CFLAGS CXXFLAGS LDFLAGS"
|
||||
CC CXX CFLAGS LDFLAGS"
|
||||
}
|
||||
|
||||
detect_params() {
|
||||
@@ -268,10 +256,6 @@ detect_params() {
|
||||
--enable-desync-debug=*) enable_desync_debug="$optarg";;
|
||||
--enable-profiling) enable_profiling="1";;
|
||||
--enable-profiling=*) enable_profiling="$optarg";;
|
||||
--enable-lto) enable_lto="1";;
|
||||
--enable-lto=*) enable_lto="$optarg";;
|
||||
--enable-ipo) enable_lto="1";;
|
||||
--enable-ipo=*) enable_lto="$optarg";;
|
||||
--enable-dedicated) enable_dedicated="1";;
|
||||
--enable-dedicated=*) enable_dedicated="$optarg";;
|
||||
--enable-network=*) enable_network="$optarg";;
|
||||
@@ -321,13 +305,6 @@ detect_params() {
|
||||
--without-zlib) with_zlib="0";;
|
||||
--with-zlib=*) with_zlib="$optarg";;
|
||||
|
||||
--with-lzo2) with_lzo2="2";;
|
||||
--without-lzo2) with_lzo2="0";;
|
||||
--with-lzo2=*) with_lzo2="$optarg";;
|
||||
--with-liblzo2) with_lzo2="2";;
|
||||
--without-liblzo2) with_lzo2="0";;
|
||||
--with-liblzo2=*) with_lzo2="$optarg";;
|
||||
|
||||
--with-png) with_png="2";;
|
||||
--without-png) with_png="0";;
|
||||
--with-png=*) with_png="$optarg";;
|
||||
@@ -368,10 +345,6 @@ detect_params() {
|
||||
--without-psp-config) with_psp_config="0";;
|
||||
--with-psp-config=*) with_psp_config="$optarg";;
|
||||
|
||||
--disable-builtin-depend) enable_builtin_depend="0";;
|
||||
--enable-builtin-depend) enable_builtin_depend="2";;
|
||||
--enable-builtin-depend=*) enable_builtin_depend="$optarg";;
|
||||
|
||||
--with-makedepend) with_makedepend="2";;
|
||||
--without-makedepend) with_makedepend="0";;
|
||||
--with-makedepend=*) with_makedepend="$optarg";;
|
||||
@@ -414,7 +387,6 @@ detect_params() {
|
||||
CC=* | --CC=*) CC="$optarg";;
|
||||
CXX=* | --CXX=*) CXX="$optarg";;
|
||||
CFLAGS=* | --CFLAGS=*) CFLAGS="$optarg";;
|
||||
CXXFLAGS=* | --CXXFLAGS=*) CXXFLAGS="$optarg";;
|
||||
LDFLAGS=* | --LDFLAGS=*) LDFLAGS="$optarg";;
|
||||
|
||||
--ignore-extra-parameters) ignore_extra_parameters="1";;
|
||||
@@ -480,10 +452,10 @@ check_params() {
|
||||
log 1 " PREPROCESSOR is only available for OSX"
|
||||
exit 1
|
||||
fi
|
||||
# OS only allows DETECT, UNIX, OSX, FREEBSD, OPENBSD, MORPHOS, BEOS, HAIKU, SUNOS, CYGWIN, MINGW, OS2, DOS, WINCE, and PSP
|
||||
if [ -z "`echo $os | egrep '^(DETECT|UNIX|OSX|FREEBSD|OPENBSD|NETBSD|HPUX|MORPHOS|BEOS|HAIKU|SUNOS|CYGWIN|MINGW|OS2|DOS|WINCE|PSP)$'`" ]; then
|
||||
# OS only allows DETECT, UNIX, OSX, FREEBSD, OPENBSD, MORPHOS, BEOS, SUNOS, CYGWIN, MINGW, OS2, DOS, WINCE, and PSP
|
||||
if [ -z "`echo $os | egrep '^(DETECT|UNIX|OSX|FREEBSD|OPENBSD|NETBSD|HPUX|MORPHOS|BEOS|SUNOS|CYGWIN|MINGW|OS2|DOS|WINCE|PSP)$'`" ]; then
|
||||
log 1 "configure: error: invalid option --os=$os"
|
||||
log 1 " Available options are: --os=[DETECT|UNIX|OSX|FREEBSD|OPENBSD|NETBSD|HPUX|MORPHOS|BEOS|HAIKU|SUNOS|CYGWIN|MINGW|OS2|DOS|WINCE|PSP]"
|
||||
log 1 " Available options are: --os=[DETECT|UNIX|OSX|FREEBSD|OPENBSD|NETBSD|HPUX|MORPHOS|BEOS|SUNOS|CYGWIN|MINGW|OS2|DOS|WINCE|PSP]"
|
||||
exit 1
|
||||
fi
|
||||
# cpu_type can be either 32 or 64
|
||||
@@ -525,11 +497,7 @@ check_params() {
|
||||
if [ "$enable_universal" = "0" ]; then
|
||||
log 1 "checking universal build... no"
|
||||
else
|
||||
if [ "$enable_universal" = "64" ]; then
|
||||
log 1 "checking universal build... yes (including 64 bits)"
|
||||
else
|
||||
log 1 "checking universal build... yes (without 64 bits)"
|
||||
fi
|
||||
log 1 "checking universal build... yes"
|
||||
fi
|
||||
|
||||
# Already detected by check_build
|
||||
@@ -545,14 +513,6 @@ check_params() {
|
||||
log 1 "checking strip... disabled"
|
||||
fi
|
||||
check_lipo
|
||||
|
||||
if [ "$enable_builtin_depend" != "0" ]; then
|
||||
log 1 "checking builtin depend... yes"
|
||||
makedepend="\$(SRC_OBJS_DIR)/\$(DEPEND)"
|
||||
else
|
||||
log 1 "checking builtin depend... no"
|
||||
fi
|
||||
|
||||
check_makedepend
|
||||
detect_cputype
|
||||
|
||||
@@ -611,70 +571,6 @@ check_params() {
|
||||
sleep 5
|
||||
fi
|
||||
|
||||
if [ "$enable_lto" != "0" ]; then
|
||||
has_lto=`($cxx_build -dumpspecs 2>&1 | grep '\%{flto}') || ($cxx_build -help ipo 2>&1 | grep '\-ipo')`
|
||||
if [ -n "$has_lto" ]; then
|
||||
log 1 "using link time optimization... yes"
|
||||
else
|
||||
enable_lto="0"
|
||||
log 1 "using link time optimization... no"
|
||||
log 1 "WARNING: you selected link time optimization but it is not found."
|
||||
sleep 5
|
||||
fi
|
||||
else
|
||||
log 1 "using link time optimization... no"
|
||||
fi
|
||||
|
||||
|
||||
if [ "$os" != "OSX" ] && [ "$with_osx_sysroot" != "0" ]; then
|
||||
if [ "$with_osx_sysroot" = "1" ]; then
|
||||
with_osx_sysroot="0"
|
||||
|
||||
log 1 "checking OSX sysroot... not OSX, skipping"
|
||||
else
|
||||
log 1 "configure: error: --with-osx-sysroot only works if OSX is the target"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$with_osx_sysroot" != "0" ]; then
|
||||
if [ "$enable_universal" = "0" ] && [ "$with_osx_sysroot" != "1" ] && [ "$with_osx_sysroot" != "2" ]; then
|
||||
# Sysroot manually specified? Check for usability
|
||||
log 1 "checking OSX sysroot... $with_osx_sysroot"
|
||||
if ! check_osx_sdk "$with_osx_sysroot"; then
|
||||
log 1 "Passed sysroot not found/not functional"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
# If autodetect and no universal, use system default
|
||||
if [ "$with_osx_sysroot" = "1" ] && [ "$enable_universal" = "0" ]; then
|
||||
log 1 "checking OSX sysroot... no (use system default)"
|
||||
else
|
||||
log 1 "checking OSX sysroot... automatically"
|
||||
detect_osx_sdk
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$osx_sdk_path" ]; then
|
||||
if [ "$enable_universal" != "0" ]; then
|
||||
if [ -z "$osx_sdk_104_path" ]; then
|
||||
log 1 "WARNING: Could not find a usable 10.4u SDK, the resulting"
|
||||
log 1 "WARNING: binary will only run on OSX 10.5 or later"
|
||||
osx_sdk_104_path="$osx_sdk_path"
|
||||
fi
|
||||
OSX_SYSROOT="-isysroot $osx_sdk_104_path"
|
||||
OSX_LD_SYSROOT="-Wl,-syslibroot,$osx_sdk_104_path"
|
||||
else
|
||||
OSX_SYSROOT="-isysroot $osx_sdk_path"
|
||||
OSX_LD_SYSROOT="-Wl,-syslibroot,$osx_sdk_path"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
if [ "$os" = "OSX" ]; then
|
||||
log 1 "checking OSX sysroot... no (use system default)"
|
||||
fi
|
||||
fi
|
||||
|
||||
detect_allegro
|
||||
detect_sdl
|
||||
detect_cocoa
|
||||
@@ -753,22 +649,6 @@ check_params() {
|
||||
fi
|
||||
fi
|
||||
|
||||
pre_detect_with_lzo2=$with_lzo2
|
||||
detect_lzo2
|
||||
|
||||
if [ "$with_lzo2" = "0" ] || [ -z "$lzo2" ]; then
|
||||
log 1 "WARNING: liblzo2 was not detected or disabled"
|
||||
log 1 "WARNING: OpenTTD doesn't require liblzo2, but it does mean that"
|
||||
log 1 "WARNING: loading old savegames/scenarios will be disabled."
|
||||
if [ "$pre_detect_with_lzo2" = "0" ]; then
|
||||
log 1 "WARNING: We strongly suggest you to install liblzo2."
|
||||
else
|
||||
log 1 "configure: error: no liblzo2 detected"
|
||||
log 1 " If you want to compile without liblzo2 use --without-liblzo2 as parameter"
|
||||
exit
|
||||
fi
|
||||
fi
|
||||
|
||||
detect_png
|
||||
detect_freetype
|
||||
detect_fontconfig
|
||||
@@ -893,6 +773,36 @@ check_params() {
|
||||
with_threads="0"
|
||||
fi
|
||||
|
||||
if [ "$os" != "OSX" ] && [ "$with_osx_sysroot" != "0" ]; then
|
||||
if [ "$with_osx_sysroot" = "1" ]; then
|
||||
with_osx_sysroot="0"
|
||||
|
||||
log 1 "checking OSX sysroot... not OSX, skipping"
|
||||
else
|
||||
log 1 "configure: error: --with-osx-sysroot only works if OSX is the target"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$with_osx_sysroot" != "0" ]; then
|
||||
if [ "$enable_universal" = "0" ] && [ "$with_osx_sysroot" != "1" ] && [ "$with_osx_sysroot" != "2" ]; then
|
||||
log 1 "checking OSX sysroot... $with_osx_sysroot"
|
||||
else
|
||||
# If autodetect and no universal, use system default
|
||||
if [ "$with_osx_sysroot" = "1" ] && [ "$enable_universal" = "0" ]; then
|
||||
log 1 "checking OSX sysroot... no (use system default)"
|
||||
with_osx_sysroot="0"
|
||||
else
|
||||
log 1 "checking OSX sysroot... automatically"
|
||||
with_osx_sysroot="3"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
if [ "$os" = "OSX" ]; then
|
||||
log 1 "checking OSX sysroot... no (use system default)"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$os" != "OSX" ] && [ "$with_application_bundle" != "0" ]; then
|
||||
if [ "$with_application_bundle" = "1" ]; then
|
||||
with_application_bundle="0"
|
||||
@@ -911,6 +821,7 @@ check_params() {
|
||||
fi
|
||||
|
||||
if [ "$os" = "OSX" ]; then
|
||||
check_osx_sdk
|
||||
# Test on G5
|
||||
|
||||
if [ "$enable_osx_g5" != "0" ]; then
|
||||
@@ -1057,6 +968,8 @@ check_params() {
|
||||
menu_dir="`echo $menu_dir | sed 's@\([^\]\)\\\\ @\1\\\\\\\\ @g;s@\([^\]\) @\1\\\\\\\\ @g'`"
|
||||
fi
|
||||
|
||||
# "set_universal_binary_flags" needs to be before "detect_iconv"
|
||||
set_universal_binary_flags
|
||||
detect_iconv
|
||||
|
||||
if [ -n "$personal_dir" ]
|
||||
@@ -1106,40 +1019,23 @@ make_compiler_cflags() {
|
||||
# Params:
|
||||
# $1 - compiler
|
||||
# $2 - the current cflags
|
||||
# $3 - variable to finally write cflags to
|
||||
# $4 - the current cxxflags
|
||||
# $5 - variable to finally write cxxflags to
|
||||
# $6 - the current ldflags
|
||||
# $7 - variable to finally write ldflags to
|
||||
# $3 - variable to finally write to
|
||||
|
||||
flags="$2"
|
||||
cxxflags="$4"
|
||||
ldflags="$6"
|
||||
|
||||
if [ `basename $1 | cut -c 1-3` = "icc" ]; then
|
||||
if [ `echo $1 | cut -c 1-3` = "icc" ]; then
|
||||
# Enable some things only for certain ICC versions
|
||||
cc_version=`$1 -dumpversion | cut -c 1-4 | sed s@\\\.@@g`
|
||||
cc_version=`$1 -dumpversion | cut -c 1-4`
|
||||
|
||||
flags="$flags -rdynamic"
|
||||
ldflags="$ldflags -rdynamic"
|
||||
|
||||
if [ $cc_version -ge 101 ]; then
|
||||
if [ "$cc_version" = "10.1" ]; then
|
||||
flags="$flags -Wno-multichar"
|
||||
fi
|
||||
|
||||
if [ $cc_version -ge 110 ]; then
|
||||
if [ "$cc_version" = "11.0" ]; then
|
||||
# warning 1899: multicharacter character literal (potential portability problem) (e.g. 'FOOD')
|
||||
# vec report defaults to telling where it did loop vectorisation, which is not very important
|
||||
flags="$flags -vec-report=0 -wd873"
|
||||
|
||||
# Use c++0x mode so static_assert() is available
|
||||
cxxflags="$cxxflags -std=c++0x"
|
||||
fi
|
||||
|
||||
has_ipo=`$1 -help ipo | grep '\-ipo'`
|
||||
if [ "$enable_lto" != "0" ] && [ -n "$has_ipo" ]; then
|
||||
# Use IPO (only if we see IPO exists and is requested)
|
||||
flags="$flags -ipo"
|
||||
ldflags="$ldflags -ipo $CFLAGS"
|
||||
flags="$flags -vec-report=0 -wd1899"
|
||||
fi
|
||||
else
|
||||
# Enable some things only for certain GCC versions
|
||||
@@ -1152,6 +1048,8 @@ make_compiler_cflags() {
|
||||
|
||||
flags="$flags -Wall -Wno-multichar -Wsign-compare -Wundef"
|
||||
flags="$flags -Wwrite-strings -Wpointer-arith"
|
||||
flags="$flags -Wno-uninitialized"
|
||||
|
||||
flags="$flags -W -Wno-unused-parameter -Wformat=2"
|
||||
flags="$flags -Wredundant-decls"
|
||||
|
||||
@@ -1166,10 +1064,6 @@ make_compiler_cflags() {
|
||||
# break anything. So disable strict-aliasing to make the
|
||||
# compiler all happy.
|
||||
flags="$flags -fno-strict-aliasing"
|
||||
ldflags="$ldflags -fno-strict-aliasing"
|
||||
# Warn about casting-out 'const' with regular C-style cast.
|
||||
# The preferred way is const_cast<>() which doesn't warn.
|
||||
flags="$flags -Wcast-qual"
|
||||
fi
|
||||
|
||||
if [ $cc_version -ge 42 ]; then
|
||||
@@ -1178,59 +1072,22 @@ make_compiler_cflags() {
|
||||
# sure that they will not happen. It furthermore complains
|
||||
# about it's own optimized code in some places.
|
||||
flags="$flags -fno-strict-overflow"
|
||||
ldflags="$ldflags -fno-strict-overflow"
|
||||
fi
|
||||
|
||||
if [ $cc_version -ge 43 ]; then
|
||||
# Use gnu++0x mode so static_assert() is available.
|
||||
# Don't use c++0x, it breaks mingw (with gcc 4.4.0).
|
||||
cxxflags="$cxxflags -std=gnu++0x"
|
||||
fi
|
||||
|
||||
if [ $cc_version -ge 45 ]; then
|
||||
# Only GCC 4.5+ has (possibly) LTO
|
||||
has_lto=`$1 -dumpspecs | grep '\%{flto}'`
|
||||
if [ "$enable_lto" != "0" ] && [ -n "$has_lto" ]; then
|
||||
# Use LTO only if we see LTO exists and is requested
|
||||
flags="$flags -flto"
|
||||
ldflags="$ldflags -flto $2"
|
||||
fi
|
||||
fi
|
||||
|
||||
has_rdynamic=`$1 -dumpspecs | grep rdynamic`
|
||||
if [ -n "$has_rdynamic" ]; then
|
||||
# rdynamic is used to get useful stack traces from crash reports.
|
||||
flags="$flags -rdynamic"
|
||||
ldflags="$ldflags -rdynamic"
|
||||
fi
|
||||
fi
|
||||
|
||||
eval "$3=\"$flags\""
|
||||
eval "$5=\"$cxxflags\""
|
||||
eval "$7=\"$ldflags\""
|
||||
}
|
||||
|
||||
make_cflags_and_ldflags() {
|
||||
# General CFlags for BUILD
|
||||
CFLAGS_BUILD=""
|
||||
# Special CXXFlags for BUILD
|
||||
CXXFLAGS_BUILD=""
|
||||
# LDFLAGS for BUILD
|
||||
LDFLAGS_BUILD=""
|
||||
# General CFlags for HOST
|
||||
CFLAGS="$CFLAGS"
|
||||
# Special CXXFlags for HOST
|
||||
CXXFLAGS="$CXXFLAGS"
|
||||
CFLAGS="$CFLAGS -D$os"
|
||||
# Libs to compile. In fact this is just LDFLAGS
|
||||
LIBS="-lstdc++"
|
||||
# LDFLAGS used for HOST
|
||||
LDFLAGS="$LDFLAGS"
|
||||
|
||||
make_compiler_cflags "$cc_build" "$CFLAGS_BUILD" "CFLAGS_BUILD" "$CXXFLAGS_BUILD" "CXXFLAGS_BUILD" "$LDFLAGS_BUILD" "LDFLAGS_BUILD"
|
||||
make_compiler_cflags "$cc_host" "$CFLAGS" "CFLAGS" "$CXXFLAGS" "CXXFLAGS" "$LDFLAGS" "LDFLAGS"
|
||||
|
||||
CFLAGS="$CFLAGS -D$os"
|
||||
|
||||
if [ $enable_debug = 0 ]; then
|
||||
# No debug, add default stuff
|
||||
OBJS_SUBDIR="release"
|
||||
@@ -1244,7 +1101,6 @@ make_cflags_and_ldflags() {
|
||||
fi
|
||||
|
||||
CFLAGS="-O2 -fomit-frame-pointer $CFLAGS"
|
||||
LDFLAGS="-O2 -fomit-frame-pointer $LDFLAGS"
|
||||
fi
|
||||
else
|
||||
OBJS_SUBDIR="debug"
|
||||
@@ -1258,7 +1114,6 @@ make_cflags_and_ldflags() {
|
||||
fi
|
||||
if [ $enable_debug -ge 2 ]; then
|
||||
CFLAGS="$CFLAGS -fno-inline"
|
||||
LDFLAGS="$LDFLAGS -fno-inline"
|
||||
fi
|
||||
if [ $enable_debug -ge 3 ]; then
|
||||
CFLAGS="$CFLAGS -O0"
|
||||
@@ -1276,6 +1131,9 @@ make_cflags_and_ldflags() {
|
||||
CFLAGS="$CFLAGS -DNO_THREADS"
|
||||
fi
|
||||
|
||||
make_compiler_cflags "$cc_build" "$CFLAGS_BUILD" "CFLAGS_BUILD"
|
||||
make_compiler_cflags "$cc_host" "$CFLAGS" "CFLAGS"
|
||||
|
||||
if [ "`echo $1 | cut -c 1-3`" != "icc" ]; then
|
||||
if [ "$os" = "CYGWIN" ]; then
|
||||
flags="$flags -mwin32"
|
||||
@@ -1283,20 +1141,20 @@ make_cflags_and_ldflags() {
|
||||
fi
|
||||
if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ]; then
|
||||
flags="$flags -mno-cygwin"
|
||||
LDFLAGS="$LDFLAGS -mno-cygwin -Wl,--subsystem,windows"
|
||||
LIBS="$LIBS -lws2_32 -lwinmm -lgdi32 -ldxguid -lole32"
|
||||
LDFLAGS="$LDFLAGS -mno-cygwin"
|
||||
fi
|
||||
|
||||
if [ $cc_version -ge 44 ]; then
|
||||
LDFLAGS_BUILD="$LDFLAGS_BUILD -static-libgcc"
|
||||
fi
|
||||
if [ "$os" = "CYGWIN" ] || [ "$os" = "MINGW" ]; then
|
||||
LDFLAGS="$LDFLAGS -Wl,--subsystem,windows"
|
||||
LIBS="$LIBS -lws2_32 -lwinmm -lgdi32 -ldxguid -lole32"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$os" != "CYGWIN" ] && [ "$os" != "HAIKU" ] && [ "$os" != "FREEBSD" ] && [ "$os" != "OPENBSD" ] && [ "$os" != "MINGW" ] && [ "$os" != "MORPHOS" ] && [ "$os" != "OSX" ] && [ "$os" != "DOS" ] && [ "$os" != "WINCE" ] && [ "$os" != "PSP" ] && [ "$os" != "OS2" ]; then
|
||||
if [ "$os" != "CYGWIN" ] && [ "$os" != "FREEBSD" ] && [ "$os" != "OPENBSD" ] && [ "$os" != "MINGW" ] && [ "$os" != "MORPHOS" ] && [ "$os" != "OSX" ] && [ "$os" != "DOS" ] && [ "$os" != "WINCE" ] && [ "$os" != "PSP" ] && [ "$os" != "OS2" ]; then
|
||||
LIBS="$LIBS -lpthread"
|
||||
fi
|
||||
|
||||
if [ "$os" != "CYGWIN" ] && [ "$os" != "HAIKU" ] && [ "$os" != "MINGW" ] && [ "$os" != "DOS" ] && [ "$os" != "WINCE" ]; then
|
||||
if [ "$os" != "CYGWIN" ] && [ "$os" != "MINGW" ] && [ "$os" != "DOS" ] && [ "$os" != "WINCE" ]; then
|
||||
LIBS="$LIBS -lc"
|
||||
fi
|
||||
if [ "$os" = "WINCE" ]; then
|
||||
@@ -1325,42 +1183,17 @@ make_cflags_and_ldflags() {
|
||||
|
||||
if [ "$os" = "OSX" ]; then
|
||||
LDFLAGS="$LDFLAGS -framework Cocoa"
|
||||
if [ "$enable_dedicated" = "0" ] && ([ "$cpu_type" = "32" ] || [ "$enable_universal" != "0" ]); then
|
||||
if [ "$enable_dedicated" = "0" ]; then
|
||||
LIBS="$LIBS -framework QuickTime"
|
||||
else
|
||||
CFLAGS="$CFLAGS -DNO_QUICKTIME"
|
||||
fi
|
||||
|
||||
if [ "$enable_universal" = "0" ]; then
|
||||
# Universal builds set this elsewhere
|
||||
CFLAGS="$OSX_SYSROOT $CFLAGS"
|
||||
LDFLAGS="$OSX_LD_SYSROOT $LDFLAGS"
|
||||
fi
|
||||
|
||||
if [ "$enable_universal" = "0" ] && [ $cc_version -ge 40 ]; then
|
||||
# Only set the min version when not doing an universal build.
|
||||
# Universal builds set the version elsewhere.
|
||||
if [ "$cpu_type" = "64" ]; then
|
||||
CFLAGS="$CFLAGS -mmacosx-version-min=10.5"
|
||||
else
|
||||
gcc_cpu=`$cc_host -dumpmachine`
|
||||
if [ "`echo $gcc_cpu | cut -c 1-3`" = "ppc" -o "`echo $gcc_cpu | cut -c 1-7`" = "powerpc" ]; then
|
||||
# PowerPC build can run on 10.3
|
||||
CFLAGS="$CFLAGS -mmacosx-version-min=10.3"
|
||||
else
|
||||
# Intel is only available starting from 10.4
|
||||
CFLAGS="$CFLAGS -mmacosx-version-min=10.4"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$os" = "BEOS" ] || [ "$os" = "HAIKU" ]; then
|
||||
if [ "$os" = "BEOS" ]; then
|
||||
LIBS="$LIBS -lmidi -lbe"
|
||||
fi
|
||||
|
||||
# Most targets act like UNIX, just with some additions
|
||||
if [ "$os" = "BEOS" ] || [ "$os" = "HAIKU" ] || [ "$os" = "OSX" ] || [ "$os" = "MORPHOS" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ] || [ "$os" = "OS2" ]; then
|
||||
if [ "$os" = "BEOS" ] || [ "$os" = "OSX" ] || [ "$os" = "MORPHOS" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ] || [ "$os" = "OS2" ]; then
|
||||
CFLAGS="$CFLAGS -DUNIX"
|
||||
fi
|
||||
# And others like Windows
|
||||
@@ -1395,7 +1228,7 @@ make_cflags_and_ldflags() {
|
||||
|
||||
if [ "$with_cocoa" != "0" ]; then
|
||||
CFLAGS="$CFLAGS -DWITH_COCOA"
|
||||
LIBS="$LIBS -F/System/Library/Frameworks -framework Cocoa -framework Carbon -framework AudioUnit -framework AudioToolbox"
|
||||
LIBS="$LIBS -F/System/Library/Frameworks -framework Cocoa -framework Carbon -framework AudioUnit"
|
||||
|
||||
if [ "$enable_cocoa_quartz" != "0" ]; then
|
||||
CFLAGS="$CFLAGS -DENABLE_COCOA_QUARTZ"
|
||||
@@ -1415,17 +1248,8 @@ make_cflags_and_ldflags() {
|
||||
CFLAGS="$CFLAGS -DWITH_ZLIB"
|
||||
fi
|
||||
|
||||
if [ "$with_lzo2" != "0" ]; then
|
||||
if [ "$enable_static" != "0" ] && [ "$os" != "OSX" ]; then
|
||||
LIBS="$LIBS $lzo2"
|
||||
else
|
||||
LIBS="$LIBS -llzo2"
|
||||
fi
|
||||
CFLAGS="$CFLAGS -DWITH_LZO"
|
||||
fi
|
||||
|
||||
# 64bit machines need -D_SQ64
|
||||
if [ "$cpu_type" = "64" ] && [ "$enable_universal" = "0" ]; then
|
||||
if [ "$cpu_type" = "64" ]; then
|
||||
CFLAGS="$CFLAGS -D_SQ64"
|
||||
fi
|
||||
CFLAGS="$CFLAGS -I$SCRIPT_SRC_DIR"
|
||||
@@ -1548,10 +1372,6 @@ make_cflags_and_ldflags() {
|
||||
LDFLAGS="$LDFLAGS -lbind -lsocket"
|
||||
fi
|
||||
|
||||
if [ "$os" = "HAIKU" ]; then
|
||||
LDFLAGS="$LDFLAGS -lnetwork"
|
||||
fi
|
||||
|
||||
if [ "$os" = "SUNOS" ]; then
|
||||
LDFLAGS="$LDFLAGS -lnsl -lsocket"
|
||||
fi
|
||||
@@ -1587,7 +1407,6 @@ make_cflags_and_ldflags() {
|
||||
CFLAGS="$CFLAGS -DGLOBAL_DATA_DIR=\\\\\"$prefix_dir/$data_dir\\\\\""
|
||||
|
||||
log 1 "using CFLAGS... $CFLAGS"
|
||||
log 1 "using CXXFLAGS... $CXXFLAGS"
|
||||
log 1 "using LDFLAGS... $LIBS $LDFLAGS"
|
||||
|
||||
# Makedepend doesn't like something like: -isysroot /OSX/blabla
|
||||
@@ -1597,12 +1416,11 @@ make_cflags_and_ldflags() {
|
||||
# Btw, this almost always comes from outside the configure, so it is
|
||||
# not something we can control.
|
||||
# Also make makedepend aware of compiler's built-in defines.
|
||||
if [ "$with_makedepend" != "0" ] || [ "$enable_builtin_depend" != "0" ]; then
|
||||
# Append CXXFLAGS possibly containing -std=c++0x
|
||||
cflags_makedep="`echo | $cxx_host $CXXFLAGS -E -x c++ -dM - | sed 's@.define @-D@g;s@ .*@ @g;s@(.*)@@g' | tr -d '\r\n'`"
|
||||
if [ "$with_makedepend" != "0" ]; then
|
||||
cflags_makedep="`echo | $cxx_host -E -x c++ -dM - | sed 's@.define @-D@g;s@ .*@ @g;s@(.*)@@g' | tr -d '\r\n'`"
|
||||
|
||||
# Please escape ALL " within ` because e.g. "" terminates the string in some sh implementations
|
||||
cflags_makedep="$cflags_makedep `echo \"$CFLAGS\" \"$CXXFLAGS\" | sed 's@ /@ -@g;s@-I[ ]*[^ ]*@@g'`"
|
||||
cflags_makedep="$cflags_makedep `echo \"$CFLAGS\" | sed 's@ /@ -@g;s@-I[ ]*[^ ]*@@g'`"
|
||||
else
|
||||
makedepend=""
|
||||
fi
|
||||
@@ -1798,24 +1616,27 @@ check_lipo() {
|
||||
fi
|
||||
}
|
||||
|
||||
check_osx_sdk() {
|
||||
local sysroot=""
|
||||
if [ -n "$1" ]; then
|
||||
if echo "$1" | grep -q / ; then
|
||||
# Seems to be a file system path
|
||||
osx_sdk_path="$1"
|
||||
else
|
||||
osx_sdk_path="/Developer/SDKs/MacOSX$1.sdk"
|
||||
fi
|
||||
if [ ! -d "$osx_sdk_path" ]; then
|
||||
# No directory, not present or garbage
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Set minimum version to 10.4 as that's when kCGBitmapByteOrder32Host was introduced
|
||||
sysroot="-isysroot $osx_sdk_path -Wl,-syslibroot,$osx_sdk_path -mmacosx-version-min=10.4"
|
||||
set_universal_binary_flags() {
|
||||
if [ -z "$osx_target_version" ]; then
|
||||
# if we don't speficy a target version then we presume 10.4
|
||||
osx_target_version=10.4
|
||||
fi
|
||||
|
||||
if [ "$osx_target_version" = "10.4" ]; then
|
||||
# Apple added u to 10.4 to show that it's universal
|
||||
# There is a version without the u, but it's only in Xcode 2.0 and people should use the free update to 2.5
|
||||
osx_sysroot_version=10.4u
|
||||
else
|
||||
osx_sysroot_version="$osx_target_version"
|
||||
fi
|
||||
|
||||
if [ "$with_osx_sysroot" = "3" ]; then
|
||||
CFLAGS="$CFLAGS -isysroot /Developer/SDKs/MacOSX$osx_sysroot_version.sdk -mmacosx-version-min=$osx_target_version"
|
||||
LDFLAGS="$LDFLAGS -Wl,-syslibroot,/Developer/SDKs/MacOSX$osx_sysroot_version.sdk -mmacosx-version-min=$osx_target_version"
|
||||
fi
|
||||
}
|
||||
|
||||
check_osx_sdk() {
|
||||
cat > tmp.osx.mm << EOF
|
||||
#include <Cocoa/Cocoa.h>
|
||||
int main() {
|
||||
@@ -1823,13 +1644,18 @@ int main() {
|
||||
return 0;
|
||||
}
|
||||
EOF
|
||||
execute="$cxx_host $sysroot $CFLAGS tmp.osx.mm -framework Cocoa -o tmp.osx 2>&1"
|
||||
execute="$cxx_host $CFLAGS tmp.osx.mm -framework Cocoa -o tmp.osx 2>&1"
|
||||
eval $execute > /dev/null
|
||||
ret=$?
|
||||
log 2 "executing $execute"
|
||||
log 2 " exit code $ret"
|
||||
rm -f tmp.osx.mm tmp.osx
|
||||
return $ret
|
||||
if [ "$ret" != "0" ]; then
|
||||
log 1 "Your system SDK is probably too old"
|
||||
log 1 "Please install/upgrade your Xcode to >= 2.5"
|
||||
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
check_direct_music() {
|
||||
@@ -1858,10 +1684,6 @@ check_direct_music() {
|
||||
}
|
||||
|
||||
check_makedepend() {
|
||||
if [ "$enable_builtin_depend" != "0" ]; then
|
||||
with_makedepend="0"
|
||||
fi
|
||||
|
||||
if [ "$with_makedepend" = "0" ]; then
|
||||
log 1 "checking makedepend... disabled"
|
||||
return
|
||||
@@ -1963,7 +1785,6 @@ detect_os() {
|
||||
/hp-ux/ { print "HPUX"; exit}
|
||||
/morphos/ { print "MORPHOS"; exit}
|
||||
/beos/ { print "BEOS"; exit}
|
||||
/haiku/ { print "HAIKU"; exit}
|
||||
/sunos/ { print "SUNOS"; exit}
|
||||
/solaris/ { print "SUNOS"; exit}
|
||||
/cygwin/ { print "CYGWIN"; exit}
|
||||
@@ -1984,7 +1805,6 @@ detect_os() {
|
||||
/hp-ux/ { print "HPUX"; exit}
|
||||
/morphos/ { print "MORPHOS"; exit}
|
||||
/beos/ { print "BEOS"; exit}
|
||||
/haiku/ { print "HAIKU"; exit}
|
||||
/sunos/ { print "SUNOS"; exit}
|
||||
/cygwin/ { print "CYGWIN"; exit}
|
||||
/mingw/ { print "MINGW"; exit}
|
||||
@@ -1996,7 +1816,7 @@ detect_os() {
|
||||
if [ -z "$os" ]; then
|
||||
log 1 "detecting OS... none detected"
|
||||
log 1 "I couldn't detect your OS. Please use --os=OS to force one"
|
||||
log 1 "Allowed values are: UNIX, OSX, FREEBSD, OPENBSD, NETBSD, MORPHOS, HPUX, BEOS, HAIKU, SUNOS, CYGWIN, MINGW, OS2, DOS, WINCE, and PSP"
|
||||
log 1 "Allowed values are: UNIX, OSX, FREEBSD, OPENBSD, NETBSD, MORPHOS, HPUX, BEOS, SUNOS, CYGWIN, MINGW, OS2, DOS, WINCE, and PSP"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -2137,39 +1957,6 @@ detect_sdl() {
|
||||
log 1 "checking SDL... found"
|
||||
}
|
||||
|
||||
detect_osx_sdk() {
|
||||
# Try to find the best SDK available. For a normal build this
|
||||
# is currently the 10.5 SDK as this is needed to compile all
|
||||
# optional code. Because such an executable won't run on 10.4
|
||||
# or lower, also check for the 10.4u SDK when doing an universal
|
||||
# build.
|
||||
|
||||
# Check for the 10.5 SDK, but try 10.6 if that fails
|
||||
check_osx_sdk "10.5" || check_osx_sdk "10.6" || osx_sdk_path=""
|
||||
|
||||
if [ -z "$osx_sdk_path" ] || [ "$enable_universal" != "0" ]; then
|
||||
# No better SDK or universal build enabled? Check 10.4u SDK as well
|
||||
local old_sdk="$osx_sdk_path"
|
||||
if check_osx_sdk "10.4u"; then
|
||||
osx_sdk_104_path="$osx_sdk_path"
|
||||
else
|
||||
osx_sdk_104_path=""
|
||||
fi
|
||||
if [ -z "$old_sdk" ]; then
|
||||
osx_sdk_path="$osx_sdk_104_path"
|
||||
else
|
||||
osx_sdk_path="$old_sdk"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z "$osx_sdk_path" ]; then
|
||||
log 1 "Your system SDK is probably too old"
|
||||
log 1 "Please install/upgrade your Xcode to >= 2.5"
|
||||
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
detect_cocoa() {
|
||||
# 0 means no, 1 is auto-detect, 2 is force
|
||||
if [ "$with_cocoa" = "0" ]; then
|
||||
@@ -2215,66 +2002,21 @@ detect_cocoa() {
|
||||
log 1 "checking whether to enable the Quartz window subdriver... no"
|
||||
fi
|
||||
|
||||
detect_quickdraw
|
||||
}
|
||||
|
||||
detect_quickdraw() {
|
||||
# 0 means no, 1 is auto-detect, 2 is force
|
||||
if [ "$enable_cocoa_quickdraw" = "0" ]; then
|
||||
log 1 "checking Quickdraw window subdriver... disabled"
|
||||
return 0
|
||||
if [ "$enable_cocoa_quickdraw" != "0" ]; then
|
||||
log 1 "checking whether to enable the Quickdraw window subdriver... yes"
|
||||
else
|
||||
log 1 "checking whether to enable the Quickdraw window subdriver... no"
|
||||
fi
|
||||
|
||||
# Assume QuickDraw is available when doing an universal build
|
||||
if [ "$enable_universal" != "0" ]; then
|
||||
log 1 "checking Quickdraw window subdriver... found"
|
||||
return 0
|
||||
fi
|
||||
|
||||
# 64 bits doesn't have quickdraw
|
||||
if [ "$cpu_type" = "64" ]; then
|
||||
enable_cocoa_quickdraw="0"
|
||||
log 1 "checking Quickdraw window subdriver... disabled (64 bits)"
|
||||
return 0
|
||||
fi
|
||||
|
||||
cat > tmp.osx.mm << EOF
|
||||
#include <AvailabilityMacros.h>
|
||||
#import <Cocoa/Cocoa.h>
|
||||
int main(int argc, char *argv[]) { SetEmptyRgn(NULL); return 0; }
|
||||
EOF
|
||||
execute="$cxx_host $OSX_SYSROOT $OSX_LD_SYSROOT $CFLAGS -mmacosx-version-min=10.3 tmp.osx.mm -framework Cocoa -o tmp.osx 2>&1"
|
||||
eval $execute > /dev/null
|
||||
ret=$?
|
||||
log 2 "executing $execute"
|
||||
log 2 " exit code $ret"
|
||||
rm -f tmp.osx.mm tmp.osx
|
||||
if [ "$ret" != "0" ]; then
|
||||
log 1 "checking Quickdraw window subdriver... not found"
|
||||
|
||||
# It was forced, so it should be found.
|
||||
if [ "$enable_cocoa_quickdraw" != "1" ]; then
|
||||
log 1 "configure: error: Quickdraw window driver could not be found"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
enable_cocoa_quickdraw=0
|
||||
return 0
|
||||
fi
|
||||
|
||||
enable_cocoa_quickdraw=1
|
||||
log 1 "checking Quickdraw window subdriver... found"
|
||||
}
|
||||
|
||||
detect_library() {
|
||||
# $1 - config-param ($with_zlib value)
|
||||
# $2 - library name ('zlib', sets $zlib)
|
||||
# $3 - static library name (libz.a)
|
||||
# $4 - header directory ()
|
||||
# $5 - header name (zlib.h)
|
||||
# $6 - force static (if non-empty)
|
||||
# $4 - header name (zlib.h)
|
||||
# $5 - force static (if non-empty)
|
||||
|
||||
if [ -n "$6" ]; then force_static="1"; fi
|
||||
if [ -n "$5" ]; then force_static="1"; fi
|
||||
|
||||
# 0 means no, 1 is auto-detect, 2 is force
|
||||
if [ "$1" = "0" ]; then
|
||||
@@ -2287,15 +2029,15 @@ detect_library() {
|
||||
log 2 "detecting $2"
|
||||
|
||||
if [ "$1" = "1" ] || [ "$1" = "" ] || [ "$1" = "2" ]; then
|
||||
eval "$2=`ls -1 /usr/include/$4*.h 2>/dev/null | egrep \"\/$5\$\"`"
|
||||
eval "$2=`ls -1 /usr/include/*.h 2>/dev/null | egrep \"\/$4\$\"`"
|
||||
eval "res=\$$2"
|
||||
if [ -z "$res" ]; then
|
||||
log 2 " trying /usr/include/$4$5... no"
|
||||
eval "$2=`ls -1 /usr/local/include/$4*.h 2>/dev/null | egrep \"\/$5\$\"`"
|
||||
log 2 " trying /usr/include/$4... no"
|
||||
eval "$2=`ls -1 /usr/local/include/*.h 2>/dev/null | egrep \"\/$4\$\"`"
|
||||
fi
|
||||
eval "res=\$$2"
|
||||
if [ -z "$res" ]; then
|
||||
log 2 " trying /usr/local/include/$4$5... no"
|
||||
log 2 " trying /usr/local/include/$4... no"
|
||||
fi
|
||||
|
||||
eval "res=\$$2"
|
||||
@@ -2358,15 +2100,11 @@ detect_library() {
|
||||
}
|
||||
|
||||
detect_zlib() {
|
||||
detect_library "$with_zlib" "zlib" "libz.a" "" "zlib.h"
|
||||
}
|
||||
|
||||
detect_lzo2() {
|
||||
detect_library "$with_lzo2" "lzo2" "liblzo2.a" "lzo/" "lzo1x.h"
|
||||
detect_library "$with_zlib" "zlib" "libz.a" "zlib.h"
|
||||
}
|
||||
|
||||
detect_libtimidity() {
|
||||
detect_library "$with_libtimidity" "libtimidity" "libtimidity.a" "" "timidity.h"
|
||||
detect_library "$with_libtimidity" "libtimidity" "libtimidity.a" "timidity.h"
|
||||
}
|
||||
|
||||
detect_png() {
|
||||
@@ -2508,12 +2246,6 @@ detect_fontconfig() {
|
||||
return 0
|
||||
fi
|
||||
|
||||
if [ "$os" = "OSX" ]; then
|
||||
log 1 "checking libfontconfig... OSX, skipping"
|
||||
fontconfig_config=""
|
||||
return 0
|
||||
fi
|
||||
|
||||
if [ "$with_fontconfig" = "1" ] || [ "$with_fontconfig" = "" ] || [ "$with_fontconfig" = "2" ]; then
|
||||
fontconfig_config="pkg-config fontconfig"
|
||||
else
|
||||
@@ -2714,7 +2446,7 @@ int main() {
|
||||
return iconv(convd, &inbuf, &inlen, &outbuf, &outlen);
|
||||
}
|
||||
EOF
|
||||
execute="$cxx_host $OSX_SYSROOT $CFLAGS -c tmp.iconv.cpp -o tmp.iconv -DTESTING 2>&1"
|
||||
execute="$cxx_host $CFLAGS -c tmp.iconv.cpp -o tmp.iconv -DTESTING 2>&1"
|
||||
eval $execute > /dev/null
|
||||
ret=$?
|
||||
log 2 "executing $execute"
|
||||
@@ -2735,7 +2467,7 @@ int main() {
|
||||
return iconv(convd, &inbuf, &inlen, &outbuf, &outlen);
|
||||
}
|
||||
EOF
|
||||
execute="$cxx_host $OSX_SYSROOT $OSX_LD_SYSROOT $CFLAGS tmp.iconv.cpp -o tmp.iconv -DTESTING 2>&1"
|
||||
execute="$cxx_host $CFLAGS tmp.iconv.cpp -o tmp.iconv -DTESTING 2>&1"
|
||||
eval $execute > /dev/null
|
||||
ret=$?
|
||||
log 2 "executing $execute"
|
||||
@@ -2828,7 +2560,6 @@ detect_cputype() {
|
||||
|
||||
make_sed() {
|
||||
T_CFLAGS="$CFLAGS"
|
||||
T_CXXFLAGS="$CXXFLAGS"
|
||||
T_LDFLAGS="$LDFLAGS"
|
||||
|
||||
SRC_OBJS_DIR="$BASE_SRC_OBJS_DIR/$OBJS_SUBDIR"
|
||||
@@ -2847,12 +2578,9 @@ make_sed() {
|
||||
s@!!LIPO!!@$lipo@g;
|
||||
s@!!CFLAGS!!@$T_CFLAGS@g;
|
||||
s@!!CFLAGS_BUILD!!@$CFLAGS_BUILD@g;
|
||||
s@!!CXXFLAGS!!@$T_CXXFLAGS@g;
|
||||
s@!!CXXFLAGS_BUILD!!@$CXXFLAGS_BUILD@g;
|
||||
s@!!STRGEN_FLAGS!!@$strgen_flags@g;
|
||||
s@!!LIBS!!@$LIBS@g;
|
||||
s@!!LDFLAGS!!@$T_LDFLAGS@g;
|
||||
s@!!LDFLAGS_BUILD!!@$LDFLAGS_BUILD@g;
|
||||
s@!!BIN_DIR!!@$BIN_DIR@g;
|
||||
s@!!ROOT_DIR!!@$ROOT_DIR@g;
|
||||
s@!!MEDIA_DIR!!@$MEDIA_DIR@g;
|
||||
@@ -2876,7 +2604,6 @@ make_sed() {
|
||||
s@!!BINARY_NAME!!@$binary_name@g;
|
||||
s@!!STRGEN!!@$STRGEN@g;
|
||||
s@!!ENDIAN_CHECK!!@$ENDIAN_CHECK@g;
|
||||
s@!!DEPEND!!@$DEPEND@g;
|
||||
s@!!ENDIAN_FORCE!!@$endian@g;
|
||||
s@!!STAGE!!@$STAGE@g;
|
||||
s@!!MAKEDEPEND!!@$makedepend@g;
|
||||
@@ -3002,50 +2729,22 @@ generate_src_normal() {
|
||||
generate_src_osx() {
|
||||
cc_host_orig="$cc_host"
|
||||
cxx_host_orig="$cxx_host"
|
||||
CFLAGS_orig="$CFLAGS"
|
||||
LDFLAGS_orig="$LDFLAGS"
|
||||
|
||||
if [ -n "$osx_sdk_104_path" ]; then
|
||||
# Use 10.4 SDK for 32-bit targets
|
||||
CFLAGS="-isysroot $osx_sdk_104_path $CFLAGS_orig"
|
||||
LDFLAGS="-Wl,-syslibroot,$osx_sdk_104_path $LDFLAGS_orig"
|
||||
fi
|
||||
|
||||
BASE_SRC_OBJS_DIR="$OBJS_DIR/ppc"
|
||||
cc_host="$cc_host_orig -arch ppc -mmacosx-version-min=10.3"
|
||||
cxx_host="$cxx_host_orig -arch ppc -mmacosx-version-min=10.3"
|
||||
cc_host="$cc_host_orig -arch ppc"
|
||||
cxx_host="$cxx_host_orig -arch ppc"
|
||||
generate_src_normal "[PowerPC]" "objs/ppc"
|
||||
|
||||
BASE_SRC_OBJS_DIR="$OBJS_DIR/ppc970"
|
||||
cc_host="$cc_host_orig -arch ppc970 -mmacosx-version-min=10.3 -mcpu=G5 -mpowerpc64 -mtune=970 -mcpu=970 -mpowerpc-gpopt"
|
||||
cxx_host="$cxx_host_orig -arch ppc970 -mmacosx-version-min=10.3 -mcpu=G5 -mpowerpc64 -mtune=970 -mcpu=970 -mpowerpc-gpopt"
|
||||
generate_src_normal "[PowerPC G5]" "objs/ppc970"
|
||||
|
||||
BASE_SRC_OBJS_DIR="$OBJS_DIR/intel"
|
||||
cc_host="$cc_host_orig -arch i386 -mmacosx-version-min=10.4"
|
||||
cxx_host="$cxx_host_orig -arch i386 -mmacosx-version-min=10.4"
|
||||
cc_host="$cc_host_orig -arch i386"
|
||||
cxx_host="$cxx_host_orig -arch i386"
|
||||
generate_src_normal "[Intel]" "objs/intel"
|
||||
|
||||
if [ "$enable_universal" = "64" ]; then
|
||||
# 64 bits is always 10.5 or higher. Furthermore it has a broken ICONV
|
||||
# and they also removed support for QuickTime/QuickDraw
|
||||
if [ -n "$osx_sdk_path" ]; then
|
||||
CFLAGS="-isysroot $osx_sdk_path $CFLAGS_orig"
|
||||
LDFLAGS="-Wl,-syslibroot,$osx_sdk_path $LDFLAGS_orig"
|
||||
fi
|
||||
CFLAGS="$CFLAGS -D_SQ64 -DHAVE_BROKEN_ICONV -DNO_QUICKTIME -UENABLE_COCOA_QUICKDRAW"
|
||||
LIBS="`echo $LIBS | sed 's/-framework QuickTime//'`"
|
||||
|
||||
BASE_SRC_OBJS_DIR="$OBJS_DIR/ppc64"
|
||||
cc_host="$cc_host_orig -arch ppc64 -mmacosx-version-min=10.5"
|
||||
cxx_host="$cxx_host_orig -arch ppc64 -mmacosx-version-min=10.5"
|
||||
generate_src_normal "[PowerPC 64 bits]" "objs/ppc64"
|
||||
|
||||
BASE_SRC_OBJS_DIR="$OBJS_DIR/intel64"
|
||||
cc_host="$cc_host_orig -arch x86_64 -mmacosx-version-min=10.5"
|
||||
cxx_host="$cxx_host_orig -arch x86_64 -mmacosx-version-min=10.5"
|
||||
generate_src_normal "[Intel 64 bits]" "objs/intel64"
|
||||
fi
|
||||
BASE_SRC_OBJS_DIR="$OBJS_DIR/ppc970"
|
||||
cc_host="$cc_host_orig -arch ppc970"
|
||||
cxx_host="$cxx_host_orig -arch ppc970"
|
||||
CFLAGS="$CFLAGS -mtune=970 -mcpu=970 -mpowerpc-gpopt"
|
||||
generate_src_normal "[PowerPC G5]" "objs/ppc970"
|
||||
}
|
||||
|
||||
generate_src() {
|
||||
@@ -3080,7 +2779,7 @@ showhelp() {
|
||||
echo " --os=OS the OS we are compiling for [DETECT]"
|
||||
echo " DETECT/UNIX/OSX/FREEBSD/OPENBSD/NETBSD/"
|
||||
echo " MORPHOS/HPUX/BEOS/SUNOS/CYGWIN/MINGW/OS2/"
|
||||
echo " DOS/WINCE/PSP/HAIKU"
|
||||
echo " DOS/WINCE/PSP"
|
||||
echo " --endian=ENDIAN set the endian of the HOST (AUTO/LE/BE)"
|
||||
echo " --revision=rXXXX overwrite the revision detection."
|
||||
echo " Use with care!"
|
||||
@@ -3120,8 +2819,6 @@ showhelp() {
|
||||
echo " --enable-debug[=LVL] enable debug-mode (LVL=[0123], 0 is release)"
|
||||
echo " --enable-desync-debug=[LVL] enable desync debug options (LVL=[012], 0 is none"
|
||||
echo " --enable-profiling enables profiling"
|
||||
echo " --enable-lto enables GCC's Link Time Optimization (LTO)/ICC's"
|
||||
echo " Interprocedural Optimization if available"
|
||||
echo " --enable-dedicated compile a dedicated server (without video)"
|
||||
echo " --enable-static enable static compile (doesn't work for"
|
||||
echo " all HOSTs)"
|
||||
@@ -3152,7 +2849,6 @@ showhelp() {
|
||||
echo " --with-cocoa enables COCOA video driver (OSX ONLY)"
|
||||
echo " --with-sdl[=sdl-config] enables SDL video driver support"
|
||||
echo " --with-zlib[=zlib.a] enables zlib support"
|
||||
echo " --with-liblzo2[=liblzo2.a] enables liblzo2 support"
|
||||
echo " --with-png[=libpng-config] enables libpng support"
|
||||
echo " --with-freetype[=freetype-config]"
|
||||
echo " enables libfreetype support"
|
||||
@@ -3163,14 +2859,12 @@ showhelp() {
|
||||
echo " libicu; can fail as the new name is guessed)"
|
||||
echo " --with-iconv[=iconv-path] enables iconv support"
|
||||
echo " --with-psp-config[=psp-config] enables psp-config support (PSP ONLY)"
|
||||
echo " --disable-builtin-depend disable use of builtin deps finder"
|
||||
echo " --with-makedepend[=makedepend] enables makedepend support"
|
||||
echo ""
|
||||
echo "Some influential environment variables:"
|
||||
echo " CC C compiler command"
|
||||
echo " CXX C++ compiler command"
|
||||
echo " CFLAGS C compiler flags"
|
||||
echo " CXXFLAGS C++ compiler flags"
|
||||
echo " WINDRES windres command"
|
||||
echo " LDFLAGS linker flags, e.g. -L<lib dir> if you"
|
||||
echo " have libraries in a nonstandard"
|
||||
|
13
configure
vendored
@@ -1,12 +1,5 @@
|
||||
#!/bin/sh
|
||||
|
||||
# $Id$
|
||||
|
||||
# This file is part of OpenTTD.
|
||||
# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
# OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
check_path_characters() {
|
||||
if [ -n "`echo $ROOT_DIR | grep '[^-_A-Za-z0-9\/\\\.:]'`" ]; then
|
||||
echo "WARNING: The path contains a non-alphanumeric character that might cause"
|
||||
@@ -80,7 +73,6 @@ fi
|
||||
TTD="openttd$EXE"
|
||||
STRGEN="strgen$EXE"
|
||||
ENDIAN_CHECK="endian_check$EXE"
|
||||
DEPEND="depend$EXE"
|
||||
|
||||
if [ -z "$sort" ]; then
|
||||
PIPE_SORT="sed s@a@a@"
|
||||
@@ -115,10 +107,9 @@ AWKCOMMAND='
|
||||
if ($0 == "DEDICATED" && "'$enable_dedicated'" != "1") { next; }
|
||||
if ($0 == "COCOA" && "'$with_cocoa'" == "0") { next; }
|
||||
if ($0 == "DOS" && "'$os'" != "DOS") { next; }
|
||||
if ($0 == "BEOS" && "'$os'" != "BEOS" &&
|
||||
"'$os'" != "HAIKU") { next; }
|
||||
if ($0 == "BEOS" && "'$os'" != "BEOS") { next; }
|
||||
if ($0 == "WIN32" && "'$os'" != "MINGW" &&
|
||||
"'$os'" != "CYGWIN" && "'$os'" != "MSVC") { next; }
|
||||
"'$os'" != "CYGWIN" && "'$os'" != "MSVC" ) { next; }
|
||||
if ($0 == "MORPHOS" && "'$os'" != "MORPHOS") { next; }
|
||||
if ($0 == "WINCE" && "'$os'" != "WINCE") { next; }
|
||||
if ($0 == "MSVC" && "'$os'" != "MSVC") { next; }
|
||||
|
@@ -27,7 +27,7 @@ OpenTTD palette. Upon load of the PNG, the mask is loaded too, and overrides
|
||||
the RGB (not the Alpha) of the original PNG image, and replacing it with a
|
||||
8bpp color remapped and converted to 32bpp.
|
||||
|
||||
Another thing that OpenTTD needs in your png, is 2 tEXt chunks: x_offs and
|
||||
An other thing that OpenTTD needs in your png, is 2 tEXt chunks: x_offs and
|
||||
y_offs. This to define the x- and y-offset, of course. Use the tool we supply
|
||||
to add this information. Sadly enough most graphical editors trashes those
|
||||
chunks upon save, so you have to readd it every time you save your image.
|
||||
|
100
docs/Manual.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
Welcome to the manual for OpenTTD. The latest release version at the time of writing is 0.3.2.
|
||||
|
||||
1 Obtaining OpenTTD.
|
||||
|
||||
You can obtain built binaries of OpenTTD for the 4 supported platforms - Win32, Linux,-x86, BeOS 5 and MacOS-X from the projects Sourceforge page, at http://sourceforge.net/projects/openttd . For the non-Win32 builds you will need libSDL.so, libpng.so and zlib.so compiled for your platform. Some builds will include these.
|
||||
|
||||
If you use another platform, such as FreeBSD, which has POSIX file i/o and an SDL port, you should be able to build OpenTTD from its source. This is available in the proejcts Subversion repository at svn://svn.openttd.com . The module name is "trunk".
|
||||
|
||||
1.1 Building OpenTTD.
|
||||
|
||||
Once you have obtained a recent copy of the source, you must build it. Windows build instructions will be provided later.
|
||||
|
||||
On UNIX platforms (including OS-X and BeOS), ensure you have a recent GCC (2.9 or above, or 3 and above).You will also need SDL development headers and libraries (libSDL 1.2 or higher). For PNG screenshot support and zlib compressed games, you will need libpng 1.0.12 or higher and zlib 1.2 or higher.
|
||||
|
||||
Most UNIX platforms:
|
||||
First run ./configure, them use make or gmake to compile OpenTTD. You can configure the different compile options via ./configure.
|
||||
|
||||
BeOS:
|
||||
On BeOS, run ./configure and then use jam. There are a variaty of options you can pass to your build tool, these are reported by ./configure.
|
||||
|
||||
1.2 Installing OpenTTD.
|
||||
|
||||
On Windows, insert your "Transport Tycoon Deluxe for Windows 95" disk. You can use a DOS version, but your graphics will be purple. NB: Even if your version of Transport Tycoon Deluxe ran on Windows 95, it may still be the DOS version. Then run the OpenTTD installer.
|
||||
|
||||
On UNIX platforms; decompress your OpenTTD archive, or otherwise run the installer. You should be left with an OpenTTD directory on your system. In this directory, make a subdirectory called 'data', and into this place the sample.cat file and all the .grf files from the install CD of 'Transport Tycoon Deluxe for Windows 95".
|
||||
(Alternatively you can use the TTD GRF files from the DOS version: TRG1.GRF, TRGC.GRF, TRGH.GRF, TRGI.GRF, TRGT.GRF. A few minor graphical glitches with the DOS graphics remain. E.g. the autorail button in the rail toolbar doesn't look as nice as with the Windows graphics.)
|
||||
|
||||
If you want MIDI music, copy the 'gm' folder from the original game directory/CD to the OpenTTD folder.
|
||||
|
||||
1.3 Running OpenTTD.
|
||||
|
||||
On Windows, you can use a third-party launcher such as OTTD-Launcher to run OpenTTD directly from Explorer. Otherwise, navigate via the command prompt to the correct location and launch ttd.exe.
|
||||
|
||||
On Linux, navigate at the shell to the correct location and run ttd.
|
||||
|
||||
On BeOS and Mac OS-X, just double click the ttd binary in the Tracker/Finder. You can also start from the shell.
|
||||
|
||||
1.4 Configuring OpenTTD
|
||||
|
||||
OpenTTD's launch menu contains three configuration menus - Difficulty Settings, Configure Patches and Game Settings. Most of these menus can be configured from within a running game as well.
|
||||
|
||||
Difficulty Settings lets you configure settings that affect the difficulty of playing the game. These include when your (computer-controlled) competitors can start building, how many of them there are, and how intelligent they are. You can also control how much the subsidy mutliplier is for subsidised routes, and how stable/volitile the in-game economy is. You can also set how you want the terrain to be configured in a random game.
|
||||
|
||||
Game Settings lets you set regional settings - currency, language, town names, etc. It also lets you select the resolution to run the game at, as well as the screenshot format to use.
|
||||
|
||||
Configure Patches lets you select which patches to use in the game. This allows you to set the game play to either original Transport Tycoon Deluxe compatible mode or a mode more like playing under TTD-Patch. Patches include building on slopes, longer bridges, longer trains, pre-signals, and TTD-Patch compatible handling of non-stop orders.
|
||||
|
||||
2.1 Gameplay
|
||||
|
||||
This section of the manual is written with the assumption that you already know the gameplay basics of Transport Tycoon Deluxe, on either DOS or Windows. As you must have the Windows Transport Tycoon Deluxe CD to play OpenTTD, you should either have a paper manual or the complete manual in PDF format on the disk. This section will only cover the gameplay differences from Transport Tycoon Deluxe.
|
||||
|
||||
2.2 Station Construction
|
||||
|
||||
In OpenTTD, you can build rail stations up to seven squares long and with up to seven platforms. You can also have stations spreading across far larger distances, allowing a large rail station to be connected to a large airport, for instance.
|
||||
|
||||
However, there is an even more noticable difference in rail station construction. You may now add platforms and lenght to a station after it has been built, and you may also add platforms of a different type. Users of TTDPatch will be used to this behaviour. But beyond what TTDPatch has, you can make stations of uneven lenght/width, and even ones with perpendicular tracks. You can also delete single tiles or tracks from a station, by holding down Shift before pressing the station construction button.
|
||||
|
||||
2.3 Checkpoint Stations
|
||||
|
||||
Checkpoint stations (the small blue item in the rail construction window) are small 1x1 stations. They must be built on top of pre-existing track. They do not accept or produce carge of any kind. They exist solely for use as route points. They become useful when dealing with large networks where trains may attempt to route themselves along undesirable or impossible routes. As an alternative to checkpoint stations, you can also direct trains to visit depots along the way. This has the advantage of also servicing the train and hence the train will rarely to never need to depart from its route to be serviced.
|
||||
|
||||
2.4 Freeform Rail Laying.
|
||||
|
||||
Along side the other rail laying buttons, you will see a button that looks somewhat like a crossing. This is the freeform rail laying tool., and it allows you to drag rail in any direction to lay it. This has a number of advantages, one of the main ones being that it can seriously speed up the laying of diagonal tracks.
|
||||
|
||||
2.5 Vehicle Queuing (with Quantum Effects)
|
||||
|
||||
This useful addition to OpenTTD means that road vehicles will queue outside a road station to wait for a space rather than attempt to enter it immediately. As anyone who has operated a large road network with busy stations will know, road vehicles quickly pile up inside stations. This will prevent that. The Quantum Effects are down to a bug in the game that means that mutliple vehicles will often only take up one space in the queue. However, this is almost too useful to fix, and should still be there in later versions. This can be enabled/disabled.
|
||||
|
||||
2.6 Building On Slopes
|
||||
|
||||
This allows you to build roads, rails, stations and depots on slopes. It also allows the construction of trasmitters and lighthouses on slopes in the scenario editor. There are some minor differences between OpenTTD's and TTD-Patch's handling of building on slopes, the main one being that bridges must still have solid land at their endings.
|
||||
|
||||
2.7 Long Bridges
|
||||
|
||||
OpenTTD allows you to constuct bridges up to 127 squares - half the size of the current map. This means that the crossing of large estuaries, such at the Bristol Channel in the original "West Country 90210" scenario can be acheived with one bridge instead of many bridges with staging points.
|
||||
|
||||
2.8 Long trains
|
||||
|
||||
OpenTTD allows trains of around 60 cars length, hence allowing you to use 7 square stations to their capacity and beyond.
|
||||
|
||||
2.9 Speed Display
|
||||
|
||||
This addition to OpenTTD allows you to see the current speed of any vehicle in their status window. Just open the status window of a vehicle and you can see the speed at that given moment. This allows you to see wheter better bridges, flatter/straighter track or more powerful engines could be used to increase the speed of a vehicle
|
||||
|
||||
2.10 More Trains, More Ships, More Everything!
|
||||
|
||||
Virtually any settings - train numbers, start date, what vehicles your competitors can use, etc - can be set in OpenTTD. Just use the Configure Patches menu on the main screen.
|
||||
|
||||
2.11 Network Play
|
||||
|
||||
See multiplayer.txt for more info.
|
||||
|
||||
2.12 Rail Recycling.
|
||||
|
||||
This button, at the end of the train construction window, lets you 'recycle' track to a new type. It also works on bridges, tunnels, stations and depots.
|
||||
|
||||
2.13 Canal Building
|
||||
|
||||
This button, at the end of the water construction window, lets you build canals and shiplifts across the landscape. These act just like normal water.
|
23
docs/OSX_install_instructions.txt
Normal file
@@ -0,0 +1,23 @@
|
||||
To install OpenTTD, you should drag the game to any location you want and in that folder, you should create a folder called "data". It should contain:
|
||||
sample.cat
|
||||
trg1r.grf
|
||||
trgcr.grf
|
||||
trghr.grf
|
||||
trgir.grf
|
||||
trgtr.grf
|
||||
|
||||
(Alternatively you can use the TTD GRF files from the DOS version: TRG1.GRF, TRGC.GRF, TRGH.GRF, TRGI.GRF, TRGT.GRF. A few minor graphical glitches with the DOS graphics remain. E.g. the autorail button in the rail toolbar doesn't look as nice as with the Windows graphics.)
|
||||
|
||||
You should also use the data folder to add any custom grf files if you like
|
||||
|
||||
if you want music, you can add a GM folder and add all .gm files from TTD inside it
|
||||
|
||||
If you want to use the scenarios, you can copy the scenario folder as well. If you already have one, just copy the content so you don't overwrite old ones that have been removed.
|
||||
|
||||
In the end, you should have a folder containing:
|
||||
OpenTTD (the actual game)
|
||||
data (containing the grf files)
|
||||
GM (optional for music)
|
||||
scenario (optional pregenerated maps)
|
||||
|
||||
The game adds some items by itself when it runs, like a save folder and a setting file
|
@@ -1,5 +1,5 @@
|
||||
Compiling OpenTTD using Microsoft Visual C++
|
||||
Last updated: 2010-01-03
|
||||
January 2, 2007
|
||||
--------------------------------------------
|
||||
PLEASE READ THE ENTIRE DOCUMENT BEFORE DOING ANY ACTUAL CHANGES!!
|
||||
|
||||
@@ -10,7 +10,7 @@ OpenTTD includes projects for MSVC 2005.NET and MSVC 2008.NET. Both will
|
||||
compile out of the box, providing you have the required libraries/headers;
|
||||
which ones, see below. There is no support for VS6 or MSVC 2002, or
|
||||
MSVC 2003.NET. You are therefore strongly encouraged to either upgrade to
|
||||
MSVC 2008 Express (free) or use GCC.
|
||||
MSVC 2005 Express (free) or use GCC.
|
||||
|
||||
|
||||
1) REQUIRED FILES
|
||||
@@ -36,16 +36,16 @@ You need an SVN-client to download the source from subversion:
|
||||
2) INCLUDES AND LIBRARIES
|
||||
-------------------------
|
||||
Put the newly downloaded files in the VC lib\ and include\ directories; where
|
||||
"C:\Program Files\Microsoft Visual Studio 9.0\VC" is your location of Visual C.
|
||||
"C:\Program Files\Microsoft Visual Studio 8\VC" is your location of Visual C.
|
||||
If you are compiling for an x64 system, use the include\ and lib\ directories
|
||||
from the win64/ folder.
|
||||
|
||||
* openttd-useful.zip\include\*
|
||||
* afxresh.h
|
||||
to > C:\Program Files\Microsoft Visual Studio 9.0\VC\Include
|
||||
to > C:\Program Files\Microsoft Visual Studio 8\VC\Include
|
||||
|
||||
* openttd-useful.zip\lib\*
|
||||
to > C:\Program Files\Microsoft Visual Studio 9.0\VC\Lib
|
||||
to > C:\Program Files\Microsoft Visual Studio 8\VC\Lib
|
||||
|
||||
Custom directories might be recommended, check 2.2)
|
||||
|
||||
@@ -76,7 +76,14 @@ list, above all others, otherwise compilation will most likely fail!!
|
||||
|
||||
3) TTD GRAPHICS FILES
|
||||
---------------------
|
||||
See section 4.1 of readme.txt for the required 3rdparty files and how to install them.
|
||||
Copy the following files from Transport Tycoon Deluxe to the bin/data folder
|
||||
|
||||
* sample.cat
|
||||
* trg1r.grf
|
||||
* trgcr.grf
|
||||
* trghr.grf
|
||||
* trgir.grf
|
||||
* trgtr.grf
|
||||
|
||||
|
||||
4) COMPILING
|
||||
@@ -105,4 +112,4 @@ to ask about reasons; or just wait. The problem will most likely solve itself
|
||||
within a few days as the problem is noticed and fixed.
|
||||
|
||||
An up-to-date version of this README can be found on the wiki:
|
||||
http://wiki.openttd.org/Microsoft_Visual_C%2B%2B_2008_Express_Editions
|
||||
http://wiki.openttd.org/index.php/MicrosoftVisualCExpress
|
||||
|
@@ -11,13 +11,12 @@
|
||||
<body>
|
||||
|
||||
<h3><a name="Landscape">Landscape</a></h3>
|
||||
<p>Eight attributes (counting "<span style="font-weight: bold;">type_height</span>") hold the informations about a tile.<BR>
|
||||
<p>Seven attributes (counting "<span style="font-weight: bold;">type_height</span>") hold the informations about a tile.<BR>
|
||||
These attributes are referred to as
|
||||
"<span style="font-weight: bold;">type_height</span>",
|
||||
"<span style="font-weight: bold;">m1</span>", "<span style="font-weight: bold;">m2</span>",
|
||||
"<span style="font-weight: bold;">m3</span>", "<span style="font-weight: bold;">m4</span>",
|
||||
"<span style="font-weight: bold;">m5</span>", "<span style="font-weight: bold;">m6</span>"
|
||||
and "<span style="font-weight: bold;">m7</span>".<BR>
|
||||
"<span style="font-weight: bold;">m5</span>" and "<span style="font-weight: bold;">m6</span>".<BR>
|
||||
The most important value is the class of a tile, stored in the upper 4 bits
|
||||
of the <span style="font-weight: bold;">type_height</span> attribute. The lower 4 bits are used to encode the height and
|
||||
slope data.
|
||||
@@ -53,10 +52,11 @@
|
||||
</p>
|
||||
|
||||
The <a name="OwnershipInfo">owner of a tile</a>, as frequently associated with attribute m1,
|
||||
can be either companies (human or AI) or "Game entities".
|
||||
can be either players (human or AI) or "Game entities".
|
||||
They are identified using:
|
||||
<table border="1">
|
||||
<tr><td><tt>00..0E</tt> </td><td align=left>Normal companies</td></tr>
|
||||
<tr><td><tt>00</tt> </td><td align=left>current player</td></tr>
|
||||
<tr><td><tt>01..08</tt> </td><td align=left>AI or network players</td></tr>
|
||||
<tr><td><tt>0F</tt> </td><td align=left>a town owns the tile</td></tr>
|
||||
<tr><td><tt>10</tt> </td><td align=left>nobody owns the tile</td></tr>
|
||||
<tr><td><tt>11</tt> </td><td align=left>"water" owns the tile</td></tr>
|
||||
@@ -81,7 +81,6 @@
|
||||
<li>m1: <a href="#OwnershipInfo">owner</a> of the tile (normally <tt>10</tt>)</li>
|
||||
<li>m2: see fields</li>
|
||||
<li>m3 bits 3..0: see fields</li>
|
||||
<li>m3 bit 4: set if the tile is covered with snow</li>
|
||||
<li>m4 bits 7..5: type of hedge on the SW border of the tile (1 through 6, or 0=none)</li>
|
||||
<li>m4 bits 4..2: same as 7..5, but for the SE border</li>
|
||||
<li>m5 bits 7..5: update counter, incremented on every periodic processing for tile types,
|
||||
@@ -184,7 +183,7 @@
|
||||
<td>
|
||||
<ul>
|
||||
<li>m1: <a href="#OwnershipInfo">owner</a> of the tile</li>
|
||||
<li>m2: see signals</li>
|
||||
<li>m2: see waypoint and signals</li>
|
||||
<li>m3 bits 7..4: see signals</li>
|
||||
<li>m3 bits 3..0 = <a name="TrackType">track type</a>:
|
||||
<table>
|
||||
@@ -453,9 +452,27 @@
|
||||
<li>m2 bit 11: opposite track is reserved, too</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>m5 bit 7 set, bit 6 clear: checkpoint
|
||||
<ul>
|
||||
<li>m2: index into the array of waypoints.</li>
|
||||
<li>m5 bit 0:
|
||||
<table>
|
||||
<tr>
|
||||
<td><tt>0</tt> </td>
|
||||
<td>in X direction</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><tt>1</tt> </td>
|
||||
<td>in Y direction</td>
|
||||
</tr>
|
||||
</table>
|
||||
</li>
|
||||
<li>m5 bit 4: pbs reservation state</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>m5 bit 7 set, bit 6 set: railway depot
|
||||
<ul>
|
||||
<li>m2: Depot index</li>
|
||||
<li>m5 bits 1..0: exit towards
|
||||
<table>
|
||||
<tr>
|
||||
@@ -602,7 +619,7 @@
|
||||
</table>
|
||||
</li>
|
||||
<li>m5 bit 5: set if crossing lights are on</li>
|
||||
<li>m7 bits 4..0: <a href="#OwnershipInfo">owner</a> of the road type 0 (normal road)</li>
|
||||
<li>m6 bits 4..0: <a href="#OwnershipInfo">owner</a> of the road type 0 (normal road)</li>
|
||||
<li>m5 bit 4: pbs reservation state</li>
|
||||
</ul>
|
||||
</li>
|
||||
@@ -611,7 +628,6 @@
|
||||
<li>m5 bit 7 set, bit 6 clear: road depot
|
||||
<ul>
|
||||
<li>m1: <a href="#OwnershipInfo">owner</a> of the depot</li>
|
||||
<li>m2: Depot index</li>
|
||||
<li>m5 bits 3..0: exit towards:
|
||||
<table>
|
||||
<tr>
|
||||
@@ -724,7 +740,8 @@
|
||||
<td>
|
||||
<ul>
|
||||
<li>m1: <a href="#OwnershipInfo">owner</a> (normally <tt>10</tt>)</li>
|
||||
<li>m2 bits 8..6: ground
|
||||
<li>m2 bits 7..6: ground density
|
||||
<li>m2 bits 5..4: ground
|
||||
<table>
|
||||
|
||||
<tr>
|
||||
@@ -746,14 +763,8 @@
|
||||
<td align=left><tt>3</tt> </td>
|
||||
<td>on shore (density must be 3)</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td align=left><tt>4</tt> </td>
|
||||
<td>on snow with rough land underneed</td>
|
||||
</tr>
|
||||
</table>
|
||||
</li>
|
||||
<li>m2 bits 5..4: ground density</li>
|
||||
<li>m2 bits 3..0: update counter, incremented on every periodic processing.<br>
|
||||
on wraparound the growth status is updated (or, if it's <tt>3</tt>, a random action is taken)</li>
|
||||
<li>m3 bits 7..0: type of trees:
|
||||
@@ -824,9 +835,9 @@
|
||||
<ul>
|
||||
<li>m1: <a href="#OwnershipInfo">owner</a> of the station</li>
|
||||
<li>m2: index into the array of stations</li>
|
||||
<li>m3 bits 7..4: persistent random data for newstations (railway stations/waypoints)</li>
|
||||
<li>m3 bits 7..4: persistent random data for newstations (train station)</li>
|
||||
<li>m3 bits 7..4: <a href="#OwnershipInfo">owner</a> of tram tracks (road stop)</li>
|
||||
<li>m3 bits 3..0: <a href="#TrackType">track type</a> for railway stations/waypoints</li>
|
||||
<li>m3 bits 3..0: <a href="#TrackType">track type</a> for railway stations</li>
|
||||
<li>m3 bits 1..0: water class for buoys and water part of docks</li>
|
||||
<li>m4: custom station id; 0 means standard graphics</li>
|
||||
<li>m5: graphics index (range from 0..255 for each station type):
|
||||
@@ -854,22 +865,6 @@
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td nowrap valign=top><tt>00</tt>..<tt>01</tt></td>
|
||||
<td align=left>waypoints
|
||||
<table>
|
||||
<tr>
|
||||
<td><tt>00</tt> </td>
|
||||
<td align=left>in X direction</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt>01</tt> </td>
|
||||
<td align=left>in Y direction</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td nowrap valign=top><tt>00</tt>..<tt>8F</tt></td>
|
||||
<td align=left>all airports</td>
|
||||
@@ -877,7 +872,7 @@
|
||||
|
||||
<tr>
|
||||
<td nowrap valign=top><tt>00</tt>..<tt>05</tt> </td>
|
||||
<td align=left>road stops
|
||||
<td align=left>road stops:
|
||||
<table>
|
||||
<tr>
|
||||
<td><tt>00</tt> </td>
|
||||
@@ -940,13 +935,13 @@
|
||||
</tr>
|
||||
</table>
|
||||
</li>
|
||||
<li>m6 bits 5..3: the station type (rail, airport, truck, bus, oilrig, dock, buoy, waypoint)</li>
|
||||
<li>m6 bit 2: pbs reservation state for railway stations/waypoints</li>
|
||||
<li>m6 bits 5..3: the station type (rail, airport, truck, bus, oilrig, dock, buoy)</li>
|
||||
<li>m6 bit 2: pbs reservation state for railway stations</li>
|
||||
|
||||
<li>m6 bits 1..0 : <a href="#tropic_zone">Tropic zone definition</a></li>
|
||||
<li>m7 bits 4..0: <a href="#OwnershipInfo">owner</a> of road (road stops)</li>
|
||||
<li>m7 bits 7..6: present road types (road stops)</li>
|
||||
<li>m7: animation frame (railway stations/waypoints)</li>
|
||||
<li>m7: animation frame (train station)</li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -960,7 +955,6 @@
|
||||
<td>
|
||||
<ul>
|
||||
<li>m1: <a href="#OwnershipInfo">owner</a> (for sea, rivers, and coasts normally <tt>11</tt>)</li>
|
||||
<li>m2: Depot index (for depots only)</li>
|
||||
<li>m3 bits 1..0 : Water class (sea, canal or river)
|
||||
<li>m4: Random data for canal or river tiles</li>
|
||||
<li>m5: tile type:
|
||||
|
@@ -68,7 +68,7 @@ the array so you can quickly see what is used and what is not.
|
||||
<td class="bits">XXXX XXXX</td>
|
||||
<td class="bits"><span class="option">~~~~ ~~~~</span></td>
|
||||
<td class="bits"><span class="free">OOOO OOOO OOOO OOOO</span></td>
|
||||
<td class="bits"><span class="free">OOO</span>X <span class="free">OOOO</span></td>
|
||||
<td class="bits"><span class="free">OOOO OOOO</span></td>
|
||||
<td class="bits">XXXX XX<span class="free">OO</span></td>
|
||||
<td class="bits">XXXX XXXX</td>
|
||||
<td class="bits">XX<span class="free">OO OO</span>XX</td>
|
||||
@@ -79,14 +79,14 @@ the array so you can quickly see what is used and what is not.
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits"><span class="option">~~~~ ~~~~</span></td>
|
||||
<td class="bits">XXXX XXXX XXXX XXXX</td>
|
||||
<td class="bits"><span class="free">OOO</span>X XXXX</td>
|
||||
<td class="bits"><span class="free">OOOO</span> XXXX</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">XX<span class="free">OO OO</span>XX</td>
|
||||
<td class="bits"><span class="free">OOOO OOOO</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td rowspan=3>1</td>
|
||||
<td rowspan=4>1</td>
|
||||
<td class="caption">rail</td>
|
||||
<td class="bits">XXXX XXXX</td>
|
||||
<td class="bits"><span class="option">~~~</span>X XXXX</td>
|
||||
@@ -112,13 +112,24 @@ the array so you can quickly see what is used and what is not.
|
||||
<td class="caption">depot</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">XXXX XXXX XXXX XXXX</td>
|
||||
<td class="bits"><span class="free">OOOO OOOO OOOO OOOO</span></td>
|
||||
<td class="bits"><span class="free">OOOO</span> <span class="option">~~</span>XX</td>
|
||||
<td class="bits"><span class="free">OOOO</span> XXXX</td>
|
||||
<td class="bits">XX<span class="free">O</span>X <span class="free">O</span>XXX</td>
|
||||
<td class="bits">XX<span class="free">OO OO</span>XX</td>
|
||||
<td class="bits"><span class="free">OOOO OOOO</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="caption">waypoint</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">XXXX XXXX XXXX XXXX</td>
|
||||
<td class="bits"><span class="free">OOOO</span> <span class="option">~~</span>XX</td>
|
||||
<td class="bits"><span class="free">OOOO</span> XXXX</td>
|
||||
<td class="bits">XX<span class="free">O</span>X <span class="free">OOO</span>X</td>
|
||||
<td class="bits">XX<span class="free">OO OO</span>XX</td>
|
||||
<td class="bits"><span class="free">OOOO OOOO</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td rowspan=3>2</td>
|
||||
<td class="caption">road</td>
|
||||
@@ -146,7 +157,7 @@ the array so you can quickly see what is used and what is not.
|
||||
<td class="caption">road depot</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">XXXX XXXX XXXX XXXX</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits"><span class="free">OOOO OOOO</span></td>
|
||||
<td class="bits"><span class="free">OOOO OOOO</span></td>
|
||||
<td class="bits">XX<span class="free">OO OO</span>XX</td>
|
||||
@@ -170,7 +181,7 @@ the array so you can quickly see what is used and what is not.
|
||||
<td class="caption">trees</td>
|
||||
<td class="bits">XXXX XXXX</td>
|
||||
<td class="bits"><span class="option">~~~~ ~~~~</span></td>
|
||||
<td class="bits"><span class="free">OOOO OOO</span>X XXXX XXXX</td>
|
||||
<td class="bits"><span class="free">OOOO OOOO</span> XXXX XXXX</td>
|
||||
<td class="bits"><span class="option">~~</span>XX XXXX</td>
|
||||
<td class="bits">XXXX XX<span class="free">OO</span></td>
|
||||
<td class="bits">XX<span class="free">OO O</span>XXX</td>
|
||||
@@ -178,7 +189,7 @@ the array so you can quickly see what is used and what is not.
|
||||
<td class="bits"><span class="free">OOOO OOOO</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td rowspan=7>5</td>
|
||||
<td rowspan=6>5</td>
|
||||
<td class="caption">rail station</td>
|
||||
<td class="bits">XXXX XXXX</td>
|
||||
<td class="bits"><span class="option">~~~</span>X XXXX</td>
|
||||
@@ -189,27 +200,16 @@ the array so you can quickly see what is used and what is not.
|
||||
<td class="bits"><span class="free">OO</span>XX XXXX</td>
|
||||
<td class="bits">XXXX XXXX</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="caption">rail waypoint</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="caption">road stop</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">XXXX <span class="free">OOOO</span></td>
|
||||
<td class="bits">XXXX XXXX</td>
|
||||
<td class="bits"><span class="option">~~~~ ~~~~</span></td>
|
||||
<td class="bits"><span class="option">~~~~ ~</span>XXX</td>
|
||||
<td class="bits"><span class="free">OO</span>XX XXXX</td>
|
||||
<td class="bits">XX<span class="free">O</span>X XXXX</td>
|
||||
<td class="bits">XXXX X<span class="free">O</span>XX</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="caption">dock</td>
|
||||
@@ -282,7 +282,7 @@ the array so you can quickly see what is used and what is not.
|
||||
<td class="caption">shipdepot</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">-inherit-</td>
|
||||
<td class="bits">XXXX XXXX XXXX XXXX</td>
|
||||
<td class="bits"><span class="free">OOOO OOOO OOOO OOOO</span></td>
|
||||
<td class="bits"><span class="free">OOOO OO</span>XX</td>
|
||||
<td class="bits"><span class="free">OOOO OOOO</span></td>
|
||||
<td class="bits">-inherit-</td>
|
||||
|
@@ -31,15 +31,7 @@ shortname = XMPL
|
||||
; the version of this graphics set (read as single integer)
|
||||
version = 0
|
||||
; a fairly short description of the set
|
||||
; By adding '.<iso code>' you can translate the description.
|
||||
; Note that OpenTTD first tries the full ISO code, then the first
|
||||
; two characters and then uses the fallback (no '.<iso code>').
|
||||
; The ISO code matching is case sensitive!
|
||||
; So en_US will be used for en_GB if no en_GB translation is added.
|
||||
; As a result the below example has 'howdie' for en_US and en_GB but
|
||||
; 'foo' for all other languages.
|
||||
description = foo
|
||||
description.en_US = howdie
|
||||
; palette used by the set; either DOS or Windows
|
||||
palette = DOS
|
||||
|
||||
|
@@ -1,106 +0,0 @@
|
||||
;
|
||||
; Example file for the OpenTTD Base Music replacement sets.
|
||||
; This file consists of basically two different parts:
|
||||
; * metadata
|
||||
; * information about the files/songs
|
||||
;
|
||||
; Metadata contains information about the name and version
|
||||
; of the music set.
|
||||
;
|
||||
; == Getting started ==
|
||||
; - you can't add comments after values
|
||||
; - you have to fill the MD5 checksum for each file
|
||||
; - you may not miss any of the metadata or files items
|
||||
; - `openttd -h` lists all music replacement sets it found to be correct
|
||||
; - `openttd -d grf=1` shows warnings/errors when parsing an .obm file
|
||||
; - `openttd -M <name>` starts OpenTTD with the given set (case sensitive)
|
||||
; - adding `musicset = <name>` to the misc section of openttd.cfg makes
|
||||
; OpenTTD start with that sound set by default
|
||||
; - there is a command line tool for all platforms called md5sum that can
|
||||
; create the MD5 checksum you need.
|
||||
; - all files specified in this file are search relatively to the path where
|
||||
; this file is found, i.e. if the sound files are in a subdir you have
|
||||
; to add that subdir to the names in this file to! It will NOT search for
|
||||
; a file named like specified in here.
|
||||
|
||||
[metadata]
|
||||
; the name of the pack, preferably less than 16 characters
|
||||
name = example
|
||||
; the short name (4 characters), used to identify this set
|
||||
shortname = XMPL
|
||||
; the version of this sound set (read as single integer)
|
||||
version = 0
|
||||
; a fairly short description of the set
|
||||
; By adding '.<iso code>' you can translate the description.
|
||||
; Note that OpenTTD first tries the full ISO code, then the first
|
||||
; two characters and then uses the fallback (no '.<iso code>').
|
||||
; The ISO code matching is case sensitive!
|
||||
; So en_US will be used for en_GB if no en_GB translation is added.
|
||||
; As a result the below example has 'howdie' for en_US and en_GB but
|
||||
; 'foo' for all other languages.
|
||||
description = foo
|
||||
description.en_US = howdie
|
||||
|
||||
; The files section lists the files that replace songs.
|
||||
; The file names are case sensitive.
|
||||
; You can have empty file names; in that case no song will be loaded
|
||||
; for that 'entry'.
|
||||
[files]
|
||||
; The theme song for OpenTTD
|
||||
theme = THEME_SONG.GM
|
||||
; The songs in the 'old style' category
|
||||
old_0 =
|
||||
old_1 =
|
||||
old_2 =
|
||||
old_3 =
|
||||
old_4 =
|
||||
old_5 =
|
||||
old_6 =
|
||||
old_7 =
|
||||
old_8 =
|
||||
old_9 =
|
||||
; The songs in the 'new style' category
|
||||
new_0 =
|
||||
new_1 =
|
||||
new_2 =
|
||||
new_3 =
|
||||
new_4 =
|
||||
new_5 =
|
||||
new_6 =
|
||||
new_7 =
|
||||
new_8 =
|
||||
new_9 =
|
||||
; The songs in the 'ezy street' category
|
||||
ezy_0 =
|
||||
ezy_1 =
|
||||
ezy_2 =
|
||||
ezy_3 =
|
||||
ezy_4 =
|
||||
ezy_5 =
|
||||
ezy_6 =
|
||||
ezy_7 =
|
||||
ezy_8 =
|
||||
ezy_9 =
|
||||
|
||||
; The names section lists the song names for the given file name.
|
||||
; Note that the list of files is case sensitive. Each file listed in the
|
||||
; files section must be listed here with it's song name, otherwise you
|
||||
; will get a lot of warnings when starting OpenTTD.
|
||||
[names]
|
||||
THEME_SONG.GM = Tycoon DELUXE Theme
|
||||
|
||||
; The md5s section lists the MD5 checksum for the files that replace them.
|
||||
; Note that the list of files is case sensitive. Each file listed in the
|
||||
; files section must be listed here with it's MD5 checksum, otherwise you
|
||||
; will get a lot of warnings when starting OpenTTD.
|
||||
[md5s]
|
||||
THEME_SONG.GM = 45cfec1b9d8c7a0ad45e755833cbf221
|
||||
|
||||
; The origin section provides the possibility to put and extra line into
|
||||
; the warning that a file is missing/corrupt. This can be used to tell
|
||||
; them where to find it. It works on the filename specified in the
|
||||
; files section and if that is not found it will fall back to the default
|
||||
; as shown below here.
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
||||
THEME_SONG.GM = You can find it also on your Transport Tycoon Deluxe CD-ROM.
|
@@ -1,64 +0,0 @@
|
||||
;
|
||||
; Example file for the OpenTTD Base Sound replacement sets.
|
||||
; This file consists of basically two different parts:
|
||||
; * metadata
|
||||
; * information about the files
|
||||
;
|
||||
; Metadata contains information about the name and version
|
||||
; of the sound set.
|
||||
;
|
||||
; == Getting started ==
|
||||
; - you can't add comments after values
|
||||
; - you have to fill the MD5 checksum for each file
|
||||
; - you may not miss any of the metadata or files items
|
||||
; - `openttd -h` lists all sound replacements sets it found to be correct
|
||||
; - `openttd -d grf=1` shows warnings/errors when parsing an .obs file
|
||||
; - `openttd -S <name>` starts OpenTTD with the given set (case sensitive)
|
||||
; - adding `soundsset = <name>` to the misc section of openttd.cfg makes
|
||||
; OpenTTD start with that sound set by default
|
||||
; - there is a command line tool for all platforms called md5sum that can
|
||||
; create the MD5 checksum you need.
|
||||
; - all files specified in this file are search relatively to the path where
|
||||
; this file is found, i.e. if the sound files are in a subdir you have
|
||||
; to add that subdir to the names in this file to! It will NOT search for
|
||||
; a file named like specified in here.
|
||||
|
||||
[metadata]
|
||||
; the name of the pack, preferably less than 16 characters
|
||||
name = example
|
||||
; the short name (4 characters), used to identify this set
|
||||
shortname = XMPL
|
||||
; the version of this sound set (read as single integer)
|
||||
version = 0
|
||||
; a fairly short description of the set
|
||||
; By adding '.<iso code>' you can translate the description.
|
||||
; Note that OpenTTD first tries the full ISO code, then the first
|
||||
; two characters and then uses the fallback (no '.<iso code>').
|
||||
; The ISO code matching is case sensitive!
|
||||
; So en_US will be used for en_GB if no en_GB translation is added.
|
||||
; As a result the below example has 'howdie' for en_US and en_GB but
|
||||
; 'foo' for all other languages.
|
||||
description = foo
|
||||
description.en_US = howdie
|
||||
|
||||
; The files section lists the files that replace sprites.
|
||||
; The file names are case sensitive.
|
||||
[files]
|
||||
; The file with the samples. Must contain exactly 73 samples.
|
||||
samples = SAMPLES.CAT
|
||||
|
||||
; The md5s section lists the MD5 checksum for the files that replace them.
|
||||
; Note that the list of files is case sensitive. Each file listed in the
|
||||
; files section must be listed here with it's MD5 checksum, otherwise you
|
||||
; will get a lot of warnings when starting OpenTTD.
|
||||
[md5s]
|
||||
SAMPLES.CAT = 422ea3dd074d2859bb51639a6e0e85da
|
||||
|
||||
; The origin section provides the possibility to put and extra line into
|
||||
; the warning that a file is missing/corrupt. This can be used to tell
|
||||
; them where to find it. It works on the filename specified in the
|
||||
; files section and if that is not found it will fall back to the default
|
||||
; as shown below here.
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
||||
SAMPLES.CAT = You can find it also on your Transport Tycoon Deluxe CD-ROM.
|
@@ -1,6 +1,6 @@
|
||||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.Dd Jan 18, 2010
|
||||
.Dd Feb 05, 2009
|
||||
.Dt OPENTTD 6
|
||||
.Sh NAME
|
||||
.Nm openttd
|
||||
@@ -11,7 +11,7 @@
|
||||
.Op Fl a Ar ai
|
||||
.Op Fl b Ar blitter
|
||||
.Op Fl c Ar config_file
|
||||
.Op Fl d Ar [level | cat=lvl[,...]]
|
||||
.Op Fl d Ar [level | cat=lvl[, ...]]
|
||||
.Op Fl D Ar [host][:port]
|
||||
.Op Fl g Ar [savegame]
|
||||
.Op Fl G Ar seed
|
||||
@@ -19,13 +19,9 @@
|
||||
.Op Fl I Ar graphicsset
|
||||
.Op Fl l Ar host[:port]
|
||||
.Op Fl m Ar driver
|
||||
.Op Fl M Ar musicset
|
||||
.Op Fl n Ar host[:port][#player]
|
||||
.Op Fl p Ar password
|
||||
.Op Fl P Ar password
|
||||
.Op Fl r Ar widthxheight
|
||||
.Op Fl s Ar driver
|
||||
.Op Fl S Ar soundset
|
||||
.Op Fl t Ar year
|
||||
.Op Fl v Ar driver
|
||||
.Sh OPTIONS
|
||||
@@ -33,18 +29,16 @@
|
||||
.It Fl a Ar ai
|
||||
Set the AI, see
|
||||
.Fl h
|
||||
for a full list
|
||||
.It Fl b Ar blitter
|
||||
Set the blitter, see
|
||||
.Fl h
|
||||
for a full list
|
||||
.It Fl c Ar config_file
|
||||
Use 'config_file' instead of 'openttd.cfg'
|
||||
.It Fl d Ar [level]
|
||||
Set debug verbosity for all categories to
|
||||
.Ar level
|
||||
or 1 if omitted
|
||||
.It Fl d Ar cat=level[,...]
|
||||
.It Fl d Ar cat=level[, ...]
|
||||
Set debug verbosity for a specific category
|
||||
.It Fl D Ar [host][:port]
|
||||
Start a dedicated server. Sets network debug level to 6. If you want to change this, use
|
||||
@@ -56,59 +50,38 @@ Seed the pseudo random number generator
|
||||
.It Fl e
|
||||
Start in world editor mode
|
||||
.It Fl f
|
||||
Fork into background (dedicated server only, see
|
||||
Fork into background (dedicated only, see
|
||||
.Fl D )
|
||||
.It Fl g Ar [savegame]
|
||||
Load
|
||||
.Ar savegame
|
||||
at start or start a new game if omitted. The
|
||||
.Ar savegame
|
||||
must be either absolute or relative to the current path or one of the search paths.
|
||||
at start or start a new game if omitted
|
||||
.It Fl h
|
||||
Display a summary of all options and lists all the available AIs, blitters, sound, music and video drivers, graphics sets and sound sets.
|
||||
Display a summary of all options and available AIs, blitters, drivers and graphic sets
|
||||
.It Fl i Ar palette
|
||||
Set the palette. '0' for the DOS palette, '1' for the Windows palette and '2' to autodetect (default).
|
||||
.sp
|
||||
The palette depends where the base graphics set originated from. If it came from the Transport Tycoon Deluxe for DOS it has the DOS palette, if it came from the Windows version of Transport Tycoon Deluxe it has the Windows palette. All others likely have the Windows palette as that is the most used palette.
|
||||
Set the palette, see
|
||||
.Fl h
|
||||
.It Fl I Ar graphicsset
|
||||
Set the graphics set, see
|
||||
.Fl h
|
||||
for a full list
|
||||
.It Fl l Ar host[:port]
|
||||
Redirect DEBUG(), See
|
||||
.Fl D
|
||||
.It Fl m Ar driver
|
||||
Set the music driver, see
|
||||
.Fl h
|
||||
for a full list
|
||||
.It Fl M Ar musicset
|
||||
Set the music set, see
|
||||
.Fl h
|
||||
for a full list
|
||||
.It Fl n Ar host[:port][#player]
|
||||
Join a network game, optionally specify a port to connect to and player to play as
|
||||
.It Fl p Ar password
|
||||
Password used to join server. Only useful with
|
||||
.Fl n
|
||||
.It Fl P Ar password
|
||||
Password used to join company. Only useful with
|
||||
.Fl n
|
||||
Join a network game, optionally specify player to play as and port to connect to
|
||||
.It Fl r Ar widthxheight
|
||||
Set the resolution
|
||||
.It Fl s Ar driver
|
||||
Set the sound driver, see
|
||||
.Fl h
|
||||
for a full list
|
||||
.It Fl S Ar soundset
|
||||
Set the sound set, see
|
||||
.Fl h
|
||||
for a full list
|
||||
.It Fl t Ar year
|
||||
Set the starting year
|
||||
.It Fl v Ar driver
|
||||
Set the video driver, see
|
||||
.Fl h
|
||||
for a full list
|
||||
.It Fl x
|
||||
Do not automatically save to config file on exit
|
||||
.El
|
||||
|
@@ -2,12 +2,6 @@
|
||||
|
||||
# $Id$
|
||||
|
||||
# This file is part of OpenTTD.
|
||||
# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
# OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
# Arguments given? Show help text.
|
||||
if [ "$#" != "0" ]; then
|
||||
cat <<EOF
|
||||
|
@@ -1,6 +1,6 @@
|
||||
OpenTTD's known bugs
|
||||
Last updated: 2010-01-21
|
||||
Release version: 1.0.0-beta3
|
||||
Last updated: 2009-12-01
|
||||
Release version: 0.7.4
|
||||
------------------------------------------------------------------------
|
||||
|
||||
|
||||
@@ -34,12 +34,25 @@ that you can find at: http://bugs.openttd.org
|
||||
If the bugs are closed but still listed here it means that the bug is fixed
|
||||
and that the nightlies and next major release will not have that bug.
|
||||
|
||||
- 3447 [OSX] SDL port is unuseable
|
||||
- 3194 [OSX] Full screen strobing/flickering
|
||||
- 2782 [OSX] Port hopelessly outdated
|
||||
- 3198 [OSX] "Could not get system colour space" error on some Mac OS X 10.6
|
||||
- 3194 [OSX] Full screen 'strobing' on some Mac OS X 10.6
|
||||
- 3190 [OSX] Compiling fails on some Mac OS X 10.6
|
||||
- 3159 [NewGRF] Autoreplace resets (or does not keep) value of variable F2
|
||||
- 3057 Road vehicle sometimes 'forget' the need for servicing
|
||||
- 3040 Not all alternatives are always shown in the "Join station" list
|
||||
- 2955 With path signals depots are less likely to be visited
|
||||
- 2891 Ignore signal does not keep the train running when in path signalled block till the next signal
|
||||
- 2769 No offer for buying bankrupt AIs
|
||||
- 2616 [NewGRF] Cloning creates vehicles with invalid subcargos
|
||||
- 2613 [NewGRF] House property 15 does not work
|
||||
- 2585 [OSX] OS' mouse pointer showing
|
||||
- 2484 [OSX] Cannot enter CJK characters
|
||||
- 2427 Vehicle owner gets paid for whole cargo feeder share
|
||||
- 1944 Road vehicles not picking empty drivethrough platform
|
||||
- 1762 Strange Autoreplace behaviour
|
||||
- 1495 Long vehicles might block multistop drivethrough stations
|
||||
- 1140 [OSX] Not smooth moving map with touchpad
|
||||
- 1072 Text overflows in several windows
|
||||
|
||||
|
||||
3) Known bugs that will not be solved:
|
||||
@@ -90,17 +103,6 @@ Lost trains ignore (block) exit signals [FS#1473]
|
||||
amount of work needed to write a system that prevents the lost trains
|
||||
from taking the wrong direction.
|
||||
|
||||
Vehicle owner of last transfer leg gets paid for all [FS#2427]
|
||||
When you make a transfer system that switches vehicle owners. This
|
||||
is only possible with 'industry stations', e.g. the oil rig station
|
||||
the owner of the vehicle that does the final delivery gets paid for
|
||||
the whole trip. It is not shared amongst the different vehicle
|
||||
owners that have participated in transporting the cargo.
|
||||
This sharing is not done because it would enormously increase the
|
||||
memory and CPU usage in big games for something that is happening
|
||||
in only one corner case. We think it is not worth the effort until
|
||||
sharing of stations is an official feature.
|
||||
|
||||
Forbid 90 degree turns does not work for crossing PBS paths [FS#2737]
|
||||
When you run a train through itself on a X junction with PBS turned on
|
||||
the train will not obey the 'forbid 90 degree turns' setting. This is
|
||||
@@ -136,28 +138,11 @@ Extreme CPU usage/hangs when using SDL and PulseAudio [FS#3294]
|
||||
OpenTTD can be extremely slow/use a lot of CPU when the sound is
|
||||
played via SDL and then through PulseAudio's ALSA wrapper. Under the
|
||||
same configuration OpenTTD, or rather SDL, might hang when exiting
|
||||
the game. This problem is seen most in Ubuntu 9.04 and higher.
|
||||
|
||||
This is because recent versions of the PulseAudio sound server are
|
||||
configured to use timer-based audio scheduling rather than
|
||||
interrupt-based audio scheduling. Configuring PulseAudio to force
|
||||
use of interrupt-based scheduling may resolve sound problems for
|
||||
some users. Under recent versions of Ubuntu Linux (9.04 and higher)
|
||||
this can be accomplished by changing the following line in the
|
||||
/etc/pulsa/default.pa file:
|
||||
load-module module-udev-detect
|
||||
to
|
||||
load-module module-udev-detect tsched=0
|
||||
Note that PulseAudio must be restarted for changes to take effect.
|
||||
Older versions of PulseAudio may use the module-hal-detect module
|
||||
instead. Adding tsched=0 to the end of that line will have a similar
|
||||
effect.
|
||||
|
||||
Another possible solution is selecting the "pulse" backend of SDL
|
||||
by either using "SDL_AUDIODRIVER=pulse openttd" at the command
|
||||
prompt or installing the 'libsdl1.2debian-pulseaudio' package from
|
||||
Ubuntu's Universe repository. For other distributions a similar
|
||||
package needs to be installed.
|
||||
the game. This setup seems to be the default configuration for
|
||||
Ubuntu 9.04 and later. For Ubuntu this issue can be solved by
|
||||
installing the 'libsdl1.2debian-pulseaudio' package from Ubuntu's
|
||||
Universe repository. For other distributions a similar package needs
|
||||
to be installed.
|
||||
|
||||
OpenTTD not properly resizing with SDL on X [FS#3305]
|
||||
Under some X window managers OpenTTD's window does not properly
|
||||
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 79 KiB |
@@ -1,265 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.0"
|
||||
width="256"
|
||||
height="256"
|
||||
id="svg2"
|
||||
inkscape:version="0.47 r22583"
|
||||
sodipodi:docname="openttd.svg">
|
||||
<metadata
|
||||
id="metadata42">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1177"
|
||||
id="namedview40"
|
||||
showgrid="false"
|
||||
inkscape:zoom="2.8284271"
|
||||
inkscape:cx="163.74991"
|
||||
inkscape:cy="132.32268"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg2" />
|
||||
<defs
|
||||
id="defs4">
|
||||
<inkscape:perspective
|
||||
sodipodi:type="inkscape:persp3d"
|
||||
inkscape:vp_x="0 : 124 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_z="256 : 124 : 1"
|
||||
inkscape:persp3d-origin="128 : 82.666667 : 1"
|
||||
id="perspective44" />
|
||||
<linearGradient
|
||||
id="linearGradient3421">
|
||||
<stop
|
||||
style="stop-color:#fe7600;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3423" />
|
||||
<stop
|
||||
style="stop-color:#f2b26d;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3425" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3269">
|
||||
<stop
|
||||
style="stop-color:#ffffff;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3271" />
|
||||
<stop
|
||||
style="stop-color:#ffffff;stop-opacity:0"
|
||||
offset="1"
|
||||
id="stop3273" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
x1="312.62323"
|
||||
y1="468.58658"
|
||||
x2="315.21729"
|
||||
y2="471.18063"
|
||||
id="linearGradient3275"
|
||||
xlink:href="#linearGradient3269"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
x1="312.62323"
|
||||
y1="468.58658"
|
||||
x2="315.21729"
|
||||
y2="471.18063"
|
||||
id="linearGradient3289"
|
||||
xlink:href="#linearGradient3269"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
x1="312.62323"
|
||||
y1="468.58658"
|
||||
x2="315.21729"
|
||||
y2="471.18063"
|
||||
id="linearGradient3308"
|
||||
xlink:href="#linearGradient3269"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.7071068,-0.7071068,0.7071068,0.7071068,-266.24277,420.94154)" />
|
||||
<linearGradient
|
||||
x1="312.62323"
|
||||
y1="468.58658"
|
||||
x2="315.21729"
|
||||
y2="471.18063"
|
||||
id="linearGradient3326"
|
||||
xlink:href="#linearGradient3269"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.7071068,-0.7071068,0.7071068,0.7071068,-266.24277,420.94154)" />
|
||||
<linearGradient
|
||||
x1="312.62323"
|
||||
y1="468.58658"
|
||||
x2="315.21729"
|
||||
y2="471.18063"
|
||||
id="linearGradient3336"
|
||||
xlink:href="#linearGradient3269"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0.3591922,-0.1487874)" />
|
||||
<linearGradient
|
||||
x1="312.62323"
|
||||
y1="468.58658"
|
||||
x2="315.21729"
|
||||
y2="471.18063"
|
||||
id="linearGradient3406"
|
||||
xlink:href="#linearGradient3269"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(-2.2643187,40.455238)" />
|
||||
<linearGradient
|
||||
x1="133.3282"
|
||||
y1="156.16792"
|
||||
x2="117.66125"
|
||||
y2="78.463249"
|
||||
id="linearGradient3431"
|
||||
xlink:href="#linearGradient3421"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
x1="133.3282"
|
||||
y1="156.16792"
|
||||
x2="117.66125"
|
||||
y2="78.463249"
|
||||
id="linearGradient3488"
|
||||
xlink:href="#linearGradient3421"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(2,2)" />
|
||||
<filter
|
||||
id="filter3566"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feGaussianBlur
|
||||
id="feGaussianBlur3568"
|
||||
stdDeviation="1.2236964"
|
||||
inkscape:collect="always" />
|
||||
</filter>
|
||||
<linearGradient
|
||||
x1="136.3282"
|
||||
y1="151.16792"
|
||||
x2="117.66125"
|
||||
y2="78.463249"
|
||||
id="linearGradient3571"
|
||||
xlink:href="#linearGradient3421"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
</defs>
|
||||
<g
|
||||
transform="translate(-246.4375,-405.5443)"
|
||||
id="layer1">
|
||||
<path
|
||||
d="m 127.34375,3.46875 c -0.48316,0.02376 -0.94805,0.22615 -1.3125,0.59375 L 7.65625,122.40625 c -0.78094,0.7811 -0.78094,2.06266 0,2.84375 L 25.25,142.84375 5,163.09375 c -0.78094,0.7811 -0.78094,2.03141 0,2.8125 l 80.40625,80.40625 c 0.7811,0.78094 2.03141,0.78093 2.8125,0 l 20.25,-20.25 17.59375,17.59375 c 0.7811,0.78093 2.03141,0.78093 2.8125,0 l 17.5625,-17.5625 20.21875,20.21875 c 0.78108,0.78094 2.06265,0.78093 2.84375,0 l 80.375,-80.40625 c 0.78094,-0.78109 0.78094,-2.0314 0,-2.8125 L 229.65625,142.875 247.25,125.28125 c 0.78094,-0.7811 0.78094,-2.06265 0,-2.84375 L 128.875,4.0625 c -0.0421,-0.04625 -0.11001,-0.11415 -0.15625,-0.15625 -0.39876,-0.33006 -0.89184,-0.46126 -1.375,-0.4375 z m -6,43.5625 14.15625,0 0,19.75 c 0.01,0.435733 0.30048,0.815 0.71875,0.9375 2.36672,0.715663 4.34765,1.46009 5.9375,2.1875 1.57854,0.722523 3.76284,1.94 6.53125,3.65625 0.23423,0.144983 0.51508,0.19598 0.78125,0.125 0.26615,-0.07098 0.49406,-0.25764 0.625,-0.5 l 2.875,-5.40625 7.75,0 9.34375,36.21875 -13.625,3.90625 c -4.11145,-10.161057 -10.59377,-17.79909 -19.46875,-22.625 -0.31359,-0.166457 -0.69786,-0.15518 -1,0.03125 -0.30216,0.186431 -0.47688,0.52006 -0.46875,0.875 l 0,24.03125 c 0.01,0.43573 0.30048,0.815 0.71875,0.9375 10.93974,3.10986 18.88772,6.27714 23.75,9.4375 4.89952,3.1848 8.58915,7.0982 11.15625,11.71875 2.57543,4.63598 3.84364,9.41467 3.84375,14.375 -1.1e-4,5.33303 -1.49612,10.44021 -4.5625,15.40625 -3.05188,4.94228 -7.57932,9.1061 -13.59375,12.46875 -5.99929,3.35409 -12.74816,5.29505 -20.375,5.84375 -0.52771,0.0331 -0.93848,0.47125 -0.9375,1 l 0,19.25 -14.15625,0 0,-20.65625 c 0.0115,-0.47702 -0.31562,-0.89572 -0.78125,-1 -6.24994,-1.46738 -12.82661,-4.66999 -19.71875,-9.6875 -0.25021,-0.18733 -0.57446,-0.24211 -0.875,-0.15625 -0.300532,0.0859 -0.54278,0.30252 -0.65625,0.59375 l -3.75,9.25 -7.625,0 -7.875,-42.34375 14.3125,-3.4375 c 2.78387,6.00776 5.47545,10.86469 8.09375,14.4375 2.72545,3.71918 5.79951,6.95217 9.21875,9.6875 2.53873,2.0772 5.32819,3.64369 8.34375,4.6875 0.30262,0.0995 0.64703,0.0602 0.90625,-0.125 0.25923,-0.18516 0.40226,-0.49396 0.40625,-0.8125 l 0,-27.875 c 0.008,-0.43878 -0.2706,-0.83165 -0.6875,-0.96875 -11.9575,-4.0043 -20.14727,-7.50583 -24.4375,-10.375 C 91.88074,118.97403 88.49102,115.30727 86,110.8125 83.50306,106.30724 82.24999,101.8073 82.25,97.25 c -1e-5,-5.212767 1.5369,-10.24246 4.65625,-15.125 3.11104,-4.869387 7.41684,-8.74009 12.96875,-11.625 5.52685,-2.871687 12.35433,-4.48215 20.5,-4.8125 0.54002,-0.01694 0.96896,-0.45971 0.96875,-1 l 0,-17.65625 z m -2,37.375 c -3.80484,0.61143 -6.64239,1.484763 -8.125,2.53125 -2.55269,1.82341 -3.68754,3.817503 -3.6875,6.21875 -3e-5,1.99888 0.82821,3.916143 2.6875,5.90625 1.5957,1.70818 4.79074,3.41885 9.125,5.03125 l 0,-19.6875 z m 18.15625,55.125 0,22.40625 c 3.64443,-0.60429 6.6344,-1.65745 8.8125,-3.25 2.37481,-1.73646 3.46868,-3.90374 3.46875,-6.875 -7e-5,-2.6212 -0.83434,-4.7944 -2.625,-6.6875 -2.27356,-2.32082 -5.55946,-4.16441 -9.65625,-5.59375 z"
|
||||
transform="translate(247,408.36218)"
|
||||
style="fill:#000000;fill-opacity:0.69019608;fill-rule:evenodd;stroke:none;filter:url(#filter3566)"
|
||||
id="path3453" />
|
||||
<path
|
||||
d="m 125.4375,3.46875 -118.375,118.375 118.375,118.375 118.40625,-118.375 L 125.4375,3.46875 z m -7.09375,40.5625 16.15625,0 0,20.75 c 2.39847,0.725255 4.41692,1.465836 6.0625,2.21875 1.64544,0.753136 3.86718,1.989686 6.65625,3.71875 l 3.15625,-5.9375 9.125,0 9.78125,37.90625 -15.375,4.4375 C 149.89001,96.694255 143.4247,89.040435 134.5,84.1875 l 0,24.03125 c 10.98855,3.12374 18.97973,6.29945 24,9.5625 5.02009,3.26318 8.85036,7.29338 11.5,12.0625 2.64944,4.76921 3.96864,9.71205 3.96875,14.84375 -1.1e-4,5.52222 -1.56729,10.83367 -4.71875,15.9375 -3.15166,5.10387 -7.80181,9.38205 -13.9375,12.8125 -6.13586,3.43045 -13.05918,5.41095 -20.8125,5.96875 l 0,20.25 -16.15625,0 0,-21.65625 c -6.41472,-1.50606 -13.12131,-4.79903 -20.09375,-9.875 l -4,9.875 -9.125,0 -8.21875,-44.09375 16,-3.84375 c 2.900524,6.35894 5.697538,11.34646 8.375,15 2.6774,3.65361 5.68442,6.8226 9.03125,9.5 2.45427,2.0081 5.13065,3.52723 8.03125,4.53125 l 0,-27.875 c -11.9927,-4.01609 -20.225144,-7.51572 -24.6875,-10.5 C 89.193843,117.73459 85.690854,113.94229 83.125,109.3125 80.559118,104.68285 79.249989,99.991365 79.25,95.25 c -9e-6,-5.410553 1.605147,-10.635971 4.8125,-15.65625 3.207321,-5.02008 7.654184,-9.01231 13.34375,-11.96875 5.68951,-2.956214 12.68204,-4.602705 20.9375,-4.9375 l 0,-18.65625 z m 0,37.15625 c -4.57399,0.613679 -7.82228,1.598881 -9.71875,2.9375 -2.73325,1.952387 -4.09379,4.29813 -4.09375,7.03125 -4e-5,2.287057 0.98853,4.4742 2.96875,6.59375 1.98014,2.119711 5.6004,4.09012 10.84375,5.875 l 0,-22.4375 z m 16.15625,54.875 0,25.125 c 4.35076,-0.55777 7.81241,-1.79097 10.40625,-3.6875 2.59369,-1.8965 3.87492,-4.45224 3.875,-7.6875 -8e-5,-2.84474 -0.95404,-5.31111 -2.90625,-7.375 -2.67751,-2.73317 -6.46645,-4.8689 -11.375,-6.375 z"
|
||||
transform="translate(247,408.36218)"
|
||||
style="fill:url(#linearGradient3571);fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
id="rect3418" />
|
||||
<rect
|
||||
width="113.67383"
|
||||
height="30.562906"
|
||||
x="581.44257"
|
||||
y="195.29802"
|
||||
transform="matrix(0.7071068,0.7071068,-0.7071068,0.7071068,0,0)"
|
||||
style="fill:#6ad636;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
id="rect3277" />
|
||||
<path
|
||||
d="m 271.41033,548.04524 -21.3701,21.3701 c -0.51722,0.5028 -0.72366,1.24514 -0.54025,1.94279 0.18341,0.69764 0.72825,1.24248 1.42588,1.42589 0.69765,0.1834 1.44,-0.023 1.9428,-0.54026 l 21.91555,-21.91555 -3.37388,-2.28297 z"
|
||||
style="opacity:0.7;fill:url(#linearGradient3406);fill-opacity:1;fill-rule:evenodd;stroke:none"
|
||||
id="path3404" />
|
||||
<rect
|
||||
width="167.41394"
|
||||
height="167.41394"
|
||||
x="554.57251"
|
||||
y="27.848526"
|
||||
transform="matrix(0.7071068,0.7071068,-0.7071068,0.7071068,0,0)"
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
id="rect2251" />
|
||||
<path
|
||||
d="m 373.71159,410.23833 c -0.81035,-0.62925 -1.9654,-0.54334 -2.67374,0.19888 l -118.37411,118.3741 c -0.51722,0.5028 -0.72366,1.24514 -0.54025,1.94279 0.18341,0.69764 0.72825,1.24248 1.42588,1.42589 0.69765,0.1834 1.44,-0.023 1.9428,-0.54026 l 118.3741,-118.3741 c 0.42126,-0.40199 0.64643,-0.96759 0.61671,-1.54911 -0.0297,-0.58152 -0.31136,-1.12123 -0.77139,-1.47819 l 0,0 z"
|
||||
style="opacity:0.7;fill:url(#linearGradient3336);fill-opacity:1;fill-rule:evenodd;stroke:none"
|
||||
id="path3256" />
|
||||
<rect
|
||||
width="113.67384"
|
||||
height="30.56292"
|
||||
x="54.718613"
|
||||
y="-752.58502"
|
||||
transform="matrix(-0.7071068,0.7071068,-0.7071068,-0.7071068,0,0)"
|
||||
style="fill:#6ad636;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4.00000048;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
id="rect3279" />
|
||||
<rect
|
||||
width="11.142811"
|
||||
height="14.090264"
|
||||
x="602.29895"
|
||||
y="203.53435"
|
||||
transform="matrix(0.7071068,0.7071068,-0.7071068,0.7071068,0,0)"
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
id="rect3291" />
|
||||
<rect
|
||||
width="11.142811"
|
||||
height="8.5145016"
|
||||
x="622.57172"
|
||||
y="203.53435"
|
||||
transform="matrix(0.7071068,0.7071068,-0.7071068,0.7071068,0,0)"
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
id="rect3293" />
|
||||
<path
|
||||
d="m 308.55497,616.32265 -7.87916,-7.87915 9.96333,-9.96333 7.87916,7.87916"
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dashoffset:0"
|
||||
id="rect3295" />
|
||||
<path
|
||||
d="m 315.01081,622.77849 9.96332,-9.96333 7.87916,7.87916 -9.96333,9.96332"
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dashoffset:0"
|
||||
id="rect3297" />
|
||||
<path
|
||||
d="m 445.04627,584.86337 1.41421,1.41422 9.96579,9.96578 1.41421,1.41422 1.41421,-1.41422 6.47445,-6.47444 -2.82843,-2.82843 2.82843,-2.82843 -7.13736,-7.13736 -2.82843,2.82843 -2.82842,-2.82843 -6.47445,6.47445 -1.41421,1.41421 z m 5.65685,0 5.06023,-5.06023 7.13736,7.13736 -5.06023,5.06023 -7.13736,-7.13736 z"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
||||
id="rect3347" />
|
||||
<path
|
||||
d="m 427.09359,605.64776 -7.87916,7.87915"
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dashoffset:0"
|
||||
id="rect3343" />
|
||||
<path
|
||||
d="m 433.11734,619.55066 -9.96333,-9.96333"
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dashoffset:0"
|
||||
id="path3352" />
|
||||
<path
|
||||
d="m 441.42857,591.31278 -7.87916,7.87916"
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dashoffset:0"
|
||||
id="path3364" />
|
||||
<path
|
||||
d="m 447.45232,605.21568 -9.96333,-9.96333"
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dashoffset:0"
|
||||
id="path3366" />
|
||||
<path
|
||||
d="m 296.30415,584.14518 -9.96332,9.96333"
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dashoffset:0"
|
||||
id="rect3380" />
|
||||
<path
|
||||
d="m 306.75446,602.36485 7.87915,7.87916"
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dashoffset:0"
|
||||
id="path3384" />
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 15 KiB |
@@ -1,33 +1,3 @@
|
||||
openttd (1.0.0~beta3) unstable; urgency=low
|
||||
|
||||
* New upstream release.
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 21 Jan 2010 00:01:02 +0100
|
||||
|
||||
openttd (1.0.0~beta2) unstable; urgency=low
|
||||
|
||||
* New upstream release.
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Tue, 05 Jan 2010 21:36:51 +0100
|
||||
|
||||
openttd (1.0.0~beta1) unstable; urgency=low
|
||||
|
||||
* New upstream release.
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 24 Dec 2009 01:01:01 +0100
|
||||
|
||||
openttd (0.7.5) unstable; urgency=low
|
||||
|
||||
* New upstream release.
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Wed, 23 Dec 2009 20:52:34 +0100
|
||||
|
||||
openttd (0.7.5~RC1) unstable; urgency=low
|
||||
|
||||
* New upstream release.
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Mon, 14 Dec 2009 19:28:37 +0100
|
||||
|
||||
openttd (0.7.4) unstable; urgency=low
|
||||
|
||||
* New upstream release.
|
||||
|
@@ -3,7 +3,7 @@ Section: contrib/games
|
||||
Priority: optional
|
||||
Maintainer: Matthijs Kooijman <matthijs@stdin.nl>
|
||||
Uploaders: Jordi Mallach <jordi@debian.org>
|
||||
Build-Depends: debhelper (>= 4.0.0), libsdl-dev, zlib1g-dev, libpng-dev, libfreetype6-dev, libfontconfig-dev, liblzo2-dev
|
||||
Build-Depends: debhelper (>= 4.0.0), libsdl-dev, zlib1g-dev, libpng-dev, libfreetype6-dev, libfontconfig-dev
|
||||
Standards-Version: 3.7.3
|
||||
Vcs-Browser: http://svn.debian.org/wsvn/collab-maint/deb-maint/openttd/trunk/
|
||||
Vcs-Svn: svn://svn.debian.org/svn/collab-maint/deb-maint/openttd/trunk
|
||||
|
@@ -1,2 +1,3 @@
|
||||
readme.txt
|
||||
docs/Manual.txt
|
||||
docs/multiplayer.txt
|
||||
|
@@ -1,21 +0,0 @@
|
||||
@echo off
|
||||
if "%1" == "" goto err
|
||||
if "%2" == "" goto err
|
||||
|
||||
echo Downloading NoSound...
|
||||
|
||||
%1\wget http://binaries.openttd.org/installer/nosound-NOSOUND_VERSION.7z -O %2/data/nosound.7z
|
||||
|
||||
echo Extracting NoSound...
|
||||
|
||||
%1\7za x -y -O%2/data %2/data/nosound.7z
|
||||
del %1\data\nosound.7z /n
|
||||
|
||||
echo NoSound has been installed.
|
||||
goto end
|
||||
|
||||
:err
|
||||
echo This batch file is only intended for use by the OpenTTD installer.
|
||||
echo Please visit www.openttd.org for details on downloading NoSound.
|
||||
|
||||
:end
|
@@ -1,21 +0,0 @@
|
||||
@echo off
|
||||
if "%1" == "" goto err
|
||||
if "%2" == "" goto err
|
||||
|
||||
echo Downloading OpenGFX...
|
||||
|
||||
%1\wget http://binaries.openttd.org/installer/opengfx-OPENGFX_VERSION.7z -O %2/data/opengfx.7z
|
||||
|
||||
echo Extracting OpenGFX...
|
||||
|
||||
%1\7za x -y -O%2/data %2/data/opengfx.7z
|
||||
del %1\data\opengfx.7z /n
|
||||
|
||||
echo OpenGFX has been installed.
|
||||
goto end
|
||||
|
||||
:err
|
||||
echo This batch file is only intended for use by the OpenTTD installer.
|
||||
echo Please visit www.openttd.org for details on downloading OpenGFX.
|
||||
|
||||
:end
|
@@ -1,21 +0,0 @@
|
||||
@echo off
|
||||
if "%1" == "" goto err
|
||||
if "%2" == "" goto err
|
||||
|
||||
echo Downloading OpenSFX...
|
||||
|
||||
%1\wget http://binaries.openttd.org/installer/opensfx-OPENSFX_VERSION.7z -O %2/data/opensfx.7z
|
||||
|
||||
echo Extracting OpenSFX...
|
||||
|
||||
%1\7za x -y -O%2/data %2/data/opensfx.7z
|
||||
del %1\data\opensfx.7z /n
|
||||
|
||||
echo OpenSFX has been installed.
|
||||
goto end
|
||||
|
||||
:err
|
||||
echo This batch file is only intended for use by the OpenTTD installer.
|
||||
echo Please visit www.openttd.org for details on downloading OpenSFX.
|
||||
|
||||
:end
|
@@ -1,85 +0,0 @@
|
||||
@echo off
|
||||
|
||||
set OPENTTD_VERSION=1.0.0-beta3
|
||||
set OPENSFX_VERSION=0.8.0
|
||||
set NOSOUND_VERSION=0.8.0
|
||||
set OPENGFX_VERSION=0.7.0
|
||||
|
||||
echo To make the installer, you must have the WarpIN compiler (wic) installed and in
|
||||
echo your path, as well as wget and unzip. This file will download the various DLLs
|
||||
echo to be distributed with the installer. If you do not want to continue, please
|
||||
echo press CTRL-C now.
|
||||
echo.
|
||||
pause
|
||||
|
||||
cd ..\..\..\bundle
|
||||
|
||||
if not exist SDL12.dll goto getsdl
|
||||
if not exist FSLib.dll goto getsdl
|
||||
goto libc
|
||||
|
||||
:getsdl
|
||||
|
||||
wget http://www.os2site.com/sw/dev/sdl/sdl-1.2.10-bin-20080804.zip -O dl.zip
|
||||
unzip -j dl.zip SDL/FSLib.dll SDL/SDL12.dll
|
||||
del dl.zip
|
||||
|
||||
:libc
|
||||
|
||||
if exist libc063.dll goto gcc
|
||||
|
||||
wget ftp://ftp.netlabs.org/pub/gcc/libc-0.6.3-csd3.zip -O dl.zip
|
||||
unzip -j dl.zip libc063.dll
|
||||
del dl.zip
|
||||
|
||||
:gcc
|
||||
|
||||
if exist gcc442.dll goto tools
|
||||
|
||||
wget http://www.owenrudge.net/various/gcc442.zip -O dl.zip
|
||||
unzip -j dl.zip gcc442.dll
|
||||
del dl.zip
|
||||
|
||||
:tools
|
||||
|
||||
cd ..\os\os2\installer
|
||||
if exist tools goto opengfx
|
||||
|
||||
mkdir tools
|
||||
cd tools
|
||||
|
||||
wget http://download.smedley.info/wget-1.11.4-os2-20090315.zip -O dl.zip
|
||||
unzip -j dl.zip wget/bin/wget.exe
|
||||
del dl.zip
|
||||
|
||||
wget ftp://ftp.os4.su/moveton/p7zip-9.04-bin-os2.zip -O dl.zip
|
||||
unzip -j dl.zip bin/7za.exe dll/ilibca.dll
|
||||
del dl.zip
|
||||
|
||||
cd ..
|
||||
|
||||
:opengfx
|
||||
|
||||
if exist opengfx goto opensfx
|
||||
|
||||
mkdir opengfx
|
||||
sed s/OPENGFX_VERSION/%OPENGFX_VERSION%/ < download_opengfx.cmd > opengfx\download_opengfx.cmd
|
||||
copy remove_opengfx.cmd opengfx
|
||||
|
||||
:opensfx
|
||||
if exist opensfx goto nosound
|
||||
|
||||
mkdir opensfx
|
||||
sed s/OPENSFX_VERSION/%OPENSFX_VERSION%/ < download_opensfx.cmd > opensfx\download_opensfx.cmd
|
||||
copy remove_opensfx.cmd opensfx
|
||||
|
||||
:nosound
|
||||
|
||||
mkdir nosound
|
||||
sed s/NOSOUND_VERSION/%NOSOUND_VERSION%/ < download_nosound.cmd > nosound\download_nosound.cmd
|
||||
copy remove_nosound.cmd nosound
|
||||
|
||||
:end
|
||||
|
||||
if exist openttd-%OPENTTD_VERSION%-os2.exe del openttd-%OPENTTD_VERSION%-os2.exe
|
||||
wic -a openttd-%OPENTTD_VERSION%-os2.exe 1 -c../../../bundle -r * 2 -ctools -r * 3 -copengfx -r * 4 -copensfx -r * 5 -cnosound -r * -U -s openttd.wis
|
@@ -1,106 +0,0 @@
|
||||
<WARPIN>
|
||||
<HEAD>
|
||||
<TITLE>OpenTTD</TITLE>
|
||||
|
||||
<!-- Please remember to increment the build number for each package
|
||||
when releasing a new stable version, particularly if there are
|
||||
also release candidates sharing the major/minor versions:
|
||||
|
||||
e.g., 0\7\1\16279 for 0.7.1-RC1,
|
||||
0\7\1\16365 for 0.7.1-RC2,
|
||||
0\7\1\16540 for 0.7.1 final
|
||||
-->
|
||||
|
||||
<PCK INDEX="1"
|
||||
PACKAGEID="OpenTTD\OpenTTD\OpenTTD\1\0\0\18862"
|
||||
TARGET="$(WARPIN_DEFAULTAPPSPATH)\OpenTTD"
|
||||
SELECT
|
||||
TITLE="OpenTTD"
|
||||
LONGFILENAMES
|
||||
BASE
|
||||
>OpenTTD is an open source transport simulation game</PCK>
|
||||
|
||||
<PCK INDEX="2"
|
||||
PACKAGEID="OpenTTD\OpenTTD\Downloader\1\0\0\18862"
|
||||
TARGET="$(WARPIN_DEFAULTAPPSPATH)\OpenTTD"
|
||||
SELECT
|
||||
TITLE="Download tools"
|
||||
REQUIRES=1
|
||||
FIXED
|
||||
>Tools required for downloading the OpenGFX/SFX packs</PCK>
|
||||
|
||||
<PCK INDEX="3"
|
||||
PACKAGEID="OpenTTD\OpenTTD\OpenGFX\1\0\0\18862"
|
||||
TARGET="$(WARPIN_DEFAULTAPPSPATH)\OpenTTD"
|
||||
SELECT
|
||||
TITLE="OpenGFX"
|
||||
LONGFILENAMES
|
||||
REQUIRES=2
|
||||
EXECUTE="$(3)\download_opengfx.cmd | $(1) $(/1)"
|
||||
DEEXECUTE="$(3)\remove_opengfx.cmd | $(1) $(/1)"
|
||||
FIXED
|
||||
>Downloads the OpenGFX graphics pack for OpenTTD</PCK>
|
||||
|
||||
<PCK INDEX="4"
|
||||
PACKAGEID="OpenTTD\OpenTTD\OpenSFX\1\0\0\18862"
|
||||
TARGET="$(WARPIN_DEFAULTAPPSPATH)\OpenTTD"
|
||||
SELECT
|
||||
TITLE="OpenSFX"
|
||||
LONGFILENAMES
|
||||
REQUIRES=2
|
||||
EXECUTE="$(4)\download_opensfx.cmd | $(1) $(/1)"
|
||||
DEEXECUTE="$(4)\remove_opensfx.cmd | $(1) $(/1)"
|
||||
FIXED
|
||||
>Downloads the OpenSFX sound effects pack for OpenTTD</PCK>
|
||||
|
||||
<PCK INDEX="5"
|
||||
PACKAGEID="OpenTTD\OpenTTD\NoSound\1\0\0\18862"
|
||||
TARGET="$(WARPIN_DEFAULTAPPSPATH)\OpenTTD"
|
||||
SELECT
|
||||
TITLE="NoSound"
|
||||
LONGFILENAMES
|
||||
REQUIRES=2
|
||||
EXECUTE="$(5)\download_nosound.cmd | $(1) $(/1)"
|
||||
DEEXECUTE="$(5)\remove_nosound.cmd | $(1) $(/1)"
|
||||
FIXED
|
||||
>Downloads the NoSound pack for OpenTTD, to disable sound effects</PCK>
|
||||
|
||||
</HEAD>
|
||||
|
||||
<BODY>
|
||||
<!-- page 1: introductory page -->
|
||||
<PAGE INDEX="1" TYPE="README">
|
||||
<NEXTBUTTON TARGET=2>~Next</NEXTBUTTON>
|
||||
<README EXTRACTFROMPCK="1">README.TXT</README>
|
||||
<TEXT>Welcome to the OpenTTD installer. This program will install OpenTTD 1.0 on your system. Before we begin the installation process, please take a moment to read the following document.
|
||||
|
||||
Select "Next" to continue, or "Cancel" to abort installation.</TEXT>
|
||||
</PAGE>
|
||||
|
||||
<!-- page 2: licence page -->
|
||||
<PAGE INDEX="2" TYPE="README">
|
||||
<NEXTBUTTON TARGET=3>~Next</NEXTBUTTON>
|
||||
<README EXTRACTFROMPCK="1">COPYING</README>
|
||||
<TEXT>OpenTTD is licenced under the GNU General Public License. The text of the licence is below.
|
||||
|
||||
Select "Next" if you agree to this licence.
|
||||
Select "Cancel" to abort installation.</TEXT>
|
||||
</PAGE>
|
||||
|
||||
<!-- The TYPE=CONTAINER will list the packages which can be installed. -->
|
||||
<PAGE INDEX="3" TYPE="CONTAINER">
|
||||
<NEXTBUTTON TARGET="4">~Next</NEXTBUTTON>
|
||||
<TEXT>On this page, you may choose which components to install. If you don't own Transport Tycoon Deluxe, you will need to download OpenGFX (3MiB) and OpenSFX (10MiB).</TEXT>
|
||||
</PAGE>
|
||||
|
||||
<!-- Display another TEXT page to inform the user
|
||||
that installation will begin. We use the TARGET=0
|
||||
with the NEXTBUTTON tag which starts installation. -->
|
||||
|
||||
<PAGE INDEX="4" TYPE="TEXT">
|
||||
<NEXTBUTTON TARGET="0">I~nstall</NEXTBUTTON>
|
||||
<TEXT>
|
||||
Press "Install" to begin installing OpenTTD.</TEXT>
|
||||
</PAGE>
|
||||
</BODY>
|
||||
</WARPIN>
|
@@ -1,15 +0,0 @@
|
||||
@echo off
|
||||
if "%1" == "" goto err
|
||||
|
||||
echo Removing NoSound...
|
||||
|
||||
del %1\data\nosound\*.* /n
|
||||
rmdir %1\data\nosound
|
||||
|
||||
echo NoSound has been removed.
|
||||
goto end
|
||||
|
||||
:err
|
||||
echo This batch file is only intended for use by the OpenTTD installer.
|
||||
|
||||
:end
|
@@ -1,15 +0,0 @@
|
||||
@echo off
|
||||
if "%1" == "" goto err
|
||||
|
||||
echo Removing OpenGFX...
|
||||
|
||||
del %1\data\opengfx\*.* /n
|
||||
rmdir %1\data\opengfx
|
||||
|
||||
echo OpenGFX has been removed.
|
||||
goto end
|
||||
|
||||
:err
|
||||
echo This batch file is only intended for use by the OpenTTD installer.
|
||||
|
||||
:end
|
@@ -1,15 +0,0 @@
|
||||
@echo off
|
||||
if "%1" == "" goto err
|
||||
|
||||
echo Removing OpenSFX...
|
||||
|
||||
del %1\data\opensfx\*.* /n
|
||||
rmdir %1\data\opensfx
|
||||
|
||||
echo OpenSFX has been removed.
|
||||
goto end
|
||||
|
||||
:err
|
||||
echo This batch file is only intended for use by the OpenTTD installer.
|
||||
|
||||
:end
|
@@ -2,7 +2,7 @@
|
||||
#-------------------------------------------------------------------------------
|
||||
# spec file for the openttd rpm package
|
||||
#
|
||||
# Copyright (c) 2007-2010 The OpenTTD developers
|
||||
# Copyright (c) 2007-2009 The OpenTTD developers
|
||||
#
|
||||
# This file and all modifications and additions to the pristine
|
||||
# package are under the same license as the package itself
|
||||
@@ -13,7 +13,7 @@
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
Name: openttd
|
||||
Version: 1.0.0
|
||||
Version: 0.7.4
|
||||
Release: 1%{?dist}
|
||||
|
||||
Group: Amusements/Games
|
||||
|
@@ -1,23 +1,12 @@
|
||||
# Version numbers to update
|
||||
!define APPV_MAJOR 1
|
||||
!define APPV_MINOR 0
|
||||
!define APPV_MAINT 0
|
||||
!define APPV_BUILD 2
|
||||
!define APPV_EXTRA "-beta3"
|
||||
|
||||
!define APPNAME "OpenTTD" ; Define application name
|
||||
!define APPVERSION "${APPV_MAJOR}.${APPV_MINOR}.${APPV_MAINT}${APPV_EXTRA}" ; Define application version
|
||||
!define APPVERSIONINTERNAL "${APPV_MAJOR}.${APPV_MINOR}.${APPV_MAINT}.${APPV_BUILD}" ; Define application version in X.X.X.X
|
||||
!define INSTALLERVERSION ${APPV_MAJOR}${APPV_MINOR}${APPV_MAINT}${APPV_BUILD}
|
||||
!define APPVERSION "0.7.4" ; Define application version
|
||||
!define APPVERSIONINTERNAL "0.7.4.0" ; Define application version in X.X.X.X
|
||||
!define INSTALLERVERSION 70 ; NEED TO UPDATE THIS FOR EVERY RELEASE!!!
|
||||
!include ${VERSION_INCLUDE}
|
||||
|
||||
!define APPURLLINK "http://www.openttd.org"
|
||||
!define APPNAMEANDVERSION "${APPNAME} ${APPVERSION}"
|
||||
|
||||
!define OPENGFX_BASE_VERSION "0.7.0"
|
||||
!define OPENSFX_BASE_VERSION "0.8.0"
|
||||
!define NOSOUND_BASE_VERSION "0.8.0"
|
||||
|
||||
!define MUI_ICON "..\..\..\media\openttd.ico"
|
||||
!define MUI_UNICON "..\..\..\media\openttd.ico"
|
||||
!define MUI_WELCOMEFINISHPAGE_BITMAP "welcome.bmp"
|
||||
@@ -30,7 +19,7 @@ SetCompressor LZMA
|
||||
; Version Info
|
||||
Var AddWinPrePopulate
|
||||
VIProductVersion "${APPVERSIONINTERNAL}"
|
||||
VIAddVersionKey "ProductName" "OpenTTD ${APPBITS}-bit Installer for Windows ${EXTRA_VERSION}"
|
||||
VIAddVersionKey "ProductName" "OpenTTD Installer ${APPBITS} bits version ${EXTRA_VERSION}"
|
||||
VIAddVersionKey "Comments" "Installs ${APPNAMEANDVERSION}"
|
||||
VIAddVersionKey "CompanyName" "OpenTTD Developers"
|
||||
VIAddVersionKey "FileDescription" "Installs ${APPNAMEANDVERSION}"
|
||||
@@ -39,7 +28,7 @@ VIAddVersionKey "InternalName" "InstOpenTTD-${APPARCH}"
|
||||
VIAddVersionKey "FileVersion" "${APPVERSION}-${APPARCH}"
|
||||
VIAddVersionKey "LegalCopyright" " "
|
||||
; Main Install settings
|
||||
Name "${APPNAMEANDVERSION} ${APPBITS}-bit for Windows ${EXTRA_VERSION}"
|
||||
Name "${APPNAMEANDVERSION} ${APPBITS} bits version ${EXTRA_VERSION}"
|
||||
|
||||
; NOTE: Keep trailing backslash!
|
||||
InstallDirRegKey HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "Install Folder"
|
||||
@@ -53,15 +42,17 @@ Var SHORTCUTS
|
||||
Var CDDRIVE
|
||||
|
||||
; Modern interface settings
|
||||
!include "MUI2.nsh"
|
||||
!include "InstallOptions.nsh"
|
||||
!include "MUI.nsh"
|
||||
|
||||
!define MUI_ABORTWARNING
|
||||
!define MUI_WELCOMEPAGE_TITLE_3LINES
|
||||
!insertmacro MUI_PAGE_WELCOME
|
||||
|
||||
!define MUI_LICENSEPAGE_RADIOBUTTONS
|
||||
!insertmacro MUI_DEFAULT MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_ACCEPT "I &accept this agreement"
|
||||
!insertmacro MUI_DEFAULT MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_DECLINE "I &do not accept this agreement"
|
||||
!insertmacro MUI_PAGE_LICENSE "..\..\..\COPYING"
|
||||
|
||||
!define MUI_COMPONENTSPAGE_SMALLDESC
|
||||
!insertmacro MUI_PAGE_COMPONENTS
|
||||
|
||||
;---------------------------------
|
||||
@@ -83,7 +74,7 @@ Page custom SelectCDEnter SelectCDExit ": TTD folder"
|
||||
!define MUI_FINISHPAGE_TITLE_3LINES
|
||||
!define MUI_FINISHPAGE_RUN_TEXT "Run ${APPNAMEANDVERSION} now!"
|
||||
!define MUI_FINISHPAGE_RUN "$INSTDIR\openttd.exe"
|
||||
!define MUI_FINISHPAGE_LINK "Visit the OpenTTD site for the latest news, FAQs and downloads"
|
||||
!define MUI_FINISHPAGE_LINK "Visit the OpenTTD site for latest news, FAQs and downloads"
|
||||
!define MUI_FINISHPAGE_LINK_LOCATION "${APPURLLINK}"
|
||||
!define MUI_FINISHPAGE_NOREBOOTSUPPORT
|
||||
!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\readme.txt"
|
||||
@@ -110,35 +101,18 @@ Section "!OpenTTD" Section1
|
||||
|
||||
; Copy language files
|
||||
SetOutPath "$INSTDIR\lang\"
|
||||
File ${PATH_ROOT}bin\lang\english.lng
|
||||
|
||||
; Copy AI files
|
||||
SetOutPath "$INSTDIR\ai\"
|
||||
File ${PATH_ROOT}bin\ai\compat_*.nut
|
||||
File ${PATH_ROOT}bin\lang\*.lng
|
||||
|
||||
; Copy data files
|
||||
SetOutPath "$INSTDIR\data\"
|
||||
File ${PATH_ROOT}bin\data\*.grf
|
||||
File ${PATH_ROOT}bin\data\*.obg
|
||||
File ${PATH_ROOT}bin\data\*.obs
|
||||
File ${PATH_ROOT}bin\data\opntitle.dat
|
||||
|
||||
; Copy the music base metadata files
|
||||
SetOutPath "$INSTDIR\gm\"
|
||||
File ${PATH_ROOT}bin\gm\*.obm
|
||||
|
||||
; Copy the scripts
|
||||
SetOutPath "$INSTDIR\scripts\"
|
||||
File ${PATH_ROOT}bin\scripts\*.*
|
||||
|
||||
; Copy some documention files
|
||||
SetOutPath "$INSTDIR\docs\"
|
||||
File ${PATH_ROOT}docs\obg_format.txt
|
||||
File ${PATH_ROOT}docs\obm_format.txt
|
||||
File ${PATH_ROOT}docs\obs_format.txt
|
||||
File ${PATH_ROOT}docs\multiplayer.txt
|
||||
File ${PATH_ROOT}docs\32bpp.txt
|
||||
|
||||
; Copy the rest of the stuff
|
||||
SetOutPath "$INSTDIR\"
|
||||
|
||||
@@ -184,84 +158,9 @@ Section "!OpenTTD" Section1
|
||||
!insertmacro MUI_STARTMENU_WRITE_END
|
||||
SectionEnd
|
||||
|
||||
;--------------------------------------------------------------
|
||||
; OpenTTD translation install section. Copies only translations
|
||||
Section "OpenTTD translations" Section6
|
||||
; Overwrite files by default, but don't complain on failure
|
||||
SetOverwrite try
|
||||
|
||||
; Copy language files
|
||||
SetOutPath "$INSTDIR\lang\"
|
||||
File ${PATH_ROOT}bin\lang\*.lng
|
||||
SectionEnd
|
||||
|
||||
;----------------------------------------------------------------------------------
|
||||
; OpenGFX files install section. Downloads OpenGFX and installs it
|
||||
Section "Download OpenGFX (free graphics set)" Section3
|
||||
SetOverwrite try
|
||||
|
||||
NSISdl::download "http://binaries.openttd.org/installer/opengfx-${OPENGFX_BASE_VERSION}.7z" "$INSTDIR\data\opengfx.7z"
|
||||
Pop $R0 ;Get the return value
|
||||
StrCmp $R0 "success" +3
|
||||
MessageBox MB_OK "Downloading of OpenGFX failed"
|
||||
Goto Done
|
||||
|
||||
; Let's extract the files
|
||||
SetOutPath "$INSTDIR\data\"
|
||||
NSIS7z::Extract "$INSTDIR\data\opengfx.7z"
|
||||
|
||||
Delete "$INSTDIR\data\opengfx.7z"
|
||||
SetOutPath "$INSTDIR\"
|
||||
Done:
|
||||
|
||||
SectionEnd
|
||||
|
||||
;----------------------------------------------------------------------------------
|
||||
; OpenSFX files install section. Downloads OpenSFX and installs it
|
||||
Section "Download OpenSFX (free sound set)" Section4
|
||||
SetOverwrite try
|
||||
|
||||
NSISdl::download "http://binaries.openttd.org/installer/opensfx-${OPENSFX_BASE_VERSION}.7z" "$INSTDIR\data\opensfx.7z"
|
||||
Pop $R0 ;Get the return value
|
||||
StrCmp $R0 "success" +3
|
||||
MessageBox MB_OK "Downloading of OpenSFX failed"
|
||||
Goto Done
|
||||
|
||||
; Let's extract the files
|
||||
SetOutPath "$INSTDIR\data\"
|
||||
NSIS7z::Extract "$INSTDIR\data\opensfx.7z"
|
||||
|
||||
Delete "$INSTDIR\data\opensfx.7z"
|
||||
SetOutPath "$INSTDIR\"
|
||||
Done:
|
||||
|
||||
SectionEnd
|
||||
|
||||
;----------------------------------------------------------------------------------
|
||||
; NoSound files install section. Downloads NoSound and installs it
|
||||
Section "Download NoSound (free sound set)" Section5
|
||||
SetOverwrite try
|
||||
|
||||
NSISdl::download "http://binaries.openttd.org/installer/nosound-${NOSOUND_BASE_VERSION}.7z" "$INSTDIR\data\nosound.7z"
|
||||
Pop $R0 ;Get the return value
|
||||
StrCmp $R0 "success" +3
|
||||
MessageBox MB_OK "Downloading of NoSound failed"
|
||||
Goto Done
|
||||
|
||||
; Let's extract the files
|
||||
SetOutPath "$INSTDIR\data\"
|
||||
NSIS7z::Extract "$INSTDIR\data\nosound.7z"
|
||||
|
||||
Delete "$INSTDIR\data\nosound.7z"
|
||||
SetOutPath "$INSTDIR\"
|
||||
Done:
|
||||
|
||||
SectionEnd
|
||||
|
||||
;----------------------------------------------------------------------------------
|
||||
; TTDLX files install section. Copies all needed TTDLX files from CD or install dir
|
||||
Section /o "Copy data from Transport Tycoon Deluxe CD-ROM" Section2
|
||||
SetOverwrite try
|
||||
Section "Copy Game Graphics" Section2
|
||||
; Let's copy the files with size approximation
|
||||
SetOutPath "$INSTDIR\gm"
|
||||
CopyFiles "$CDDRIVE\gm\*.gm" "$INSTDIR\gm\" 1028
|
||||
@@ -290,12 +189,8 @@ SectionEnd
|
||||
|
||||
; Modern install component descriptions
|
||||
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${Section1} "Minimal OpenTTD installation in English. You need at least one of the game graphics and sound sets installed."
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${Section6} "Translations of OpenTTD."
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${Section3} "Download the free OpenGFX game graphics set. This download is about 3 MiB."
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${Section4} "Download the free OpenSFX game sound set. This download is about 10 MiB."
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${Section5} "Download the free NoSound game sound set. You will not hear anything with this. This download is about 7 KiB."
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${Section2} "Copies the game graphics and sounds from the Transport Tycoon Deluxe CD."
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${Section1} "OpenTTD is a fully functional clone of TTD and is very playable."
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${Section2} "Copies the game graphics. Requires TTD (for Windows)."
|
||||
!insertmacro MUI_FUNCTION_DESCRIPTION_END
|
||||
|
||||
;-----------------------------------------------
|
||||
@@ -354,9 +249,6 @@ Section "Uninstall"
|
||||
Delete "$INSTDIR\cached_sprites.*"
|
||||
Delete "$INSTDIR\save\autosave\network*.tmp" ; temporary network file
|
||||
|
||||
; AI files
|
||||
Delete "$INSTDIR\ai\compat_*.nut"
|
||||
|
||||
; Data files
|
||||
Delete "$INSTDIR\data\opntitle.dat"
|
||||
|
||||
@@ -375,8 +267,6 @@ Section "Uninstall"
|
||||
Delete "$INSTDIR\data\orig_win.obg"
|
||||
Delete "$INSTDIR\data\orig_dos.obg"
|
||||
Delete "$INSTDIR\data\orig_dos_de.obg"
|
||||
Delete "$INSTDIR\data\orig_win.obs"
|
||||
Delete "$INSTDIR\data\orig_dos.obs"
|
||||
|
||||
Delete "$INSTDIR\data\sample.cat"
|
||||
; Windows Data files
|
||||
@@ -395,36 +285,18 @@ Section "Uninstall"
|
||||
; Music
|
||||
Delete "$INSTDIR\gm\*.gm"
|
||||
|
||||
; Downloaded OpenGFX/OpenSFX/NoSound
|
||||
Delete "$INSTDIR\data\opengfx\*"
|
||||
RMDir "$INSTDIR\data\opengfx"
|
||||
Delete "$INSTDIR\data\opensfx\*"
|
||||
RMDir "$INSTDIR\data\opensfx"
|
||||
Delete "$INSTDIR\data\nosound\*"
|
||||
RMDir "$INSTDIR\data\nosound"
|
||||
|
||||
; Language files
|
||||
Delete "$INSTDIR\lang\*.lng"
|
||||
|
||||
; Scripts
|
||||
Delete "$INSTDIR\scripts\*.*"
|
||||
|
||||
; Documentation
|
||||
Delete "$INSTDIR\docs\*.*"
|
||||
|
||||
; Base sets for music
|
||||
Delete "$INSTDIR\gm\orig_win.obm"
|
||||
Delete "$INSTDIR\gm\no_music.obm"
|
||||
|
||||
; Remove remaining directories
|
||||
RMDir "$SMPROGRAMS\$SHORTCUTS\Extras\"
|
||||
RMDir "$SMPROGRAMS\$SHORTCUTS"
|
||||
RMDir "$INSTDIR\ai"
|
||||
RMDir "$INSTDIR\data"
|
||||
RMDir "$INSTDIR\gm"
|
||||
RMDir "$INSTDIR\lang"
|
||||
RMDir "$INSTDIR\scripts"
|
||||
RMDir "$INSTDIR\docs"
|
||||
RMDir "$INSTDIR\data"
|
||||
RMDir "$INSTDIR"
|
||||
|
||||
SectionEnd
|
||||
@@ -443,7 +315,7 @@ NoAbort:
|
||||
|
||||
GetTempFileName $R0
|
||||
!insertmacro MUI_HEADER_TEXT "Locate TTD" "Setup needs the location of Transport Tycoon Deluxe in order to continue."
|
||||
!insertmacro INSTALLOPTIONS_EXTRACT_AS "CDFinder.ini" "CDFinder"
|
||||
!insertmacro MUI_INSTALLOPTIONS_EXTRACT_AS "CDFinder.ini" "CDFinder"
|
||||
|
||||
ClearErrors
|
||||
; Now, let's populate $CDDRIVE
|
||||
@@ -458,18 +330,18 @@ NoTTD:
|
||||
StrCpy $AddWinPrePopulate "Setup couldn't find TTD. Please enter the path where the graphics files from TTD are stored and press Next to continue."
|
||||
TruFinish:
|
||||
ClearErrors
|
||||
!insertmacro INSTALLOPTIONS_WRITE "CDFinder" "Field 2" "State" $CDDRIVE ; TTDLX path
|
||||
!insertmacro INSTALLOPTIONS_WRITE "CDFinder" "Field 3" "Text" $AddWinPrePopulate ; Caption
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "CDFinder" "Field 2" "State" $CDDRIVE ; TTDLX path
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "CDFinder" "Field 3" "Text" $AddWinPrePopulate ; Caption
|
||||
DoneCD:
|
||||
; Initialize the dialog *AFTER* we've changed the text otherwise we won't see the changes
|
||||
!insertmacro INSTALLOPTIONS_INITDIALOG "CDFinder"
|
||||
!insertmacro INSTALLOPTIONS_SHOW
|
||||
!insertmacro MUI_INSTALLOPTIONS_INITDIALOG "CDFinder"
|
||||
!insertmacro MUI_INSTALLOPTIONS_SHOW
|
||||
FunctionEnd
|
||||
|
||||
;----------------------------------------------------------------
|
||||
; Custom page function when 'next' is selected for the TTDLX path
|
||||
Function SelectCDExit
|
||||
!insertmacro INSTALLOPTIONS_READ $CDDRIVE "CDFinder" "Field 2" "State"
|
||||
!insertmacro MUI_INSTALLOPTIONS_READ $CDDRIVE "CDFinder" "Field 2" "State"
|
||||
; If trg1r.grf does not exist at the path, retry with DOS version
|
||||
IfFileExists $CDDRIVE\trg1r.grf "" DosCD
|
||||
IfFileExists $CDDRIVE\trgir.grf "" NoCD
|
||||
@@ -479,11 +351,22 @@ DosCD:
|
||||
IfFileExists $CDDRIVE\TRGI.GRF "" NoCD
|
||||
IfFileExists $CDDRIVE\SAMPLE.CAT hasCD NoCD
|
||||
NoCD:
|
||||
MessageBox MB_OK "Setup cannot continue without the Transport Tycoon Deluxe location!"
|
||||
MessageBox MB_OK "Setup cannot continue without the Transport Tycoon Deluxe Location!"
|
||||
Abort
|
||||
hasCD:
|
||||
FunctionEnd
|
||||
|
||||
;----------------------------------------------------------------------------------
|
||||
; Disable the "Back" button on finish page if the installer is run on Win9x systems
|
||||
Function DisableBack
|
||||
Call GetWindowsVersion
|
||||
Pop $R0
|
||||
StrCmp $R0 "win9x" 0 WinNT
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "BackEnabled" "0"
|
||||
WinNT:
|
||||
ClearErrors
|
||||
FunctionEnd
|
||||
|
||||
;-------------------------------------------------------------------------------
|
||||
; Determine windows version, returns "win9x" if Win9x/Me or "winnt" on the stack
|
||||
Function GetWindowsVersion
|
||||
@@ -507,12 +390,12 @@ Function CheckProcessorArchitecture
|
||||
IntCmp $R0 64 Win64 0
|
||||
ClearErrors
|
||||
IntCmp ${APPBITS} 64 0 Done
|
||||
MessageBox MB_OKCANCEL|MB_ICONSTOP "You are trying to install the 64-bit OpenTTD on a 32-bit operating system. This is not going to work. Please download the correct version. Do you really want to continue?" IDOK Done IDCANCEL Abort
|
||||
MessageBox MB_OKCANCEL|MB_ICONSTOP "You want to install the 64 bits OpenTTD on a 32 bits Operating System. This is not going to work. Please download the correct version. Do you really want to continue?" IDOK Done IDCANCEL Abort
|
||||
GoTo Done
|
||||
Win64:
|
||||
ClearErrors
|
||||
IntCmp ${APPBITS} 64 Done 0
|
||||
MessageBox MB_OKCANCEL|MB_ICONINFORMATION "You are trying to install the 32-bit OpenTTD on a 64-bit operating system. This is not advised, but will work with reduced capabilities. We suggest that you download the correct version. Do you really want to continue?" IDOK Done IDCANCEL Abort
|
||||
MessageBox MB_OKCANCEL|MB_ICONINFORMATION "You want to install the 32 bits OpenTTD on a 64 bits Operating System. This is not adviced, but will work with reduced capabilities. We suggest that you download the correct version. Do you really want to continue?" IDOK Done IDCANCEL Abort
|
||||
GoTo Done
|
||||
Abort:
|
||||
Quit
|
||||
@@ -528,12 +411,12 @@ Function CheckWindowsVersion
|
||||
StrCmp $R0 "win9x" 0 WinNT
|
||||
ClearErrors
|
||||
StrCmp ${APPARCH} "win9x" Done 0
|
||||
MessageBox MB_OKCANCEL|MB_ICONSTOP "You are trying to install the Windows 2000, XP and Vista version on Windows 95, 98 or ME. This is will not work. Please download the correct version. Do you really want to continue?" IDOK Done IDCANCEL Abort
|
||||
MessageBox MB_OKCANCEL|MB_ICONSTOP "You want to install the Windows 2000, XP and Vista version on Windows 95, 98 or ME. This is will not work. Please download the correct version. Do you really want to continue?" IDOK Done IDCANCEL Abort
|
||||
GoTo Done
|
||||
WinNT:
|
||||
ClearErrors
|
||||
StrCmp ${APPARCH} "win9x" 0 Done
|
||||
MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION "You are trying to install the Windows 95, 98 and ME version on Windows 2000, XP or Vista. This is not advised, but will work with reduced capabilities. We suggest that you download the correct version. Do you really want to continue?" IDOK Done IDCANCEL Abort
|
||||
MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION "You want to install the Windows 95, 98 and ME version on Windows 2000, XP or Vista. This is not adviced, but will work with reduced capabilities. We suggest that you download the correct version. Do you really want to continue?" IDOK Done IDCANCEL Abort
|
||||
Abort:
|
||||
Quit
|
||||
Done:
|
||||
@@ -543,14 +426,10 @@ Var OLDVERSION
|
||||
Var UninstallString
|
||||
|
||||
;-----------------------------------------------------------------------------------
|
||||
; NSIS Initialize function, determine if we are going to install/upgrade or uninstall
|
||||
; NSIS Initialize function, determin if we are going to install/upgrade or uninstall
|
||||
Function .onInit
|
||||
StrCpy $SHORTCUTS "OpenTTD"
|
||||
|
||||
SectionSetSize ${Section3} 6144
|
||||
SectionSetSize ${Section4} 13312
|
||||
SectionSetSize ${Section5} 30
|
||||
|
||||
SectionSetFlags 0 17
|
||||
|
||||
; Starts Setup - let's look for an older version of OpenTTD
|
||||
@@ -572,16 +451,13 @@ WelcomeToSetup:
|
||||
"Welcome to ${APPNAMEANDVERSION} Setup.$\n \
|
||||
This will allow you to upgrade from version $OLDVERSION."
|
||||
SectionSetFlags ${Section2} 0x80 ; set bit 7
|
||||
SectionSetFlags ${Section3} 0x80 ; set bit 7
|
||||
SectionSetFlags ${Section4} 0x80 ; set bit 7
|
||||
SectionSetFlags ${Section5} 0x80 ; set bit 7
|
||||
Goto FinishCallback
|
||||
|
||||
VersionsAreEqual:
|
||||
ReadRegStr $UninstallString HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenTTD" "UninstallString"
|
||||
IfFileExists "$UninstallString" "" FinishCallback
|
||||
MessageBox MB_YESNO|MB_ICONQUESTION \
|
||||
"Setup detected ${APPNAMEANDVERSION} on your system. This is the same version that this program will install.$\n \
|
||||
"Setup detected ${APPNAMEANDVERSION} on your system. That's the version this program will install.$\n \
|
||||
Are you trying to uninstall it?" \
|
||||
IDYES DoUninstall IDNO FinishCallback
|
||||
DoUninstall: ; You have the same version as this installer. This allows you to uninstall.
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB |
@@ -1,5 +1,5 @@
|
||||
!define APPBITS 32 ; Define number of bits for the architecture
|
||||
!define EXTRA_VERSION "2000, XP, Vista and 7"
|
||||
!define EXTRA_VERSION "for Windows 2000, XP and Vista"
|
||||
!define APPARCH "win32" ; Define the application architecture
|
||||
!define BINARY_DIR "${PATH_ROOT}objs\win32\Release"
|
||||
InstallDir "$PROGRAMFILES32\OpenTTD\"
|
@@ -1,5 +1,5 @@
|
||||
!define APPBITS 64 ; Define number of bits for the architecture
|
||||
!define EXTRA_VERSION "XP, Vista and 7"
|
||||
!define EXTRA_VERSION "for Windows XP and Vista"
|
||||
!define APPARCH "win64" ; Define the application architecture
|
||||
!define BINARY_DIR "${PATH_ROOT}objs\x64\Release"
|
||||
InstallDir "$PROGRAMFILES64\OpenTTD\"
|
@@ -1,5 +1,5 @@
|
||||
!define APPBITS 32 ; Define number of bits for the architecture
|
||||
!define EXTRA_VERSION "95, 98 and ME"
|
||||
!define EXTRA_VERSION "for Windows 95, 98 and ME"
|
||||
!define APPARCH "win9x" ; Define the application architecture
|
||||
!define BINARY_DIR "${PATH_ROOT}bin"
|
||||
InstallDir "$PROGRAMFILES32\OpenTTD\"
|
Before Width: | Height: | Size: 151 KiB After Width: | Height: | Size: 151 KiB |
@@ -1,12 +1,5 @@
|
||||
Option Explicit
|
||||
|
||||
' $Id$
|
||||
'
|
||||
' This file is part of OpenTTD.
|
||||
' OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
' OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Dim FSO
|
||||
Set FSO = CreateObject("Scripting.FileSystemObject")
|
||||
|
||||
@@ -39,13 +32,13 @@ Sub UpdateFiles(version)
|
||||
modified = Mid(version, InStrRev(version, Chr(9)) + 1)
|
||||
version = Mid(version, 1, InStr(version, Chr(9)) - 1)
|
||||
Else
|
||||
version = "1.0.0-beta3"
|
||||
version = "0.7.4"
|
||||
revision = 0
|
||||
modified = 1
|
||||
End If
|
||||
|
||||
UpdateFile modified, revision, version, cur_date, "../src/rev.cpp"
|
||||
UpdateFile modified, revision, version, cur_date, "../src/os/windows/ottdres.rc"
|
||||
UpdateFile modified, revision, version, cur_date, "../src/ottdres.rc"
|
||||
End Sub
|
||||
|
||||
Function ReadRegistryKey(shive, subkey, valuename, architecture)
|
||||
@@ -287,6 +280,6 @@ End Function
|
||||
|
||||
Dim version
|
||||
version = DetermineSVNVersion
|
||||
If Not (IsCachedVersion(version) And CheckFile("../src/rev.cpp") And CheckFile("../src/os/windows/ottdres.rc")) Then
|
||||
If Not (IsCachedVersion(version) And CheckFile("../src/rev.cpp") And CheckFile("../src/ottdres.rc")) Then
|
||||
UpdateFiles version
|
||||
End If
|
||||
|
@@ -1,12 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
# $Id$
|
||||
|
||||
# This file is part of OpenTTD.
|
||||
# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
# OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
# This file generates all project files based on sources.list, so everyone who
|
||||
# can start a bash process, can update the project files.
|
||||
|
||||
|
@@ -1,12 +1,5 @@
|
||||
Option Explicit
|
||||
|
||||
' $Id$
|
||||
'
|
||||
' This file is part of OpenTTD.
|
||||
' OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
' OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Dim FSO
|
||||
Set FSO = CreateObject("Scripting.FileSystemObject")
|
||||
|
||||
|
@@ -301,21 +301,6 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\greek.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating greek language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
"
|
||||
AdditionalDependencies="..\src\lang\english.txt"
|
||||
Outputs="..\bin\lang\greek.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\hebrew.txt"
|
||||
>
|
||||
@@ -466,21 +451,6 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\malay.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating malay language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
"
|
||||
AdditionalDependencies="..\src\lang\english.txt"
|
||||
Outputs="..\bin\lang\malay.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\norwegian_bokmal.txt"
|
||||
>
|
||||
@@ -511,6 +481,21 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\piglatin.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating piglatin language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
"
|
||||
AdditionalDependencies="..\src\lang\english.txt"
|
||||
Outputs="..\bin\lang\piglatin.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\polish.txt"
|
||||
>
|
||||
|
@@ -302,21 +302,6 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\greek.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating greek language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
"
|
||||
AdditionalDependencies="..\src\lang\english.txt"
|
||||
Outputs="..\bin\lang\greek.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\hebrew.txt"
|
||||
>
|
||||
@@ -467,21 +452,6 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\malay.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating malay language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
"
|
||||
AdditionalDependencies="..\src\lang\english.txt"
|
||||
Outputs="..\bin\lang\malay.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\norwegian_bokmal.txt"
|
||||
>
|
||||
@@ -512,6 +482,21 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\piglatin.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating piglatin language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
"
|
||||
AdditionalDependencies="..\src\lang\english.txt"
|
||||
Outputs="..\bin\lang\piglatin.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\polish.txt"
|
||||
>
|
||||
|
@@ -16,7 +16,7 @@
|
||||
</Platforms>
|
||||
<ToolFiles>
|
||||
<ToolFile
|
||||
RelativePath="..\src\os\windows\masm64.rules"
|
||||
RelativePath="..\src\masm64.rules"
|
||||
/>
|
||||
</ToolFiles>
|
||||
<Configurations>
|
||||
@@ -60,7 +60,7 @@
|
||||
FavorSizeOrSpeed="2"
|
||||
OmitFramePointers="true"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";WITH_ASSERT"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_EXCEPTION_TRACKER;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\""
|
||||
StringPooling="true"
|
||||
ExceptionHandling="1"
|
||||
RuntimeLibrary="0"
|
||||
@@ -97,7 +97,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -169,7 +169,7 @@
|
||||
AdditionalOptions="/MP"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\""
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\""
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
UsePrecompiledHeader="0"
|
||||
@@ -197,7 +197,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -273,7 +273,7 @@
|
||||
FavorSizeOrSpeed="2"
|
||||
OmitFramePointers="true"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64;WITH_ASSERT"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_EXCEPTION_TRACKER;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64"
|
||||
StringPooling="true"
|
||||
ExceptionHandling="1"
|
||||
RuntimeLibrary="0"
|
||||
@@ -310,7 +310,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -383,7 +383,7 @@
|
||||
AdditionalOptions="/MP"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
UsePrecompiledHeader="0"
|
||||
@@ -413,7 +413,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -471,10 +471,18 @@
|
||||
RelativePath=".\..\src\autoreplace.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\aystar.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\bmp.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\callback_table.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\cargopacket.cpp"
|
||||
>
|
||||
@@ -499,10 +507,6 @@
|
||||
RelativePath=".\..\src\console_cmds.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\crashlog.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\currency.cpp"
|
||||
>
|
||||
@@ -591,6 +595,14 @@
|
||||
RelativePath=".\..\src\map.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\md5.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\minilzo.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\misc.cpp"
|
||||
>
|
||||
@@ -603,6 +615,10 @@
|
||||
RelativePath=".\..\src\music.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\namegen.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\network\network.cpp"
|
||||
>
|
||||
@@ -631,6 +647,14 @@
|
||||
RelativePath=".\..\src\network\network_udp.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\npf.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\oldpool.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\openttd.cpp"
|
||||
>
|
||||
@@ -639,10 +663,22 @@
|
||||
RelativePath=".\..\src\os_timer.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\ottdres.rc"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfind.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pbs.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\queue.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\rail.cpp"
|
||||
>
|
||||
@@ -655,10 +691,6 @@
|
||||
RelativePath=".\..\src\road.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\roadstop.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\screenshot.cpp"
|
||||
>
|
||||
@@ -683,10 +715,6 @@
|
||||
RelativePath=".\..\src\sound.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\sprite.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\spritecache.cpp"
|
||||
>
|
||||
@@ -703,10 +731,6 @@
|
||||
RelativePath=".\..\src\strings.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\subsidy.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\texteff.cpp"
|
||||
>
|
||||
@@ -716,11 +740,11 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\tile_map.cpp"
|
||||
RelativePath=".\..\src\thread_win32.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\townname.cpp"
|
||||
RelativePath=".\..\src\tile_map.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -743,6 +767,10 @@
|
||||
RelativePath=".\..\src\widget.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\win32.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\window.cpp"
|
||||
>
|
||||
@@ -759,6 +787,10 @@
|
||||
RelativePath=".\..\src\airport.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\airport_movement.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\animated_tile_func.h"
|
||||
>
|
||||
@@ -788,15 +820,7 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\base_media_base.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\base_media_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\base_station_base.h"
|
||||
RelativePath=".\..\src\aystar.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -807,6 +831,10 @@
|
||||
RelativePath=".\..\src\bridge.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\callback_table.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\cargo_type.h"
|
||||
>
|
||||
@@ -875,10 +903,6 @@
|
||||
RelativePath=".\..\src\console_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\crashlog.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\currency.h"
|
||||
>
|
||||
@@ -887,10 +911,6 @@
|
||||
RelativePath=".\..\src\date_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\date_gui.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\date_type.h"
|
||||
>
|
||||
@@ -1043,14 +1063,6 @@
|
||||
RelativePath=".\..\src\highscore.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\house.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\house_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\industry.h"
|
||||
>
|
||||
@@ -1059,10 +1071,6 @@
|
||||
RelativePath=".\..\src\industry_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\industrytype.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\ini_type.h"
|
||||
>
|
||||
@@ -1079,6 +1087,10 @@
|
||||
RelativePath=".\..\src\livery.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\lzoconf.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\map_func.h"
|
||||
>
|
||||
@@ -1087,10 +1099,26 @@
|
||||
RelativePath=".\..\src\map_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\md5.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\minilzo.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\mixer.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\music.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\namegen_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\network\network.h"
|
||||
>
|
||||
@@ -1179,10 +1207,6 @@
|
||||
RelativePath=".\..\src\newgrf_industrytiles.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\newgrf_properties.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\newgrf_sound.h"
|
||||
>
|
||||
@@ -1223,6 +1247,10 @@
|
||||
RelativePath=".\..\src\news_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\npf.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\music\null_m.h"
|
||||
>
|
||||
@@ -1235,6 +1263,14 @@
|
||||
RelativePath=".\..\src\video\null_v.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\oldpool.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\oldpool_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\openttd.h"
|
||||
>
|
||||
@@ -1251,6 +1287,10 @@
|
||||
RelativePath=".\..\src\order_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfind.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pbs.h"
|
||||
>
|
||||
@@ -1259,6 +1299,10 @@
|
||||
RelativePath=".\..\src\querystring_gui.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\queue.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\rail.h"
|
||||
>
|
||||
@@ -1295,10 +1339,6 @@
|
||||
RelativePath=".\..\src\road_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\roadstop_base.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\roadveh.h"
|
||||
>
|
||||
@@ -1427,18 +1467,6 @@
|
||||
RelativePath=".\..\src\strings_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\subsidy_base.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\subsidy_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\subsidy_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\tar_type.h"
|
||||
>
|
||||
@@ -1460,7 +1488,7 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\tilearea_type.h"
|
||||
RelativePath=".\..\src\thread.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -1495,14 +1523,6 @@
|
||||
RelativePath=".\..\src\town_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\townname_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\townname_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\track_func.h"
|
||||
>
|
||||
@@ -1576,11 +1596,11 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\waypoint_base.h"
|
||||
RelativePath=".\..\src\waypoint.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\waypoint_func.h"
|
||||
RelativePath=".\..\src\waypoint_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -1588,7 +1608,7 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\os\windows\win32.h"
|
||||
RelativePath=".\..\src\win32.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -1659,22 +1679,10 @@
|
||||
RelativePath=".\..\src\core\enum_type.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\geometry_func.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\geometry_func.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\geometry_type.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\math_func.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\math_func.hpp"
|
||||
>
|
||||
@@ -1687,14 +1695,6 @@
|
||||
RelativePath=".\..\src\core\overflowsafe_type.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\pool_func.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\pool_type.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\random_func.cpp"
|
||||
>
|
||||
@@ -1755,10 +1755,6 @@
|
||||
RelativePath=".\..\src\console_gui.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\date_gui.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\depot_gui.cpp"
|
||||
>
|
||||
@@ -1907,10 +1903,6 @@
|
||||
RelativePath=".\..\src\vehicle_gui.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\viewport_gui.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\waypoint_gui.cpp"
|
||||
>
|
||||
@@ -2095,10 +2087,6 @@
|
||||
RelativePath=".\..\src\saveload\industry_sl.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\saveload\labelmaps_sl.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\saveload\map_sl.cpp"
|
||||
>
|
||||
@@ -2171,18 +2159,6 @@
|
||||
<Filter
|
||||
Name="Tables"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\table\airport_defaults.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\airporttiles.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\airport_movement.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\animcursors.h"
|
||||
>
|
||||
@@ -2219,6 +2195,10 @@
|
||||
RelativePath=".\..\src\table\engines.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\files.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\genland.h"
|
||||
>
|
||||
@@ -2231,6 +2211,10 @@
|
||||
RelativePath=".\..\src\table\landscape_sprite.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\namegen.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\palette_convert.h"
|
||||
>
|
||||
@@ -2239,10 +2223,6 @@
|
||||
RelativePath=".\..\src\table\palettes.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\pricebase.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\railtypes.h"
|
||||
>
|
||||
@@ -2255,10 +2235,6 @@
|
||||
RelativePath=".\..\src\table\roadveh_movement.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\settings.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\sprites.h"
|
||||
>
|
||||
@@ -2267,10 +2243,6 @@
|
||||
RelativePath=".\..\src\table\station_land.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\strgen_tables.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\..\objs\langs\table\strings.h"
|
||||
>
|
||||
@@ -2279,10 +2251,6 @@
|
||||
RelativePath=".\..\src\table\town_land.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\townname.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\track_land.h"
|
||||
>
|
||||
@@ -2308,37 +2276,9 @@
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="MD5"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\3rdparty\md5\md5.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\3rdparty\md5\md5.h"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Script"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\script\script_info.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\script\script_info.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\script\script_scanner.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\script\script_scanner.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\script\squirrel.cpp"
|
||||
>
|
||||
@@ -2415,10 +2355,6 @@
|
||||
RelativePath=".\..\src\3rdparty\squirrel\sqstdlib\sqstdaux.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\3rdparty\squirrel\sqstdlib\sqstdmath.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\3rdparty\squirrel\squirrel\sqtable.cpp"
|
||||
>
|
||||
@@ -2611,10 +2547,6 @@
|
||||
RelativePath=".\..\src\ai\api\ai_base.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\ai\api\ai_basestation.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\ai\api\ai_bridge.hpp"
|
||||
>
|
||||
@@ -2831,10 +2763,6 @@
|
||||
RelativePath=".\..\src\ai\api\ai_base.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\ai\api\ai_basestation.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\ai\api\ai_bridge.cpp"
|
||||
>
|
||||
@@ -3335,6 +3263,10 @@
|
||||
RelativePath=".\..\src\misc\str.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\misc\strapi.hpp"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Network Core"
|
||||
@@ -3420,127 +3352,71 @@
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Pathfinder"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\follow_track.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\opf\opf_ship.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\opf\opf_ship.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\pathfinder_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\pathfinder_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\pf_performance_timer.hpp"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="NPF"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\npf\aystar.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\npf\aystar.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\npf\npf.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\npf\npf_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\npf\queue.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\npf\queue.h"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="YAPF"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\nodelist.hpp"
|
||||
RelativePath=".\..\src\yapf\follow_track.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf.h"
|
||||
RelativePath=".\..\src\yapf\nodelist.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_base.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_cache.h"
|
||||
RelativePath=".\..\src\yapf\yapf_base.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_common.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_common.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_costbase.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_costbase.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_costcache.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_costcache.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_costrail.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_costrail.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_destrail.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_destrail.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_node.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_node.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_node_rail.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_node_rail.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_node_road.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_node_road.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_rail.cpp"
|
||||
RelativePath=".\..\src\yapf\yapf_rail.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_road.cpp"
|
||||
RelativePath=".\..\src\yapf\yapf_road.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_ship.cpp"
|
||||
RelativePath=".\..\src\yapf\yapf_ship.cpp"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
@@ -3568,11 +3444,11 @@
|
||||
Name="Music"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\music\dmusic.cpp"
|
||||
RelativePath=".\..\src\music\null_m.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\music\null_m.cpp"
|
||||
RelativePath=".\..\src\music\dmusic.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -3596,40 +3472,12 @@
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Windows files"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\os\windows\crashlog_win.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\os\windows\ottdres.rc"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\os\windows\win32.cpp"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Threading"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\thread\thread.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\thread\thread_win32.cpp"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="64-bit Specific Files"
|
||||
Filter="asm"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\os\windows\win64.asm"
|
||||
RelativePath=".\..\src\win64.asm"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
|
@@ -16,7 +16,7 @@
|
||||
</Platforms>
|
||||
<ToolFiles>
|
||||
<ToolFile
|
||||
RelativePath="..\src\os\windows\masm64.rules"
|
||||
RelativePath="..\src\masm64.rules"
|
||||
/>
|
||||
</ToolFiles>
|
||||
<Configurations>
|
||||
@@ -60,7 +60,7 @@
|
||||
FavorSizeOrSpeed="2"
|
||||
OmitFramePointers="true"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";WITH_ASSERT"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_EXCEPTION_TRACKER;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\""
|
||||
StringPooling="true"
|
||||
ExceptionHandling="1"
|
||||
RuntimeLibrary="0"
|
||||
@@ -97,7 +97,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -169,7 +169,7 @@
|
||||
AdditionalOptions="/MP"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\""
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\""
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
UsePrecompiledHeader="0"
|
||||
@@ -197,7 +197,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -273,7 +273,7 @@
|
||||
FavorSizeOrSpeed="2"
|
||||
OmitFramePointers="true"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64;WITH_ASSERT"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_EXCEPTION_TRACKER;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64"
|
||||
StringPooling="true"
|
||||
ExceptionHandling="1"
|
||||
RuntimeLibrary="0"
|
||||
@@ -310,7 +310,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -383,7 +383,7 @@
|
||||
AdditionalOptions="/MP"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
UsePrecompiledHeader="0"
|
||||
@@ -413,7 +413,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -458,7 +458,7 @@
|
||||
Filter="asm"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\os\windows\win64.asm"
|
||||
RelativePath=".\..\src\win64.asm"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
|
@@ -17,7 +17,7 @@
|
||||
</Platforms>
|
||||
<ToolFiles>
|
||||
<ToolFile
|
||||
RelativePath="..\src\os\windows\masm64.rules"
|
||||
RelativePath="..\src\masm64.rules"
|
||||
/>
|
||||
</ToolFiles>
|
||||
<Configurations>
|
||||
@@ -61,7 +61,7 @@
|
||||
FavorSizeOrSpeed="2"
|
||||
OmitFramePointers="true"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";WITH_ASSERT"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_EXCEPTION_TRACKER;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\""
|
||||
StringPooling="true"
|
||||
ExceptionHandling="1"
|
||||
RuntimeLibrary="0"
|
||||
@@ -98,7 +98,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -168,7 +168,7 @@
|
||||
AdditionalOptions="/MP"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\""
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\""
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
UsePrecompiledHeader="0"
|
||||
@@ -196,7 +196,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -271,7 +271,7 @@
|
||||
FavorSizeOrSpeed="2"
|
||||
OmitFramePointers="true"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64;WITH_ASSERT"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_EXCEPTION_TRACKER;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64"
|
||||
StringPooling="true"
|
||||
ExceptionHandling="1"
|
||||
RuntimeLibrary="0"
|
||||
@@ -308,7 +308,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -380,7 +380,7 @@
|
||||
AdditionalOptions="/MP"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
UsePrecompiledHeader="0"
|
||||
@@ -410,7 +410,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -468,10 +468,18 @@
|
||||
RelativePath=".\..\src\autoreplace.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\aystar.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\bmp.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\callback_table.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\cargopacket.cpp"
|
||||
>
|
||||
@@ -496,10 +504,6 @@
|
||||
RelativePath=".\..\src\console_cmds.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\crashlog.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\currency.cpp"
|
||||
>
|
||||
@@ -588,6 +592,14 @@
|
||||
RelativePath=".\..\src\map.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\md5.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\minilzo.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\misc.cpp"
|
||||
>
|
||||
@@ -600,6 +612,10 @@
|
||||
RelativePath=".\..\src\music.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\namegen.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\network\network.cpp"
|
||||
>
|
||||
@@ -628,6 +644,14 @@
|
||||
RelativePath=".\..\src\network\network_udp.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\npf.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\oldpool.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\openttd.cpp"
|
||||
>
|
||||
@@ -636,10 +660,22 @@
|
||||
RelativePath=".\..\src\os_timer.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\ottdres.rc"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfind.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pbs.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\queue.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\rail.cpp"
|
||||
>
|
||||
@@ -652,10 +688,6 @@
|
||||
RelativePath=".\..\src\road.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\roadstop.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\screenshot.cpp"
|
||||
>
|
||||
@@ -680,10 +712,6 @@
|
||||
RelativePath=".\..\src\sound.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\sprite.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\spritecache.cpp"
|
||||
>
|
||||
@@ -700,10 +728,6 @@
|
||||
RelativePath=".\..\src\strings.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\subsidy.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\texteff.cpp"
|
||||
>
|
||||
@@ -713,11 +737,11 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\tile_map.cpp"
|
||||
RelativePath=".\..\src\thread_win32.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\townname.cpp"
|
||||
RelativePath=".\..\src\tile_map.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -740,6 +764,10 @@
|
||||
RelativePath=".\..\src\widget.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\win32.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\window.cpp"
|
||||
>
|
||||
@@ -756,6 +784,10 @@
|
||||
RelativePath=".\..\src\airport.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\airport_movement.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\animated_tile_func.h"
|
||||
>
|
||||
@@ -785,15 +817,7 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\base_media_base.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\base_media_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\base_station_base.h"
|
||||
RelativePath=".\..\src\aystar.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -804,6 +828,10 @@
|
||||
RelativePath=".\..\src\bridge.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\callback_table.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\cargo_type.h"
|
||||
>
|
||||
@@ -872,10 +900,6 @@
|
||||
RelativePath=".\..\src\console_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\crashlog.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\currency.h"
|
||||
>
|
||||
@@ -884,10 +908,6 @@
|
||||
RelativePath=".\..\src\date_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\date_gui.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\date_type.h"
|
||||
>
|
||||
@@ -1040,14 +1060,6 @@
|
||||
RelativePath=".\..\src\highscore.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\house.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\house_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\industry.h"
|
||||
>
|
||||
@@ -1056,10 +1068,6 @@
|
||||
RelativePath=".\..\src\industry_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\industrytype.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\ini_type.h"
|
||||
>
|
||||
@@ -1076,6 +1084,10 @@
|
||||
RelativePath=".\..\src\livery.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\lzoconf.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\map_func.h"
|
||||
>
|
||||
@@ -1084,10 +1096,26 @@
|
||||
RelativePath=".\..\src\map_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\md5.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\minilzo.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\mixer.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\music.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\namegen_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\network\network.h"
|
||||
>
|
||||
@@ -1176,10 +1204,6 @@
|
||||
RelativePath=".\..\src\newgrf_industrytiles.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\newgrf_properties.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\newgrf_sound.h"
|
||||
>
|
||||
@@ -1220,6 +1244,10 @@
|
||||
RelativePath=".\..\src\news_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\npf.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\music\null_m.h"
|
||||
>
|
||||
@@ -1232,6 +1260,14 @@
|
||||
RelativePath=".\..\src\video\null_v.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\oldpool.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\oldpool_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\openttd.h"
|
||||
>
|
||||
@@ -1248,6 +1284,10 @@
|
||||
RelativePath=".\..\src\order_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfind.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pbs.h"
|
||||
>
|
||||
@@ -1256,6 +1296,10 @@
|
||||
RelativePath=".\..\src\querystring_gui.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\queue.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\rail.h"
|
||||
>
|
||||
@@ -1292,10 +1336,6 @@
|
||||
RelativePath=".\..\src\road_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\roadstop_base.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\roadveh.h"
|
||||
>
|
||||
@@ -1424,18 +1464,6 @@
|
||||
RelativePath=".\..\src\strings_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\subsidy_base.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\subsidy_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\subsidy_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\tar_type.h"
|
||||
>
|
||||
@@ -1457,7 +1485,7 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\tilearea_type.h"
|
||||
RelativePath=".\..\src\thread.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -1492,14 +1520,6 @@
|
||||
RelativePath=".\..\src\town_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\townname_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\townname_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\track_func.h"
|
||||
>
|
||||
@@ -1573,11 +1593,11 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\waypoint_base.h"
|
||||
RelativePath=".\..\src\waypoint.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\waypoint_func.h"
|
||||
RelativePath=".\..\src\waypoint_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -1585,7 +1605,7 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\os\windows\win32.h"
|
||||
RelativePath=".\..\src\win32.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -1656,22 +1676,10 @@
|
||||
RelativePath=".\..\src\core\enum_type.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\geometry_func.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\geometry_func.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\geometry_type.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\math_func.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\math_func.hpp"
|
||||
>
|
||||
@@ -1684,14 +1692,6 @@
|
||||
RelativePath=".\..\src\core\overflowsafe_type.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\pool_func.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\pool_type.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\core\random_func.cpp"
|
||||
>
|
||||
@@ -1752,10 +1752,6 @@
|
||||
RelativePath=".\..\src\console_gui.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\date_gui.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\depot_gui.cpp"
|
||||
>
|
||||
@@ -1904,10 +1900,6 @@
|
||||
RelativePath=".\..\src\vehicle_gui.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\viewport_gui.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\waypoint_gui.cpp"
|
||||
>
|
||||
@@ -2092,10 +2084,6 @@
|
||||
RelativePath=".\..\src\saveload\industry_sl.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\saveload\labelmaps_sl.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\saveload\map_sl.cpp"
|
||||
>
|
||||
@@ -2168,18 +2156,6 @@
|
||||
<Filter
|
||||
Name="Tables"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\table\airport_defaults.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\airporttiles.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\airport_movement.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\animcursors.h"
|
||||
>
|
||||
@@ -2216,6 +2192,10 @@
|
||||
RelativePath=".\..\src\table\engines.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\files.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\genland.h"
|
||||
>
|
||||
@@ -2228,6 +2208,10 @@
|
||||
RelativePath=".\..\src\table\landscape_sprite.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\namegen.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\palette_convert.h"
|
||||
>
|
||||
@@ -2236,10 +2220,6 @@
|
||||
RelativePath=".\..\src\table\palettes.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\pricebase.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\railtypes.h"
|
||||
>
|
||||
@@ -2252,10 +2232,6 @@
|
||||
RelativePath=".\..\src\table\roadveh_movement.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\settings.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\sprites.h"
|
||||
>
|
||||
@@ -2264,10 +2240,6 @@
|
||||
RelativePath=".\..\src\table\station_land.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\strgen_tables.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\..\objs\langs\table\strings.h"
|
||||
>
|
||||
@@ -2276,10 +2248,6 @@
|
||||
RelativePath=".\..\src\table\town_land.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\townname.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\table\track_land.h"
|
||||
>
|
||||
@@ -2305,37 +2273,9 @@
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="MD5"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\3rdparty\md5\md5.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\3rdparty\md5\md5.h"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Script"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\script\script_info.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\script\script_info.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\script\script_scanner.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\script\script_scanner.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\script\squirrel.cpp"
|
||||
>
|
||||
@@ -2412,10 +2352,6 @@
|
||||
RelativePath=".\..\src\3rdparty\squirrel\sqstdlib\sqstdaux.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\3rdparty\squirrel\sqstdlib\sqstdmath.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\3rdparty\squirrel\squirrel\sqtable.cpp"
|
||||
>
|
||||
@@ -2608,10 +2544,6 @@
|
||||
RelativePath=".\..\src\ai\api\ai_base.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\ai\api\ai_basestation.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\ai\api\ai_bridge.hpp"
|
||||
>
|
||||
@@ -2828,10 +2760,6 @@
|
||||
RelativePath=".\..\src\ai\api\ai_base.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\ai\api\ai_basestation.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\ai\api\ai_bridge.cpp"
|
||||
>
|
||||
@@ -3332,6 +3260,10 @@
|
||||
RelativePath=".\..\src\misc\str.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\misc\strapi.hpp"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Network Core"
|
||||
@@ -3417,127 +3349,71 @@
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Pathfinder"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\follow_track.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\opf\opf_ship.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\opf\opf_ship.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\pathfinder_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\pathfinder_type.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\pf_performance_timer.hpp"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="NPF"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\npf\aystar.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\npf\aystar.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\npf\npf.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\npf\npf_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\npf\queue.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\npf\queue.h"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="YAPF"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\nodelist.hpp"
|
||||
RelativePath=".\..\src\yapf\follow_track.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf.h"
|
||||
RelativePath=".\..\src\yapf\nodelist.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_base.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_cache.h"
|
||||
RelativePath=".\..\src\yapf\yapf_base.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_common.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_common.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_costbase.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_costbase.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_costcache.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_costcache.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_costrail.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_costrail.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_destrail.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_destrail.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_node.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_node.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_node_rail.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_node_rail.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_node_road.hpp"
|
||||
RelativePath=".\..\src\yapf\yapf_node_road.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_rail.cpp"
|
||||
RelativePath=".\..\src\yapf\yapf_rail.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_road.cpp"
|
||||
RelativePath=".\..\src\yapf\yapf_road.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\pathfinder\yapf\yapf_ship.cpp"
|
||||
RelativePath=".\..\src\yapf\yapf_ship.cpp"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
@@ -3565,11 +3441,11 @@
|
||||
Name="Music"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\music\dmusic.cpp"
|
||||
RelativePath=".\..\src\music\null_m.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\music\null_m.cpp"
|
||||
RelativePath=".\..\src\music\dmusic.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -3593,40 +3469,12 @@
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Windows files"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\os\windows\crashlog_win.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\os\windows\ottdres.rc"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\os\windows\win32.cpp"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Threading"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\thread\thread.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\thread\thread_win32.cpp"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="64-bit Specific Files"
|
||||
Filter="asm"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\os\windows\win64.asm"
|
||||
RelativePath=".\..\src\win64.asm"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
|
@@ -17,7 +17,7 @@
|
||||
</Platforms>
|
||||
<ToolFiles>
|
||||
<ToolFile
|
||||
RelativePath="..\src\os\windows\masm64.rules"
|
||||
RelativePath="..\src\masm64.rules"
|
||||
/>
|
||||
</ToolFiles>
|
||||
<Configurations>
|
||||
@@ -61,7 +61,7 @@
|
||||
FavorSizeOrSpeed="2"
|
||||
OmitFramePointers="true"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";WITH_ASSERT"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_EXCEPTION_TRACKER;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\""
|
||||
StringPooling="true"
|
||||
ExceptionHandling="1"
|
||||
RuntimeLibrary="0"
|
||||
@@ -98,7 +98,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -168,7 +168,7 @@
|
||||
AdditionalOptions="/MP"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\""
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\""
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
UsePrecompiledHeader="0"
|
||||
@@ -196,7 +196,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -271,7 +271,7 @@
|
||||
FavorSizeOrSpeed="2"
|
||||
OmitFramePointers="true"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64;WITH_ASSERT"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_EXCEPTION_TRACKER;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64"
|
||||
StringPooling="true"
|
||||
ExceptionHandling="1"
|
||||
RuntimeLibrary="0"
|
||||
@@ -308,7 +308,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -380,7 +380,7 @@
|
||||
AdditionalOptions="/MP"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\"OpenTTD\";_SQ64"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
UsePrecompiledHeader="0"
|
||||
@@ -410,7 +410,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -455,7 +455,7 @@
|
||||
Filter="asm"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\..\src\os\windows\win64.asm"
|
||||
RelativePath=".\..\src\win64.asm"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
|
@@ -35,7 +35,7 @@
|
||||
</References>
|
||||
<Files>
|
||||
<File
|
||||
RelativePath="..\src\os\windows\ottdres.rc.in"
|
||||
RelativePath="..\src\ottdres.rc.in"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
|
@@ -36,7 +36,7 @@
|
||||
</References>
|
||||
<Files>
|
||||
<File
|
||||
RelativePath="..\src\os\windows\ottdres.rc.in"
|
||||
RelativePath="..\src\ottdres.rc.in"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
|
119
readme.txt
@@ -1,6 +1,6 @@
|
||||
OpenTTD README
|
||||
Last updated: 2010-01-21
|
||||
Release version: 1.0.0-beta3
|
||||
Last updated: 2009-12-01
|
||||
Release version: 0.7.4
|
||||
------------------------------------------------------------------------
|
||||
|
||||
|
||||
@@ -19,8 +19,9 @@ Table of Contents:
|
||||
7.0) Compiling
|
||||
* 7.1) Required/optional libraries
|
||||
8.0) Translating
|
||||
* 8.1 Translation
|
||||
* 8.2 Previewing
|
||||
* 8.1 Guidelines
|
||||
* 8.2 Translation
|
||||
* 8.3 Previewing
|
||||
9.0) Troubleshooting
|
||||
X.X) Credits
|
||||
|
||||
@@ -65,10 +66,9 @@ When you are sure it is not already reported you should:
|
||||
* Make sure you are not running a non-official binary, like a patch pack.
|
||||
When you are playing with a patch pack you should report any bugs to the
|
||||
forum thread related to that patch pack.
|
||||
* Make it reproducible for the developers. In other words, create a savegame
|
||||
* Make it reproducable for the developers. In other words, create a savegame
|
||||
in which you can reproduce the issue once loaded. It is very useful to give
|
||||
us the crash.dmp, crash.sav, crash.log and crash screenshot which are
|
||||
created on crashes.
|
||||
us the crash.dmp, crash.sav and crash.log which are created on crashes.
|
||||
* Check whether the bug is already reported on our bug tracker. This includes
|
||||
searching for recently closed bug reports as the bug might already be fixed.
|
||||
|
||||
@@ -87,9 +87,9 @@ following information in your bug report:
|
||||
|
||||
2.2) Reporting Desyncs:
|
||||
---- ------------------
|
||||
As desyncs are hard to make reproducible OpenTTD has the ability to log all
|
||||
As desyncs are hard to make reproducable OpenTTD has the ability to log all
|
||||
actions done by clients so we can replay the whole game in an effort to make
|
||||
desyncs better reproducible. You need to turn this ability on. When turned
|
||||
desyncs better reproducable. You need to turn this ability on. When turned
|
||||
on an automatic savegame will be made once the map has been constructed in
|
||||
the 'save/autosave' directory, see OpenTTD directories to know where to find
|
||||
this directory. Furthermore the log file 'commands-out.log' will be created
|
||||
@@ -148,7 +148,7 @@ are:
|
||||
DOS - Allegro
|
||||
FreeBSD - SDL
|
||||
Linux - SDL or Allegro
|
||||
MacOS X (universal) - Cocoa video and sound drivers
|
||||
MacOS X (universal) - Cocoa video and sound drivers (SDL works too, but not 100% and not as a universal binary)
|
||||
MorphOS - SDL
|
||||
OpenBSD - SDL
|
||||
OS/2 - SDL
|
||||
@@ -187,49 +187,36 @@ an AI a message will be shown that the 'dummy' AI has been started.
|
||||
4.1) (Required) 3rd party files:
|
||||
---- ---------------------------
|
||||
|
||||
Before you run OpenTTD, you need to put the game's data files into a data/
|
||||
Before you run OpenTTD, you need to put the game's datafiles into a data/
|
||||
directory which can be located in various places addressed in the following
|
||||
section.
|
||||
As OpenTTD makes use of the original TTD artwork you will need the files listed
|
||||
below, which you can find on a Transport Tycoon Deluxe CD-ROM.
|
||||
The Windows installer optionally can copy these files from that CD-ROM.
|
||||
|
||||
For OpenTTD you need to acquire some third party data files. For this you have
|
||||
the choice of using the original Transport Tycoon Deluxe data files or a set
|
||||
of free data files.
|
||||
List of the required files:
|
||||
- sample.cat
|
||||
- trg1r.grf
|
||||
- trgcr.grf
|
||||
- trghr.grf
|
||||
- trgir.grf
|
||||
- trgtr.grf
|
||||
|
||||
Alternatively you can use the TTD GRF files from the DOS version:
|
||||
- TRG1.GRF
|
||||
- TRGC.GRF
|
||||
- TRGH.GRF
|
||||
- TRGI.GRF
|
||||
- TRGT.GRF
|
||||
|
||||
If you want the TTD music, copy the gm/ folder from the Windows version
|
||||
of TTD to your OpenTTD folder (not your data folder - also explained in
|
||||
the following sections).
|
||||
|
||||
Do NOT copy files included with OpenTTD into "shared" directories (explained in
|
||||
the following sections) as sooner or later you will run into graphical glitches
|
||||
when using other versions of the game.
|
||||
|
||||
4.1.1) Free graphics and sound files
|
||||
------ -----------------------------
|
||||
The free data files, split into OpenGFX for graphics and OpenSFX for sounds
|
||||
can be found at:
|
||||
- http://bundles.openttdcoop.org/opengfx/releases/ for OpenGFX
|
||||
- http://bundles.openttdcoop.org/opensfx/releases/ for OpenSFX
|
||||
Please follow the readme of these packages about the installation procedure.
|
||||
The Windows installer can optionally download and install these packages.
|
||||
|
||||
4.1.2) Original Transport Tycoon Deluxe graphics and sound files
|
||||
------ ---------------------------------------------------------
|
||||
If you want to play with the original Transport Tycoon Deluxe data files you
|
||||
have to copy the data files from the CD-ROM into the data/ directory. It does
|
||||
not matter whether you copy them from the DOS or Windows version of Transport
|
||||
Tycoon Deluxe. The Windows install can optionally copy these files.
|
||||
You need to copy the following files:
|
||||
- sample.cat
|
||||
- trg1r.grf or TRG1.GRF
|
||||
- trgcr.grf or TRGC.GRF
|
||||
- trghr.grf or TRGH.GRF
|
||||
- trgir.grf or TRGI.GRF
|
||||
- trgtr.grf or TRGT.GRF
|
||||
|
||||
4.1.3) Original Transport Tycoon Deluxe music
|
||||
------ --------------------------------------
|
||||
If you want the TTD music, copy the gm/ folder from the Windows version
|
||||
of TTD to your OpenTTD folder (not your data folder - also explained in
|
||||
the following sections). The music from the DOS version does not work.
|
||||
|
||||
4.1.4) AIs
|
||||
------ ---
|
||||
If you want AIs use the in-game content downloader. If for some reason that is
|
||||
not possible or you want to use an AI that has not been uploaded to the content
|
||||
download system download the tar file and place it in the ai/ directory. If the
|
||||
@@ -263,17 +250,17 @@ can be placed in a few different locations:
|
||||
5. The installation directory (Linux only)
|
||||
Linux: /usr/share/games/openttd
|
||||
6. The application bundle (Mac OSX only)
|
||||
It includes the OpenTTD files (grf+lng) and it will work as long as they aren't touched
|
||||
It includes the OTTD files (grf+lng) and it will work as long as they aren't touched
|
||||
|
||||
Notes:
|
||||
- Linux in the previous list means .deb, but most paths should be similar for others.
|
||||
- The previous search order is also used for NewGRFs and openttd.cfg.
|
||||
- The previous search order is also used for newgrfs and openttd.cfg.
|
||||
- If openttd.cfg is not found, then it will be created using the 2, 4, 1, 3, 5 order.
|
||||
- Savegames will be relative to the config file only if there is no save/
|
||||
directory in paths with higher priority than the config file path, but
|
||||
autosaves and screenshots will always be relative to the config file.
|
||||
|
||||
The preferred setup:
|
||||
The prefered setup:
|
||||
Place 3rd party files in shared directory (or in personal directory if you don't
|
||||
have write access on shared directory) and have your openttd.cfg config file in
|
||||
personal directory (where the game will then also place savegames and screenshots).
|
||||
@@ -321,7 +308,7 @@ ways to affect game state possibly resulting in program crash or multiplayer
|
||||
desyncs.
|
||||
Easier way would be to forbid all these unsafe actions, but that would affect
|
||||
game usability for many players. We certainly do not want that.
|
||||
However, we receive bug reports because of this. To reduce time spent with
|
||||
However, we receive bugreports because of this. To reduce time spent with
|
||||
solving these problems, these potentially unsafe actions are logged in
|
||||
the savegame (including crash.sav). Log is stored in crash logs, too.
|
||||
|
||||
@@ -330,15 +317,15 @@ Information logged:
|
||||
* Adding / removing / changing order of NewGRFs
|
||||
* Changing NewGRF parameters, loading compatible NewGRF
|
||||
* Changing game mode (scenario editor <-> normal game)
|
||||
* Loading game saved in a different OpenTTD / TTDPatch / TTD version
|
||||
* Running a modified OpenTTD build
|
||||
* Changing settings affecting NewGRF behaviour (non-network-safe settings)
|
||||
* Loading game saved in a different OTTD / TTDPatch / TTD version
|
||||
* Running a modified OTTD build
|
||||
* Changing settings affecting NewGRF behaviour (non-networksafe settings)
|
||||
* Changing landscape (by cheat)
|
||||
* Triggering NewGRF bugs
|
||||
|
||||
No personal information is stored.
|
||||
|
||||
You can show the game log by typing 'gamelog' in the console or by running
|
||||
You can show the gamelog by typing 'gamelog' in the console or by running
|
||||
OpenTTD in debug mode.
|
||||
|
||||
|
||||
@@ -360,9 +347,9 @@ Windows:
|
||||
you need to add WITH_SDL to the project settings.
|
||||
PNG (WITH_PNG) and ZLIB (WITH_ZLIB) support is enabled by default. For these
|
||||
to work you need their development files. For best results, download the
|
||||
openttd-useful.zip file from http://www.openttd.org/download-openttd-useful
|
||||
Put the header files into your compiler's include/ directory and the
|
||||
library (.lib) files into the lib/ directory.
|
||||
openttd-useful.zip file from SourceForge under the Files tab. Put the header
|
||||
files into your compiler's include/ directory and the library (.lib) files
|
||||
into the lib/ directory.
|
||||
For more help with VS see docs/Readme_Windows_MSVC.txt.
|
||||
|
||||
You can also build it using the Makefile with MSYS/MinGW or Cygwin/MinGW.
|
||||
@@ -410,7 +397,6 @@ DOS:
|
||||
The following libraries are used by OpenTTD for:
|
||||
- libSDL/liballegro: hardware access (video, sound, mouse)
|
||||
- zlib: (de)compressing of savegames
|
||||
- liblzo2: (de)compressing of old (pre 0.3.0) savegames
|
||||
- libpng: making screenshots and loading heightmaps
|
||||
- libfreetype: loading generic fonts and rendering them
|
||||
- libfontconfig: searching for fonts, resolving font names to actual fonts
|
||||
@@ -432,11 +418,15 @@ simply follow the guidelines in the FAQ of the translator website.
|
||||
If for some reason the website is down for a longer period of time, the
|
||||
information below might be of help.
|
||||
|
||||
Please contact the translations manager (http://www.openttd.org/contact)
|
||||
before beginning the translation process! This avoids double work, as
|
||||
someone else may have already started translating to the same language.
|
||||
8.1) Guidelines:
|
||||
---- -------------------
|
||||
Here are some translation guidelines which you should follow closely.
|
||||
|
||||
8.1) Translation:
|
||||
* Please contact the development team before beginning the translation
|
||||
process! This avoids double work, as someone else may have already
|
||||
started translating to the same language.
|
||||
|
||||
8.2) Translation:
|
||||
---- -------------------
|
||||
So, now that you've notified the development team about your intention to
|
||||
translate (You did, right? Of course you did.) you can pick up english.txt
|
||||
@@ -454,7 +444,7 @@ Note: Do not alter the following parts of the file:
|
||||
* Lines beginning with ## (such as ##id), other than the first two lines of
|
||||
the file
|
||||
|
||||
8.2) Previewing:
|
||||
8.3) Previewing:
|
||||
---- -------------------
|
||||
In order to view the translation in the game, you need to compile your language
|
||||
file with the strgen utility. You can download the precompiled strgen from:
|
||||
@@ -491,7 +481,7 @@ The most frequent problem is missing data files. Don't forget to put all GRF
|
||||
files from TTD into your data/ folder including sample.cat!
|
||||
|
||||
Under Windows 98 and lower it is impossible to use a dedicated server; it will
|
||||
fail to start. Perhaps this is for the better because those OSes are not known
|
||||
fail to start. Perhaps this is for the better because those OS's are not known
|
||||
for their stability.
|
||||
|
||||
With the added support for font-based text selecting a non-latin language will
|
||||
@@ -500,7 +490,7 @@ file and add a desired font for small/medium/-and large_font. This can be a font
|
||||
name like "Tahoma" or a path to a font.
|
||||
|
||||
Any NewGRF file used in a game is stored inside the savegame and will refuse
|
||||
to load if you don't have that NewGRF file available. A list of missing files
|
||||
to load if you don't have that grf file available. A list of missing files
|
||||
will be output to the console at the moment, so use the '-d' flag (on windows)
|
||||
to see this list. You just have to find the files (http://grfcrawler.tt-forums.net/)
|
||||
put them in the data/ folder and you're set to go.
|
||||
@@ -547,6 +537,7 @@ Thanks to:
|
||||
Christian Rosentreter (tokai) - MorphOS / AmigaOS port
|
||||
Richard Kempton (RichK67) - Additional airports, initial TGP implementation
|
||||
Alberto Demichelis - Squirrel scripting language
|
||||
Markus F.X.J. Oberhumer - MiniLZO for loading old savegames
|
||||
L. Peter Deutsch - MD5 implementation
|
||||
Michael Blunck - For revolutionizing TTD with awesome graphics
|
||||
George - Canal graphics
|
||||
|
201
source.list
@@ -3,14 +3,15 @@ airport.cpp
|
||||
animated_tile.cpp
|
||||
articulated_vehicles.cpp
|
||||
autoreplace.cpp
|
||||
aystar.cpp
|
||||
bmp.cpp
|
||||
callback_table.cpp
|
||||
cargopacket.cpp
|
||||
cargotype.cpp
|
||||
cheat.cpp
|
||||
command.cpp
|
||||
console.cpp
|
||||
console_cmds.cpp
|
||||
crashlog.cpp
|
||||
currency.cpp
|
||||
date.cpp
|
||||
debug.cpp
|
||||
@@ -33,9 +34,12 @@ highscore.cpp
|
||||
ini.cpp
|
||||
landscape.cpp
|
||||
map.cpp
|
||||
md5.cpp
|
||||
minilzo.cpp
|
||||
misc.cpp
|
||||
mixer.cpp
|
||||
music.cpp
|
||||
namegen.cpp
|
||||
network/network.cpp
|
||||
network/network_client.cpp
|
||||
network/network_command.cpp
|
||||
@@ -43,13 +47,22 @@ network/network_content.cpp
|
||||
network/network_gamelist.cpp
|
||||
network/network_server.cpp
|
||||
network/network_udp.cpp
|
||||
npf.cpp
|
||||
oldpool.cpp
|
||||
openttd.cpp
|
||||
os_timer.cpp
|
||||
#if WIN32
|
||||
ottdres.rc
|
||||
#end
|
||||
#if WINCE
|
||||
ottdres.rc
|
||||
#end
|
||||
pathfind.cpp
|
||||
pbs.cpp
|
||||
queue.cpp
|
||||
rail.cpp
|
||||
rev.cpp
|
||||
road.cpp
|
||||
roadstop.cpp
|
||||
screenshot.cpp
|
||||
#if SDL
|
||||
sdl.cpp
|
||||
@@ -58,29 +71,39 @@ settings.cpp
|
||||
signal.cpp
|
||||
signs.cpp
|
||||
sound.cpp
|
||||
sprite.cpp
|
||||
spritecache.cpp
|
||||
station.cpp
|
||||
string.cpp
|
||||
strings.cpp
|
||||
subsidy.cpp
|
||||
texteff.cpp
|
||||
tgp.cpp
|
||||
#if HAVE_THREAD
|
||||
#if WIN32
|
||||
thread_win32.cpp
|
||||
#else
|
||||
#if OS2
|
||||
thread_os2.cpp
|
||||
#else
|
||||
#if MORPHOS
|
||||
thread_morphos.cpp
|
||||
#else
|
||||
thread_pthread.cpp
|
||||
#end
|
||||
#end
|
||||
#end
|
||||
#else
|
||||
thread_none.cpp
|
||||
#end
|
||||
tile_map.cpp
|
||||
townname.cpp
|
||||
#if WIN32
|
||||
#else
|
||||
#if WINCE
|
||||
win32.cpp
|
||||
#else
|
||||
#if OS2
|
||||
os/os2/os2.cpp
|
||||
os2.cpp
|
||||
#else
|
||||
#if OSX
|
||||
os/macosx/crashlog_osx.cpp
|
||||
#else
|
||||
os/unix/crashlog_unix.cpp
|
||||
#end
|
||||
os/unix/unix.cpp
|
||||
unix.cpp
|
||||
#end
|
||||
#end
|
||||
#end
|
||||
@@ -89,6 +112,9 @@ vehiclelist.cpp
|
||||
viewport.cpp
|
||||
waypoint.cpp
|
||||
widget.cpp
|
||||
#if WIN32
|
||||
win32.cpp
|
||||
#end
|
||||
window.cpp
|
||||
|
||||
# Header Files
|
||||
@@ -99,6 +125,7 @@ window.cpp
|
||||
#end
|
||||
aircraft.h
|
||||
airport.h
|
||||
airport_movement.h
|
||||
animated_tile_func.h
|
||||
articulated_vehicles.h
|
||||
autoreplace_base.h
|
||||
@@ -106,11 +133,10 @@ autoreplace_func.h
|
||||
autoreplace_gui.h
|
||||
autoreplace_type.h
|
||||
autoslope.h
|
||||
base_media_base.h
|
||||
base_media_func.h
|
||||
base_station_base.h
|
||||
aystar.h
|
||||
bmp.h
|
||||
bridge.h
|
||||
callback_table.h
|
||||
cargo_type.h
|
||||
cargopacket.h
|
||||
cargotype.h
|
||||
@@ -128,10 +154,8 @@ console_func.h
|
||||
console_gui.h
|
||||
console_internal.h
|
||||
console_type.h
|
||||
crashlog.h
|
||||
currency.h
|
||||
date_func.h
|
||||
date_gui.h
|
||||
date_type.h
|
||||
debug.h
|
||||
video/dedicated_v.h
|
||||
@@ -170,18 +194,20 @@ group_type.h
|
||||
gui.h
|
||||
heightmap.h
|
||||
highscore.h
|
||||
house.h
|
||||
house_type.h
|
||||
industry.h
|
||||
industry_type.h
|
||||
industrytype.h
|
||||
ini_type.h
|
||||
landscape.h
|
||||
landscape_type.h
|
||||
livery.h
|
||||
lzoconf.h
|
||||
map_func.h
|
||||
map_type.h
|
||||
md5.h
|
||||
minilzo.h
|
||||
mixer.h
|
||||
music.h
|
||||
namegen_func.h
|
||||
network/network.h
|
||||
network/network_base.h
|
||||
network/network_client.h
|
||||
@@ -204,7 +230,6 @@ newgrf_generic.h
|
||||
newgrf_house.h
|
||||
newgrf_industries.h
|
||||
newgrf_industrytiles.h
|
||||
newgrf_properties.h
|
||||
newgrf_sound.h
|
||||
newgrf_spritegroup.h
|
||||
newgrf_station.h
|
||||
@@ -215,15 +240,20 @@ newgrf_townname.h
|
||||
news_func.h
|
||||
news_gui.h
|
||||
news_type.h
|
||||
npf.h
|
||||
music/null_m.h
|
||||
sound/null_s.h
|
||||
video/null_v.h
|
||||
oldpool.h
|
||||
oldpool_func.h
|
||||
openttd.h
|
||||
order_base.h
|
||||
order_func.h
|
||||
order_type.h
|
||||
pathfind.h
|
||||
pbs.h
|
||||
querystring_gui.h
|
||||
queue.h
|
||||
rail.h
|
||||
rail_gui.h
|
||||
rail_type.h
|
||||
@@ -233,7 +263,6 @@ road_func.h
|
||||
road_gui.h
|
||||
road_internal.h
|
||||
road_type.h
|
||||
roadstop_base.h
|
||||
roadveh.h
|
||||
screenshot.h
|
||||
sdl.h
|
||||
@@ -266,15 +295,12 @@ string_func.h
|
||||
string_type.h
|
||||
strings_func.h
|
||||
strings_type.h
|
||||
subsidy_base.h
|
||||
subsidy_func.h
|
||||
subsidy_type.h
|
||||
tar_type.h
|
||||
terraform_gui.h
|
||||
textbuf_gui.h
|
||||
texteff.hpp
|
||||
tgp.h
|
||||
tilearea_type.h
|
||||
thread.h
|
||||
tile_cmd.h
|
||||
tile_type.h
|
||||
tilehighlight_func.h
|
||||
@@ -283,8 +309,6 @@ timetable.h
|
||||
toolbar_gui.h
|
||||
town.h
|
||||
town_type.h
|
||||
townname_func.h
|
||||
townname_type.h
|
||||
track_func.h
|
||||
track_type.h
|
||||
train.h
|
||||
@@ -303,10 +327,10 @@ vehiclelist.h
|
||||
viewport_func.h
|
||||
viewport_type.h
|
||||
water.h
|
||||
waypoint_base.h
|
||||
waypoint_func.h
|
||||
waypoint.h
|
||||
waypoint_type.h
|
||||
widget_type.h
|
||||
os/windows/win32.h
|
||||
win32.h
|
||||
music/win32_m.h
|
||||
sound/win32_s.h
|
||||
video/win32_v.h
|
||||
@@ -318,7 +342,6 @@ zoom_type.h
|
||||
#if WIN32
|
||||
#else
|
||||
music/bemidi.h
|
||||
music/cocoa_m.h
|
||||
music/extmidi.h
|
||||
music/libtimidity.h
|
||||
music/os2_m.h
|
||||
@@ -340,15 +363,10 @@ core/bitmath_func.hpp
|
||||
core/endian_func.hpp
|
||||
core/endian_type.hpp
|
||||
core/enum_type.hpp
|
||||
core/geometry_func.cpp
|
||||
core/geometry_func.hpp
|
||||
core/geometry_type.hpp
|
||||
core/math_func.cpp
|
||||
core/math_func.hpp
|
||||
core/mem_func.hpp
|
||||
core/overflowsafe_type.hpp
|
||||
core/pool_func.hpp
|
||||
core/pool_type.hpp
|
||||
core/random_func.cpp
|
||||
core/random_func.hpp
|
||||
core/smallmap_type.hpp
|
||||
@@ -365,7 +383,6 @@ build_vehicle_gui.cpp
|
||||
cheat_gui.cpp
|
||||
company_gui.cpp
|
||||
console_gui.cpp
|
||||
date_gui.cpp
|
||||
depot_gui.cpp
|
||||
dock_gui.cpp
|
||||
engine_gui.cpp
|
||||
@@ -403,7 +420,6 @@ train_gui.cpp
|
||||
transparency_gui.cpp
|
||||
tree_gui.cpp
|
||||
vehicle_gui.cpp
|
||||
viewport_gui.cpp
|
||||
waypoint_gui.cpp
|
||||
|
||||
# Widgets
|
||||
@@ -453,7 +469,6 @@ saveload/engine_sl.cpp
|
||||
saveload/gamelog_sl.cpp
|
||||
saveload/group_sl.cpp
|
||||
saveload/industry_sl.cpp
|
||||
saveload/labelmaps_sl.cpp
|
||||
saveload/map_sl.cpp
|
||||
saveload/misc_sl.cpp
|
||||
saveload/newgrf_sl.cpp
|
||||
@@ -473,9 +488,6 @@ saveload/vehicle_sl.cpp
|
||||
saveload/waypoint_sl.cpp
|
||||
|
||||
# Tables
|
||||
table/airport_defaults.h
|
||||
table/airporttiles.h
|
||||
table/airport_movement.h
|
||||
table/animcursors.h
|
||||
table/autorail.h
|
||||
table/bridge_land.h
|
||||
@@ -485,22 +497,20 @@ table/clear_land.h
|
||||
table/control_codes.h
|
||||
table/elrail_data.h
|
||||
table/engines.h
|
||||
table/files.h
|
||||
table/genland.h
|
||||
table/industry_land.h
|
||||
table/landscape_sprite.h
|
||||
table/namegen.h
|
||||
table/palette_convert.h
|
||||
table/palettes.h
|
||||
table/pricebase.h
|
||||
table/railtypes.h
|
||||
table/road_land.h
|
||||
table/roadveh_movement.h
|
||||
table/settings.h
|
||||
table/sprites.h
|
||||
table/station_land.h
|
||||
table/strgen_tables.h
|
||||
../objs/langs/table/strings.h
|
||||
table/town_land.h
|
||||
table/townname.h
|
||||
table/track_land.h
|
||||
table/train_cmd.h
|
||||
table/tree_land.h
|
||||
@@ -508,15 +518,7 @@ table/unicode.h
|
||||
table/unmovable_land.h
|
||||
table/water_land.h
|
||||
|
||||
# MD5
|
||||
3rdparty/md5/md5.cpp
|
||||
3rdparty/md5/md5.h
|
||||
|
||||
# Script
|
||||
script/script_info.cpp
|
||||
script/script_info.hpp
|
||||
script/script_scanner.cpp
|
||||
script/script_scanner.hpp
|
||||
script/squirrel.cpp
|
||||
script/squirrel.hpp
|
||||
script/squirrel_class.hpp
|
||||
@@ -537,7 +539,6 @@ script/squirrel_std.hpp
|
||||
3rdparty/squirrel/squirrel/sqobject.cpp
|
||||
3rdparty/squirrel/squirrel/sqstate.cpp
|
||||
3rdparty/squirrel/sqstdlib/sqstdaux.cpp
|
||||
3rdparty/squirrel/sqstdlib/sqstdmath.cpp
|
||||
3rdparty/squirrel/squirrel/sqtable.cpp
|
||||
3rdparty/squirrel/squirrel/sqvm.cpp
|
||||
|
||||
@@ -589,7 +590,6 @@ ai/api/ai_abstractlist.hpp
|
||||
ai/api/ai_accounting.hpp
|
||||
ai/api/ai_airport.hpp
|
||||
ai/api/ai_base.hpp
|
||||
ai/api/ai_basestation.hpp
|
||||
ai/api/ai_bridge.hpp
|
||||
ai/api/ai_bridgelist.hpp
|
||||
ai/api/ai_cargo.hpp
|
||||
@@ -645,7 +645,6 @@ ai/api/ai_abstractlist.cpp
|
||||
ai/api/ai_accounting.cpp
|
||||
ai/api/ai_airport.cpp
|
||||
ai/api/ai_base.cpp
|
||||
ai/api/ai_basestation.cpp
|
||||
ai/api/ai_bridge.cpp
|
||||
ai/api/ai_bridgelist.cpp
|
||||
ai/api/ai_cargo.cpp
|
||||
@@ -782,6 +781,7 @@ misc/dbg_helpers.h
|
||||
misc/fixedsizearray.hpp
|
||||
misc/hashtable.hpp
|
||||
misc/str.hpp
|
||||
misc/strapi.hpp
|
||||
|
||||
# Network Core
|
||||
network/core/address.cpp
|
||||
@@ -805,39 +805,23 @@ network/core/tcp_game.h
|
||||
network/core/udp.cpp
|
||||
network/core/udp.h
|
||||
|
||||
# Pathfinder
|
||||
pathfinder/follow_track.hpp
|
||||
pathfinder/opf/opf_ship.cpp
|
||||
pathfinder/opf/opf_ship.h
|
||||
pathfinder/pathfinder_func.h
|
||||
pathfinder/pathfinder_type.h
|
||||
pathfinder/pf_performance_timer.hpp
|
||||
|
||||
# NPF
|
||||
pathfinder/npf/aystar.cpp
|
||||
pathfinder/npf/aystar.h
|
||||
pathfinder/npf/npf.cpp
|
||||
pathfinder/npf/npf_func.h
|
||||
pathfinder/npf/queue.cpp
|
||||
pathfinder/npf/queue.h
|
||||
|
||||
# YAPF
|
||||
pathfinder/yapf/nodelist.hpp
|
||||
pathfinder/yapf/yapf.h
|
||||
pathfinder/yapf/yapf.hpp
|
||||
pathfinder/yapf/yapf_base.hpp
|
||||
pathfinder/yapf/yapf_cache.h
|
||||
pathfinder/yapf/yapf_common.hpp
|
||||
pathfinder/yapf/yapf_costbase.hpp
|
||||
pathfinder/yapf/yapf_costcache.hpp
|
||||
pathfinder/yapf/yapf_costrail.hpp
|
||||
pathfinder/yapf/yapf_destrail.hpp
|
||||
pathfinder/yapf/yapf_node.hpp
|
||||
pathfinder/yapf/yapf_node_rail.hpp
|
||||
pathfinder/yapf/yapf_node_road.hpp
|
||||
pathfinder/yapf/yapf_rail.cpp
|
||||
pathfinder/yapf/yapf_road.cpp
|
||||
pathfinder/yapf/yapf_ship.cpp
|
||||
yapf/follow_track.hpp
|
||||
yapf/nodelist.hpp
|
||||
yapf/yapf.h
|
||||
yapf/yapf.hpp
|
||||
yapf/yapf_base.hpp
|
||||
yapf/yapf_common.hpp
|
||||
yapf/yapf_costbase.hpp
|
||||
yapf/yapf_costcache.hpp
|
||||
yapf/yapf_costrail.hpp
|
||||
yapf/yapf_destrail.hpp
|
||||
yapf/yapf_node.hpp
|
||||
yapf/yapf_node_rail.hpp
|
||||
yapf/yapf_node_road.hpp
|
||||
yapf/yapf_rail.cpp
|
||||
yapf/yapf_road.cpp
|
||||
yapf/yapf_ship.cpp
|
||||
|
||||
# Video
|
||||
video/dedicated_v.cpp
|
||||
@@ -859,6 +843,7 @@ video/null_v.cpp
|
||||
#end
|
||||
|
||||
# Music
|
||||
music/null_m.cpp
|
||||
#if DEDICATED
|
||||
#else
|
||||
#if ALLEGRO
|
||||
@@ -867,10 +852,6 @@ video/null_v.cpp
|
||||
#if DIRECTMUSIC
|
||||
music/dmusic.cpp
|
||||
#end
|
||||
#end
|
||||
music/null_m.cpp
|
||||
#if DEDICATED
|
||||
#else
|
||||
#if WIN32
|
||||
music/win32_m.cpp
|
||||
#else
|
||||
@@ -923,39 +904,7 @@ sound/null_s.cpp
|
||||
video/cocoa/fullscreen.mm
|
||||
video/cocoa/wnd_quartz.mm
|
||||
video/cocoa/wnd_quickdraw.mm
|
||||
music/cocoa_m.cpp
|
||||
sound/cocoa_s.cpp
|
||||
os/macosx/splash.cpp
|
||||
#end
|
||||
#end
|
||||
|
||||
# Windows files
|
||||
#if WIN32
|
||||
os/windows/crashlog_win.cpp
|
||||
os/windows/ottdres.rc
|
||||
os/windows/win32.cpp
|
||||
#end
|
||||
#if WINCE
|
||||
os/windows/ottdres.rc
|
||||
os/windows/win32.cpp
|
||||
#end
|
||||
|
||||
# Threading
|
||||
thread/thread.h
|
||||
#if HAVE_THREAD
|
||||
#if WIN32
|
||||
thread/thread_win32.cpp
|
||||
#else
|
||||
#if OS2
|
||||
thread/thread_os2.cpp
|
||||
#else
|
||||
#if MORPHOS
|
||||
thread/thread_morphos.cpp
|
||||
#else
|
||||
thread/thread_pthread.cpp
|
||||
#end
|
||||
#end
|
||||
#end
|
||||
#else
|
||||
thread/thread_none.cpp
|
||||
#end
|
||||
|
2
src/3rdparty/squirrel/COMPILE
vendored
@@ -1,4 +1,4 @@
|
||||
Squirrel 2.2.4 stable
|
||||
Squirrel 2.2.1 stable
|
||||
--------------------------------------------------------
|
||||
What is in this distribution?
|
||||
|
||||
|
2
src/3rdparty/squirrel/COPYRIGHT
vendored
@@ -1,4 +1,4 @@
|
||||
Copyright (c) 2003-2009 Alberto Demichelis
|
||||
Copyright (c) 2003-2008 Alberto Demichelis
|
||||
|
||||
This software is provided 'as-is', without any
|
||||
express or implied warranty. In no event will the
|
||||
|
18
src/3rdparty/squirrel/HISTORY
vendored
@@ -1,21 +1,3 @@
|
||||
***version 2.2.4 stable***
|
||||
-fixed bug in functions with default parameters
|
||||
|
||||
***2009-06-30 ***
|
||||
***version 2.2.3 stable***
|
||||
-added sq_getfunctioninfo
|
||||
-added compile time flag SQUSEDOUBLE to use double precision floats
|
||||
-added global slot _floatsize_ int the base lib to recognize single precision and double precision builds
|
||||
-sq_wakeupvm can now resume the vm with an exception
|
||||
-added sqstd_format
|
||||
-generators can now be instantiated by calling sq_call() or closure.call()
|
||||
-fixed a bug in sqstd_printcallstack(thx takayuki_h)
|
||||
-fixed modulo by zero(thx jup)
|
||||
-fixed negative enums and constants
|
||||
-fixed generator crash bug if invoked as tail call (thx Mr.Accident)
|
||||
-fixed some minor bug
|
||||
|
||||
***2008-09-24 ***
|
||||
***version 2.2.2 stable***
|
||||
-fixed some behaviour inconsistencies in thread.call() and thread.wakeup() (thx Mr.Accident)
|
||||
-fixed coroutine error propagation
|
||||
|
2
src/3rdparty/squirrel/README
vendored
@@ -1,4 +1,4 @@
|
||||
The programming language SQUIRREL 2.2.4 stable
|
||||
The programming language SQUIRREL 2.2.1 stable
|
||||
|
||||
--------------------------------------------------
|
||||
The project has been compiled and run on Windows(Windows XP/2000 on Intel x86 Windows XP Pro on AMD x64) and
|
||||
|
BIN
src/3rdparty/squirrel/doc/sqstdlib2.chm
vendored
1714
src/3rdparty/squirrel/doc/sqstdlib2.pdf
vendored
BIN
src/3rdparty/squirrel/doc/squirrel2.chm
vendored
6409
src/3rdparty/squirrel/doc/squirrel2.pdf
vendored
2
src/3rdparty/squirrel/include/sqstdstring.h
vendored
@@ -22,8 +22,6 @@ SQUIRREL_API SQBool sqstd_rex_searchrange(SQRex* exp,const SQChar* text_begin,co
|
||||
SQUIRREL_API SQInteger sqstd_rex_getsubexpcount(SQRex* exp);
|
||||
SQUIRREL_API SQBool sqstd_rex_getsubexp(SQRex* exp, SQInteger n, SQRexMatch *subexp);
|
||||
|
||||
SQUIRREL_API SQRESULT sqstd_format(HSQUIRRELVM v,SQInteger nformatstringidx,SQInteger *outlen,SQChar **output);
|
||||
|
||||
SQUIRREL_API SQRESULT sqstd_register_stringlib(HSQUIRRELVM v);
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
35
src/3rdparty/squirrel/include/squirrel.h
vendored
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright (c) 2003-2009 Alberto Demichelis
|
||||
Copyright (c) 2003-2008 Alberto Demichelis
|
||||
|
||||
This software is provided 'as-is', without any
|
||||
express or implied warranty. In no event will the
|
||||
@@ -68,24 +68,7 @@ typedef unsigned int SQHash; /*should be the same size of a pointer*/
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef SQUSEDOUBLE
|
||||
typedef double SQFloat;
|
||||
#else
|
||||
typedef float SQFloat;
|
||||
#endif
|
||||
|
||||
#if defined(SQUSEDOUBLE) && !defined(_SQ64)
|
||||
#ifdef _MSC_VER
|
||||
typedef __int64 SQRawObjectVal; //must be 64bits
|
||||
#else
|
||||
typedef long SQRawObjectVal; //must be 64bits
|
||||
#endif
|
||||
#define SQ_OBJECT_RAWINIT() { _unVal.raw = 0; }
|
||||
#else
|
||||
typedef SQUnsignedInteger SQRawObjectVal; //is 32 bits on 32 bits builds and 64 bits otherwise
|
||||
#define SQ_OBJECT_RAWINIT()
|
||||
#endif
|
||||
|
||||
typedef void* SQUserPointer;
|
||||
typedef SQUnsignedInteger SQBool;
|
||||
typedef SQInteger SQRESULT;
|
||||
@@ -176,8 +159,8 @@ typedef char SQChar;
|
||||
#define MAX_CHAR 0xFF
|
||||
#endif
|
||||
|
||||
#define SQUIRREL_VERSION _SC("Squirrel 2.2.4 stable - With custom OpenTTD modifications")
|
||||
#define SQUIRREL_COPYRIGHT _SC("Copyright (C) 2003-2009 Alberto Demichelis")
|
||||
#define SQUIRREL_VERSION _SC("Squirrel 2.2.2 stable - With custom OpenTTD modifications")
|
||||
#define SQUIRREL_COPYRIGHT _SC("Copyright (C) 2003-2008 Alberto Demichelis")
|
||||
#define SQUIRREL_AUTHOR _SC("Alberto Demichelis")
|
||||
|
||||
#define SQ_VMSTATE_IDLE 0
|
||||
@@ -257,7 +240,6 @@ typedef union tagSQObjectValue
|
||||
struct SQClass *pClass;
|
||||
struct SQInstance *pInstance;
|
||||
struct SQWeakRef *pWeakRef;
|
||||
SQRawObjectVal raw;
|
||||
}SQObjectValue;
|
||||
|
||||
|
||||
@@ -292,13 +274,6 @@ typedef struct tagSQRegFunction{
|
||||
const SQChar *typemask;
|
||||
}SQRegFunction;
|
||||
|
||||
typedef struct tagSQFunctionInfo {
|
||||
SQUserPointer funcid;
|
||||
const SQChar *name;
|
||||
const SQChar *source;
|
||||
}SQFunctionInfo;
|
||||
|
||||
|
||||
/*vm*/
|
||||
SQUIRREL_API bool sq_can_suspend(HSQUIRRELVM v);
|
||||
SQUIRREL_API HSQUIRRELVM sq_open(SQInteger initialstacksize);
|
||||
@@ -312,9 +287,8 @@ SQUIRREL_API SQPRINTFUNCTION sq_getprintfunc(HSQUIRRELVM v);
|
||||
SQUIRREL_API SQRESULT sq_suspendvm(HSQUIRRELVM v);
|
||||
SQUIRREL_API bool sq_resumecatch(HSQUIRRELVM v, int suspend = -1);
|
||||
SQUIRREL_API bool sq_resumeerror(HSQUIRRELVM v);
|
||||
SQUIRREL_API SQRESULT sq_wakeupvm(HSQUIRRELVM v,SQBool resumedret,SQBool retval,SQBool raiseerror,SQBool throwerror);
|
||||
SQUIRREL_API SQRESULT sq_wakeupvm(HSQUIRRELVM v,SQBool resumedret,SQBool retval,SQBool raiseerror);
|
||||
SQUIRREL_API SQInteger sq_getvmstate(HSQUIRRELVM v);
|
||||
SQUIRREL_API void sq_decreaseops(HSQUIRRELVM v, int amount);
|
||||
|
||||
/*compiler*/
|
||||
SQUIRREL_API SQRESULT sq_compile(HSQUIRRELVM v,SQLEXREADFUNC read,SQUserPointer p,const SQChar *sourcename,SQBool raiseerror);
|
||||
@@ -364,7 +338,6 @@ SQUIRREL_API SQRESULT sq_settypetag(HSQUIRRELVM v,SQInteger idx,SQUserPointer ty
|
||||
SQUIRREL_API SQRESULT sq_gettypetag(HSQUIRRELVM v,SQInteger idx,SQUserPointer *typetag);
|
||||
SQUIRREL_API void sq_setreleasehook(HSQUIRRELVM v,SQInteger idx,SQRELEASEHOOK hook);
|
||||
SQUIRREL_API SQChar *sq_getscratchpad(HSQUIRRELVM v,SQInteger minsize);
|
||||
SQUIRREL_API SQRESULT sq_getfunctioninfo(HSQUIRRELVM v,SQInteger idx,SQFunctionInfo *fi);
|
||||
SQUIRREL_API SQRESULT sq_getclosureinfo(HSQUIRRELVM v,SQInteger idx,SQUnsignedInteger *nparams,SQUnsignedInteger *nfreevars);
|
||||
SQUIRREL_API SQRESULT sq_setnativeclosurename(HSQUIRRELVM v,SQInteger idx,const SQChar *name);
|
||||
SQUIRREL_API SQRESULT sq_setinstanceup(HSQUIRRELVM v, SQInteger idx, SQUserPointer p);
|
||||
|
1
src/3rdparty/squirrel/samples/ackermann.nut
vendored
@@ -20,4 +20,3 @@ if(ARGS.len()!=0) {
|
||||
}
|
||||
print("n="+n+"\n");
|
||||
print("Ack(3,"+ n+ "):"+ Ack(3, n));
|
||||
|
||||
|
3
src/3rdparty/squirrel/sq/sq.c
vendored
@@ -59,9 +59,6 @@ void printfunc(HSQUIRRELVM v,const SQChar *s,...)
|
||||
void PrintVersionInfos()
|
||||
{
|
||||
scfprintf(stdout,_SC("%s %s (%d bits)\n"),SQUIRREL_VERSION,SQUIRREL_COPYRIGHT,sizeof(SQInteger)*8);
|
||||
if(sizeof(SQFloat) != sizeof(float)) {
|
||||
scfprintf(stdout,_SC("[%d bits floats]\n"),sizeof(SQFloat)*8);
|
||||
}
|
||||
}
|
||||
|
||||
void PrintUsage()
|
||||
|
5
src/3rdparty/squirrel/sqstdlib/sqstdaux.cpp
vendored
@@ -9,7 +9,6 @@ void sqstd_printcallstack(HSQUIRRELVM v)
|
||||
if(pf) {
|
||||
SQStackInfos si;
|
||||
SQInteger i;
|
||||
SQBool b;
|
||||
SQFloat f;
|
||||
const SQChar *s;
|
||||
SQInteger level=1; //1 is to skip this function that is level 0
|
||||
@@ -84,8 +83,8 @@ void sqstd_printcallstack(HSQUIRRELVM v)
|
||||
pf(v,_SC("[%s] WEAKREF\n"),name);
|
||||
break;
|
||||
case OT_BOOL:{
|
||||
sq_getbool(v,-1,&b);
|
||||
pf(v,_SC("[%s] %s\n"),name,b?_SC("true"):_SC("false"));
|
||||
sq_getinteger(v,-1,&i);
|
||||
pf(v,_SC("[%s] %s\n"),name,i?_SC("true"):_SC("false"));
|
||||
}
|
||||
break;
|
||||
default: assert(0); break;
|
||||
|
42
src/3rdparty/squirrel/sqstdlib/sqstdmath.cpp
vendored
@@ -4,24 +4,21 @@
|
||||
#include <stdlib.h>
|
||||
#include <sqstdmath.h>
|
||||
|
||||
#define SINGLE_ARG_FUNC(_funcname, num_ops) static SQInteger math_##_funcname(HSQUIRRELVM v){ \
|
||||
#define SINGLE_ARG_FUNC(_funcname) static SQInteger math_##_funcname(HSQUIRRELVM v){ \
|
||||
SQFloat f; \
|
||||
sq_decreaseops(v,num_ops); \
|
||||
sq_getfloat(v,2,&f); \
|
||||
sq_pushfloat(v,(SQFloat)_funcname(f)); \
|
||||
return 1; \
|
||||
}
|
||||
|
||||
#define TWO_ARGS_FUNC(_funcname, num_ops) static SQInteger math_##_funcname(HSQUIRRELVM v){ \
|
||||
#define TWO_ARGS_FUNC(_funcname) static SQInteger math_##_funcname(HSQUIRRELVM v){ \
|
||||
SQFloat p1,p2; \
|
||||
sq_decreaseops(v,num_ops); \
|
||||
sq_getfloat(v,2,&p1); \
|
||||
sq_getfloat(v,3,&p2); \
|
||||
sq_pushfloat(v,(SQFloat)_funcname(p1,p2)); \
|
||||
return 1; \
|
||||
}
|
||||
|
||||
#ifdef EXPORT_DEFAULT_SQUIRREL_FUNCTIONS
|
||||
static SQInteger math_srand(HSQUIRRELVM v)
|
||||
{
|
||||
SQInteger i;
|
||||
@@ -36,7 +33,6 @@ static SQInteger math_rand(HSQUIRRELVM v)
|
||||
sq_pushinteger(v,rand());
|
||||
return 1;
|
||||
}
|
||||
#endif /* EXPORT_DEFAULT_SQUIRREL_FUNCTIONS */
|
||||
|
||||
static SQInteger math_abs(HSQUIRRELVM v)
|
||||
{
|
||||
@@ -46,21 +42,21 @@ static SQInteger math_abs(HSQUIRRELVM v)
|
||||
return 1;
|
||||
}
|
||||
|
||||
SINGLE_ARG_FUNC(sqrt, 100)
|
||||
SINGLE_ARG_FUNC(fabs, 1)
|
||||
SINGLE_ARG_FUNC(sin, 100)
|
||||
SINGLE_ARG_FUNC(cos, 100)
|
||||
SINGLE_ARG_FUNC(asin, 100)
|
||||
SINGLE_ARG_FUNC(acos, 100)
|
||||
SINGLE_ARG_FUNC(log, 100)
|
||||
SINGLE_ARG_FUNC(log10, 100)
|
||||
SINGLE_ARG_FUNC(tan, 100)
|
||||
SINGLE_ARG_FUNC(atan, 100)
|
||||
TWO_ARGS_FUNC(atan2, 100)
|
||||
TWO_ARGS_FUNC(pow, 100)
|
||||
SINGLE_ARG_FUNC(floor, 1)
|
||||
SINGLE_ARG_FUNC(ceil, 1)
|
||||
SINGLE_ARG_FUNC(exp, 100)
|
||||
SINGLE_ARG_FUNC(sqrt)
|
||||
SINGLE_ARG_FUNC(fabs)
|
||||
SINGLE_ARG_FUNC(sin)
|
||||
SINGLE_ARG_FUNC(cos)
|
||||
SINGLE_ARG_FUNC(asin)
|
||||
SINGLE_ARG_FUNC(acos)
|
||||
SINGLE_ARG_FUNC(log)
|
||||
SINGLE_ARG_FUNC(log10)
|
||||
SINGLE_ARG_FUNC(tan)
|
||||
SINGLE_ARG_FUNC(atan)
|
||||
TWO_ARGS_FUNC(atan2)
|
||||
TWO_ARGS_FUNC(pow)
|
||||
SINGLE_ARG_FUNC(floor)
|
||||
SINGLE_ARG_FUNC(ceil)
|
||||
SINGLE_ARG_FUNC(exp)
|
||||
|
||||
#define _DECL_FUNC(name,nparams,tycheck) {_SC(#name),math_##name,nparams,tycheck}
|
||||
static SQRegFunction mathlib_funcs[] = {
|
||||
@@ -78,10 +74,8 @@ static SQRegFunction mathlib_funcs[] = {
|
||||
_DECL_FUNC(floor,2,_SC(".n")),
|
||||
_DECL_FUNC(ceil,2,_SC(".n")),
|
||||
_DECL_FUNC(exp,2,_SC(".n")),
|
||||
#ifdef EXPORT_DEFAULT_SQUIRREL_FUNCTIONS
|
||||
_DECL_FUNC(srand,2,_SC(".n")),
|
||||
_DECL_FUNC(rand,1,NULL),
|
||||
#endif /* EXPORT_DEFAULT_SQUIRREL_FUNCTIONS */
|
||||
_DECL_FUNC(fabs,2,_SC(".n")),
|
||||
_DECL_FUNC(abs,2,_SC(".n")),
|
||||
{0,0,0,0},
|
||||
@@ -102,11 +96,9 @@ SQRESULT sqstd_register_mathlib(HSQUIRRELVM v)
|
||||
sq_createslot(v,-3);
|
||||
i++;
|
||||
}
|
||||
#ifdef EXPORT_DEFAULT_SQUIRREL_FUNCTIONS
|
||||
sq_pushstring(v,_SC("RAND_MAX"),-1);
|
||||
sq_pushinteger(v,RAND_MAX);
|
||||
sq_createslot(v,-3);
|
||||
#endif /* EXPORT_DEFAULT_SQUIRREL_FUNCTIONS */
|
||||
sq_pushstring(v,_SC("PI"),-1);
|
||||
sq_pushfloat(v,(SQFloat)M_PI);
|
||||
sq_createslot(v,-3);
|
||||
|
2
src/3rdparty/squirrel/sqstdlib/sqstdrex.cpp
vendored
@@ -558,12 +558,12 @@ SQRex *sqstd_rex_compile(const SQChar *pattern,const SQChar **error)
|
||||
#endif
|
||||
exp->_matches = (SQRexMatch *) sq_malloc(exp->_nsubexpr * sizeof(SQRexMatch));
|
||||
memset(exp->_matches,0,exp->_nsubexpr * sizeof(SQRexMatch));
|
||||
return exp;
|
||||
}
|
||||
catch (...) {
|
||||
sqstd_rex_free(exp);
|
||||
return NULL;
|
||||
}
|
||||
return exp;
|
||||
}
|
||||
|
||||
void sqstd_rex_free(SQRex *exp)
|
||||
|
25
src/3rdparty/squirrel/sqstdlib/sqstdstring.cpp
vendored
@@ -79,16 +79,15 @@ static void _append_string(SQInteger &i, SQChar *dest, SQInteger allocated, cons
|
||||
va_end(va);
|
||||
}
|
||||
|
||||
|
||||
SQRESULT sqstd_format(HSQUIRRELVM v,SQInteger nformatstringidx,SQInteger *outlen,SQChar **output)
|
||||
static SQInteger _string_format(HSQUIRRELVM v)
|
||||
{
|
||||
const SQChar *format;
|
||||
SQChar *dest;
|
||||
SQChar fmt[MAX_FORMAT_LEN];
|
||||
sq_getstring(v,nformatstringidx,&format);
|
||||
SQInteger allocated = (sq_getsize(v,nformatstringidx)+2)*sizeof(SQChar);
|
||||
sq_getstring(v,2,&format);
|
||||
SQInteger allocated = (sq_getsize(v,2)+1)*sizeof(SQChar);
|
||||
dest = sq_getscratchpad(v,allocated);
|
||||
SQInteger n = 0,i = 0, nparam = nformatstringidx+1, w = 0;
|
||||
SQInteger n = 0,i = 0, nparam = 3, w = 0;
|
||||
while(format[n] != '\0') {
|
||||
if(format[n] != '%') {
|
||||
assert(i < allocated);
|
||||
@@ -133,7 +132,7 @@ SQRESULT sqstd_format(HSQUIRRELVM v,SQInteger nformatstringidx,SQInteger *outlen
|
||||
return sq_throwerror(v,_SC("invalid format"));
|
||||
}
|
||||
n++;
|
||||
allocated += addlen + sizeof(SQChar);
|
||||
allocated += addlen;
|
||||
dest = sq_getscratchpad(v,allocated);
|
||||
switch(valtype) {
|
||||
case 's': _append_string(i,dest,allocated,fmt,ts); break;
|
||||
@@ -143,19 +142,7 @@ SQRESULT sqstd_format(HSQUIRRELVM v,SQInteger nformatstringidx,SQInteger *outlen
|
||||
nparam ++;
|
||||
}
|
||||
}
|
||||
*outlen = i;
|
||||
dest[i] = '\0';
|
||||
*output = dest;
|
||||
return SQ_OK;
|
||||
}
|
||||
|
||||
static SQInteger _string_format(HSQUIRRELVM v)
|
||||
{
|
||||
SQChar *dest = NULL;
|
||||
SQInteger length = 0;
|
||||
if(SQ_FAILED(sqstd_format(v,2,&length,&dest)))
|
||||
return -1;
|
||||
sq_pushstring(v,dest,length);
|
||||
sq_pushstring(v,dest,i);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
11
src/3rdparty/squirrel/squirrel/sqapi.cpp
vendored
@@ -90,11 +90,6 @@ SQInteger sq_getvmstate(HSQUIRRELVM v)
|
||||
}
|
||||
}
|
||||
|
||||
void sq_decreaseops(HSQUIRRELVM v, int amount)
|
||||
{
|
||||
v->DecreaseOps(amount);
|
||||
}
|
||||
|
||||
bool sq_can_suspend(HSQUIRRELVM v)
|
||||
{
|
||||
return v->_nnativecalls <= 2;
|
||||
@@ -989,7 +984,7 @@ SQRESULT sq_suspendvm(HSQUIRRELVM v)
|
||||
return v->Suspend();
|
||||
}
|
||||
|
||||
SQRESULT sq_wakeupvm(HSQUIRRELVM v,SQBool wakeupret,SQBool retval,SQBool raiseerror,SQBool throwerror)
|
||||
SQRESULT sq_wakeupvm(HSQUIRRELVM v,SQBool wakeupret,SQBool retval,SQBool raiseerror)
|
||||
{
|
||||
SQObjectPtr ret;
|
||||
if(!v->_suspended)
|
||||
@@ -999,10 +994,8 @@ SQRESULT sq_wakeupvm(HSQUIRRELVM v,SQBool wakeupret,SQBool retval,SQBool raiseer
|
||||
v->Pop();
|
||||
} else v->GetAt(v->_stackbase+v->_suspended_target)=_null_;
|
||||
v->_can_suspend = false;
|
||||
if(!v->Execute(_null_,v->_top,-1,-1,ret,raiseerror,throwerror?SQVM::ET_RESUME_THROW_VM : SQVM::ET_RESUME_VM))
|
||||
if(!v->Execute(_null_,v->_top,-1,-1,ret,raiseerror,SQVM::ET_RESUME_VM)) {
|
||||
return SQ_ERROR;
|
||||
if(sq_getvmstate(v) == SQ_VMSTATE_IDLE) {
|
||||
while (v->_top > 1) v->_stack[--v->_top] = _null_;
|
||||
}
|
||||
if(retval)
|
||||
v->Push(ret);
|
||||
|
5
src/3rdparty/squirrel/squirrel/sqbaselib.cpp
vendored
@@ -277,9 +277,6 @@ void sq_base_register(HSQUIRRELVM v)
|
||||
sq_pushstring(v,_SC("_intsize_"),-1);
|
||||
sq_pushinteger(v,sizeof(SQInteger));
|
||||
sq_createslot(v,-3);
|
||||
sq_pushstring(v,_SC("_floatsize_"),-1);
|
||||
sq_pushinteger(v,sizeof(SQFloat));
|
||||
sq_createslot(v,-3);
|
||||
sq_pop(v,1);
|
||||
}
|
||||
|
||||
@@ -818,7 +815,7 @@ static SQInteger thread_wakeup(HSQUIRRELVM v)
|
||||
if(wakeupret) {
|
||||
sq_move(thread,v,2);
|
||||
}
|
||||
if(SQ_SUCCEEDED(sq_wakeupvm(thread,wakeupret,SQTrue,SQTrue,SQFalse))) {
|
||||
if(SQ_SUCCEEDED(sq_wakeupvm(thread,wakeupret,SQTrue,SQFalse))) {
|
||||
sq_move(v,thread,-1);
|
||||
sq_pop(thread,1); //pop retval
|
||||
if(sq_getvmstate(thread) == SQ_VMSTATE_IDLE) {
|
||||
|
17
src/3rdparty/squirrel/squirrel/sqdebug.cpp
vendored
@@ -9,23 +9,6 @@
|
||||
#include "sqclosure.h"
|
||||
#include "sqstring.h"
|
||||
|
||||
SQRESULT sq_getfunctioninfo(HSQUIRRELVM v,SQInteger level,SQFunctionInfo *fi)
|
||||
{
|
||||
SQInteger cssize = v->_callsstacksize;
|
||||
if (cssize > level) {
|
||||
SQVM::CallInfo &ci = v->_callsstack[cssize-level-1];
|
||||
if(sq_isclosure(ci._closure)) {
|
||||
SQClosure *c = _closure(ci._closure);
|
||||
SQFunctionProto *proto = _funcproto(c->_function);
|
||||
fi->funcid = proto;
|
||||
fi->name = type(proto->_name) == OT_STRING?_stringval(proto->_name):_SC("unknown");
|
||||
fi->source = type(proto->_name) == OT_STRING?_stringval(proto->_sourcename):_SC("unknown");
|
||||
return SQ_OK;
|
||||
}
|
||||
}
|
||||
return sq_throwerror(v,_SC("the object is not a closure"));
|
||||
}
|
||||
|
||||
SQRESULT sq_stackinfos(HSQUIRRELVM v, SQInteger level, SQStackInfos *si)
|
||||
{
|
||||
SQInteger cssize = v->_callsstacksize;
|
||||
|
@@ -86,7 +86,7 @@ void DumpLiteral(SQObjectPtr &o)
|
||||
case OT_INTEGER: scprintf(_SC("{%d}"),_integer(o));break;
|
||||
#endif
|
||||
case OT_BOOL: scprintf(_SC("%s"),_integer(o)?_SC("true"):_SC("false"));break;
|
||||
default: scprintf(_SC("(%s %p)"),GetTypeName(o),(void*)_rawval(o));break; break; //shut up compiler
|
||||
default: scprintf(_SC("(%s %p)"),GetTypeName(o),_rawval(o));break; break; //shut up compiler
|
||||
}
|
||||
}
|
||||
|
||||
|
2
src/3rdparty/squirrel/squirrel/sqobject.cpp
vendored
@@ -201,7 +201,7 @@ const SQChar* SQFunctionProto::GetLocal(SQVM *vm,SQUnsignedInteger stackbase,SQU
|
||||
SQUnsignedInteger nvars=_nlocalvarinfos;
|
||||
const SQChar *res=NULL;
|
||||
if(nvars>=nseq){
|
||||
for(SQUnsignedInteger i=0;i<nvars;i++){
|
||||
for(SQUnsignedInteger i=0;i<nvars;i++){
|
||||
if(_localvarinfos[i]._start_op<=nop && _localvarinfos[i]._end_op>=nop)
|
||||
{
|
||||
if(nseq==0){
|
||||
|
24
src/3rdparty/squirrel/squirrel/sqobject.h
vendored
@@ -117,7 +117,7 @@ struct SQObjectPtr;
|
||||
#define _delegable(obj) ((SQDelegable *)(obj)._unVal.pDelegable)
|
||||
#define _weakref(obj) ((obj)._unVal.pWeakRef)
|
||||
#define _refcounted(obj) ((obj)._unVal.pRefCounted)
|
||||
#define _rawval(obj) ((obj)._unVal.raw)
|
||||
#define _rawval(obj) ((obj)._unVal.pRefCounted)
|
||||
|
||||
#define _stringval(obj) (obj)._unVal.pString->_val
|
||||
#define _userdataval(obj) (obj)._unVal.pUserData->_val
|
||||
@@ -130,27 +130,23 @@ struct SQObjectPtr : public SQObject
|
||||
{
|
||||
SQObjectPtr()
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_NULL;
|
||||
_unVal.pUserPointer=NULL;
|
||||
}
|
||||
SQObjectPtr(const SQObjectPtr &o)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=o._type;
|
||||
_unVal=o._unVal;
|
||||
__AddRef(_type,_unVal);
|
||||
}
|
||||
SQObjectPtr(const SQObject &o)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=o._type;
|
||||
_unVal=o._unVal;
|
||||
__AddRef(_type,_unVal);
|
||||
}
|
||||
SQObjectPtr(SQTable *pTable)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_TABLE;
|
||||
_unVal.pTable=pTable;
|
||||
assert(_unVal.pTable);
|
||||
@@ -158,7 +154,6 @@ struct SQObjectPtr : public SQObject
|
||||
}
|
||||
SQObjectPtr(SQClass *pClass)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_CLASS;
|
||||
_unVal.pClass=pClass;
|
||||
assert(_unVal.pClass);
|
||||
@@ -166,7 +161,6 @@ struct SQObjectPtr : public SQObject
|
||||
}
|
||||
SQObjectPtr(SQInstance *pInstance)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_INSTANCE;
|
||||
_unVal.pInstance=pInstance;
|
||||
assert(_unVal.pInstance);
|
||||
@@ -174,7 +168,6 @@ struct SQObjectPtr : public SQObject
|
||||
}
|
||||
SQObjectPtr(SQArray *pArray)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_ARRAY;
|
||||
_unVal.pArray=pArray;
|
||||
assert(_unVal.pArray);
|
||||
@@ -182,7 +175,6 @@ struct SQObjectPtr : public SQObject
|
||||
}
|
||||
SQObjectPtr(SQClosure *pClosure)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_CLOSURE;
|
||||
_unVal.pClosure=pClosure;
|
||||
assert(_unVal.pClosure);
|
||||
@@ -190,7 +182,6 @@ struct SQObjectPtr : public SQObject
|
||||
}
|
||||
SQObjectPtr(SQGenerator *pGenerator)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_GENERATOR;
|
||||
_unVal.pGenerator=pGenerator;
|
||||
assert(_unVal.pGenerator);
|
||||
@@ -198,7 +189,6 @@ struct SQObjectPtr : public SQObject
|
||||
}
|
||||
SQObjectPtr(SQNativeClosure *pNativeClosure)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_NATIVECLOSURE;
|
||||
_unVal.pNativeClosure=pNativeClosure;
|
||||
assert(_unVal.pNativeClosure);
|
||||
@@ -206,7 +196,6 @@ struct SQObjectPtr : public SQObject
|
||||
}
|
||||
SQObjectPtr(SQString *pString)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_STRING;
|
||||
_unVal.pString=pString;
|
||||
assert(_unVal.pString);
|
||||
@@ -214,7 +203,6 @@ struct SQObjectPtr : public SQObject
|
||||
}
|
||||
SQObjectPtr(SQUserData *pUserData)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_USERDATA;
|
||||
_unVal.pUserData=pUserData;
|
||||
assert(_unVal.pUserData);
|
||||
@@ -222,7 +210,6 @@ struct SQObjectPtr : public SQObject
|
||||
}
|
||||
SQObjectPtr(SQVM *pThread)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_THREAD;
|
||||
_unVal.pThread=pThread;
|
||||
assert(_unVal.pThread);
|
||||
@@ -230,7 +217,6 @@ struct SQObjectPtr : public SQObject
|
||||
}
|
||||
SQObjectPtr(SQWeakRef *pWeakRef)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_WEAKREF;
|
||||
_unVal.pWeakRef=pWeakRef;
|
||||
assert(_unVal.pWeakRef);
|
||||
@@ -238,7 +224,6 @@ struct SQObjectPtr : public SQObject
|
||||
}
|
||||
SQObjectPtr(SQFunctionProto *pFunctionProto)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_FUNCPROTO;
|
||||
_unVal.pFunctionProto=pFunctionProto;
|
||||
assert(_unVal.pFunctionProto);
|
||||
@@ -246,25 +231,24 @@ struct SQObjectPtr : public SQObject
|
||||
}
|
||||
SQObjectPtr(SQInteger nInteger)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_unVal.pUserPointer=NULL;
|
||||
_type=OT_INTEGER;
|
||||
_unVal.nInteger=nInteger;
|
||||
}
|
||||
SQObjectPtr(SQFloat fFloat)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_unVal.pUserPointer=NULL;
|
||||
_type=OT_FLOAT;
|
||||
_unVal.fFloat=fFloat;
|
||||
}
|
||||
SQObjectPtr(bool bBool)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_unVal.pUserPointer=NULL;
|
||||
_type = OT_BOOL;
|
||||
_unVal.nInteger = bBool?1:0;
|
||||
}
|
||||
SQObjectPtr(SQUserPointer pUserPointer)
|
||||
{
|
||||
SQ_OBJECT_RAWINIT()
|
||||
_type=OT_USERPOINTER;
|
||||
_unVal.pUserPointer=pUserPointer;
|
||||
}
|
||||
|
55
src/3rdparty/squirrel/squirrel/sqvm.cpp
vendored
@@ -17,21 +17,6 @@
|
||||
|
||||
#define TOP() (_stack._vals[_top-1])
|
||||
|
||||
#define CLEARSTACK(_last_top) { if((_last_top) >= _top) ClearStack(_last_top); }
|
||||
void SQVM::ClearStack(SQInteger last_top)
|
||||
{
|
||||
SQObjectType tOldType;
|
||||
SQObjectValue unOldVal;
|
||||
while (last_top >= _top) {
|
||||
SQObjectPtr &o = _stack._vals[last_top--];
|
||||
tOldType = o._type;
|
||||
unOldVal = o._unVal;
|
||||
o._type = OT_NULL;
|
||||
o._unVal.pUserPointer = NULL;
|
||||
__Release(tOldType,unOldVal);
|
||||
}
|
||||
}
|
||||
|
||||
bool SQVM::BW_OP(SQUnsignedInteger op,SQObjectPtr &trg,const SQObjectPtr &o1,const SQObjectPtr &o2)
|
||||
{
|
||||
SQInteger res;
|
||||
@@ -305,10 +290,12 @@ void SQVM::TypeOf(const SQObjectPtr &obj1,SQObjectPtr &dest)
|
||||
bool SQVM::Init(SQVM *friendvm, SQInteger stacksize)
|
||||
{
|
||||
_stack.resize(stacksize);
|
||||
//_callsstack.reserve(4);
|
||||
_alloccallsstacksize = 4;
|
||||
_callstackdata.resize(_alloccallsstacksize);
|
||||
_callsstacksize = 0;
|
||||
_callsstack = &_callstackdata[0];
|
||||
//_callsstack = (CallInfo*)sq_malloc(_alloccallsstacksize*sizeof(CallInfo));
|
||||
_stackbase = 0;
|
||||
_top = 0;
|
||||
if(!friendvm)
|
||||
@@ -334,8 +321,12 @@ bool SQVM::StartCall(SQClosure *closure,SQInteger target,SQInteger args,SQIntege
|
||||
SQInteger nargs = args;
|
||||
if (paramssize != nargs) {
|
||||
SQInteger ndef = func->_ndefaultparams;
|
||||
SQInteger diff;
|
||||
if(ndef && nargs < paramssize && (diff = paramssize - nargs) <= ndef) {
|
||||
if(ndef && nargs < paramssize) {
|
||||
SQInteger diff = paramssize - nargs;
|
||||
if (diff > ndef) {
|
||||
Raise_Error(_SC("wrong number of parameters"));
|
||||
return false;
|
||||
}
|
||||
for(SQInteger n = ndef - diff; n < ndef; n++) {
|
||||
_stack._vals[stackbase + (nargs++)] = closure->_defaultparams[n];
|
||||
}
|
||||
@@ -436,7 +427,7 @@ bool SQVM::LOCAL_INC(SQInteger op,SQObjectPtr &target, SQObjectPtr &a, SQObjectP
|
||||
|
||||
bool SQVM::PLOCAL_INC(SQInteger op,SQObjectPtr &target, SQObjectPtr &a, SQObjectPtr &incr)
|
||||
{
|
||||
SQObjectPtr trg;
|
||||
SQObjectPtr trg;
|
||||
_RET_ON_FAIL(ARITH_OP( op , trg, a, incr));
|
||||
target = a;
|
||||
a = trg;
|
||||
@@ -455,7 +446,7 @@ bool SQVM::DerefInc(SQInteger op,SQObjectPtr &target, SQObjectPtr &self, SQObjec
|
||||
|
||||
#define arg0 (_i_._arg0)
|
||||
#define arg1 (_i_._arg1)
|
||||
#define sarg1 (*(const_cast<SQInt32 *>(&_i_._arg1)))
|
||||
#define sarg1 (*((SQInt32 *)&_i_._arg1))
|
||||
#define arg2 (_i_._arg2)
|
||||
#define arg3 (_i_._arg3)
|
||||
#define sarg3 ((SQInteger)*((signed char *)&_i_._arg3))
|
||||
@@ -687,25 +678,13 @@ bool SQVM::Execute(SQObjectPtr &closure, SQInteger target, SQInteger nargs, SQIn
|
||||
bool ct_tailcall;
|
||||
|
||||
switch(et) {
|
||||
case ET_CALL: {
|
||||
SQInteger last_top = _top;
|
||||
temp_reg = closure;
|
||||
if(!StartCall(_closure(temp_reg), _top - nargs, nargs, stackbase, false)) {
|
||||
case ET_CALL:
|
||||
if(!StartCall(_closure(closure), _top - nargs, nargs, stackbase, false)) {
|
||||
//call the handler if there are no calls in the stack, if not relies on the previous node
|
||||
if(ci == NULL) CallErrorHandler(_lasterror);
|
||||
return false;
|
||||
}
|
||||
if (_funcproto(_closure(temp_reg)->_function)->_bgenerator) {
|
||||
//SQFunctionProto *f = _funcproto(_closure(temp_reg)->_function);
|
||||
SQGenerator *gen = SQGenerator::Create(_ss(this), _closure(temp_reg));
|
||||
_GUARD(gen->Yield(this));
|
||||
Return(1, ci->_target, temp_reg);
|
||||
outres = gen;
|
||||
CLEARSTACK(last_top);
|
||||
return true;
|
||||
}
|
||||
ci->_root = SQTrue;
|
||||
}
|
||||
break;
|
||||
case ET_RESUME_GENERATOR: _generator(closure)->Resume(this, target); ci->_root = SQTrue; traps += ci->_etraps; break;
|
||||
case ET_RESUME_VM:
|
||||
@@ -745,7 +724,7 @@ exception_restore:
|
||||
case _OP_DLOAD: TARGET = ci->_literals[arg1]; STK(arg2) = ci->_literals[arg3];continue;
|
||||
case _OP_TAILCALL:
|
||||
temp_reg = STK(arg1);
|
||||
if (type(temp_reg) == OT_CLOSURE && !_funcproto(_closure(temp_reg)->_function)->_bgenerator){
|
||||
if (type(temp_reg) == OT_CLOSURE){
|
||||
ct_tailcall = true;
|
||||
if(ci->_vargs.size) PopVarArgs(ci->_vargs);
|
||||
for (SQInteger i = 0; i < arg3; i++) STK(i) = STK(arg2 + i);
|
||||
@@ -771,7 +750,7 @@ common_call:
|
||||
Return(1, ct_target, clo);
|
||||
STK(ct_target) = gen;
|
||||
}
|
||||
CLEARSTACK(last_top);
|
||||
while (last_top >= _top) _stack._vals[last_top--].Null();
|
||||
}
|
||||
continue;
|
||||
case OT_NATIVECLOSURE: {
|
||||
@@ -1050,7 +1029,7 @@ exception_trap:
|
||||
_stackbase = et._stackbase;
|
||||
_stack._vals[_stackbase+et._extarget] = currerror;
|
||||
_etraps.pop_back(); traps--; ci->_etraps--;
|
||||
CLEARSTACK(last_top);
|
||||
while(last_top >= _top) _stack._vals[last_top--].Null();
|
||||
goto exception_restore;
|
||||
}
|
||||
//if is a native closure
|
||||
@@ -1078,7 +1057,7 @@ exception_trap:
|
||||
if( (ci && type(ci->_closure) != OT_CLOSURE) || exitafterthisone) break;
|
||||
} while(_callsstacksize);
|
||||
|
||||
CLEARSTACK(last_top);
|
||||
while(last_top >= _top) _stack._vals[last_top--].Null();
|
||||
}
|
||||
_lasterror = currerror;
|
||||
return false;
|
||||
@@ -1090,6 +1069,8 @@ bool SQVM::CreateClassInstance(SQClass *theclass, SQObjectPtr &inst, SQObjectPtr
|
||||
{
|
||||
inst = theclass->CreateInstance();
|
||||
if(!theclass->Get(_ss(this)->_constructoridx,constructor)) {
|
||||
//if(!Call(constr,nargs,stackbase,constr,false))
|
||||
// return false;
|
||||
constructor = _null_;
|
||||
}
|
||||
return true;
|
||||
|
1
src/3rdparty/squirrel/squirrel/sqvm.h
vendored
@@ -108,7 +108,6 @@ public:
|
||||
_INLINE bool PLOCAL_INC(SQInteger op,SQObjectPtr &target, SQObjectPtr &a, SQObjectPtr &incr);
|
||||
_INLINE bool DerefInc(SQInteger op,SQObjectPtr &target, SQObjectPtr &self, SQObjectPtr &key, SQObjectPtr &incr, bool postfix);
|
||||
void PopVarArgs(VarArgs &vargs);
|
||||
void ClearStack(SQInteger last_top);
|
||||
#ifdef _DEBUG_DUMP
|
||||
void dumpstack(SQInteger stackbase=-1, bool dumpall = false);
|
||||
#endif
|
||||
|
@@ -1,12 +1,5 @@
|
||||
/* $Id$ */
|
||||
|
||||
/*
|
||||
* This file is part of OpenTTD.
|
||||
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
* OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/** @file ai.hpp Base functions for all AIs. */
|
||||
|
||||
#ifndef AI_HPP
|
||||
@@ -15,11 +8,12 @@
|
||||
#include "api/ai_event_types.hpp"
|
||||
#include "../date_type.h"
|
||||
#include "../core/string_compare_type.hpp"
|
||||
#include <map>
|
||||
|
||||
typedef std::map<const char *, class AIInfo *, StringCompare> AIInfoList;
|
||||
|
||||
|
||||
void CcAI(bool success, TileIndex tile, uint32 p1, uint32 p2);
|
||||
|
||||
class AI {
|
||||
public:
|
||||
/**
|
||||
@@ -43,9 +37,8 @@ public:
|
||||
/**
|
||||
* Start a new AI company.
|
||||
* @param company At which slot the AI company should start.
|
||||
* @param rerandomise_ai Whether to rerandomise the configured AI.
|
||||
*/
|
||||
static void StartNew(CompanyID company, bool rerandomise_ai = true);
|
||||
static void StartNew(CompanyID company);
|
||||
|
||||
/**
|
||||
* Called every game-tick to let AIs do something.
|
||||
@@ -60,7 +53,7 @@ public:
|
||||
/**
|
||||
* Stop a company to be controlled by an AI.
|
||||
* @param company The company from which the AI needs to detach.
|
||||
* @pre Company::IsValidAiID(company)
|
||||
* @pre !IsHumanCompany(company).
|
||||
*/
|
||||
static void Stop(CompanyID company);
|
||||
|
||||
|
@@ -1,12 +1,5 @@
|
||||
/* $Id$ */
|
||||
|
||||
/*
|
||||
* This file is part of OpenTTD.
|
||||
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
* OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/** @file ai_config.cpp Implementation of AIConfig. */
|
||||
|
||||
#include "../stdafx.h"
|
||||
@@ -16,13 +9,12 @@
|
||||
#include "ai.hpp"
|
||||
#include "ai_config.hpp"
|
||||
|
||||
void AIConfig::ChangeAI(const char *name, int version, bool is_random_ai)
|
||||
void AIConfig::ChangeAI(const char *name, int version)
|
||||
{
|
||||
free((void *)this->name);
|
||||
this->name = (name == NULL) ? NULL : strdup(name);
|
||||
this->info = (name == NULL) ? NULL : AI::FindInfo(this->name, version);
|
||||
this->version = (info == NULL) ? -1 : info->GetVersion();
|
||||
this->is_random_ai = is_random_ai;
|
||||
if (this->config_list != NULL) delete this->config_list;
|
||||
this->config_list = (info == NULL) ? NULL : new AIConfigItemList();
|
||||
if (this->config_list != NULL) this->config_list->push_back(_start_date_config);
|
||||
@@ -57,7 +49,6 @@ AIConfig::AIConfig(const AIConfig *config)
|
||||
this->info = config->info;
|
||||
this->version = config->version;
|
||||
this->config_list = NULL;
|
||||
this->is_random_ai = config->is_random_ai;
|
||||
|
||||
for (SettingValueList::const_iterator it = config->settings.begin(); it != config->settings.end(); it++) {
|
||||
this->settings[strdup((*it).first)] = (*it).second;
|
||||
@@ -72,7 +63,7 @@ AIConfig::~AIConfig()
|
||||
if (this->config_list != NULL) delete this->config_list;
|
||||
}
|
||||
|
||||
AIInfo *AIConfig::GetInfo() const
|
||||
AIInfo *AIConfig::GetInfo()
|
||||
{
|
||||
return this->info;
|
||||
}
|
||||
@@ -105,9 +96,9 @@ AIConfig *AIConfig::GetConfig(CompanyID company, bool forceNewgameSetting)
|
||||
return *config;
|
||||
}
|
||||
|
||||
int AIConfig::GetSetting(const char *name) const
|
||||
int AIConfig::GetSetting(const char *name)
|
||||
{
|
||||
SettingValueList::const_iterator it = this->settings.find(name);
|
||||
SettingValueList::iterator it = this->settings.find(name);
|
||||
/* Return the default value if the setting is not set, or if we are in a not-custom difficult level */
|
||||
if (it == this->settings.end() || ((_game_mode == GM_MENU) ? _settings_newgame.difficulty.diff_level : _settings_game.difficulty.diff_level) != 3) {
|
||||
if (this->info == NULL) {
|
||||
@@ -164,22 +155,17 @@ void AIConfig::AddRandomDeviation()
|
||||
}
|
||||
}
|
||||
|
||||
bool AIConfig::HasAI() const
|
||||
bool AIConfig::HasAI()
|
||||
{
|
||||
return this->info != NULL;
|
||||
}
|
||||
|
||||
bool AIConfig::IsRandomAI() const
|
||||
{
|
||||
return this->is_random_ai;
|
||||
}
|
||||
|
||||
const char *AIConfig::GetName() const
|
||||
const char *AIConfig::GetName()
|
||||
{
|
||||
return this->name;
|
||||
}
|
||||
|
||||
int AIConfig::GetVersion() const
|
||||
int AIConfig::GetVersion()
|
||||
{
|
||||
return this->version;
|
||||
}
|
||||
@@ -210,10 +196,10 @@ void AIConfig::StringToSettings(const char *value)
|
||||
free(value_copy);
|
||||
}
|
||||
|
||||
void AIConfig::SettingsToString(char *string, size_t size) const
|
||||
void AIConfig::SettingsToString(char *string, size_t size)
|
||||
{
|
||||
string[0] = '\0';
|
||||
for (SettingValueList::const_iterator it = this->settings.begin(); it != this->settings.end(); it++) {
|
||||
for (SettingValueList::iterator it = this->settings.begin(); it != this->settings.end(); it++) {
|
||||
char no[10];
|
||||
snprintf(no, sizeof(no), "%d", (*it).second);
|
||||
|
||||
|
@@ -1,12 +1,5 @@
|
||||
/* $Id$ */
|
||||
|
||||
/*
|
||||
* This file is part of OpenTTD.
|
||||
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
* OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/** @file ai_config.hpp AIConfig stores the configuration settings of every AI. */
|
||||
|
||||
#ifndef AI_CONFIG_HPP
|
||||
@@ -15,7 +8,6 @@
|
||||
#include <map>
|
||||
#include "ai_info.hpp"
|
||||
#include "../core/string_compare_type.hpp"
|
||||
#include "../company_type.h"
|
||||
|
||||
class AIConfig {
|
||||
private:
|
||||
@@ -26,8 +18,7 @@ public:
|
||||
name(NULL),
|
||||
version(-1),
|
||||
info(NULL),
|
||||
config_list(NULL),
|
||||
is_random_ai(false)
|
||||
config_list(NULL)
|
||||
{}
|
||||
AIConfig(const AIConfig *config);
|
||||
~AIConfig();
|
||||
@@ -36,9 +27,8 @@ public:
|
||||
* Set another AI to be loaded in this slot.
|
||||
* @param name The name of the AI.
|
||||
* @param version The version of the AI to load, or -1 of latest.
|
||||
* @param is_random Is the AI chosen randomly?
|
||||
*/
|
||||
void ChangeAI(const char *name, int version = -1, bool is_random = false);
|
||||
void ChangeAI(const char *name, int version = -1);
|
||||
|
||||
/**
|
||||
* When ever the AI Scanner is reloaded, all infos become invalid. This
|
||||
@@ -51,7 +41,7 @@ public:
|
||||
/**
|
||||
* Get the AIInfo linked to this AIConfig.
|
||||
*/
|
||||
class AIInfo *GetInfo() const;
|
||||
class AIInfo *GetInfo();
|
||||
|
||||
/**
|
||||
* Get the config list for this AIConfig.
|
||||
@@ -70,7 +60,7 @@ public:
|
||||
* @return The (default) value of the setting, or -1 if the setting was not
|
||||
* found.
|
||||
*/
|
||||
int GetSetting(const char *name) const;
|
||||
int GetSetting(const char *name);
|
||||
|
||||
/**
|
||||
* Set the value of a setting for this config.
|
||||
@@ -90,22 +80,17 @@ public:
|
||||
/**
|
||||
* Is this config attached to an AI?
|
||||
*/
|
||||
bool HasAI() const;
|
||||
|
||||
/**
|
||||
* Is the current AI a randomly chosen AI?
|
||||
*/
|
||||
bool IsRandomAI() const;
|
||||
bool HasAI();
|
||||
|
||||
/**
|
||||
* Get the name of the AI.
|
||||
*/
|
||||
const char *GetName() const;
|
||||
const char *GetName();
|
||||
|
||||
/**
|
||||
* Get the version of the AI.
|
||||
*/
|
||||
int GetVersion() const;
|
||||
int GetVersion();
|
||||
|
||||
/**
|
||||
* Convert a string which is stored in the config file or savegames to
|
||||
@@ -117,7 +102,7 @@ public:
|
||||
* Convert the custom settings to a string that can be stored in the config
|
||||
* file or savegames.
|
||||
*/
|
||||
void SettingsToString(char *string, size_t size) const;
|
||||
void SettingsToString(char *string, size_t size);
|
||||
|
||||
private:
|
||||
const char *name;
|
||||
@@ -125,7 +110,6 @@ private:
|
||||
class AIInfo *info;
|
||||
SettingValueList settings;
|
||||
AIConfigItemList *config_list;
|
||||
bool is_random_ai;
|
||||
};
|
||||
|
||||
#endif /* AI_CONFIG_HPP */
|
||||
|
@@ -1,12 +1,5 @@
|
||||
/* $Id$ */
|
||||
|
||||
/*
|
||||
* This file is part of OpenTTD.
|
||||
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
* OpenTTD 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 GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/** @file ai_core.cpp Implementation of AI. */
|
||||
|
||||
#include "../stdafx.h"
|
||||
@@ -15,12 +8,13 @@
|
||||
#include "../company_func.h"
|
||||
#include "../debug.h"
|
||||
#include "../network/network.h"
|
||||
#include "../settings_type.h"
|
||||
#include "../window_func.h"
|
||||
#include "../command_func.h"
|
||||
#include "ai.hpp"
|
||||
#include "ai_scanner.hpp"
|
||||
#include "ai_instance.hpp"
|
||||
#include "ai_config.hpp"
|
||||
#include "api/ai_error.hpp"
|
||||
|
||||
/* static */ uint AI::frame_counter = 0;
|
||||
/* static */ AIScanner *AI::ai_scanner = NULL;
|
||||
@@ -31,24 +25,23 @@
|
||||
return !_networking || (_network_server && _settings_game.ai.ai_in_multiplayer);
|
||||
}
|
||||
|
||||
/* static */ void AI::StartNew(CompanyID company, bool rerandomise_ai)
|
||||
/* static */ void AI::StartNew(CompanyID company)
|
||||
{
|
||||
assert(Company::IsValidID(company));
|
||||
assert(IsValidCompanyID(company));
|
||||
|
||||
/* Clients shouldn't start AIs */
|
||||
if (_networking && !_network_server) return;
|
||||
|
||||
AIConfig *config = AIConfig::GetConfig(company);
|
||||
AIInfo *info = config->GetInfo();
|
||||
if (info == NULL || (rerandomise_ai && config->IsRandomAI())) {
|
||||
AIInfo *info = AIConfig::GetConfig(company)->GetInfo();
|
||||
if (info == NULL) {
|
||||
info = AI::ai_scanner->SelectRandomAI();
|
||||
assert(info != NULL);
|
||||
/* Load default data and store the name in the settings */
|
||||
config->ChangeAI(info->GetName(), -1, true);
|
||||
AIConfig::GetConfig(company)->ChangeAI(info->GetName());
|
||||
}
|
||||
|
||||
_current_company = company;
|
||||
Company *c = Company::Get(company);
|
||||
Company *c = GetCompany(company);
|
||||
|
||||
c->ai_info = info;
|
||||
assert(c->ai_instance == NULL);
|
||||
@@ -70,7 +63,7 @@
|
||||
|
||||
const Company *c;
|
||||
FOR_ALL_COMPANIES(c) {
|
||||
if (c->is_ai) {
|
||||
if (!IsHumanCompany(c->index)) {
|
||||
_current_company = c->index;
|
||||
c->ai_instance->GameLoop();
|
||||
}
|
||||
@@ -80,7 +73,7 @@
|
||||
* Effectively collecting garbage once every two months per AI. */
|
||||
if ((AI::frame_counter & 255) == 0) {
|
||||
CompanyID cid = (CompanyID)GB(AI::frame_counter, 8, 4);
|
||||
if (Company::IsValidAiID(cid)) Company::Get(cid)->ai_instance->CollectGarbage();
|
||||
if (IsValidCompanyID(cid) && !IsHumanCompany(cid)) GetCompany(cid)->ai_instance->CollectGarbage();
|
||||
}
|
||||
|
||||
_current_company = OWNER_NONE;
|
||||
@@ -97,7 +90,7 @@
|
||||
|
||||
CompanyID old_company = _current_company;
|
||||
_current_company = company;
|
||||
Company *c = Company::Get(company);
|
||||
Company *c = GetCompany(company);
|
||||
|
||||
delete c->ai_instance;
|
||||
c->ai_instance = NULL;
|
||||
@@ -110,11 +103,11 @@
|
||||
/* static */ void AI::KillAll()
|
||||
{
|
||||
/* It might happen there are no companies .. than we have nothing to loop */
|
||||
if (Company::GetPoolSize() == 0) return;
|
||||
if (GetCompanyPoolSize() == 0) return;
|
||||
|
||||
const Company *c;
|
||||
FOR_ALL_COMPANIES(c) {
|
||||
if (c->is_ai) AI::Stop(c->index);
|
||||
if (!IsHumanCompany(c->index)) AI::Stop(c->index);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -184,7 +177,7 @@
|
||||
}
|
||||
|
||||
/* Only AIs can have an event-queue */
|
||||
if (!Company::IsValidAiID(company)) {
|
||||
if (!IsValidCompanyID(company) || IsHumanCompany(company)) {
|
||||
event->Release();
|
||||
return;
|
||||
}
|
||||
@@ -217,29 +210,28 @@
|
||||
event->Release();
|
||||
}
|
||||
|
||||
void CcAI(const CommandCost &result, TileIndex tile, uint32 p1, uint32 p2)
|
||||
void CcAI(bool success, TileIndex tile, uint32 p1, uint32 p2)
|
||||
{
|
||||
AIObject::SetLastCommandRes(result.Succeeded());
|
||||
AIObject::SetLastCommandRes(success);
|
||||
|
||||
if (result.Failed()) {
|
||||
AIObject::SetLastError(AIError::StringToError(result.GetErrorMessage()));
|
||||
if (!success) {
|
||||
AIObject::SetLastError(AIError::StringToError(_error_message));
|
||||
} else {
|
||||
AIObject::IncreaseDoCommandCosts(result.GetCost());
|
||||
AIObject::SetLastCost(result.GetCost());
|
||||
AIObject::IncreaseDoCommandCosts(AIObject::GetLastCost());
|
||||
}
|
||||
|
||||
Company::Get(_current_company)->ai_instance->Continue();
|
||||
GetCompany(_current_company)->ai_instance->Continue();
|
||||
}
|
||||
|
||||
/* static */ void AI::Save(CompanyID company)
|
||||
{
|
||||
if (!_networking || _network_server) {
|
||||
Company *c = Company::GetIfValid(company);
|
||||
assert(c != NULL && c->ai_instance != NULL);
|
||||
assert(IsValidCompanyID(company));
|
||||
assert(GetCompany(company)->ai_instance != NULL);
|
||||
|
||||
CompanyID old_company = _current_company;
|
||||
_current_company = company;
|
||||
c->ai_instance->Save();
|
||||
GetCompany(company)->ai_instance->Save();
|
||||
_current_company = old_company;
|
||||
} else {
|
||||
AIInstance::SaveEmpty();
|
||||
@@ -249,12 +241,12 @@ void CcAI(const CommandCost &result, TileIndex tile, uint32 p1, uint32 p2)
|
||||
/* static */ void AI::Load(CompanyID company, int version)
|
||||
{
|
||||
if (!_networking || _network_server) {
|
||||
Company *c = Company::GetIfValid(company);
|
||||
assert(c != NULL && c->ai_instance != NULL);
|
||||
assert(IsValidCompanyID(company));
|
||||
assert(GetCompany(company)->ai_instance != NULL);
|
||||
|
||||
CompanyID old_company = _current_company;
|
||||
_current_company = company;
|
||||
c->ai_instance->Load(version);
|
||||
GetCompany(company)->ai_instance->Load(version);
|
||||
_current_company = old_company;
|
||||
} else {
|
||||
/* Read, but ignore, the load data */
|
||||
@@ -266,7 +258,7 @@ void CcAI(const CommandCost &result, TileIndex tile, uint32 p1, uint32 p2)
|
||||
{
|
||||
/* Find the first company which doesn't exist yet */
|
||||
for (CompanyID c = COMPANY_FIRST; c < MAX_COMPANIES; c++) {
|
||||
if (!Company::IsValidID(c)) return AIConfig::GetConfig(c)->GetSetting("start_date");
|
||||
if (!IsValidCompanyID(c)) return AIConfig::GetConfig(c)->GetSetting("start_date");
|
||||
}
|
||||
|
||||
/* Currently no AI can be started, check again in a year. */
|
||||
@@ -295,7 +287,7 @@ void CcAI(const CommandCost &result, TileIndex tile, uint32 p1, uint32 p2)
|
||||
|
||||
/* static */ bool AI::ImportLibrary(const char *library, const char *class_name, int version, HSQUIRRELVM vm)
|
||||
{
|
||||
return AI::ai_scanner->ImportLibrary(library, class_name, version, vm, Company::Get(_current_company)->ai_instance->GetController());
|
||||
return AI::ai_scanner->ImportLibrary(library, class_name, version, vm, GetCompany(_current_company)->ai_instance->GetController());
|
||||
}
|
||||
|
||||
/* static */ void AI::Rescan()
|
||||
|