1 #ifndef EMPIRE_TRADE_ROUTE_H 2 #define EMPIRE_TRADE_ROUTE_H 3 4 #include "core/buffer.h" 5 #include "game/resource.h" 6 7 void trade_route_init(int route_id, resource_type resource, int limit); 8 9 int trade_route_limit(int route_id, resource_type resource); 10 11 int trade_route_traded(int route_id, resource_type resource); 12 13 /** 14 * Increases the trade limit of the resource 15 * @param route_id Trade route 16 * @param resource Resource 17 * @return True on success, false if the limit couldn't be increased 18 */ 19 int trade_route_increase_limit(int route_id, resource_type resource); 20 21 /** 22 * Decreases the trade limit of the resource 23 * @param route_id Trade route 24 * @param resource Resource 25 * @return True on success, false if the limit couldn't be decreased 26 */ 27 int trade_route_decrease_limit(int route_id, resource_type resource); 28 29 void trade_route_increase_traded(int route_id, resource_type resource); 30 31 void trade_route_reset_traded(int route_id); 32 33 int trade_route_limit_reached(int route_id, resource_type resource); 34 35 void trade_routes_save_state(buffer *limit, buffer *traded); 36 37 void trade_routes_load_state(buffer *limit, buffer *traded); 38 39 #endif // EMPIRE_TRADE_ROUTE_H 40