summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/object/robotmain.cpp7
-rw-r--r--src/script/script.cpp1
2 files changed, 8 insertions, 0 deletions
diff --git a/src/object/robotmain.cpp b/src/object/robotmain.cpp
index f8db286..0d95907 100644
--- a/src/object/robotmain.cpp
+++ b/src/object/robotmain.cpp
@@ -4630,6 +4630,13 @@ void CRobotMain::CreateScene(bool soluce, bool fixScene, bool resetObject)
trainer = OpInt(line, "trainer", 0),
OpInt(line, "toy", 0),
OpInt(line, "option", 0));
+
+ if (m_fixScene && type == OBJECT_HUMAN)
+ {
+ CMotion* motion = obj->GetMotion();
+ if (m_phase == PHASE_WIN ) motion->SetAction(MHS_WIN, 0.4f);
+ if (m_phase == PHASE_LOST) motion->SetAction(MHS_LOST, 0.5f);
+ }
if (obj != nullptr)
{
diff --git a/src/script/script.cpp b/src/script/script.cpp
index 6fcd883..1a26e62 100644
--- a/src/script/script.cpp
+++ b/src/script/script.cpp
@@ -1905,6 +1905,7 @@ bool CScript::rProduce(CBotVar* var, CBotVar* result, int& exception, void* user
}
object->SetActivity(false);
} else {
+ if ((type == OBJECT_POWER || type == OBJECT_ATOMIC) && power == -1.0f) power = 1.0f;
object = CObjectManager::GetInstancePointer()->CreateObject(pos, angle, type, power);
if ( object == nullptr )
{