mirror of
https://github.com/RYDE-WORK/ballistica.git
synced 2026-01-26 17:03:14 +08:00
Tidied up bot logic
This commit is contained in:
parent
98058bc449
commit
da61158f8a
@ -251,34 +251,32 @@ class SpazBot(basespaz.Spaz):
|
||||
self.node.move_up_down = 0.0
|
||||
|
||||
# Otherwise try to go pick it up.
|
||||
else:
|
||||
assert self.target_flag.node
|
||||
if self.target_flag.node.exists():
|
||||
target_pt_raw = ba.Vec3(*self.target_flag.node.position)
|
||||
diff = (target_pt_raw - our_pos)
|
||||
diff = ba.Vec3(diff[0], 0, diff[2]) # Don't care about y.
|
||||
dist = diff.length()
|
||||
to_target = diff.normalized()
|
||||
elif self.target_flag.node:
|
||||
target_pt_raw = ba.Vec3(*self.target_flag.node.position)
|
||||
diff = (target_pt_raw - our_pos)
|
||||
diff = ba.Vec3(diff[0], 0, diff[2]) # Don't care about y.
|
||||
dist = diff.length()
|
||||
to_target = diff.normalized()
|
||||
|
||||
# If we're holding some non-flag item, drop it.
|
||||
if self.node.hold_node:
|
||||
self.node.pickup_pressed = True
|
||||
self.node.pickup_pressed = False
|
||||
return
|
||||
# If we're holding some non-flag item, drop it.
|
||||
if self.node.hold_node:
|
||||
self.node.pickup_pressed = True
|
||||
self.node.pickup_pressed = False
|
||||
return
|
||||
|
||||
# If we're a runner, run only when not super-near the flag.
|
||||
if self.run and dist > 3.0:
|
||||
self._running = True
|
||||
self.node.run = 1.0
|
||||
else:
|
||||
self._running = False
|
||||
self.node.run = 0.0
|
||||
# If we're a runner, run only when not super-near the flag.
|
||||
if self.run and dist > 3.0:
|
||||
self._running = True
|
||||
self.node.run = 1.0
|
||||
else:
|
||||
self._running = False
|
||||
self.node.run = 0.0
|
||||
|
||||
self.node.move_left_right = to_target.x
|
||||
self.node.move_up_down = -to_target.z
|
||||
if dist < 1.25:
|
||||
self.node.pickup_pressed = True
|
||||
self.node.pickup_pressed = False
|
||||
self.node.move_left_right = to_target.x
|
||||
self.node.move_up_down = -to_target.z
|
||||
if dist < 1.25:
|
||||
self.node.pickup_pressed = True
|
||||
self.node.pickup_pressed = False
|
||||
return
|
||||
|
||||
# Not a flag-bearer. If we're holding anything but a bomb, drop it.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user