Skip to content

Commit 1012669

Browse files
authored
Action cards (#182)
1 parent 1280e7d commit 1012669

File tree

321 files changed

+3438
-7354
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

321 files changed

+3438
-7354
lines changed

client/src/city_ui.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,8 @@ fn wonder_icons<'a>(rc: &'a RenderContext, city: &'a City) -> IconActionVec<'a>
8585
let game = rc.game;
8686

8787
owner
88-
.wonder_cards
89-
.iter()
88+
.wonder_cards()
89+
.into_iter()
9090
.filter(|w| city.can_build_wonder(w, owner, game))
9191
.map(|w| {
9292
let a: IconAction<'a> = (

client/src/client_state.rs

+1
Original file line numberDiff line numberDiff line change
@@ -550,6 +550,7 @@ impl State {
550550
panic!("ExploreResolution expected");
551551
}
552552
}
553+
CurrentEventRequest::SelectHandCards(_) => todo!(),
553554
};
554555
}
555556
match &game.state {

client/src/construct_ui.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ impl ConstructionPayment {
106106
let cost = match &project {
107107
ConstructionProject::Building(b, _) => p.construct_cost(*b, city, None),
108108
ConstructionProject::Wonder(name) => p.wonder_cost(
109-
p.wonder_cards.iter().find(|w| w.name == *name).unwrap(),
109+
p.wonder_cards().iter().find(|w| w.name == *name).unwrap(),
110110
city,
111111
None,
112112
),

client/src/event_ui.rs

+4
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
use crate::log_ui::break_text;
22
use crate::payment_ui::Payment;
33
use crate::render_context::RenderContext;
4+
use server::content::action_cards::get_action_card;
45
use server::content::advances::get_advance;
56
use server::content::builtin::get_builtin;
67
use server::content::incidents::get_incident;
8+
use server::content::tactics_cards::get_tactics_card;
79
use server::content::wonders::get_wonder;
810
use server::events::EventOrigin;
911

@@ -14,6 +16,8 @@ pub fn event_help(rc: &RenderContext, origin: &EventOrigin, do_break: bool) -> V
1416
EventOrigin::Advance(a) => vec![get_advance(a).description],
1517
EventOrigin::Wonder(w) => vec![get_wonder(w).description],
1618
EventOrigin::Builtin(b) => vec![get_builtin(rc.game, b).description],
19+
EventOrigin::ActionCard(id) => vec![get_action_card(*id).civil_card.description],
20+
EventOrigin::TacticsCard(name) => vec![get_tactics_card(name).description],
1721
EventOrigin::Incident(id) => get_incident(*id).description(),
1822
EventOrigin::Leader(l) => vec![{
1923
let l = rc.shown_player.get_leader(l).unwrap();

client/src/local_client/bin/main.rs

+5-7
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ use server::map::Terrain;
1313
use server::position::Position;
1414
use server::resource_pile::ResourcePile;
1515
use server::unit::UnitType;
16+
use server::utils::remove_element;
1617
use std::env;
1718
use std::fs::File;
1819
use std::io::BufReader;
@@ -150,13 +151,10 @@ pub fn setup_local_game() -> Game {
150151
// .unwrap()
151152
// .pieces
152153
// .wonders = vec![game.wonders_left.pop().unwrap()];
153-
let gardens = game.wonders_left.remove(
154-
game.wonders_left
155-
.iter()
156-
.position(|w| w.name == "Great Gardens")
157-
.unwrap(),
158-
);
159-
game.players[player_index1].wonder_cards.push(gardens);
154+
155+
game.players[player_index1]
156+
.wonder_cards
157+
.push(remove_element(&mut game.wonders_left, &"Great Gardens".to_string()).unwrap());
160158
game.players[player_index1]
161159
.get_city_mut(Position::from_offset("C2"))
162160
.increase_mood_state();

client/src/player_ui.rs

+1
Original file line numberDiff line numberDiff line change
@@ -254,6 +254,7 @@ pub fn get_combat(game: &Game) -> Option<&Combat> {
254254
.last()
255255
.and_then(|e| match &e.event_type {
256256
CurrentEventType::CombatStart(c) => Some(c),
257+
CurrentEventType::CombatRoundStart(s) => Some(&s.combat),
257258
CurrentEventType::CombatRoundEnd(e) => Some(&e.combat),
258259
CurrentEventType::CombatEnd(e) => Some(&e.combat),
259260
_ => None,

0 commit comments

Comments
 (0)