summaryrefslogtreecommitdiff
path: root/src/ai
AgeCommit message (Collapse)Author
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-02-17Codechange: Avoid copying function parameters by using const referencesQuipyowert2
2020-02-14Codechange: Simplify CheckAPIVersion()glx
2020-02-08Change: Heading for 1.11 nowglx
2020-02-06Fix #7088: close AI/GS textfile window when their data are invalidSamu
2019-12-21Codechange: Replace FOR_ALL_COMPANIES with range-based for loopsglx
2019-11-10Cleanup: Removed SVN headersS. D. Cloudt
2019-10-22Add: [Script] ScriptEventVehicleAutoReplaced.glx
2019-09-07Fix #7188: check the validity of command callback for scripts (#7701)glx22
2019-05-11Change: Limit memory allocations for each Squirrel instanceNiels Martin Hansen
This can avoid out-of-memory situations due to single scripts using up the entire address space. Instead, scripts that go above the maximum are killed. The maximum is default 1 GB per script, but can be configured by a setting.
2019-05-01Add: New RoadType API functions.peter1138
2019-04-29Codechange: Remove Company/OwnerByte typesCharles Pigott
2019-04-10Codechange: Use null pointer literal instead of the NULL macroHenry Wilson
2019-04-09Codechange: Switch DropDownList to directly use std::vector, thus making ↵Michael Lutz
AutoDeleteSmallVector obsolete. DropDownListItem are strongly managed using std::unique_ptr to ensure leak-free handling. Appropriate use of move-semantics make intent a lot clearer than parameter comments and allows the compiler to generate copy-free code for most situations.
2019-04-05Fix #7439: don't overwrite CompanyRemoveReason with ClientID (#7465)glx22
2019-03-26Codechange: Replaced SmallVector::Append() with ↵Henry Wilson
std::vector::[push|emplace]_back()
2019-03-24Codechange: Use override specifier in Window-derived classes.peter1138
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
2019-02-21Fix #7090: Close Query String window after rebuilding AI/GS settingsSamu
2019-02-21Fix #7091: Close dropdown menu windows after rebuilding AI/GS settingsSamu
2019-02-11Fix #7151: AI start date deviation was still applied when not set to a ↵PeterN
random AI. (#7223)
2019-02-04Add: CompanyCtrlAction enum for CMD_COMPANY_CTRL actionsglx
2019-02-02Change: Allow AI companies to start immediately.Samu
Allow multiple AIs to possibly start in the same tick. start_date = 0 becomes a special case, where random deviation does not occur. If start_date was not already 0, then a minimum value of 1 must apply.
2019-02-01Fix #6438: Properly invalidate AI Settings window when max no competitor ↵Peter Nelson
setting is changed.
2019-01-28Add: allow opening of one TextfileWindow per typeglx
2019-01-27Fix #7122: OnClick() and DrawWidget() editability was inconsistent in ↵glx22
AISettingsWindow (#7123)
2019-01-12Fix #6780: Some windows didn't get updated from OnTick() (#7048)PeterN
2018-12-27Fix: [Win32] WIN32 may not be defined, always prefer the compiler predefined ↵glx
macro _WIN32
2018-03-14(svn r27993) -Change: Heading for 1.9 nowfrosch
2017-08-13(svn r27893) -Codechange: Use fallthrough attribute. (LordAro)frosch
2017-03-12(svn r27787) -Fix: Update scrollbar when rebuilding AI/GS setting list.peter1138
2017-03-12(svn r27786) -Fix [FS#6479]: AI configuration changed incorrect parameter ↵peter1138
when some parameters are hidden.
2017-03-11(svn r27780) -Update: Numbersfrosch
2016-05-22(svn r27581) -Fix [FS#6461]: Button size computation in script configuration ↵frosch
window. (adf88)
2016-03-01(svn r27518) -Update: Numbersfrosch
2015-12-10(svn r27468) -Fix (r27444): Game Scripts were not displayed in the content ↵zuu
download window when opened from the AI/GS settings window.
2015-03-17(svn r27193) -Fix (r27192): Incomplete copy/paste.frosch
2015-03-17(svn r27192) -Change: heading for 1.6 nowfrosch
2015-03-15(svn r27187) -Fix: Code style.frosch
2014-10-04(svn r26954) -Codechange: GUI-scale for AI/GS settings and NewGRF settings ↵peter1138
windows.
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-05-11(svn r26583) -Fix [FS#5974]: Game script could be changed in game by double ↵rubidium
clicking
2014-04-25(svn r26509) -Codechange: replace strdup with stredup (the latter ensures ↵rubidium
the return is not NULL)
2014-04-23(svn r26487) -Codechange: use lastof instead of lengthof/sizeof for script namesrubidium