Commit graph

47 commits

Author SHA1 Message Date
Erik Ogenvik
8cdf21479c Rework how ai minds work.
The mind is now represented by a separate entity in the client.
2018-09-17 20:48:54 +02:00
Erik Ogenvik
794e8eb0bd Check for null. 2018-09-01 21:44:14 +02:00
Erik Ogenvik
64f0de89cd Changed protocol for usages.
Make it more general.
2018-08-20 22:10:46 +02:00
Erik Ogenvik
117c50033a Added "bbox" property.
Getting the WFMath::Axisbox object rather than Atlas Element data.
2018-08-18 23:26:46 +02:00
Erik Ogenvik
06c66815bc Added missing method. 2018-08-18 23:26:30 +02:00
Erik Ogenvik
139d229f80 Sync Python method names with C++. 2018-08-17 22:04:07 +02:00
Erik Ogenvik
9f85a22e3b Added "get_entity" filter function.
Used to resolve entities from soft properties which refer to entities.
This is then used to check that a tool is wielded before use.
2018-08-17 21:27:04 +02:00
Erik Ogenvik
6a3ec31b7e Remove Character class.
This is crucial since it now means that any entity can be controlled by
a mind. This makes the world much more versatile.
2018-08-14 22:25:56 +02:00
Erik Ogenvik
0b75e42aa0 Make Python API more uniform. 2018-08-11 23:26:54 +02:00
Erik Ogenvik
25d233fc14 Added method for modProperty. 2018-08-11 23:26:04 +02:00
Erik Ogenvik
ddab8046de Work on removing Character. 2018-08-09 21:30:10 +02:00
Erik Ogenvik
c84f5fe926 Don't implicitly convert from Ref to ptr.
Since it's too easy to introduce subtle bugs.
2018-08-05 20:47:09 +02:00
Erik Ogenvik
a12b1a00a3 Delete when refs go to zero.
This changes how entities are dereferenced to work more like you would
expect.
2018-08-05 14:36:21 +02:00
Erik Ogenvik
a9edc06cec ProviderFactory doesn't need to be pointer. 2018-08-04 18:01:20 +02:00
Erik Ogenvik
89ae74b449 Initialize properties in constructor. 2018-08-04 18:01:20 +02:00
Erik Ogenvik
3f534b0b4a Use a Map for the Tasks property. 2018-08-04 18:01:20 +02:00
Erik Ogenvik
376f0374d7 Allow Location created from EntityLocation. 2018-08-01 23:15:44 +02:00
Erik Ogenvik
a2cc5d97a0 Make checking for reach more logical. 2018-08-01 23:04:39 +02:00
Erik Ogenvik
6ab9acc746 Refine how tasks and handlers work. 2018-08-01 22:24:49 +02:00
Erik Ogenvik
8c86e3abb0 Make Task behave better. 2018-08-01 22:23:28 +02:00
Erik Ogenvik
200494e70f Tie Tasks to Usage.
So that it's easy to verify that a Task is still valid.
2018-08-01 22:23:28 +02:00
Erik Ogenvik
1d8f3e0188 Make Task property listen to ops. 2018-07-31 14:38:34 +02:00
Erik Ogenvik
2ed0437035 Use task for longer running usages. 2018-07-31 11:31:58 +02:00
Erik Ogenvik
cd6510d475 Make trees turn into logs, and react to axes. 2018-07-30 22:43:58 +02:00
Erik Ogenvik
4ffeee6ae4 Implement trowel. 2018-07-30 21:33:21 +02:00
Erik Ogenvik
2f1acfd2a6 Provide EntityLocation for simpler locations.
In most cases Location is too heavy for when we want to reference just a
position on an entity. EntityLocation can be used in those instances.
2018-07-30 19:18:06 +02:00
Erik Ogenvik
584e578c52 Ported TinderBox. 2018-07-30 15:25:33 +02:00
Erik Ogenvik
8842d65e08 Implement cool downs. 2018-07-29 23:20:42 +02:00
Erik Ogenvik
c921589a93 Check that entity can be reached. 2018-07-29 21:37:15 +02:00
Erik Ogenvik
a4e29323a4 Hackish fix for inheritance.
Character should inherit from Entity/Thing, but doesn't really in the
Python class hierarchy. We'll fudge it anyways.
2018-07-29 19:56:45 +02:00
Erik Ogenvik
da2582a82b Fixed incorrect method call. 2018-07-29 19:53:43 +02:00
Erik Ogenvik
d1a172648a Handle numbers in messages better. 2018-07-28 13:49:40 +02:00
Erik Ogenvik
55de692c5e Removed obsolete files. 2018-07-26 16:08:21 +02:00
Erik Ogenvik
e9d10f51fe Fixed issues with calling Python scripts. 2018-07-26 15:22:27 +02:00
Erik Ogenvik
a9a8126ec5 Fixed issues with inheriting Python classes. 2018-07-26 15:21:28 +02:00
Erik Ogenvik
4d1dc775b0 Moved BaseWorld to rulesets.
Since it better belongs there.
2018-07-25 00:16:09 +02:00
Erik Ogenvik
58b0746f75 Use WrapperBase for CyPy_Props. 2018-07-24 23:11:10 +02:00
Erik Ogenvik
a86c1ebca0 Added TerrainProperty bindings. 2018-07-24 23:00:06 +02:00
Erik Ogenvik
cfffeb1711 Make macros conformant. 2018-07-24 21:16:50 +02:00
Erik Ogenvik
b392749d61 Improve MemMap and its bindings. 2018-07-23 21:04:17 +02:00
Erik Ogenvik
7b675781d3 Use Refs for storing entities in python. 2018-07-23 18:50:12 +02:00
Erik Ogenvik
ba539df70e Use PyCXX throughout. 2018-07-23 16:43:39 +02:00
Erik Ogenvik
205c7106bf Refine bindings. 2018-07-23 11:03:29 +02:00
Erik Ogenvik
e6bc7b2790 Use Ref for handling ref counting.
All LocatedEntities should always be handled through Ref instances.
These makes sure that the ref counting is correctly handled.
2018-07-22 23:48:42 +02:00
Erik Ogenvik
c80336840b Further work on converting Python bindings. 2018-07-22 19:47:35 +02:00
Erik Ogenvik
769695ee20 Further work on Python bindings. 2018-07-21 17:40:21 +02:00
Erik Ogenvik
69943282ed Work on converting all python bindings to pycxx. 2018-07-21 13:58:13 +02:00