Commit graph

135 commits

Author SHA1 Message Date
82a81c4c77 Add util::flat_list::begin/end 2022-06-09 11:12:47 +03:00
15f8e04308 Fix util::flat_list::data() 2022-06-09 11:12:37 +03:00
c8eaf4abe0 Add util::dynamic_ptr with stream output operator that shows dynamic type of referenced object 2022-05-25 22:54:14 +03:00
25356b84bd Use exponential growth for util::atlas 2022-05-23 20:26:01 +03:00
1b075bf40c Don't resize util::array if size didn't change 2022-05-23 20:25:44 +03:00
8414af776a Add util::flag_set bitwise operators 2022-05-21 19:51:56 +03:00
ddd67b79f3 Support creating util::flag_set directly from representation type 2022-05-21 19:51:43 +03:00
5eab34a1dd Add util::flag_set for enum-based bitsets 2022-05-19 21:33:16 +03:00
fcfd7138d1 Add lru cache implementation & tests 2022-05-17 18:22:31 +03:00
cbfd8f83de Add util::key_error for use in key-value containers in place of std::out_of_range 2022-05-17 18:22:17 +03:00
14a2e00b39 Add helper callable objects that always return the same result 2022-05-17 18:21:45 +03:00
bb971ff412 Explicitly mark util::function as non-copiable with (function &) arguments 2022-05-17 18:15:45 +03:00
3de591394d Don't use unevaluated scope for assert in release 2022-05-17 12:54:08 +03:00
a3eca3bef7 Support item padding in util::atlas 2022-05-14 00:01:26 +03:00
df963e18a3 Add util::type_name(x) (may use rrti) 2022-04-20 18:46:02 +03:00
8f6d48c605 Fix util::array::indices iteration in case of empty array 2022-04-16 17:14:38 +03:00
47231dfd92 Mark util::not_implemented as noreturn 2022-02-25 18:49:27 +03:00
4403266feb Add util::cast<T>(span) 2022-02-22 23:02:43 +03:00
22b3f1d67f Add enum_range rbegin & rend 2022-02-19 23:04:19 +03:00
92ed64edd1 Add all typedefs for enum_iterator 2022-02-19 23:04:09 +03:00
6207df1e9b Make enum_iterator bidirectional 2022-02-19 23:03:55 +03:00
ed92e28a8b Fix unknown_enum_value_exception 2022-02-12 13:33:02 +03:00
45b3369bc9 Add texture atlas implementation 2022-02-10 13:29:47 +03:00
20302885b5 Add enum_range::size 2022-02-09 23:12:55 +03:00
ef80db2620 Add hash for std::pair 2022-02-08 20:34:53 +03:00
754566ec15 Add stream output operator for enums 2022-02-07 13:39:53 +03:00
834d9408ff Add psemek_declare_enum macro for common enum utilities 2022-02-04 18:01:07 +03:00
460632a118 Fix util::timer: add timer duration to tracked time point instead of replacing it with now() 2022-02-02 19:45:27 +03:00
134ec550f5 Add util::span::front,back 2022-01-20 20:32:38 +03:00
2d05fe9ea9 Add smooth_updater::value 2021-12-24 21:01:16 +03:00
ec08a4a281 Add util::updater and smooth_updater 2021-12-22 20:35:21 +03:00
a397a21628 Add array::assign 2021-12-01 21:20:21 +03:00
249ca33aab Support indexing util::array with arbitrary array-like types 2021-10-30 22:04:50 +03:00
8571bc9c6d Behavior tree retry node: support retrying a fixed number of times 2021-10-30 13:14:02 +03:00
25c93a7699 Behavior tree wait node fix 2021-10-27 18:42:04 +03:00
5bbd67a0ba Refactor behavior trees: use flat_list & ids for instances, use a binary tree to sort suspended instances 2021-10-24 19:07:54 +03:00
23828de853 Behavior tree: add repeat_while primitive 2021-10-24 12:36:56 +03:00
32a402573d Behavior tree: fix on_event node event handling 2021-10-23 11:12:56 +03:00
9641703375 Behavior trees: implement events in updater & include node arguments in event handler 2021-10-23 10:29:30 +03:00
73bf540967 Fix dt in behavior_tree::updater 2021-10-17 11:44:35 +03:00
6e4db713d3 More behavior tree generic nodes 2021-10-17 00:49:11 +03:00
b8d03d41a4 Add basic behavior_tree implementation 2021-10-16 13:26:37 +03:00
a0e81aaf32 Make util::span constructible from any container with data() and size() methods 2021-08-22 13:11:10 +03:00
32529137eb Default-construct components for created entities in util::ecs 2021-08-17 11:42:26 +03:00
c55bea1228 Add species name to ecs behavior context 2021-08-14 10:23:56 +03:00
df59cffd43 Fix util::ecs::get(species) 2021-08-12 20:45:41 +03:00
66f733d937 Fix util::ecs::get_if 2021-07-25 13:00:26 +03:00
02b29af95a Introduce util::ecs::behavior::context 2021-07-24 11:14:43 +03:00
4f53537d27 Support non-default-constructible per-species component types in util::ecs 2021-07-23 23:28:44 +03:00
153e0f4230 Support retrieving species name in util::ecs 2021-07-23 10:14:11 +03:00