The pirate treasure: each player's own mound at their X, dug with a pickaxe; the drowned crew rise at night or when the chest comes up; the ship's compass, a spyglass, a cutlass and pirate gold; online too
This commit is contained in:
@@ -157,6 +157,26 @@ func _body() -> void:
|
||||
await _until(func(): return world.wreck.had(world.my_id()), 3.0)
|
||||
check(world.wreck.chest.interact_prompt(player).contains("empty"), "and her game knows the chest's empty for her now")
|
||||
check(world.map_marks().any(func(m): return m.kind == "treasure"), "her X is on her map")
|
||||
print("digging up the treasure, online")
|
||||
await _sleep(0.8)
|
||||
var mound: Node3D = world.treasure.mounds.get(world.my_id())
|
||||
check(mound != null, "her mound shows at her X")
|
||||
if mound != null:
|
||||
await _tp(mound.global_position + Vector3(1.4, 0.2, 0))
|
||||
_hold("antler_pickaxe")
|
||||
await _sleep(0.3)
|
||||
for _i in range(12):
|
||||
if player.inventory.count("ship_compass") > 0:
|
||||
break
|
||||
PN.ask("debug_stats", [{"stamina": 100.0}])
|
||||
if is_instance_valid(mound):
|
||||
A.harvest_hit(player, mound, mound.global_position)
|
||||
await _sleep(0.15)
|
||||
await _until(func(): return player.inventory.count("ship_compass") == 1, 4.0)
|
||||
check(player.inventory.count("ship_compass") == 1 and player.inventory.count("cutlass") == 1,
|
||||
"the server digs it up for her: the compass and the cutlass in her bag")
|
||||
await _until(func(): return world.my_id() in world.treasure.dug, 3.0)
|
||||
check(world.my_id() in world.treasure.dug and not world.treasure.mounds.has(world.my_id()), "and her mound's gone")
|
||||
await _across_lands(bob_bed, bob_bed_at)
|
||||
|
||||
print("back up to the Valley")
|
||||
|
||||
Reference in New Issue
Block a user