cc: fix missing logs for tick consumption

This commit is contained in:
Crypto City 2020-10-31 21:32:48 +00:00
parent dec210c823
commit 9e4ae4f8cd

View File

@ -511,6 +511,7 @@ static void add_cities(const BlockchainDB &db, cc_command_game_update_t &cg, gam
std::map<uint32_t, uint32_t> activation_cost_map;
uint64_t activation_cost = 0;
cc::game_events_t active_events;
if (active)
{
if (flag.fire_state > 0 && flag.fire_state < 127)
@ -537,6 +538,7 @@ static void add_cities(const BlockchainDB &db, cc_command_game_update_t &cg, gam
balance_deltas[flag.owner] -= monetary_cost;
balance_deltas[treasury] += monetary_cost;
activation_cost += monetary_cost;
active_events.add(cg, flag.owner, flag.id) << "Pays " << cryptonote::print_money(monetary_cost) << " to tick";
}
}
if (active && !costs.empty())
@ -554,6 +556,7 @@ static void add_cities(const BlockchainDB &db, cc_command_game_update_t &cg, gam
item_balance_deltas[std::make_pair(flag.owner, e.first)] -= e.second;
item_count_deltas[e.first] -= e.second;
activation_cost_map[e.first] += e.second;
active_events.add(cg, flag.owner, flag.id) << "Consumes " << e.second << " " << cc::get_item_name(db, e.first) << " to tick";
}
}
}
@ -619,6 +622,7 @@ static void add_cities(const BlockchainDB &db, cc_command_game_update_t &cg, gam
item_balance_deltas[std::make_pair(flag.owner, food_item)] -= use;
item_count_deltas[food_item] -= use;
activation_cost_map[food_item] += use;
active_events.add(cg, flag.owner, flag.id) << "Consumes " << use << " " << cc::get_item_name(db, food_item) << " for food";
}
++priority_idx;
}
@ -675,6 +679,7 @@ static void add_cities(const BlockchainDB &db, cc_command_game_update_t &cg, gam
item_balance_deltas[std::make_pair(flag.owner, heating_item)] -= use;
item_count_deltas[heating_item] -= use;
activation_cost_map[heating_item] += use;
active_events.add(cg, flag.owner, flag.id) << "Consumes " << use << " " << cc::get_item_name(db, heating_item) << " for heating";
}
++priority_idx;
}
@ -697,6 +702,9 @@ static void add_cities(const BlockchainDB &db, cc_command_game_update_t &cg, gam
if (active)
{
for (auto &e: active_events)
events.push_back(std::move(e));
// gemstones
if (flag.role == ROLE_STONECUTTER)
{