From 945bb2f8c7dcc62b42e8c5d137760d524f8d3276 Mon Sep 17 00:00:00 2001 From: Martin Ambrus Date: Thu, 2 Nov 2017 13:11:19 +0100 Subject: [PATCH] fix: too much gold for instant build & research Fixes #257 --- GameEngine/Admin/database.php | 2 +- GameEngine/Automation.php | 2 +- GameEngine/Building.php | 10 +++++----- GameEngine/Database.php | 2 +- GameEngine/Technology.php | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/GameEngine/Admin/database.php b/GameEngine/Admin/database.php index 3daace9c..d1d143e4 100755 --- a/GameEngine/Admin/database.php +++ b/GameEngine/Admin/database.php @@ -373,7 +373,7 @@ class adm_DB { $q = "DELETE FROM ".TB_PREFIX."vdata WHERE `wref` = $wref"; mysqli_query($this->connection, $q); - if (mysqli_affected_rows()>0) { + if (mysqli_affected_rows($this->connection)>0) { $q = "UPDATE ".TB_PREFIX."wdata set occupied = 0 where id = $wref"; mysqli_query($this->connection, $q); diff --git a/GameEngine/Automation.php b/GameEngine/Automation.php index 1a38582f..963a1568 100755 --- a/GameEngine/Automation.php +++ b/GameEngine/Automation.php @@ -3150,7 +3150,7 @@ class Automation { $q = "DELETE FROM ".TB_PREFIX."vdata WHERE `wref` = $wref"; $database->query($q); - if (mysqli_affected_rows()>0) { + if (mysqli_affected_rows($database->dblink)>0) { $q = "UPDATE ".TB_PREFIX."wdata set occupied = 0 where id = $wref"; $database->query($q); diff --git a/GameEngine/Building.php b/GameEngine/Building.php index 45d33a3f..509383dc 100755 --- a/GameEngine/Building.php +++ b/GameEngine/Building.php @@ -816,15 +816,15 @@ class Building { } if($finish != 2){ // only decrease gold if we didn't already do it for the building phase - if (!isset($newgold)) { - $newgold = $session->gold-2; - $database->updateUserField($session->uid, "gold", $newgold, 1); - } $demolition=$database->finishDemolition($village->wid); $tech=$technology->finishTech(); if ($finish==1 || $demolition>0 || $tech>0) { $logging->goldFinLog($village->wid); - $database->modifyGold($session->uid,2,0); + if (!isset($newgold)) { + $session->gold = $session->gold - 2; + $newgold = $session->gold; + $database->updateUserField($session->uid, "gold", $newgold, 1); + } } $stillbuildingarray = $database->getJobs($village->wid); if(count($stillbuildingarray) == 1) { diff --git a/GameEngine/Database.php b/GameEngine/Database.php index 82ab4373..13302d91 100755 --- a/GameEngine/Database.php +++ b/GameEngine/Database.php @@ -2867,7 +2867,7 @@ class MYSQLi_DB implements IDbConnection { $q = "UPDATE " . TB_PREFIX . "demolition SET timetofinish=" . time() . " WHERE vref=" . $wid; $result= mysqli_query($this->dblink,$q); - return mysqli_affected_rows(); + return mysqli_affected_rows($this->dblink); } function delDemolition($wid, $checkEmbassy = false) { diff --git a/GameEngine/Technology.php b/GameEngine/Technology.php index 4ba28cc0..23cda935 100755 --- a/GameEngine/Technology.php +++ b/GameEngine/Technology.php @@ -765,7 +765,7 @@ private function trainUnit($unit,$amt,$great=false) { global $database,$village; $q = "UPDATE ".TB_PREFIX."research SET timestamp=".(time()-1)." WHERE vref = ".(int) $village->wid; $result = $database->query($q); - return mysqli_affected_rows(); + return mysqli_affected_rows($database->dblink); } public function calculateAvaliable($id,$resarray=array()) {