Commit graph

82 commits

Author SHA1 Message Date
Erik Ogenvik
6e62796876 Reload rules in a better manner. 2018-05-10 00:21:30 +02:00
Erik Ogenvik
7895d1b0aa Reload minds when python code changes.
All thoughts are first persisted and then restored.
2018-05-01 22:23:31 +02:00
Erik Ogenvik
002e1ca728 Expose const fields.
Thus no need to redefine private and protected.
2018-05-01 22:15:29 +02:00
Erik Ogenvik
3a41f8fc62 Reload all python tasks scripts too. 2018-05-01 14:42:02 +02:00
Erik Ogenvik
e80d07560c Reload entity scripts when python code changes.
For now we reload all scripts. We should be smarter and only reload
those scripts which are affected though.
2018-04-30 23:34:58 +02:00
Erik Ogenvik
d4604d034d Correctly handled updated type properties.
When a type is updated we now property re-apply modified properties on
affected entities.
2018-04-29 17:21:44 +02:00
Erik Ogenvik
0f1559ba16 Reload types when they change. 2018-04-29 11:59:33 +02:00
Erik Ogenvik
a6195c1ac6 Made all game entities definable through xml.
This makes it easier to alter properties in real time.
2018-04-29 11:58:35 +02:00
Erik Ogenvik
664988645e Make all properties define type and optional name. 2018-04-27 23:12:15 +02:00
Erik Ogenvik
f7e7a8a968 Fixed tests. 2018-04-27 23:12:15 +02:00
Erik Ogenvik
705b691ff5 Make "Account::operation" send directly to link. 2018-04-25 21:05:59 +02:00
Erik Ogenvik
7ae19d5038 Use Singleton base class.
I.e. make sure that all objects have a defined life time. This requires
that we actually set up and tear down the singletons.
2018-04-25 20:15:29 +02:00
Erik Ogenvik
f09675cec6 Use "planted" for floating entities.
Entities that are "planted" on bodies of water are floating.
This does away with the "floating" mode.

To mark that entities should by default be floating when placed in
water the boolean property "floats" has been added.
2018-03-24 17:06:02 +01:00
Erik Ogenvik
070b0a6c85 Check for where to plant entities.
If an entity is in mode "planted" we should check for any existing
planted entities below it, to see if we should add it on top of them, or
on top of the terrain.
2018-03-23 23:07:09 +01:00
Erik Ogenvik
63d36617ed Fixed issues with terrain mods and moving entities. 2018-03-05 22:14:58 +01:00
Erik Ogenvik
62637e7576 Updated stubs. 2018-03-05 12:55:48 +01:00
Erik Ogenvik
98166a57e0 Added support for free mesh geometry.
We do this by using the GImpact shapes. These work, but are resource
intensive. So make sure you don't use too many of these in free mode.
This isn't thouroughly researched though. It might be worth looking into
btCollisionHull, or to alter some of the parameters to fine tune the
simulation.
2018-03-05 12:42:10 +01:00
Erik Ogenvik
5a71381b8d Added default attribute to modProperty. 2018-02-26 12:05:10 +01:00
Erik Ogenvik
a674b0cf31 Updated docs. 2018-02-21 14:37:47 +01:00
Erik Ogenvik
9bc54bca52 Reorganize and add "present-" properties.
The ambition is to have "present-" properties for all types.
2018-02-15 12:39:34 +01:00
Erik Ogenvik
ca2abb94b5 Refactor how movement is handled and sent.
We've introduced the properties "speed-ground", "speed-water" and
"speed-flight" which specifies the top speed in m/s for each medium.

