Commit Graph

47 Commits

Author SHA1 Message Date
Loïc Guilloux 9a47f53db0 Codechange: [Script] Reduce code duplication in ScriptList filtering (#14931) 2025-12-17 15:35:53 +01:00
glx22 392f743bcd Change: [Script] ScriptList::Valuate is now suspendable 2025-12-11 23:30:27 +01:00
Cyprian Klimaszewski 99f04f27de Doc: Update information for receiving a copy of GPL. (#14869) 2025-12-07 11:25:08 +00:00
Jonathan G Rennison 712ca5e3ec Codechange: [Script] Use std::optional for script list next iteration item (#14753)
Avoids false positive updates in Remove when iterating the final item
and leftover values being returned when IsEnd is true
2025-11-29 17:36:41 +00:00
SamuXarick 20fd2b5014 Codefix: Add missing 'this->' in ScriptList (#14747) 2025-10-31 11:38:49 +00:00
SamuXarick 3ebedecb4a Add: [Script] Auto-convert ObjectType bool to integer when setting values for items in lists via [] (#14308) 2025-10-29 21:18:00 +01:00
Peter Nelson c9fbc41636 Codechange: Script list iterator tidying. (#14698)
* Use `iter->` instead of `(*iter).`
* Use prefix instead of postfix operators
* Use `auto` instead of explicit iterator type.
* Use `std::next()` instead of assignment then increment.
* Use range-for where possible.
2025-10-05 07:57:09 +01:00
glx22 938acbe6ef Add: [Script] Cloning ScriptList 2025-06-05 22:37:33 +02:00
glx22 31fbb17c5b Codechange: Replace ScriptObject::[SG]etAllowDoCommand with ScriptObject::DisableDoCommandScope 2025-06-05 01:39:40 +02:00
Loïc Guilloux 2cd3c8db86 Codechange: [Script] Don't report multiple errors on valuator/filter failure (#14303) 2025-05-30 14:38:41 +02:00
glx22 a6f558ce2a Add: [Script] Saving/loading ScriptList 2025-03-02 13:41:12 +01:00
Peter Nelson 687829fa14 Codechange: Use std::unique_ptr for ScriptList::sorter. (#13517)
Avoids manual pointer management.
2025-02-10 19:20:52 +00:00
Loïc Guilloux 28efa65e0c Revert a2edf52: SQOpsLimiter does a more precise job (#11754) 2024-01-12 17:04:43 +01:00
Loïc Guilloux c86d918921 Add: [Script] Optional filter parameter to more ScriptXXXList constructors (#11698) 2024-01-09 09:39:13 +01:00
Jonathan G Rennison 48b6b1844a Change: Limit total script ops that can be consumed by a list valuate (#11670) 2024-01-02 19:02:12 +01:00
Peter Nelson 49dae08a3b Codechange: Add missing override specifiers. 2023-09-25 21:27:45 +01:00
Patric Stout 199e41c762 Codechange: use default dtor instead of empty (#10826) 2023-05-14 23:31:03 +02:00
Peter Nelson e6740046ee Codechange: Use range-for iteration. 2023-05-11 07:58:55 +01:00
glx22 a225fda9fe Codechange: Use SQInteger for generic numbers in script_list 2023-03-06 00:32:12 +01:00
Loïc Guilloux 4eb368c786 Fix 14f197c: [Script] int64 values don't fit into int (#9465) 2021-08-10 19:00:54 +02:00
Rubidium 281a65b3e1 Cleanup: simplify some boolean expressions 2021-06-17 16:18:30 +02:00
rubidium42 55a11710a6 Codechange: convert printf DEBUG statements to fmt Debug statements 2021-06-13 12:45:45 +02:00
Michael Lutz 1f1345de09 Codechange: [Script] Improve copying a list into another empty list. 2020-04-26 18:09:42 +02:00
S. D. Cloudt 13cc8a0cee Cleanup: Removed SVN headers 2019-11-10 17:59:20 +00:00
nikolas 10fe568f08 Fix: typo in ScriptList::Valuate param error (#7687) 2019-08-07 21:15:53 +02:00
Henry Wilson 7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 2019-04-10 23:22:20 +02:00
frosch a2edf52b41 (svn r27594) -Fix [FS#6473]: [Script] Kill scripts, when a non-suspendable valuator call takes way too long. 2016-05-30 21:03:11 +00:00
frosch eb25d9e275 (svn r27258) -Fix [FS#6287]: ScriptList::RemoveList failed to remove a list from itself. 2015-04-27 19:28:22 +00:00
frosch fece468d96 (svn r27166) -Codechange: Optimise ScriptList by making use of iterators instead of looking up map-items multiple times per API call. 2015-02-22 23:04:02 +00:00
rubidium 14f197c6ff (svn r27104) -Fix [FS#6194]: support 64 bits integere in the ScriptLists as well 2015-01-01 21:08:19 +00:00
fonsinchen 1a5b2f0e17 (svn r26894) -Feature: Swap method for script lists 2014-09-21 16:25:15 +00:00
rubidium 33ab505567 (svn r26774) -Cleanup [Squirrel]: remove _SC macro 2014-09-06 17:46:56 +00:00
frosch 7ca57bc578 (svn r26744) -Fix [FS6085-ish]: ScriptListSorterItemDescending::FindNext failed to detect the end. 2014-08-16 21:13:58 +00:00
frosch a03ad12322 (svn r26743) -Codechange: Simplify ScriptList iterators. 2014-08-16 21:11:26 +00:00
frosch 0d561bcf57 (svn r26742) -Doc: Why reverse_iterator is unsuitable for ScriptList iterators 2014-08-16 20:40:26 +00:00
frosch c775ffe530 (svn r26741) -Revert (r26736): reverse_iterators are invalidated when the element next to them is erased (not the element they are pointing to), which makes them unsuitable for ScriptList. 2014-08-16 20:37:33 +00:00
rubidium d733c7d196 (svn r26736) -Fix [Script]: infinite loop (by scripts; always returning the same item) when sorted by item in descending order by oddly constructed FindNext that uses forward iterators. Simply use the same code as the ascending item sort but use the reverse iterator instead of the forward. Also do this same trick for the descending value sort even though I couldn't trigger the problem there 2014-08-16 10:20:15 +00:00
rubidium 0463dbdc9e (svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values 2014-04-23 20:13:33 +00:00
rubidium be6b64f4e6 (svn r26072) -Cleanup: mark some unreachable default cases by NOT_REACHED() 2013-11-23 18:13:30 +00:00
planetmaker c24374f99c (svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow) 2013-01-08 22:46:42 +00:00
rubidium 22637f139f (svn r24008) -Cleanup/doc: try not to mention (No)AI in script APIs 2012-03-04 16:54:12 +00:00
truebrain e1f04b89c3 (svn r23648) -Revert (r23646): partial revert; nobody has to know about my local changes and attempts 2011-12-21 12:28:02 +00:00
truebrain da8777d4e5 (svn r23646) -Fix [FS#4901]: rescan the Game Scripts when done downloading one. 2011-12-21 12:25:10 +00:00
yexo 1bc1a41937 (svn r23392) -Fix: [NoAI] assigning 'null' to an AIList element to remove it didn't work 2011-12-01 22:23:13 +00:00
truebrain a8b22e5292 (svn r23386) -Fix: debug script related events to 'script' (removes 'ai') 2011-12-01 12:04:10 +00:00
truebrain 98103121d4 (svn r23355) -Codechange: rename all AI* to Script* (Rubidium) 2011-11-29 23:15:35 +00:00
truebrain afdb67a353 (svn r23354) -Codechange: move all src/ai/api/ai_*.[hc]pp files to src/script/api/script_* (Rubidium) 2011-11-29 23:07:38 +00:00