Commit Graph

472 Commits

Author SHA1 Message Date
Tyler Trahan fd9e72a7e7
Feature: Use real-time "wallclock" timekeeping units (#11341) 2024-01-23 11:36:09 -05:00
Rubidium ee00c7b159 Codechange: use TO_LE16 directly when reading language file offsets 2024-01-18 23:29:15 +01:00
Patric Stout fd073a2810 Remove: replace custom span with std::span 2024-01-17 00:25:08 +01:00
Jonathan G Rennison 4b48d3b5fe
Fix: String gender scan with SCC_INDUSTRY_NAME (#11697) 2024-01-07 15:48:47 -05:00
Peter Nelson 7482f71692
Change: Don't handle 'missing' string parameters as 0. (#11673)
If not enough parameters are supplied for a string, then a value of 0 was used, which could result in incorrect information being displayed.

Instead, throw an exception and include an error in the string.
2024-01-04 20:50:58 +00:00
Jonathan G Rennison 5db9266f4b Change: Allow STRING/STRINGN to use all remaining parameters in game script mode 2024-01-04 17:45:33 +00:00
Jonathan G Rennison e2a79f0f32 Codechange: No longer advance parent offset in StringParameters parent mode
Add method to manually advance offset
2024-01-04 17:45:33 +00:00
Peter Nelson 33ff64ef74
Codechange: Simplify ConvertDateToYMD by returning YearMonthDay instead of outputting to a pointer. (#11637) 2023-12-28 21:34:08 +00:00
Jonathan G Rennison 97b86b7147
Codechange: Use MakeParameters with GetNextParameter in FormatString (#11583)
Instead of StringParameters subspan, to avoid GSs being able to
cause subspan boundary assertion failures
2023-12-14 10:41:31 -05:00
Jonathan G Rennison 1de1af08b9
Codechange: Replace AllocatedStringParameters with ArrayStringParameters (#11452)
All uses of AllocatedStringParameters are with a compile-time fixed
constant.
Use of a dynamically allocated buffer on the heap is unnecessary and
increases overhead, particularly due to frequent use as a temporary.
2023-11-09 19:43:47 +00:00
Peter Nelson 7d4a91ef9e
Cleanup: Remove some unused functions. (#11429)
These were picked up with cppcheck.
2023-11-03 21:21:00 +00:00
Rubidium c9276c2959 Codechange: replace x.size() == 0 with x.empty() 2023-10-20 23:05:43 +02:00
frosch b6c8f301be Codechange: Silence warnings about intentionally unused parameters. 2023-09-19 22:49:59 +02:00
Rubidium 6635f809dd Fix #11181: attempting to read string as int triggers assertion 2023-08-20 23:57:42 +02:00
Rubidium eaae0bb5e7 Codechange: automatic adding of _t to (u)int types, and WChar to char32_t
for i in `find src -type f|grep -v 3rdparty/fmt|grep -v 3rdparty/catch2|grep -v 3rdparty/opengl|grep -v stdafx.h`; do sed 's/uint16& /uint16 \&/g;s/int8\([ >*),;[]\)/int8_t\1/g;s/int16\([ >*),;[]\)/int16_t\1/g;s/int32\([ >*),;[]\)/int32_t\1/g;s/int64\([ >*),;[]\)/int64_t\1/g;s/ uint32(/ uint32_t(/g;s/_uint8_t/_uint8/;s/Uint8_t/Uint8/;s/ft_int64_t/ft_int64/g;s/uint64$/uint64_t/;s/WChar/char32_t/g;s/char32_t char32_t/char32_t WChar/' -i $i; done
2023-07-19 19:30:14 +02:00
Rubidium 968de827d6 Fix #11108, e2f583a: missing argument for SCC_CARGO_SHORT formatting 2023-07-06 19:46:54 +02:00
Rubidium 2ec4ea2b99 Codechange: use the string temporaries for game script strings 2023-07-03 18:08:03 +02:00
Rubidium 3e488465f8 Codechange: allow string temporaries in a StringParameter 2023-07-03 18:08:03 +02:00
Rubidium b2edf82b69 Cleanup: remove unneeded CopyOutDParam version with StringID 2023-07-03 06:56:08 +02:00
Rubidium 4654b2b0aa Codechange: separate integer and string usage in StringParameters 2023-07-03 06:56:08 +02:00
Rubidium 7ed90a859f Codechange: function to check whether string parameters have changed since the backup 2023-07-03 00:00:12 +02:00
Rubidium 05ef3f0998 Cleanup: remove old backup/restore of string parameters 2023-07-02 22:31:01 +02:00
Rubidium 2687704afc Codechange: introduce new type and functions for StringParameter backups 2023-07-02 22:31:01 +02:00
PeterN c3fbe7bea8
Cleanup: Use FS enum instead of magic numbers. (#11088) 2023-06-30 20:11:09 +00:00
Rubidium 75a22a1c83 Codechange: move from GetIntXY to GetNextParameter<XYY> 2023-06-27 12:34:40 +02:00
Rubidium e7937efb01 Codechange: add clearer named function to get the next (string) parameter 2023-06-27 12:34:40 +02:00
Rubidium 4e9a871718 Codechange: merge multiple string parameter arrays to single array of structs 2023-06-21 05:46:11 +02:00
Rubidium fa8c50758b Codechange: replace memcpy when copying DParams 2023-06-21 05:46:11 +02:00
Rubidium 7a785a4224 Codechange: simplify StringParameters now type cannot be nullptr 2023-06-20 22:25:25 +02:00
Rubidium 428333aeba Codechange: let AllocatedStringParameters allocated types too 2023-06-20 22:25:25 +02:00
Rubidium 9f3254b72a Fix b1fb209: build failure due to removed parameter 2023-06-20 21:32:04 +02:00
glx22 b1fb209bed Add: {COLOUR} control code to allow colour changes at runtime 2023-06-20 19:05:10 +02:00
Rubidium 88138c55f8 Codechange: make offset protected and guard against invalid offsets 2023-06-20 17:37:49 +02:00
Rubidium 9c3c90effa Codechange: rename ClearTypeInformation so it can be used for preparing for the next run 2023-06-20 17:37:49 +02:00
Rubidium 01abcdfcac Codechange: make StringParameters#next_type only writable from outside the class 2023-06-20 17:37:49 +02:00
Rubidium 3e8f8c55c2 Codechange: make creating temporary StringParameters easier 2023-06-20 17:37:24 +02:00
Rubidium 381e8b69d2 Codechange: make size and offset size_t 2023-06-18 09:50:11 +02:00
Rubidium 4e6733cc6e Codechange: use args.GetParam(offset) over *args.GetPointerToOffset(offset) 2023-06-18 07:10:10 +02:00
Rubidium e404ba0631 Codechange: generify GetRemainingParameters to allow custom offsets 2023-06-18 07:09:59 +02:00
Rubidium ad048b143a Codechange: move implementation of Set/GetDParam to strings.cpp 2023-06-17 12:14:11 +02:00
Rubidium dd53a738bb Codechange: automatically set/check the correct type for string parameters/genders 2023-06-17 11:02:31 +02:00
Rubidium 0a5e58451b Codechange: pass string parameters by reference 2023-06-14 06:14:08 +02:00
Rubidium e332810231 Codechange: pass zero length arguments for {STRING}, instead of the remaining arguments 2023-06-13 23:53:13 +02:00
Rubidium aba0d27a28 Codechange: use StringParameters for remapping the NewGRF string control codes 2023-06-13 22:11:21 +02:00
Rubidium 1146904d45 Fix: when a string consumes more parameters than allowed, nullptr is attempted to be formatted 2023-06-13 20:58:45 +02:00
Rubidium 6c6f365d2f Codechange: remove offset parameter for copying DParams in and out 2023-06-11 17:03:31 +02:00
Rubidium 66a984afd7 Codechange: rename function to better describe its functionality 2023-06-09 06:41:52 +02:00
Rubidium 13cdf5fffa Codechange: use std::filesystem::path for the language file's path 2023-06-08 23:20:28 +02:00
Rubidium b2a8d8aea4 Codechange: use std::string for Windows' ISO code mangling 2023-06-07 08:27:18 +02:00
Rubidium edb21620ea Cleanup: remove unneeded checks on remaining buffer size 2023-06-05 23:26:12 +02:00