Skip to content

Commit edb1729

Browse files
committed
figures: create function use city reference instead id
1 parent 9a3fca8 commit edb1729

4 files changed

+9
-6
lines changed

src/figuretype/figure_kingdome_trader.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,9 @@ int figure::trader_total_sold() {
4545
return resource_amount_full;
4646
}
4747

48-
int figure_create_trade_caravan(tile2i tile, int city_id) {
48+
int figure_trade_caravan::create(tile2i tile, const empire_city& city) {
4949
figure* caravan = figure_create(FIGURE_TRADE_CARAVAN, tile, DIR_0_TOP_RIGHT);
50-
caravan->empire_city_id = city_id;
50+
caravan->empire_city_id = city.name_id;
5151
caravan->action_state = FIGURE_ACTION_100_TRADE_CARAVAN_CREATED;
5252
caravan->wait_ticks = trade_caravan_m.wait_ticks_after_create;
5353
// donkey 1

src/figuretype/figure_kingdome_trader.h

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
#include "figure_trader.h"
44

5-
int figure_create_trade_caravan(tile2i tile, int city_id);
5+
struct empire_city;
66

77
class figure_trade_caravan : public figure_trader {
88
public:
@@ -27,4 +27,5 @@ class figure_trade_caravan : public figure_trader {
2727
const static_params &current_params() const { static_cast<const static_params &>(params()); }
2828

2929
void go_to_next_storageyard(tile2i src_tile, int distance_to_entry);
30+
static int create(tile2i tile, const empire_city& city);
3031
};

src/figuretype/figure_trader_ship.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@ void game_cheat_sink_all_ships(std::istream &is, std::ostream &os) {
3030
}, FIGURE_TRADE_SHIP, FIGURE_FISHING_BOAT);
3131
}
3232

33-
int figure_trade_ship::create(tile2i tile, int city_id) {
33+
int figure_trade_ship::create(tile2i tile, const empire_city& city) {
3434
figure* ship = figure_create(FIGURE_TRADE_SHIP, tile, DIR_0_TOP_RIGHT);
35-
ship->empire_city_id = city_id;
35+
ship->empire_city_id = city.name_id;
3636
ship->allow_move_type = EMOVE_DEEPWATER;
3737
ship->action_state = FIGURE_ACTION_110_TRADE_SHIP_CREATED;
3838
ship->wait_ticks = 10;

src/figuretype/figure_trader_ship.h

+3-1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ enum {
99
TRADE_SHIP_SELLING = 2,
1010
};
1111

12+
struct empire_city;
13+
1214
class figure_trade_ship : public figure_carrier {
1315
public:
1416
FIGURE_METAINFO(FIGURE_TRADE_SHIP, figure_trade_ship)
@@ -30,5 +32,5 @@ class figure_trade_ship : public figure_carrier {
3032
bool done_trading();
3133
int is_trading() const;
3234

33-
static int create(tile2i tile, int city_id);
35+
static int create(tile2i tile, const empire_city& city);
3436
};

0 commit comments

Comments
 (0)