Commit graph

43 commits

Author SHA1 Message Date
Erik Ogenvik
b054382f2a Add "archetype" as new type.
An archetype is used for creating new entities. It contains one or many
definitions for entities, along with relationship between them. It also
contains any extra data needed for a world simultion, such as thoughts
and knowledge.
Archetypes should be seen as blueprints for entity types, as they
describe how new one should be composed. They are created just as
regular entities, using the existing Create op functionality.
As an example, there should be one "human" entity type, with archetypes
such as "settler", "merchant", "soldier" etc. This differs from the
current setup where each of these are separate entity types.
2013-11-15 21:39:35 +01:00
Olek Wojnar
7f9ff2246d Remove CVS $Id tags
The legacy tags are causing build issues in Debian.
2013-07-15 20:31:59 +02:00
Alistair Riddoch
510dde850f Hook in handler for property rules 2013-02-15 23:00:22 +00:00
Alistair Riddoch
68494ba520 Use the ruleset global less often, making code more isolated 2012-01-19 19:34:20 +00:00
Alistair Riddoch
70f6cb1d38 Remove unused dependency on rulesets 2011-11-02 15:54:11 +00:00
Alistair Riddoch
e3e0404058 Remove pointless unused line 2011-09-22 17:37:14 +01:00
Alistair Riddoch
ceb67d1033 Remove some unneeded includes 2011-09-18 17:36:42 +01:00
Alistair Riddoch
07201f1358 Handle Inheritance more consistently
Add an internal method for base classes, allowing the code that manipulates
the inheritance tree to be in a consistent place.
2011-09-18 17:26:26 +01:00
Alistair Riddoch
18609ac963 Strip out moved code, and get tests building. 2011-09-18 11:22:20 +01:00
Alistair Riddoch
1bccf2fa99 Fully switch to new handlers 2011-09-18 11:10:38 +01:00
Alistair Riddoch
a7c06e832f Switch to using OpRuleHandler 2011-09-18 02:28:40 +01:00
Alistair Riddoch
706da1fec6 Switch to using EntityRuleHandler 2011-09-18 01:43:53 +01:00
Alistair Riddoch
3cdc5a1c2f Move task rule processing code into TaskRuleHandler 2011-09-18 00:53:32 +01:00
Alistair Riddoch
e8d76f02fd Check for task classes consistently 2011-09-17 19:10:43 +01:00
Alistair Riddoch
38556d2943 Remove more includes 2011-09-16 10:53:05 +01:00
Alistair Riddoch
2f90f90dcb Add addProperties() to EntityKit, reducing complexity in Ruleset 2011-09-16 10:50:47 +01:00
Alistair Riddoch
ebd00538b3 Switch to using the code in TypeNode for adding properties 2011-09-16 10:47:11 +01:00
Alistair Riddoch
127080a554 Replace updateChildrenProperties with version in EntityKit 2011-09-15 23:59:01 +01:00
Alistair Riddoch
2499e06094 Replace updateChildrenProperties core with TypeNode method
Previous commit moved the code, this replaces the original.
2011-09-15 23:42:10 +01:00
Alistair Riddoch
29d43179df Swtich to using updateChildren in EntityFactory 2011-09-15 23:19:06 +01:00
Alistair Riddoch
d1831d9c53 When creating a new script factory, ensure check it worked. 2010-11-16 23:06:10 +00:00
Alistair Riddoch
a0ca14f430 Add some assert checks to ensure logic is sane. 2009-11-25 03:25:59 +00:00
Alistair Riddoch
162d2a8356 Add checks to ensure type modification is legal 2009-11-24 19:47:52 +00:00
Alistair Riddoch
5388276f8e Update the Atlas representation of a type when an update is uploaded. 2009-11-24 15:54:27 +00:00
Alistair Riddoch
68b4eed378 When a rule is updated, push the update to the database. 2009-11-06 16:23:44 +00:00
Alistair Riddoch
7874249957 Remove some debug output. 2009-11-05 22:55:33 +00:00
Alistair Riddoch
ecdd360541 Store new rules in the database. 2009-11-05 22:29:31 +00:00
Alistair Riddoch
6a774cd545 Restructure loading rules so the waiting is only used when loading a set. 2009-11-04 19:01:26 +00:00
Alistair Riddoch
18a510b75a Refactor to move scheduling redispatch to a single point. 2009-11-04 16:32:33 +00:00
Alistair Riddoch
f84eb2b4e4 Rename installRules to loadRules to disabiguate. 2009-11-03 12:02:25 +00:00
Alistair Riddoch
05b8136595 Add required dependency on config,h 2009-08-22 03:17:06 +01:00
Alistair Riddoch
3151d94530 Remove obsolete includes, and make better use of typedefs. 2009-08-22 02:36:27 +01:00
Alistair Riddoch
174bea44cd Enable modifying task classes activations and scripts. 2009-08-21 02:11:44 +01:00
Alistair Riddoch
1363af91b8 Fix the package name check when determining whether to change entity scripts. 2009-08-21 02:06:31 +01:00
Alistair Riddoch
74ef9190c6 Re-order all checks on task classes so they are done before anything changes. 2009-08-21 02:06:00 +01:00
Alistair Riddoch
43bb9a537a Support reloading of task class scripts. 2009-08-21 01:30:36 +01:00
Alistair Riddoch
2a2fe93575 Move code for configuring a task factory into a separate method, so it
can be called when updating such a class.
2009-08-21 01:24:44 +01:00
Alistair Riddoch
5c4d02395e Remove Python code TaskFactory, and use task script factory instead. 2009-08-20 22:58:11 +01:00
Alistair Riddoch
7594bc1229 Clean up formatting of function arguments. 2009-08-20 18:30:36 +01:00
Alistair Riddoch
42e10f533f Remove a test assignment. 2009-08-19 10:23:29 +01:00
Alistair Riddoch
6ced0026e5 Clean up includes and declarations in the recently split classes. 2009-08-19 10:22:34 +01:00
Alistair Riddoch
c952c1eddf Remove some un-needed header. 2009-08-19 03:01:45 +01:00
Alistair Riddoch
208f553f04 Move the functionality for loading rule data, and configuring into Ruleset. 2009-08-19 02:47:15 +01:00