diff --git a/GameKit/Sources/Game/Reducer/Action+Reducer/ActionPutTopDeckToDiscard.swift b/GameKit/Sources/Game/Reducer/Action+Reducer/ActionDraw.swift similarity index 73% rename from GameKit/Sources/Game/Reducer/Action+Reducer/ActionPutTopDeckToDiscard.swift rename to GameKit/Sources/Game/Reducer/Action+Reducer/ActionDraw.swift index be63c9992..72a7ad03f 100644 --- a/GameKit/Sources/Game/Reducer/Action+Reducer/ActionPutTopDeckToDiscard.swift +++ b/GameKit/Sources/Game/Reducer/Action+Reducer/ActionDraw.swift @@ -1,11 +1,11 @@ // -// ActionPutTopDeckToDiscard.swift +// ActionDraw.swift // // // Created by Hugues Telolahy on 18/11/2023. // -struct ActionPutTopDeckToDiscard: GameActionReducer { +struct ActionDraw: GameActionReducer { func reduce(state: GameState) throws -> GameState { var state = state let card = try state.popDeck() diff --git a/GameKit/Sources/Game/Reducer/Action+Reducer/GameAction+Reducer.swift b/GameKit/Sources/Game/Reducer/Action+Reducer/GameAction+Reducer.swift index dd8e73f35..c3f942f6a 100644 --- a/GameKit/Sources/Game/Reducer/Action+Reducer/GameAction+Reducer.swift +++ b/GameKit/Sources/Game/Reducer/Action+Reducer/GameAction+Reducer.swift @@ -70,8 +70,8 @@ private extension GameAction { case .putBack: ActionPutBack() - case .putTopDeckToDiscard: - ActionPutTopDeckToDiscard() + case .draw: + ActionDraw() case let .group(actions): ActionGroup(children: actions) diff --git a/GameKit/Sources/Game/Reducer/Effect+Resolver/CardEffect+Resolver.swift b/GameKit/Sources/Game/Reducer/Effect+Resolver/CardEffect+Resolver.swift index a3c181122..69d551d03 100644 --- a/GameKit/Sources/Game/Reducer/Effect+Resolver/CardEffect+Resolver.swift +++ b/GameKit/Sources/Game/Reducer/Effect+Resolver/CardEffect+Resolver.swift @@ -37,8 +37,8 @@ private extension CardEffect { case .putBack: EffectJust { _ in .putBack } - case .putTopDeckToDiscard: - EffectJust { _ in .putTopDeckToDiscard } + case .draw: + EffectJust { _ in .draw } case .setTurn: EffectJust { .setTurn($0.player()) } diff --git a/GameKit/Sources/Game/State/CardEffect.swift b/GameKit/Sources/Game/State/CardEffect.swift index 868524150..3081d7e9a 100644 --- a/GameKit/Sources/Game/State/CardEffect.swift +++ b/GameKit/Sources/Game/State/CardEffect.swift @@ -45,7 +45,7 @@ public indirect enum CardEffect: Codable, Equatable { case putBack /// Put top deck card to discard - case putTopDeckToDiscard + case draw /// Set turn case setTurn diff --git a/GameKit/Sources/Game/State/GameAction.swift b/GameKit/Sources/Game/State/GameAction.swift index 2845c1c6b..6ae55789f 100644 --- a/GameKit/Sources/Game/State/GameAction.swift +++ b/GameKit/Sources/Game/State/GameAction.swift @@ -62,7 +62,7 @@ public indirect enum GameAction: Action, Codable, Equatable { case putBack /// Reveal top deck card and put to discard - case putTopDeckToDiscard + case draw /// Set turn case setTurn(String) diff --git a/GameKit/Sources/Inventory/CardList.swift b/GameKit/Sources/Inventory/CardList.swift index 4603f13fa..9c01656a8 100644 --- a/GameKit/Sources/Inventory/CardList.swift +++ b/GameKit/Sources/Inventory/CardList.swift @@ -164,7 +164,7 @@ private extension CardList { .target(.selectAny) .on([.playHandicap]) CardEffect.group { - CardEffect.putTopDeckToDiscard + CardEffect.draw .repeat(.attr(.flippedCards)) CardEffect.luck( .topDiscard, @@ -189,7 +189,7 @@ private extension CardList { static let barrel = Card(.barrel, prototype: equipement) { CardEffect.group { - CardEffect.putTopDeckToDiscard + CardEffect.draw .repeat(.attr(.flippedCards)) CardEffect.luck( .topDiscard, @@ -202,7 +202,7 @@ private extension CardList { static let dynamite = Card(.dynamite, prototype: equipement) { CardEffect.group { - CardEffect.putTopDeckToDiscard + CardEffect.draw .repeat(.attr(.flippedCards)) CardEffect.luck( .topDiscard, @@ -305,7 +305,7 @@ private extension CardList { static let jourdonnais = Card(.jourdonnais, prototype: pDefault, attributes: [.maxHealth: 4]) { CardEffect.group { - CardEffect.putTopDeckToDiscard + CardEffect.draw .repeat(.attr(.flippedCards)) CardEffect.luck( .topDiscard, diff --git a/GameKit/Tests/GameTests/Mechanics/PutTopDeckToDiscardTests.swift b/GameKit/Tests/GameTests/Mechanics/DrawTests.swift similarity index 66% rename from GameKit/Tests/GameTests/Mechanics/PutTopDeckToDiscardTests.swift rename to GameKit/Tests/GameTests/Mechanics/DrawTests.swift index a935fd288..71b59abfa 100644 --- a/GameKit/Tests/GameTests/Mechanics/PutTopDeckToDiscardTests.swift +++ b/GameKit/Tests/GameTests/Mechanics/DrawTests.swift @@ -1,5 +1,5 @@ // -// PutTopDeckToDiscardTests.swift +// DrawTests.swift // // // Created by Hugues Telolahy on 18/11/2023. @@ -8,8 +8,8 @@ import Game import XCTest -final class PutTopDeckToDiscardTests: XCTestCase { - func test_putTopDeckToDiscard_shouldMoveCardFromDeckToDiscard() throws { +final class DrawTests: XCTestCase { + func test_draw_shouldMoveCardFromDeckToDiscard() throws { // Given let state = GameState.makeBuilder() .withDeck(["c2", "c3"]) @@ -17,7 +17,7 @@ final class PutTopDeckToDiscardTests: XCTestCase { .build() // When - let action = GameAction.putTopDeckToDiscard + let action = GameAction.draw let result = GameState.reducer(state, action) // Then diff --git a/GameKit/Tests/InventoryTests/Collectible/BarrelSpec.swift b/GameKit/Tests/InventoryTests/Collectible/BarrelSpec.swift index bc589802b..91d7d5398 100644 --- a/GameKit/Tests/InventoryTests/Collectible/BarrelSpec.swift +++ b/GameKit/Tests/InventoryTests/Collectible/BarrelSpec.swift @@ -53,7 +53,7 @@ final class BarrelSpec: QuickSpec { // Then expect(result) == [ .playImmediate(.bang, target: "p2", player: "p1"), - .putTopDeckToDiscard, + .draw, .cancel(.damage(1, player: "p2")) ] } @@ -81,7 +81,7 @@ final class BarrelSpec: QuickSpec { // Then expect(result) == [ .playImmediate(.bang, target: "p2", player: "p1"), - .putTopDeckToDiscard, + .draw, .damage(1, player: "p2") ] } @@ -111,8 +111,8 @@ final class BarrelSpec: QuickSpec { // Then expect(result) == [ .playImmediate(.bang, target: "p2", player: "p1"), - .putTopDeckToDiscard, - .putTopDeckToDiscard, + .draw, + .draw, .cancel(.damage(1, player: "p2")) ] } @@ -142,7 +142,7 @@ final class BarrelSpec: QuickSpec { // Then expect(result) == [ .playImmediate(.bang, target: "p2", player: "p1"), - .putTopDeckToDiscard, + .draw, .cancel(.damage(1, player: "p2")) ] } diff --git a/GameKit/Tests/InventoryTests/Collectible/DynamiteSpec.swift b/GameKit/Tests/InventoryTests/Collectible/DynamiteSpec.swift index bc3367403..b56063a19 100644 --- a/GameKit/Tests/InventoryTests/Collectible/DynamiteSpec.swift +++ b/GameKit/Tests/InventoryTests/Collectible/DynamiteSpec.swift @@ -50,7 +50,7 @@ final class DynamiteSpec: QuickSpec { // Then expect(result) == [.setTurn("p1"), - .putTopDeckToDiscard, + .draw, .passInPlay(.dynamite, target: "p2", player: "p1"), .drawDeck(player: "p1"), .drawDeck(player: "p1")] @@ -76,7 +76,7 @@ final class DynamiteSpec: QuickSpec { // Then expect(result) == [.setTurn("p1"), - .putTopDeckToDiscard, + .draw, .damage(3, player: "p1"), .discardInPlay("dynamite", player: "p1"), .drawDeck(player: "p1"), @@ -112,7 +112,7 @@ final class DynamiteSpec: QuickSpec { // Then expect(result) == [.setTurn("p1"), - .putTopDeckToDiscard, + .draw, .damage(3, player: "p1"), .eliminate(player: "p1"), .discardInPlay(.jail, player: "p1"), diff --git a/GameKit/Tests/InventoryTests/Collectible/JailSpec.swift b/GameKit/Tests/InventoryTests/Collectible/JailSpec.swift index 04ce27495..b4ee48481 100644 --- a/GameKit/Tests/InventoryTests/Collectible/JailSpec.swift +++ b/GameKit/Tests/InventoryTests/Collectible/JailSpec.swift @@ -61,7 +61,7 @@ final class JailSpec: QuickSpec { // Then expect(result) == [.setTurn("p1"), - .putTopDeckToDiscard, + .draw, .discardInPlay(.jail, player: "p1"), .drawDeck(player: "p1"), .drawDeck(player: "p1")] @@ -86,7 +86,7 @@ final class JailSpec: QuickSpec { // Then expect(result) == [.setTurn("p1"), - .putTopDeckToDiscard, + .draw, .cancel(.effect(.repeat(.attr(.startTurnCards), effect: .drawDeck), ctx: EffectContext(actor: "p1", card: .drawOnSetTurn, event: .setTurn("p1")))), .discardInPlay(.jail, player: "p1"), .setTurn("p2")] diff --git a/GameKit/Tests/InventoryTests/Figures/JourdonnaisSpec.swift b/GameKit/Tests/InventoryTests/Figures/JourdonnaisSpec.swift index 9c731be43..a0ccab9ec 100644 --- a/GameKit/Tests/InventoryTests/Figures/JourdonnaisSpec.swift +++ b/GameKit/Tests/InventoryTests/Figures/JourdonnaisSpec.swift @@ -32,7 +32,7 @@ final class JourdonnaisSpec: QuickSpec { // Then expect(result) == [ .playImmediate(.bang, target: "p2", player: "p1"), - .putTopDeckToDiscard, + .draw, .cancel(.damage(1, player: "p2")) ] }