Alistair Riddoch
124d62caf7
Add to property factory to allow scripting
2013-03-09 19:23:26 +00:00
Alistair Riddoch
dba9a12c10
Add code to handle a script in a property def
2013-03-05 23:18:06 +00:00
Alistair Riddoch
79c65603aa
Use insert instead of []
2013-03-03 23:37:30 +00:00
Alistair Riddoch
3f9d0fb99c
Make the test a friend, removing test subclass
2013-03-03 22:48:04 +00:00
Alistair Riddoch
58acb15154
Use new template for properties, and rename some
...
Properties must now be strictly in the same namespace as other definitions,
so I had to rename a few.
2013-03-01 21:52:09 +00:00
Alistair Riddoch
e9cb84388a
Stop using OpNo here too
2013-02-28 15:39:59 +00:00
Alistair Riddoch
e89ae282f6
Stop using OpNo typedef
2013-02-28 15:27:54 +00:00
Alistair Riddoch
d93b907aa2
Remove opInstall
...
The only purpose was to support opEnumerate
2013-02-27 22:21:36 +00:00
Alistair Riddoch
dae2cfcb5a
Correct the name of the template param
2013-02-23 01:01:21 +00:00
Alistair Riddoch
2ec1979045
Fix a typo
2013-02-22 23:48:52 +00:00
Alistair Riddoch
5e877ad95c
Add concise template for internal properties
2013-02-22 23:46:49 +00:00
Alistair Riddoch
d1dc73aa00
Use a more concise template for base types
2013-02-22 23:34:51 +00:00
Alistair Riddoch
52ba15e9ad
Fix test error, making installFactory work
2013-02-22 15:51:32 +00:00
Alistair Riddoch
9ebfefbea4
Modify interface to installFactory is available
2013-02-22 09:57:10 +00:00
Alistair Riddoch
6966ae3c1c
Support data driven properties more fully
...
This commit adds Atlas data_type definitions which property types
inherit from. It also adds methods used to install stuff that inherits from
them.
2013-02-22 00:37:39 +00:00
Alistair Riddoch
745d263709
Fail cleanly if a type exists
...
The code would segfault if installing a new entity class failed at the last
stage in Inheritance. Inheritance would return null, which would be assigned
to the factory's m_type. addProperties() assumes the pointer is not null.
This fix adds a check, and reports a failure undoing the whole process.
2013-02-21 21:53:11 +00:00
Alistair Riddoch
56142901ce
Ensure install fails if a property already exists
2013-02-20 16:30:48 +00:00
Alistair Riddoch
2346abcbae
Implement basic property rule handling
2013-02-18 23:29:24 +00:00
Alistair Riddoch
771217e92a
Move factory functionality into PropertyManager
2013-02-17 08:47:51 +00:00
Alistair Riddoch
510dde850f
Hook in handler for property rules
2013-02-15 23:00:22 +00:00
Alistair Riddoch
b66a7bae48
Remove last test use of active properties
2013-02-14 00:06:50 +00:00
Alistair Riddoch
8344d5c8b0
Convert TerrainModProperty to delegates
2013-02-14 00:04:58 +00:00
Alistair Riddoch
5413ea5573
Update BurnSpeed and Teleport properties to use delegate
2013-02-13 21:24:18 +00:00
Alistair Riddoch
14661a9710
Update the BiomassProperty as a delegate
2013-02-13 20:57:22 +00:00
Alistair Riddoch
3d6f39cdee
Modify Property install method to take name
...
This change also switches DecaysProperty to using delegates as a proof of
concept.
2013-02-13 00:45:36 +00:00
Alistair Riddoch
845e0a1f8d
Clean up formatting.
2013-02-09 00:33:47 +00:00
Alistair Riddoch
aff184b32b
Remove duplicate doc strings
2013-02-09 00:29:03 +00:00
Alistair Riddoch
db4486da4e
De-duplicate actual removal
2013-02-09 00:25:33 +00:00
Alistair Riddoch
0ee3c8efb2
Remove return status from function that cannot fail
2013-02-09 00:23:20 +00:00
Alistair Riddoch
d82acb170d
Remove a check that is never required
2013-02-09 00:21:03 +00:00
Alistair Riddoch
d8542f314b
Make internal function protected
2013-02-08 23:38:32 +00:00
Alistair Riddoch
3a68f60b7a
Replace obsolete null checks with asserts
2013-02-08 23:22:30 +00:00
Alistair Riddoch
ea59cd043c
Checks and balances
...
Always check for null when allocating, and use insert instead of operator[]
2013-02-08 23:18:59 +00:00
Alistair Riddoch
4c3465155c
This function should be const
2013-02-08 23:13:46 +00:00
Alistair Riddoch
cc3d153095
Ensure socket objects can't be copied.
2013-01-22 17:44:29 +00:00
Alistair Riddoch
17b9631aa1
Remove some old debug output
2013-01-22 08:32:42 +00:00
Alistair Riddoch
901001deb0
Remove unneeded Entity.h include
2013-01-18 19:52:04 +00:00
Alistair Riddoch
215766ba4b
Remove unused Entity.h include
2013-01-18 19:50:49 +00:00
Alistair Riddoch
f39acda7c1
Remove unneeded Entity.h include
2013-01-18 19:49:50 +00:00
Alistair Riddoch
064340b1fc
Remove unneeded Entity.h include
2013-01-18 19:47:11 +00:00
Alistair Riddoch
e4755475ac
Remove unneeded Entity.h include
2013-01-18 19:43:53 +00:00
Alistair Riddoch
32d71ce6b8
Remove unneeded Entity.h
2013-01-18 19:41:16 +00:00
Alistair Riddoch
4a9c7078f7
Refactor to use LocatedEntity as base class
...
All IG code should use the interface of LocatedEntity when dealing
with any entity, rather than sometimes requiring Entity. Add virtual
functions to the interface where required, and modify all other interfaces
to stop them using Entity. This makes the code way cleaner, and much better
de-coupled.
2013-01-17 10:17:07 +00:00
Alistair Riddoch
1895523072
Remove moved files
2013-01-11 23:12:29 +00:00
Alistair Riddoch
bc717d479d
Clean up headers
2013-01-10 10:14:14 +00:00
Alistair Riddoch
51b5c50215
Move DecaysProperty handler into class
2013-01-10 10:07:44 +00:00
Alistair Riddoch
93cf385871
Add missing TeleportProperty files
2013-01-10 09:34:05 +00:00
Alistair Riddoch
7e43da878d
Move the telport property handler into class
2013-01-10 09:33:25 +00:00
Alistair Riddoch
7ec8b51d62
Move TerrainMod property handlers into class
2013-01-10 00:19:31 +00:00
Alistair Riddoch
a640a15b1b
Move burn_handler into a class of its own
2013-01-09 22:48:40 +00:00