diff --git a/lib/Lacuna/AI/DeLambert.pm b/lib/Lacuna/AI/DeLambert.pm index 07ee6bba..877ccfc9 100644 --- a/lib/Lacuna/AI/DeLambert.pm +++ b/lib/Lacuna/AI/DeLambert.pm @@ -411,7 +411,7 @@ sub buy_trade { my $offer_ship = Lacuna->db->resultset('Lacuna::DB::Result::Ships')->find($trade->ship_id); return if not defined $offer_ship; - $empire->transfer_essentia({ + $self->empire->transfer_essentia({ amount => $trade->ask, from_reason => 'Trade Price', to_empire => $trade->body->empire, diff --git a/lib/Lacuna/DB/Result/Empire.pm b/lib/Lacuna/DB/Result/Empire.pm index 50f42ac4..ac786925 100644 --- a/lib/Lacuna/DB/Result/Empire.pm +++ b/lib/Lacuna/DB/Result/Empire.pm @@ -249,12 +249,14 @@ sub transfer_essentia { reason => $args->{from_reason}, other_empire => $args->{to_empire}, }); + $self->update; my $to_empire = $args->{to_empire}; $to_empire->add_essentia({ amount => $args->{amount}, reason => $args->{to_reason}, other_empire => $self, }); + $to_empire->update; } sub _adjust_essentia { diff --git a/lib/Lacuna/RPC/Building/MercenariesGuild.pm b/lib/Lacuna/RPC/Building/MercenariesGuild.pm index f87c1e42..9b31438b 100644 --- a/lib/Lacuna/RPC/Building/MercenariesGuild.pm +++ b/lib/Lacuna/RPC/Building/MercenariesGuild.pm @@ -145,7 +145,8 @@ sub add_to_market { $empire->spend_essentia({ amount => $cost, reason => 'Offered Mercenary Trade', - )->update; + }); + $empire->update; return { trade_id => $trade->id, status => $self->format_status($empire, $building->body),