summaryrefslogtreecommitdiff
path: root/src/game
AgeCommit message (Collapse)Author
2020-12-25Codechange: use C++11 constructs for for-each loops (#8432)Patric Stout
2020-12-25Fix #6468: don't store version of AIs-started-via-console in namePatric Stout
You can do: "startai myai.3", which starts version 3 of "myai". This is very useful for testing save/load code between different versions of your AI. However, when using this syntax, the AI got saved as "myai.3" as name of the AI, instead of "myai". This caused several problems, like indicating to the user the AI could not be found, but still load the AI. But in all cases, the AI never got the chance to load the saved data, making the whole reason this exists pointless. By splitting the name and version already in the console command, the code becomes simpler and AIs started this way now follow the normal flow after initialization.
2020-07-16Change: rewrote squirrel_export in CMakeglx
2020-06-05Add: introduce CMake for project managementPatric Stout
CMake works on all our supported platforms, like MSVC, Mingw, GCC, Clang, and many more. It allows for a single way of doing things, so no longer we need shell scripts and vbs scripts to work on all our supported platforms. Additionally, CMake allows to generate project files for like MSVC, KDevelop, etc. This heavily reduces the lines of code we need to support multiple platforms from a project perspective. Addtiionally, this heavily improves our detection of libraries, etc.
2020-06-01Add: [Script] Native priority queue; useful e.g. for pathfinders.Michael Lutz
2020-05-22Feature: Push-buttons on storybook pages (#7896)Niels Martin Hansen
Allow more direct player-initiated interaction for Game Scripts, by letting the GS put push-buttons on storybook pages. These buttons can either trigger an immediate event, or require the player to first select a tile on the map, or a vehicle. Additionally this reworks how the storybook pages are layouted and rendered, to allow for slightly more complex layouts, and maybe speeding drawing up a bit.
2020-05-21Codechange: Store GS lang texts in std::strings.Michael Lutz
2020-02-14Codechange: Simplify CheckAPIVersion()glx
2020-02-08Change: Heading for 1.11 nowglx
2019-11-10Cleanup: Removed SVN headersS. D. Cloudt
2019-09-07Fix #7188: check the validity of command callback for scripts (#7701)glx22
2019-05-23Fix #7600: Don't read uninitialised memory when parsing GS language files.Michael Lutz
2019-05-01Add: New RoadType API functions.peter1138
2019-05-01Fix 2bb80d2: really increase the maximum number of GameScript texts to 64k ↵glx22
(#7555)
2019-04-29Codechange: Remove Company/OwnerByte typesCharles Pigott
2019-04-10Codechange: Use null pointer literal instead of the NULL macroHenry Wilson
2019-04-09Codechange: If something is a vector of strings, use a vector of strings ↵Michael Lutz
instead of an AutoFreeSmallVector.
2019-04-09Codechange: Use std::vector instead of AutoDeleteSmallVector in GS text ↵Michael Lutz
handling.
2019-04-09Fix: Don't crash if reading a GS string file from disk produces an error.Michael Lutz
The raw_strings vector may not include NULLs as no consumer can deal with it.
2019-03-26Cleanup: Remove unused size template parameters from SmallMap and ↵Henry Wilson
Auto[Free|Delete]SmallVector
2019-03-26Codechange: Replaced SmallVector::[Begin|End]() with std alternativesHenry Wilson
2019-03-26Codechange: Replaced SmallVector::Append() with ↵Henry Wilson
std::vector::[push|emplace]_back()
2019-03-26Codechange: Replace SmallVector::Length() with std::vector::size()Henry Wilson
2019-03-24Codechange: Use override specifer for overriding member declarationsHenry Wilson
This is a C++11 feature that allows the compiler to check that a virtual member declaration overrides a base-class member with the same signature. Also src/blitter/32bpp_anim_sse4.hpp +38 is no longer erroneously marked as virtual despite being a template.
2019-03-20Remove: ENABLE_NETWORK switchPatric Stout
This switch has been a pain for years. Often disabling broke compilation, as no developer compiles OpenTTD without, neither do any of our official binaries. Additionaly, it has grown so hugely in our codebase, that it clearly shows that the current solution was a poor one. 350+ instances of "#ifdef ENABLE_NETWORK" were in the code, of which only ~30 in the networking code itself. The rest were all around the code to do the right thing, from GUI to NewGRF. A more proper solution would be to stub all the functions, and make sure the rest of the code can simply assume network is available. This was also partially done, and most variables were correct if networking was disabled. Despite that, often the #ifdefs were still used. With the recent removal of DOS, there is also no platform anymore which we support where networking isn't working out-of-the-box. All in all, it is time to remove the ENABLE_NETWORK switch. No replacement is planned, but if you feel we really need this option, we welcome any Pull Request which implements this in a way that doesn't crawl through the code like this diff shows we used to.
2019-03-03Change: Heading for 1.10 now (#7319)frosch
2019-02-23Add: Show performance of AI and GS in framerate windowNiels Martin Hansen
2018-12-27Fix: [Win32] WIN32 may not be defined, always prefer the compiler predefined ↵glx
macro _WIN32
2018-10-31Doc: Lots and lots of doxymentation fixesCharles Pigott
2018-04-23Fix: Typo in game.hppgdinit
Just a typo fix in a code comment line.
2018-04-22Feature #6459: API for querying network clients from GS (#6736)Pavel Stupnikov
2018-03-14(svn r27993) -Change: Heading for 1.9 nowfrosch
2017-08-13(svn r27893) -Codechange: Use fallthrough attribute. (LordAro)frosch
2017-03-11(svn r27780) -Update: Numbersfrosch
2017-02-26(svn r27756) -Codechange: Add StringTab enumfrosch
2016-03-01(svn r27518) -Update: Numbersfrosch
2015-03-17(svn r27192) -Change: heading for 1.6 nowfrosch
2014-09-21(svn r26893) -Feature: ScriptStationList_Cargo for sorting cargo by from and viafonsinchen
2014-09-06(svn r26774) -Cleanup [Squirrel]: remove _SC macrorubidium
2014-09-06(svn r26771) -Cleanup: remove OTTD2SQ and SQ2OTTDrubidium
2014-04-25(svn r26511) -Codechange: use strecpy in game_textrubidium
2014-04-25(svn r26509) -Codechange: replace strdup with stredup (the latter ensures ↵rubidium
the return is not NULL)
2014-04-24(svn r26506) -Codechange: replace most of vsnprintf with vseprintfrubidium
2014-04-24(svn r26505) -Fix (r23634, r26493): Incorrect usage of strecpy/strecatfrosch
2014-04-24(svn r26504) -Fix (r26499): Obiwan and his gang.frosch
2014-04-24(svn r26499) -Codechange: replace strndup with streduprubidium
2014-04-23(svn r26487) -Codechange: use lastof instead of lengthof/sizeof for script namesrubidium
2014-04-23(svn r26486) -Codechange: replace a number of snprintfs with seprintfrubidium
2014-04-23(svn r26485) -Codechange: Replace ttd_strlcpy and ttd_strlcat with strecpy ↵frosch
and strecat.
2014-04-23(svn r26482) -Codechange: add an include that allows us to undefine/redefine ↵rubidium
"unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values