From 7d1beae3fd64c7c94eb2cd516fd911b7dfbba4ab Mon Sep 17 00:00:00 2001 From: Iain C Docherty Date: Thu, 17 Jan 2013 16:05:29 -0500 Subject: [PATCH] Fixed bug with Essentia creation --- lib/Lacuna/AI/DeLambert.pm | 2 +- lib/Lacuna/DB/Result/Empire.pm | 2 ++ lib/Lacuna/RPC/Building/MercenariesGuild.pm | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-) 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), -- 2.51.2