polserver/cmake
Fernando Rozenblit 721e4fefe0
Refactor Item states to be explicit instead of implicit (#919)
* extend tests

* more tests for world save

* explicit handle the special layers in wornitem

* add Location variant and relocate() methods

* refactor GottenItem and ensure Chr, not wornitems, is saved

* deflake escript watch test

* dropitem and undo refactoring

* uomod changes

* add more item tests (buy, sell, hair...)

* use location for undoing trade container properly

* rewrite loaddata to use relocate, fixing startup crashes

* do remaining location changes

* fix CI tests

* remove container pointer from item and add wearer() reference

* remove layer writes and explicit intrinsic weapon handling

* add preparing state for fresh items without serial number

* move wornitems to detached state only when it has a serial number

* load corpse items into the correct layer

* do not set a layer on load before the item is equipped

* add more tests to equipped and intrinsic items

* remove layer and substitute with the location()

* add core-changes summary

* mark items as being worn on corpse if they only moved within the corpse

* block Preparing from being reached, just to be sure

* added integrity sweep check

* Reduce direect changes to item location

* Add Item::move_into() and rewrite calling sites

* Fix container slots

* get rid of the slot_index on the item, because Location() already has it

* fix race in test leading to macos issues

* fix dangling pointer

* remove corpse can_equip_list and rely on the GottenItem rules to dress the corpse again

* let item->destroy() detach the item

* make integrity checks fail the tests

* use place_at(item, newpos) for changing item position InWorld

* add boat test for item moved out of boat that should not be visible anymore

* use place_at() in more places

* ensure CreateItemAtLocation really does

* fix Claude instructions

* remove state we didn't need

* fine tuning

* reduce test flakiness
2026-08-10 18:17:53 +00:00
..
env Use mariadb connector as a replacement for mysqlconnector (#872) 2026-03-30 22:50:24 +02:00
Antlr.cmake More cmake options and fixed build of more esoteric platforms (#834) 2026-01-02 14:29:52 +01:00
Benchmark.cmake removed google-benchmark from repo, download when needed (#860) 2026-01-20 07:57:43 +01:00
Boost.cmake Fix CMake bugs: escript tests under multi-config generators, and cleanups (#895) 2026-07-11 20:58:21 +02:00
c_flag_overrides.cmake Missing files... 2018-06-23 19:19:58 +02:00
clang_format.cmake Unpack of bigger double values on windows (#576) 2023-12-10 20:30:17 +00:00
compile_defs.cmake Includes are now all relative to pol-core basefolder (#906) 2026-07-25 23:01:18 +02:00
core_tests.cmake Refactor Item states to be explicit instead of implicit (#919) 2026-08-10 18:17:53 +00:00
core_tests_ecompile_cfg.cmake Unpack of bigger double values on windows (#576) 2023-12-10 20:30:17 +00:00
core_tests_ecompile_watch.cmake Add daemon watch mode to ecompile (#630) 2024-03-16 00:08:06 +01:00
core_tests_roundtrip.cmake Refactor Item states to be explicit instead of implicit (#919) 2026-08-10 18:17:53 +00:00
core_tests_start.cmake Nonblocking send for aux and web (#911) 2026-07-27 19:19:51 +02:00
Cppdap.cmake Support vs2026 (#882) 2026-05-14 19:08:15 +02:00
Curl.cmake Fix CMake bugs: escript tests under multi-config generators, and cleanups (#895) 2026-07-11 20:58:21 +02:00
cxx_flag_overrides.cmake Missing files... 2018-06-23 19:19:58 +02:00
Efsw.cmake fixed efsw download (#847) 2026-01-06 22:18:59 +01:00
escript_grammar.cmake CMake target cleanup, removed configure options (#614) 2024-02-01 08:07:37 +01:00
EscriptGrammarLib.cmake CMake target cleanup, removed configure options (#614) 2024-02-01 08:07:37 +01:00
escripttest.cmake use git diff to compare testresult of escript tests (#822) 2025-10-01 12:27:17 +02:00
Fmt.cmake Fix CMake bugs: escript tests under multi-config generators, and cleanups (#895) 2026-07-11 20:58:21 +02:00
git_revision.cmake git revision fetch is now part of the build process instead of 2018-06-18 10:27:01 +02:00
init.cmake Fix CMake bugs: escript tests under multi-config generators, and cleanups (#895) 2026-07-11 20:58:21 +02:00
Kaitai.cmake Fix CMake bugs: escript tests under multi-config generators, and cleanups (#895) 2026-07-11 20:58:21 +02:00
parse_modules.cmake Use mariadb connector as a replacement for mysqlconnector (#872) 2026-03-30 22:50:24 +02:00
PicoJson.cmake Fix CMake bugs: escript tests under multi-config generators, and cleanups (#895) 2026-07-11 20:58:21 +02:00
release.cmake Enable building on OSX (clion) (#318) 2020-09-26 06:57:10 -07:00
SQL.cmake Fix CMake bugs: escript tests under multi-config generators, and cleanups (#895) 2026-07-11 20:58:21 +02:00
StackWalker.cmake CMake target cleanup, removed configure options (#614) 2024-02-01 08:07:37 +01:00
TinyXML.cmake CMake target cleanup, removed configure options (#614) 2024-02-01 08:07:37 +01:00
UTF8.cmake Fix CMake bugs: escript tests under multi-config generators, and cleanups (#895) 2026-07-11 20:58:21 +02:00
ZLib.cmake Fix CMake bugs: escript tests under multi-config generators, and cleanups (#895) 2026-07-11 20:58:21 +02:00