Skip to content

Commit

Permalink
Merge pull request #5552 from osiccha/architects_of_tomorrow
Browse files Browse the repository at this point in the history
Architects of Tomorrow is still active if an encountered bioroid is trashed
  • Loading branch information
jwarwick authored Feb 11, 2021
2 parents 8b46c92 + 748bfc7 commit d0b4d92
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 6 deletions.
8 changes: 5 additions & 3 deletions src/clj/game/cards/identities.clj
Original file line number Diff line number Diff line change
Expand Up @@ -532,9 +532,11 @@
(has-subtype? (:ice context) "Bioroid")
(first-event? state :runner :pass-ice
(fn [targets]
(let [context (first targets)]
(and (rezzed? (:ice context))
(has-subtype? (:ice context) "Bioroid")))))))
(let [context (first targets)
ice (:ice context)]
(and (rezzed? ice)
(installed? ice)
(has-subtype? ice "Bioroid")))))))
:waiting-prompt "Corp to use Haas-Bioroid: Architects of Tomorrow"
:prompt "Select a Bioroid to rez"
:player :corp
Expand Down
4 changes: 2 additions & 2 deletions src/clj/game/core/runs.clj
Original file line number Diff line number Diff line change
Expand Up @@ -291,9 +291,9 @@
(swap! state assoc-in [:run :no-action] false)
(system-msg state :runner (str "passes " (card-str state ice)))
(swap! state update-in [:run :position] (fnil dec 1))
(queue-event state :pass-ice {:ice ice})
(queue-event state :pass-ice {:ice (get-card state ice)})
(when passed-all-ice
(queue-event state :pass-all-ice {:ice ice}))
(queue-event state :pass-all-ice {:ice (get-card state ice)}))
(wait-for (checkpoint state side
(make-eid state eid)
;; Immediately end pass ice step if:
Expand Down
24 changes: 23 additions & 1 deletion test/clj/game/cards/identities_test.clj
Original file line number Diff line number Diff line change
Expand Up @@ -1407,7 +1407,29 @@
(run-continue state)
(click-card state :corp (get-ice state :hq 0))
(is (= 3 (:credit (get-corp))) "Corp not charged for Architects of Tomorrow rez of Eli 1.0")
(is (rezzed? (get-ice state :hq 0)) "Eli 1.0 is rezzed")))
(is (rezzed? (get-ice state :hq 0)) "Eli 1.0 is rezzed"))
(testing "Ice Destruction in HB Architects of Tomorrow #5514"
(do-game
(new-game {:corp {:id "Haas-Bioroid: Architects of Tomorrow"
:deck [(qty "Eli 1.0" 3)]
:credits 10}
:runner {:deck ["Chisel" "Devil Charm"]}})
(play-from-hand state :corp "Eli 1.0" "HQ")
(play-from-hand state :corp "Eli 1.0" "HQ")
(play-from-hand state :corp "Eli 1.0" "New remote")
(take-credits state :corp)
(play-from-hand state :runner "Devil Charm")
(play-from-hand state :runner "Chisel")
(click-card state :runner (get-ice state :hq 1))
(run-on state "HQ")
(rez state :corp (get-ice state :hq 1))
(run-continue state)
(click-prompt state :runner "Devil Charm")
(click-prompt state :runner "Yes")
(rez state :corp (get-ice state :hq 0))
(run-continue state)
(run-continue state)
(is (not (empty? (:prompt (get-runner)))) "Architects of Tomorrow is still available"))))

(deftest haas-bioroid-engineering-the-future
;; Engineering the Future
Expand Down

0 comments on commit d0b4d92

Please sign in to comment.