projects
/
python-bulletml.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add <tag> support to BulletDef and FireDef.
[python-bulletml.git]
/
bulletml
/
impl.py
diff --git
a/bulletml/impl.py
b/bulletml/impl.py
index
9a1aa56
..
6e8138a
100644
(file)
--- a/
bulletml/impl.py
+++ b/
bulletml/impl.py
@@
-134,7
+134,7
@@
class Action(object):
break
elif isinstance(action, (parser.FireDef, parser.FireRef)):
break
elif isinstance(action, (parser.FireDef, parser.FireRef)):
- direction, speed,
actions, offset
= action(s_params, rank)
+ direction, speed,
offset, tags, actions
= action(s_params, rank)
if direction:
direction, type = direction
if type == "aim" or type is None:
if direction:
direction, type = direction
if type == "aim" or type is None:
@@
-175,7
+175,9
@@
class Action(object):
y += off_y
bullet = owner.__class__(
y += off_y
bullet = owner.__class__(
- x, y, direction, speed, owner.target, actions, rank)
+ x=x, y=y, direction=direction, speed=speed,
+ target=owner.target, actions=actions, rank=rank,
+ tags=tags, Action=self.__class__)
created.append(bullet)
elif isinstance(action, parser.ChangeSpeed):
created.append(bullet)
elif isinstance(action, parser.ChangeSpeed):
@@
-290,7
+292,7
@@
class Bullet(object):
"""
def __init__(self, x=0, y=0, direction=0, speed=0, target=None,
"""
def __init__(self, x=0, y=0, direction=0, speed=0, target=None,
- actions=(), rank=0.5, Action=Action):
+ actions=(), rank=0.5,
tags=(),
Action=Action):
self.x = self.px = x
self.y = self.py = y
self.mx = 0
self.x = self.px = x
self.y = self.py = y
self.mx = 0
@@
-300,7
+302,7
@@
class Bullet(object):
self.vanished = False
self.target = target
self.rank = rank
self.vanished = False
self.target = target
self.rank = rank
- self.tags = set()
+ self.tags = set(
tags
)
# New bullets reset the parent hierarchy.
self._actions = [Action(self, None, action, params, rank)
for action, params in actions]
# New bullets reset the parent hierarchy.
self._actions = [Action(self, None, action, params, rank)
for action, params in actions]
@@
-310,7
+312,8
@@
class Bullet(object):
params=(), rank=0.5, Action=Action):
"""Construct a new Bullet from a loaded BulletML document."""
actions = [a(params, rank) for a in doc.actions]
params=(), rank=0.5, Action=Action):
"""Construct a new Bullet from a loaded BulletML document."""
actions = [a(params, rank) for a in doc.actions]
- return cls(x, y, direction, speed, target, actions, rank, Action)
+ return cls(x=x, y=y, direction=direction, speed=speed,
+ target=target, actions=actions, rank=rank, Action=Action)
def __repr__(self):
return ("%s(%r, %r, accel=%r, direction=%r, speed=%r, "
def __repr__(self):
return ("%s(%r, %r, accel=%r, direction=%r, speed=%r, "