home
·
contact
·
privacy
projects
/
plomrogue2-experiments
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Dynamically decide new Thing IDs.
[plomrogue2-experiments]
/
new
/
plomrogue
/
things.py
diff --git
a/new/plomrogue/things.py
b/new/plomrogue/things.py
index 2decc6709f747113e888edc9327f406c8e43739c..243547b2ffb854b330fcb998a27882d8ecda2ef9 100644
(file)
--- a/
new/plomrogue/things.py
+++ b/
new/plomrogue/things.py
@@
-5,14
+5,31
@@
from plomrogue.errors import GameError
class ThingBase:
type_ = '?'
class ThingBase:
type_ = '?'
- def __init__(self, world, id_, position=[0,0]):
+ def __init__(self, world, id_
=None
, position=[0,0]):
self.world = world
self.world = world
- self.id_ = id_
self.position = position
self.position = position
+ if id_ is None:
+ self.id_ = self.world.new_thing_id()
+ else:
+ self.id_ = id_
class Thing(ThingBase):
class Thing(ThingBase):
+ blocking = False
+
+ def proceed(self):
+ pass
+
+
+
+class ThingItem(Thing):
+ type_ = 'item'
+
+
+
+class ThingAnimate(Thing):
+ blocking = True
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
@@
-129,10
+146,10
@@
class Thing(ThingBase):
-class ThingHuman(Thing):
+class ThingHuman(Thing
Animate
):
type_ = 'human'
type_ = 'human'
-class ThingMonster(Thing):
+class ThingMonster(Thing
Animate
):
type_ = 'monster'
type_ = 'monster'