The "propel" attribute is now normalized, since it's multiplied with the
applicable top speed (depending on the medium, although currently we
only use the ground speed, TODO).
2018-02-11 23:22:20 +01:00
Erik Ogenvik
a3560c817f Use "propel" property for movement.
Clients shouldn't set the "velocity", instead setting the "propel"
property.
2018-02-11 21:15:35 +01:00
Erik Ogenvik
1e95d956b9 Player characters should never be AI controlled. 2018-02-08 21:47:22 +01:00
Erik Ogenvik
320480a9c4 Don't install "mode" twice. 2018-02-06 13:45:11 +01:00
Erik Ogenvik
162e682a99 Fixed tests. 2018-02-06 13:45:11 +01:00
Erik Ogenvik
c415630136 Remove geometryfile property.
Instead we use the "asset" type on the "geometry" property.
2018-02-06 13:45:11 +01:00
Erik Ogenvik
67549fc362 Added geometry file property.
The mesh specified in the property will be read and a "geometry" mesh
property installed on the type onto which the property is installed.
2018-02-06 13:45:11 +01:00
Erik Ogenvik
70084e0279 Added calls for when property is installed on Type 2018-02-06 13:45:11 +01:00
Erik Ogenvik
7fb146eb36 Standardize installation of standard types.
This way the base types are exposed to clients.
2018-02-06 13:45:10 +01:00
Erik Ogenvik
13314ff026 Convert Python scripts to left coords. 2018-02-06 13:45:10 +01:00
Erik Ogenvik
07d886aab4 Instantiate template after definition. 2017-08-02 10:17:34 +02:00
Erik Ogenvik
e2513e5c3a Fixed issues with stub property. 2017-08-02 10:03:58 +02:00
Erik Ogenvik
dbea647c06 Set flags in constructor. 2017-07-30 15:12:13 +02:00
Erik Ogenvik
99e4cb2b78 Set flags to zero at construction. 2017-07-30 15:01:17 +02:00
Erik Ogenvik
6275555b20 Improved stub generation and create all stubs. 2017-07-25 23:40:40 +02:00
Erik Ogenvik
62418310cc Initialize pointers to null in stubs. 2017-07-25 23:40:40 +02:00
Erik Ogenvik
4003d98912 Added auto generated stubs. 2017-07-25 23:40:40 +02:00
Erik Ogenvik
3a16efe860 Added script to generate stubs.
The script is copied from the GoogleMock project and adapted
to instead generate stubs.
Two stub files are generated, one being named *_custom.h.
Any custom behaviour can be added to the latter, since it won't be
regenerated when the stub is recreated.
2017-07-25 23:40:39 +02:00
Erik Ogenvik
eb2bb200e5 Clean up and remove unused structs. 2017-07-25 23:40:39 +02:00
Erik Ogenvik
4d530e25e4 Move domain property Entity.
And rename and fixup smaller things.
2017-07-25 23:40:39 +02:00
Erik Ogenvik
6e6fe3b9b6 Handle (dis)appear ops when moving between locs. 2017-06-27 21:06:07 +02:00
Erik Ogenvik
b40c613a78 Improve handling of broadcasts.
Use the domains for determining broadcasts.
2017-06-24 21:47:43 +02:00
Erik Ogenvik
df77523d16 Properly handle mesh geometry. 2017-03-19 14:36:35 +01:00
Erik Ogenvik
8fc041aadb Added tests for geometry property. 2017-02-12 21:41:11 +01:00
Erik Ogenvik
b857efc836 Remove "forces" property as it didn't work. 2017-02-01 22:06:44 +01:00
Erik Ogenvik
ef031c3f7e Fixed tests. 2017-01-31 22:23:44 +01:00
Erik Ogenvik
a0097a82e8 Added integration test for Physical Domain. 2017-01-29 17:13:01 +01:00
Erik Ogenvik
0db8323325 Fixed tests. 2016-12-19 22:01:23 +01:00
Erik Ogenvik
bd42f89527 Removed unused method. 2016-12-15 18:27:42 +01:00
Erik Ogenvik
c5583e149f Port terrain mod translator from Ember.
Since it's more common that the position changes that the mod itself does
we want to pre parse the data in the translator first, and then supply
the pos and orientation when creating the mod.
2016-12-15 18:27:42 +01:00