From 106db194bddf26e216a47310bb46c9de0e8a426e Mon Sep 17 00:00:00 2001 From: Tim Felgentreff <timfelgentreff@gmail.com> Date: Sat, 3 Nov 2018 12:53:02 +0000 Subject: [PATCH] return -1 for time-to-live when it's not meaningful for a unit. ignore negative life bar values --- src/ui/contenttype.cpp | 3 +++ src/unit/script_unit.cpp | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/ui/contenttype.cpp b/src/ui/contenttype.cpp index 125418a77..b06bf7f6c 100644 --- a/src/ui/contenttype.cpp +++ b/src/ui/contenttype.cpp @@ -284,6 +284,9 @@ static const CUnit *GetUnitRef(const CUnit &unit, EnumUnit e) } else { f = (100 * EvalNumber(this->ValueFunc)) / this->ValueMax; f = f > 100 ? 100 : f; + if (f < 0) { + return; + } } int i = 0; diff --git a/src/unit/script_unit.cpp b/src/unit/script_unit.cpp index 5a59c4dc1..4f1dee924 100644 --- a/src/unit/script_unit.cpp +++ b/src/unit/script_unit.cpp @@ -1110,7 +1110,7 @@ static int CclGetUnitVariable(lua_State *l) int pcnt = W * 100.0 / G; lua_pushinteger(l, pcnt); } else { - lua_pushinteger(l, 100); + lua_pushinteger(l, -1); } } else if (!strcmp(value, "IndividualUpgrade")) { LuaCheckArgs(l, 3);