annotate components/fifeagent.py @ 115:26e65f27dbd7

"Open" will now not be shown in the context menu when the lockable is locked. "Lock" will not not be shown in the context menu when the lockable is open.
author KarstenBock@gmx.net
date Mon, 03 Oct 2011 14:12:17 +0200
parents f94d4577ca5e
children 75c0b728ccf3
rev   line source
12
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
1 # This program is free software: you can redistribute it and/or modify
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
2 # it under the terms of the GNU General Public License as published by
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
3 # the Free Software Foundation, either version 3 of the License, or
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
4 # (at your option) any later version.
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
5 #
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
6 # This program is distributed in the hope that it will be useful,
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
7 # but WITHOUT ANY WARRANTY; without even the implied warranty of
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
8 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
9 # GNU General Public License for more details.
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
10 #
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
11 # You should have received a copy of the GNU General Public License
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
12 # along with this program. If not, see <http://www.gnu.org/licenses/>.
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
13
91
d2451ecb1433 Added saveable_fields to FifeAgent component.
KarstenBock@gmx.net
parents: 89
diff changeset
14 from copy import deepcopy
d2451ecb1433 Added saveable_fields to FifeAgent component.
KarstenBock@gmx.net
parents: 89
diff changeset
15
89
939984cff702 Added Base component, which has a saveable_fields property. It is supposed to be derived from, thus it is not in the components list.
KarstenBock@gmx.net
parents: 86
diff changeset
16 from base import Base
12
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
17
91
d2451ecb1433 Added saveable_fields to FifeAgent component.
KarstenBock@gmx.net
parents: 89
diff changeset
18
89
939984cff702 Added Base component, which has a saveable_fields property. It is supposed to be derived from, thus it is not in the components list.
KarstenBock@gmx.net
parents: 86
diff changeset
19 class FifeAgent(Base):
12
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
20 """Component that stores the values for a fife agent"""
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
21
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
22 def __init__(self):
9c7a96c6fe41 Refactored components and began defining basic Entities and Systems.
M. George Hansen <technopolitica@gmail.com>
parents:
diff changeset
23 """Constructor"""
93
d1b0b3da4b8b Removed gfx field from FifeAgent.
KarstenBock@gmx.net
parents: 91
diff changeset
24 Base.__init__(self, layer=object, behaviour=object)
28
bcabbffc88e6 Move setup_behaviour method of the Character entity to a function in fifeagent.py
KarstenBock@gmx.net
parents: 21
diff changeset
25
91
d2451ecb1433 Added saveable_fields to FifeAgent component.
KarstenBock@gmx.net
parents: 89
diff changeset
26 @property
d2451ecb1433 Added saveable_fields to FifeAgent component.
KarstenBock@gmx.net
parents: 89
diff changeset
27 def saveable_fields(self):
97
f94d4577ca5e saveable_fields property of components is now a List.
KarstenBock@gmx.net
parents: 93
diff changeset
28 fields = self.fields.keys()
f94d4577ca5e saveable_fields property of components is now a List.
KarstenBock@gmx.net
parents: 93
diff changeset
29 fields.remove("layer")
f94d4577ca5e saveable_fields property of components is now a List.
KarstenBock@gmx.net
parents: 93
diff changeset
30 fields.remove("behaviour")
91
d2451ecb1433 Added saveable_fields to FifeAgent component.
KarstenBock@gmx.net
parents: 89
diff changeset
31 return fields
d2451ecb1433 Added saveable_fields to FifeAgent component.
KarstenBock@gmx.net
parents: 89
diff changeset
32
28
bcabbffc88e6 Move setup_behaviour method of the Character entity to a function in fifeagent.py
KarstenBock@gmx.net
parents: 21
diff changeset
33
bcabbffc88e6 Move setup_behaviour method of the Character entity to a function in fifeagent.py
KarstenBock@gmx.net
parents: 21
diff changeset
34 def setup_behaviour(agent):
bcabbffc88e6 Move setup_behaviour method of the Character entity to a function in fifeagent.py
KarstenBock@gmx.net
parents: 21
diff changeset
35 """Attach the behaviour to the layer"""
46
bf506f739322 Removed layer as attribute of BaseBehaviour and added it as a parameter to the attachToLayer method.
KarstenBock@gmx.net
parents: 41
diff changeset
36 if agent.behaviour:
86
a9cc5559ec2a Move the identifier field from the FifeAgent component to the new General component.
KarstenBock@gmx.net
parents: 65
diff changeset
37 agent.behaviour.attachToLayer(agent.entity.getID(), agent.layer)