Skip to content

Commit

Permalink
Merge pull request #4336 from NoahTheDuke/nb/fix-bankroll
Browse files Browse the repository at this point in the history
Simple hack/fix for Bankroll
  • Loading branch information
NoahTheDuke authored Aug 3, 2019
2 parents 88f3a5b + 6b47117 commit 239f323
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 6 deletions.
3 changes: 2 additions & 1 deletion src/clj/game/cards/programs.clj
Original file line number Diff line number Diff line change
Expand Up @@ -441,7 +441,8 @@

"Bankroll"
{:implementation "Bankroll gains credits automatically."
:events {:successful-run {:effect (effect (add-counter card :credit 1)
:events {:successful-run {:req (req (not= "Jak Sinclair" (get-in run [:run-effect :card :title]))) ;; TODO: dirty hack
:effect (effect (add-counter card :credit 1)
(system-msg "places 1 [Credit] on Bankroll"))}}
:abilities [{:label "Take all credits from Bankroll"
:async true
Expand Down
19 changes: 14 additions & 5 deletions test/clj/game_test/cards/programs.clj
Original file line number Diff line number Diff line change
Expand Up @@ -241,24 +241,33 @@
(is (= 4 (:credit (get-runner))) "-5 from Baba, -1 from Sharpshooter played into Rig, -5 from Yog"))))

(deftest bankroll
;; Bankroll
;; Bankroll - Includes check for Issue #4334
(do-game
(new-game {:runner {:deck ["Bankroll"]}})
(new-game {:runner {:deck ["Bankroll" "Jak Sinclair"]}})
(take-credits state :corp)
(play-from-hand state :runner "Bankroll")
(play-from-hand state :runner "Jak Sinclair")
(is (= 3 (core/available-mu state)) "Bankroll uses up 1 MU")
(is (= 4 (:credit (get-runner))) "Bankroll cost 1 to install")
(is (= 1 (:credit (get-runner))) "Bankroll cost 1 to install")
(let [bankroll (get-program state 0)
hosted-credits #(get-counters (refresh bankroll) :credit)]
hosted-credits #(get-counters (refresh bankroll) :credit)
credits (:credit (get-runner))]
(is (zero? (hosted-credits)) "No counters on Bankroll on install")
(run-empty-server state "Archives")
(is (= 1 (hosted-credits)) "One credit counter on Bankroll after one successful run")
(run-empty-server state "R&D")
(is (= 2 (hosted-credits)) "Two credit counter on Bankroll after two successful runs")
(run-empty-server state "HQ")
(is (= 3 (hosted-credits)) "Three credit counter on Bankroll after three successful runs")
(take-credits state :runner)
(take-credits state :corp)
(core/end-phase-12 state :runner nil)
(click-prompt state :runner "Yes")
(click-prompt state :runner "R&D")
(run-successful state)
(is (= 3 (hosted-credits)) "Jak Sinclair didn't trigger Bankroll")
(card-ability state :runner bankroll 0)
(is (= (+ 4 3) (:credit (get-runner))) "Gained 3 credits when trashing Bankroll")
(is (= (+ 3 credits) (:credit (get-runner))) "Gained 3 credits when trashing Bankroll")
(is (= 1 (-> (get-runner) :discard count)) "Bankroll was trashed"))))

(deftest berserker
Expand Down

0 comments on commit 239f323

Please sign in to comment.