mirror of
https://github.com/LmeSzinc/StarRailCopilot.git
synced 2024-11-27 02:27:12 +00:00
239 lines
10 KiB
Python
239 lines
10 KiB
Python
from tasks.map.control.waypoint import Waypoint
|
|
from tasks.map.keywords.plane import Herta_StorageZone
|
|
from tasks.rogue.route.base import RouteBase
|
|
|
|
|
|
class Route(RouteBase):
|
|
|
|
def Herta_StorageZone_F1_X210Y268(self):
|
|
"""
|
|
| Waypoint | Position | Direction | Rotation |
|
|
| -------- | ------------------------- | --------- | -------- |
|
|
| spawn | Waypoint((225.8, 258.8)), | 96.7 | 91 |
|
|
| item1 | Waypoint((240.8, 270.0)), | 135.8 | 131 |
|
|
| enemy1 | Waypoint((270.6, 258.8)), | 76.4 | 73 |
|
|
| node2 | Waypoint((273.2, 269.2)), | 157.2 | 156 |
|
|
| node3 | Waypoint((284.6, 283.0)), | 157.2 | 154 |
|
|
| item3 | Waypoint((293.2, 288.6)), | 105.5 | 103 |
|
|
| node4 | Waypoint((307.2, 305.2)), | 126.2 | 124 |
|
|
| item5 | Waypoint((332.8, 304.8)), | 96.8 | 96 |
|
|
| node5 | Waypoint((336.2, 312.0)), | 102.9 | 98 |
|
|
| enemy5 | Waypoint((392.5, 312.4)), | 4.1 | 91 |
|
|
| exit | Waypoint((392.5, 312.4)), | 4.1 | 91 |
|
|
"""
|
|
self.map_init(plane=Herta_StorageZone, floor="F1", position=(225.8, 258.8))
|
|
self.register_domain_exit(Waypoint((392.5, 312.4)), end_rotation=91)
|
|
item1 = Waypoint((240.8, 270.0))
|
|
enemy1 = Waypoint((270.6, 258.8))
|
|
node2 = Waypoint((273.2, 269.2))
|
|
node3 = Waypoint((284.6, 283.0))
|
|
item3 = Waypoint((293.2, 288.6))
|
|
node4 = Waypoint((307.2, 305.2))
|
|
item5 = Waypoint((332.8, 304.8))
|
|
node5 = Waypoint((336.2, 312.0))
|
|
enemy5 = Waypoint((392.5, 312.4))
|
|
# ===== End of generated waypoints =====
|
|
|
|
# 1
|
|
self.clear_item(item1.straight_run())
|
|
self.clear_enemy(enemy1.straight_run())
|
|
# 2
|
|
self.rotation_set(156)
|
|
self.clear_enemy(
|
|
enemy1,
|
|
node2.set_threshold(3),
|
|
node3,
|
|
node4.straight_run(),
|
|
)
|
|
# 5
|
|
self.clear_enemy(
|
|
node5.straight_run(),
|
|
enemy5.straight_run(),
|
|
)
|
|
|
|
def Herta_StorageZone_F1_X257Y85(self):
|
|
"""
|
|
| Waypoint | Position | Direction | Rotation |
|
|
| -------- | ------------------------ | --------- | -------- |
|
|
| spawn | Waypoint((257.3, 85.5)), | 308.0 | 304 |
|
|
| item | Waypoint((244.2, 66.3)), | 334.7 | 331 |
|
|
| door | Waypoint((215.4, 65.1)), | 303.8 | 301 |
|
|
| enemy | Waypoint((202.7, 57.9)), | 297.8 | 294 |
|
|
| exit | Waypoint((202.4, 58.1)), | 302.9 | 301 |
|
|
"""
|
|
self.map_init(plane=Herta_StorageZone, floor="F1", position=(257.3, 85.5))
|
|
self.register_domain_exit(Waypoint((202.4, 58.1)), end_rotation=301)
|
|
item = Waypoint((244.2, 66.3))
|
|
door = Waypoint((215.4, 65.1))
|
|
enemy = Waypoint((202.7, 57.9))
|
|
# ===== End of generated waypoints =====
|
|
|
|
self.clear_item(item)
|
|
self.clear_enemy(door, enemy)
|
|
|
|
def Herta_StorageZone_F1_X273Y92(self):
|
|
"""
|
|
| Waypoint | Position | Direction | Rotation |
|
|
| ------------- | ------------------------ | --------- | -------- |
|
|
| spawn | Waypoint((273.4, 92.2)), | 308.0 | 304 |
|
|
| item | Waypoint((248.4, 59.4)), | 334.8 | 331 |
|
|
| enemy_X227Y69 | Waypoint((227.8, 69.5)), | 30.2 | 299 |
|
|
| exit_X227Y69 | Waypoint((227.8, 69.5)), | 30.2 | 299 |
|
|
"""
|
|
self.map_init(plane=Herta_StorageZone, floor="F1", position=(273.4, 92.2))
|
|
self.register_domain_exit(Waypoint((227.8, 69.5)), end_rotation=299)
|
|
item = Waypoint((248.4, 59.4))
|
|
enemy_X227Y69 = Waypoint((227.8, 69.5))
|
|
# ===== End of generated waypoints =====
|
|
|
|
# Ignore item, bad way
|
|
self.clear_enemy(enemy_X227Y69)
|
|
|
|
def Herta_StorageZone_F1_X692Y61(self):
|
|
"""
|
|
| Waypoint | Position | Direction | Rotation |
|
|
| -------- | ------------------------- | --------- | -------- |
|
|
| spawn | Waypoint((692.0, 62.0)), | 263.8 | 260 |
|
|
| item1 | Waypoint((676.1, 98.5)), | 222.6 | 218 |
|
|
| enemy2 | Waypoint((649.3, 68.7)), | 354.1 | 350 |
|
|
| enemy1 | Waypoint((654.7, 84.5)), | 282.9 | 288 |
|
|
| item2 | Waypoint((642.2, 66.1)), | 290.2 | 285 |
|
|
| door | Waypoint((640.2, 82.2)), | 260.3 | 258 |
|
|
| node | Waypoint((599.2, 91.0)), | 256.7 | 255 |
|
|
| enemy3 | Waypoint((598.3, 129.1)), | 181.3 | 174 |
|
|
| exit | Waypoint((598.3, 129.1)), | 181.3 | 174 |
|
|
"""
|
|
self.map_init(plane=Herta_StorageZone, floor="F1", position=(692.0, 62.0))
|
|
self.register_domain_exit(Waypoint((598.3, 129.1)), end_rotation=174)
|
|
item1 = Waypoint((676.1, 98.5))
|
|
enemy2 = Waypoint((649.3, 68.7))
|
|
enemy1 = Waypoint((654.7, 84.5))
|
|
item2 = Waypoint((642.2, 66.1))
|
|
door = Waypoint((640.2, 82.2))
|
|
node = Waypoint((599.2, 91.0))
|
|
enemy3 = Waypoint((598.3, 129.1))
|
|
# ===== End of generated waypoints =====
|
|
|
|
# item1
|
|
self.clear_item(
|
|
item1.straight_run(),
|
|
)
|
|
# enemy12
|
|
self.clear_enemy(
|
|
enemy1.straight_run(),
|
|
enemy2,
|
|
)
|
|
self.clear_item(item2)
|
|
# 3
|
|
self.clear_enemy(
|
|
door.set_threshold(3),
|
|
node.straight_run(),
|
|
enemy3.straight_run(),
|
|
)
|
|
|
|
def Herta_StorageZone_F1_X749Y45(self):
|
|
"""
|
|
| Waypoint | Position | Direction | Rotation |
|
|
| ----------- | ------------------------- | --------- | -------- |
|
|
| spawn | Waypoint((749.5, 45.6)), | 263.8 | 260 |
|
|
| item1 | Waypoint((728.9, 48.8)), | 263.8 | 264 |
|
|
| enemy1 | Waypoint((686.2, 64.4)), | 256.8 | 260 |
|
|
| item2 | Waypoint((674.0, 99.1)), | 212.9 | 204 |
|
|
| enemy2right | Waypoint((649.5, 65.6)), | 302.7 | 71 |
|
|
| enemy2left | Waypoint((653.4, 85.0)), | 326.7 | 103 |
|
|
| node2 | Waypoint((636.8, 81.9)), | 263.8 | 262 |
|
|
| node3 | Waypoint((598.6, 93.9)), | 256.7 | 253 |
|
|
| item3 | Waypoint((588.6, 102.2)), | 245.0 | 246 |
|
|
| enemy3 | Waypoint((597.2, 131.0)), | 282.9 | 179 |
|
|
| exit | Waypoint((597.2, 131.0)), | 282.9 | 179 |
|
|
"""
|
|
self.map_init(plane=Herta_StorageZone, floor="F1", position=(749.5, 45.6))
|
|
self.register_domain_exit(Waypoint((597.2, 131.0)), end_rotation=179)
|
|
item1 = Waypoint((728.9, 48.8))
|
|
enemy1 = Waypoint((686.2, 64.4))
|
|
item2 = Waypoint((674.0, 99.1))
|
|
enemy2right = Waypoint((649.5, 65.6))
|
|
enemy2left = Waypoint((653.4, 85.0))
|
|
node2 = Waypoint((636.8, 81.9))
|
|
node3 = Waypoint((598.6, 93.9))
|
|
item3 = Waypoint((588.6, 102.2))
|
|
enemy3 = Waypoint((597.2, 131.0))
|
|
# ===== End of generated waypoints =====
|
|
|
|
# 1
|
|
self.clear_item(item1)
|
|
self.clear_enemy(
|
|
enemy1.set_threshold(5)
|
|
)
|
|
# 2
|
|
self.clear_item(
|
|
item2.straight_run().set_threshold(5),
|
|
)
|
|
self.clear_enemy(
|
|
enemy2left.straight_run(),
|
|
enemy2right.straight_run().set_threshold(9),
|
|
)
|
|
# 3
|
|
self.goto(
|
|
node2.straight_run().set_threshold(5),
|
|
node3.straight_run(),
|
|
item3,
|
|
)
|
|
self.clear_enemy(enemy3.straight_run())
|
|
|
|
def Herta_StorageZone_F1_X769Y39(self):
|
|
"""
|
|
| Waypoint | Position | Direction | Rotation |
|
|
| ----------- | ------------------------- | --------- | -------- |
|
|
| spawn | Waypoint((749.5, 45.6)), | 263.8 | 260 |
|
|
| item1 | Waypoint((728.9, 48.8)), | 263.8 | 264 |
|
|
| enemy1 | Waypoint((686.2, 64.4)), | 256.8 | 260 |
|
|
| item2 | Waypoint((674.0, 99.1)), | 212.9 | 204 |
|
|
| enemy2left | Waypoint((653.4, 85.0)), | 326.7 | 103 |
|
|
| node2 | Waypoint((636.8, 81.9)), | 263.8 | 262 |
|
|
| enemy2right | Waypoint((628.0, 73.6)), | 350.2 | 345 |
|
|
| node3 | Waypoint((598.6, 93.9)), | 256.7 | 253 |
|
|
| item3 | Waypoint((588.6, 102.2)), | 245.0 | 246 |
|
|
| enemy3 | Waypoint((597.2, 131.0)), | 282.9 | 179 |
|
|
| exit | Waypoint((597.2, 131.0)), | 282.9 | 179 |
|
|
"""
|
|
self.map_init(plane=Herta_StorageZone, floor="F1", position=(769, 39))
|
|
self.register_domain_exit(Waypoint((597.2, 131.0)), end_rotation=179)
|
|
item1 = Waypoint((728.9, 48.8))
|
|
enemy1 = Waypoint((686.2, 64.4))
|
|
item2 = Waypoint((674.0, 99.1))
|
|
enemy2right = Waypoint((649.5, 65.6))
|
|
enemy2left = Waypoint((653.4, 85.0))
|
|
node2 = Waypoint((636.8, 81.9))
|
|
node3 = Waypoint((598.6, 93.9))
|
|
item3 = Waypoint((588.6, 102.2))
|
|
enemy3 = Waypoint((597.2, 131.0))
|
|
# ===== End of generated waypoints =====
|
|
|
|
"""
|
|
Notes
|
|
Herta_StorageZone_F1_X749Y45 is the same as Herta_StorageZone_F1_X749Y45
|
|
but for wrong spawn point detected
|
|
"""
|
|
|
|
# 1
|
|
self.clear_item(item1)
|
|
self.clear_enemy(
|
|
enemy1.set_threshold(5)
|
|
)
|
|
# 2
|
|
self.clear_item(
|
|
item2.straight_run().set_threshold(5),
|
|
)
|
|
self.clear_enemy(
|
|
enemy2left.straight_run(),
|
|
enemy2right.straight_run().set_threshold(9),
|
|
)
|
|
# 3
|
|
self.goto(
|
|
node2.straight_run().set_threshold(5),
|
|
node3.straight_run(),
|
|
item3,
|
|
)
|
|
self.clear_enemy(enemy3.straight_run())
|