- bullet = Bullet(self.owner.x, self.owner.y, direction, speed,
- self.owner.target, actions, self)
+ x, y = owner.x, owner.y
+ if offset:
+ off_x, off_y = offset(s_params, rank)
+ if offset.type == "relative":
+ s = sin(direction)
+ c = cos(direction)
+ x += c * off_x + s * off_y
+ y += s * off_x - c * off_y
+ else:
+ x += off_x
+ y += off_y
+
+ bullet = owner.__class__(
+ x, y, direction, speed, owner.target, actions, rank)