From 5f8b7a81496ecaf7c3825ff5996afb40e573c52d Mon Sep 17 00:00:00 2001 From: Fiftytwo Date: Sat, 25 Nov 2017 12:30:16 +0100 Subject: [PATCH] Update BotFactory interface --- src/common/event.cpp | 4 ++++ src/common/event.h | 4 ++++ src/common/restext.cpp | 4 ++++ src/level/parser/parserparam.cpp | 1 + src/object/auto/autofactory.cpp | 28 +++++++++++++++++++++++----- 5 files changed, 36 insertions(+), 5 deletions(-) diff --git a/src/common/event.cpp b/src/common/event.cpp index e83bfeb9..b79e8b2d 100644 --- a/src/common/event.cpp +++ b/src/common/event.cpp @@ -423,6 +423,10 @@ void InitializeEventTypeTexts() EVENT_TYPE_TEXT[EVENT_OBJECT_FACTORYts] = "EVENT_OBJECT_FACTORYts"; EVENT_TYPE_TEXT[EVENT_OBJECT_FACTORYfs] = "EVENT_OBJECT_FACTORYfs"; EVENT_TYPE_TEXT[EVENT_OBJECT_FACTORYis] = "EVENT_OBJECT_FACTORYis"; + EVENT_TYPE_TEXT[EVENT_OBJECT_FACTORYwb] = "EVENT_OBJECT_FACTORYwb"; + EVENT_TYPE_TEXT[EVENT_OBJECT_FACTORYtb] = "EVENT_OBJECT_FACTORYtb"; + EVENT_TYPE_TEXT[EVENT_OBJECT_FACTORYfb] = "EVENT_OBJECT_FACTORYfb"; + EVENT_TYPE_TEXT[EVENT_OBJECT_FACTORYib] = "EVENT_OBJECT_FACTORYib"; EVENT_TYPE_TEXT[EVENT_OBJECT_FACTORYrt] = "EVENT_OBJECT_FACTORYrt"; EVENT_TYPE_TEXT[EVENT_OBJECT_FACTORYrc] = "EVENT_OBJECT_FACTORYrc"; EVENT_TYPE_TEXT[EVENT_OBJECT_FACTORYrr] = "EVENT_OBJECT_FACTORYrr"; diff --git a/src/common/event.h b/src/common/event.h index 95c0fc85..4cb2a75e 100644 --- a/src/common/event.h +++ b/src/common/event.h @@ -492,6 +492,10 @@ enum EventType EVENT_OBJECT_FACTORYrr = 1098, EVENT_OBJECT_FACTORYrs = 1099, EVENT_OBJECT_FACTORYsa = 1100, + EVENT_OBJECT_FACTORYwb = 1101, + EVENT_OBJECT_FACTORYtb = 1102, + EVENT_OBJECT_FACTORYfb = 1103, + EVENT_OBJECT_FACTORYib = 1104, EVENT_OBJECT_SEARCH = 1200, EVENT_OBJECT_TERRAFORM = 1201, EVENT_OBJECT_FIRE = 1202, diff --git a/src/common/restext.cpp b/src/common/restext.cpp index 635c56dd..ab43b630 100644 --- a/src/common/restext.cpp +++ b/src/common/restext.cpp @@ -357,6 +357,10 @@ void InitializeRestext() stringsEvent[EVENT_OBJECT_FACTORYts] = TR("Build a tracked sniffer"); stringsEvent[EVENT_OBJECT_FACTORYws] = TR("Build a wheeled sniffer"); stringsEvent[EVENT_OBJECT_FACTORYis] = TR("Build a legged sniffer"); + stringsEvent[EVENT_OBJECT_FACTORYfb] = TR("Build a winged builder"); + stringsEvent[EVENT_OBJECT_FACTORYtb] = TR("Build a tracked builder"); + stringsEvent[EVENT_OBJECT_FACTORYwb] = TR("Build a wheeled builder"); + stringsEvent[EVENT_OBJECT_FACTORYib] = TR("Build a legged builder"); stringsEvent[EVENT_OBJECT_FACTORYrt] = TR("Build a thumper"); stringsEvent[EVENT_OBJECT_FACTORYrc] = TR("Build a phazer shooter"); stringsEvent[EVENT_OBJECT_FACTORYrr] = TR("Build a recycler"); diff --git a/src/level/parser/parserparam.cpp b/src/level/parser/parserparam.cpp index a56d77c2..9110ceb5 100644 --- a/src/level/parser/parserparam.cpp +++ b/src/level/parser/parserparam.cpp @@ -787,6 +787,7 @@ ToolType CLevelParserParam::ToToolType(std::string value) if (value == "Sniffer" ) return ToolType::Sniffer; if (value == "Shooter" ) return ToolType::Shooter; if (value == "OrgaShooter") return ToolType::OrganicShooter; + if (value == "Builder" ) return ToolType::Builder; if (value == "Other" ) return ToolType::Other; return static_cast(Cast(value, "tool")); } diff --git a/src/object/auto/autofactory.cpp b/src/object/auto/autofactory.cpp index 5e998352..1aa2d999 100644 --- a/src/object/auto/autofactory.cpp +++ b/src/object/auto/autofactory.cpp @@ -186,6 +186,10 @@ ObjectType ObjectTypeFromFactoryButton(EventType eventType) if ( eventType == EVENT_OBJECT_FACTORYti ) return OBJECT_MOBILEti; if ( eventType == EVENT_OBJECT_FACTORYfi ) return OBJECT_MOBILEfi; if ( eventType == EVENT_OBJECT_FACTORYii ) return OBJECT_MOBILEii; + if ( eventType == EVENT_OBJECT_FACTORYwb ) return OBJECT_MOBILEwb; + if ( eventType == EVENT_OBJECT_FACTORYtb ) return OBJECT_MOBILEtb; + if ( eventType == EVENT_OBJECT_FACTORYfb ) return OBJECT_MOBILEfb; + if ( eventType == EVENT_OBJECT_FACTORYib ) return OBJECT_MOBILEib; if ( eventType == EVENT_OBJECT_FACTORYrt ) return OBJECT_MOBILErt; if ( eventType == EVENT_OBJECT_FACTORYrc ) return OBJECT_MOBILErc; if ( eventType == EVENT_OBJECT_FACTORYrr ) return OBJECT_MOBILErr; @@ -726,11 +730,11 @@ bool CAutoFactory::CreateInterface(bool bSelect) pos.x = 0.0f; pos.y = oy+sy*2.6f; ddim.x = 138.0f/640.0f; - ddim.y = 222.0f/480.0f; + ddim.y = 258.0f/480.0f; pw->CreateGroup(pos, ddim, 6, EVENT_WINDOW3); pos.x = ox+sx*0.0f; - pos.y = oy+sy*8.2f; + pos.y = oy+sy*9.3f; pw->CreateButton(pos, dim, 128+9, EVENT_OBJECT_FACTORYwa); pos.x += dim.x; pw->CreateButton(pos, dim, 128+10, EVENT_OBJECT_FACTORYta); @@ -740,7 +744,7 @@ bool CAutoFactory::CreateInterface(bool bSelect) pw->CreateButton(pos, dim, 128+22, EVENT_OBJECT_FACTORYia); pos.x = ox+sx*0.0f; - pos.y = oy+sy*7.1f; + pos.y = oy+sy*8.2f; pw->CreateButton(pos, dim, 128+12, EVENT_OBJECT_FACTORYws); pos.x += dim.x; pw->CreateButton(pos, dim, 128+13, EVENT_OBJECT_FACTORYts); @@ -750,7 +754,7 @@ bool CAutoFactory::CreateInterface(bool bSelect) pw->CreateButton(pos, dim, 128+24, EVENT_OBJECT_FACTORYis); pos.x = ox+sx*0.0f; - pos.y = oy+sy*6.0f; + pos.y = oy+sy*7.1f; pw->CreateButton(pos, dim, 128+15, EVENT_OBJECT_FACTORYwc); pos.x += dim.x; pw->CreateButton(pos, dim, 128+16, EVENT_OBJECT_FACTORYtc); @@ -760,7 +764,7 @@ bool CAutoFactory::CreateInterface(bool bSelect) pw->CreateButton(pos, dim, 128+23, EVENT_OBJECT_FACTORYic); pos.x = ox+sx*0.0f; - pos.y = oy+sy*4.9f; + pos.y = oy+sy*6.0f; pw->CreateButton(pos, dim, 128+25, EVENT_OBJECT_FACTORYwi); pos.x += dim.x; pw->CreateButton(pos, dim, 128+26, EVENT_OBJECT_FACTORYti); @@ -768,6 +772,16 @@ bool CAutoFactory::CreateInterface(bool bSelect) pw->CreateButton(pos, dim, 128+27, EVENT_OBJECT_FACTORYfi); pos.x += dim.x; pw->CreateButton(pos, dim, 128+28, EVENT_OBJECT_FACTORYii); + + pos.x = ox+sx*0.0f; + pos.y = oy+sy*4.9f; + pw->CreateButton(pos, dim, 192+0, EVENT_OBJECT_FACTORYwb); + pos.x += dim.x; + pw->CreateButton(pos, dim, 192+1, EVENT_OBJECT_FACTORYtb); + pos.x += dim.x; + pw->CreateButton(pos, dim, 192+2, EVENT_OBJECT_FACTORYfb); + pos.x += dim.x; + pw->CreateButton(pos, dim, 192+3, EVENT_OBJECT_FACTORYib); pos.x = ox+sx*0.0f; pos.y = oy+sy*3.8f; @@ -821,6 +835,10 @@ void CAutoFactory::UpdateInterface() UpdateButton(pw, EVENT_OBJECT_FACTORYti, m_bBusy); UpdateButton(pw, EVENT_OBJECT_FACTORYfi, m_bBusy); UpdateButton(pw, EVENT_OBJECT_FACTORYii, m_bBusy); + UpdateButton(pw, EVENT_OBJECT_FACTORYwb, m_bBusy); + UpdateButton(pw, EVENT_OBJECT_FACTORYtb, m_bBusy); + UpdateButton(pw, EVENT_OBJECT_FACTORYfb, m_bBusy); + UpdateButton(pw, EVENT_OBJECT_FACTORYib, m_bBusy); UpdateButton(pw, EVENT_OBJECT_FACTORYrt, m_bBusy); UpdateButton(pw, EVENT_OBJECT_FACTORYrc, m_bBusy); UpdateButton(pw, EVENT_OBJECT_FACTORYrr, m_bBusy);