Make Vault buildable

pyro-refactor
Fiftytwo 2020-08-08 20:51:56 +02:00
parent b9305dfd45
commit 56c99e741e
16 changed files with 55 additions and 31 deletions

View File

@ -769,7 +769,7 @@ msgstr ""
msgid "Build a exchange post"
msgstr ""
msgid "Build a destroyer"
msgid "Build a vault"
msgstr ""
msgid "Show if the ground is flat"

View File

@ -200,9 +200,6 @@ msgstr "Postavit obrannou věž"
msgid "Build a derrick"
msgstr "Postavit vrtnou věž"
msgid "Build a destroyer"
msgstr "Postavit drtič"
msgid "Build a exchange post"
msgstr "Postavit komunikační stanici"
@ -275,6 +272,9 @@ msgstr "Vyrobit pásový kanón"
msgid "Build a tracked sniffer"
msgstr "Vyrobit pásový detektor"
msgid "Build a vault"
msgstr ""
msgid "Build a wheeled builder"
msgstr ""
@ -1936,3 +1936,6 @@ msgstr "colobot.info"
msgid "epsitec.com"
msgstr "epsitec.com"
#~ msgid "Build a destroyer"
#~ msgstr "Postavit drtič"

View File

@ -201,9 +201,6 @@ msgstr "Baut einen Geschützturm"
msgid "Build a derrick"
msgstr "Baut einen Bohrturm"
msgid "Build a destroyer"
msgstr "Baue einen Zerstörer"
msgid "Build a exchange post"
msgstr "Baut einen Infoserver"
@ -276,6 +273,9 @@ msgstr "Baut einen Kettenshooter"
msgid "Build a tracked sniffer"
msgstr "Baut einen Kettenschnüffler"
msgid "Build a vault"
msgstr ""
msgid "Build a wheeled builder"
msgstr ""
@ -1967,6 +1967,9 @@ msgstr "epsitec.com"
#~ msgid "3D sound\\3D positioning of the sound"
#~ msgstr "3D-Geräusche\\Orten der Geräusche im Raum"
#~ msgid "Build a destroyer"
#~ msgstr "Baue einen Zerstörer"
#~ msgid "Building too close"
#~ msgstr "Gebäude zu nahe"

View File

@ -203,9 +203,6 @@ msgstr "Construire une tour"
msgid "Build a derrick"
msgstr "Construire un derrick"
msgid "Build a destroyer"
msgstr "Construire un destructeur"
msgid "Build a exchange post"
msgstr "Construire une station relais"
@ -278,6 +275,9 @@ msgstr "Fabriquer un tireur à chenilles"
msgid "Build a tracked sniffer"
msgstr "Fabriquer un renifleur à chenilles"
msgid "Build a vault"
msgstr ""
msgid "Build a wheeled builder"
msgstr ""
@ -1966,6 +1966,9 @@ msgstr "epsitec.com"
#~ msgid "3D sound\\3D positioning of the sound"
#~ msgstr "Bruitages 3D\\Positionnement sonore dans l'espace"
#~ msgid "Build a destroyer"
#~ msgstr "Construire un destructeur"
#~ msgid "Building too close"
#~ msgstr "Bâtiment trop proche"

View File

@ -199,9 +199,6 @@ msgstr "Zbuduj wieżę obronną"
msgid "Build a derrick"
msgstr "Zbuduj kopalnię"
msgid "Build a destroyer"
msgstr "Zbuduj niszczarkę"
msgid "Build a exchange post"
msgstr "Zbuduj stację przekaźnikową"
@ -274,6 +271,9 @@ msgstr "Zbuduj działo na gąsienicach"
msgid "Build a tracked sniffer"
msgstr "Zbuduj szperacz na gąsienicach"
msgid "Build a vault"
msgstr ""
msgid "Build a wheeled builder"
msgstr ""
@ -1945,6 +1945,9 @@ msgstr "epsitec.com"
#~ msgid "3D sound\\3D positioning of the sound"
#~ msgstr "Dźwięk 3D\\Przestrzenne pozycjonowanie dźwięków"
#~ msgid "Build a destroyer"
#~ msgstr "Zbuduj niszczarkę"
#~ msgid "Building too close"
#~ msgstr "Budynek za blisko"

View File

@ -197,9 +197,6 @@ msgstr "Construir uma torre de defesa"
msgid "Build a derrick"
msgstr "Construir um extrator"
msgid "Build a destroyer"
msgstr "Construir um destruidor"
msgid "Build a exchange post"
msgstr "Construir um posto de troca"
@ -272,6 +269,9 @@ msgstr "Construir um atirador com esteiras"
msgid "Build a tracked sniffer"
msgstr "Construir um farejador com esteiras"
msgid "Build a vault"
msgstr ""
msgid "Build a wheeled builder"
msgstr ""
@ -1964,6 +1964,9 @@ msgstr "epsitec.com"
#~ msgid "3D sound\\3D positioning of the sound"
#~ msgstr "Bruitages 3D\\Positionnement sonore dans l'espace"
#~ msgid "Build a destroyer"
#~ msgstr "Construir um destruidor"
#~ msgid "Building too close"
#~ msgstr "Bâtiment trop proche"

View File

@ -200,9 +200,6 @@ msgstr "Построить защитную башню"
msgid "Build a derrick"
msgstr "Построить буровую вышку"
msgid "Build a destroyer"
msgstr "Построить уничтожитель"
msgid "Build a exchange post"
msgstr "Построить пост по обмену сообщениями"
@ -275,6 +272,9 @@ msgstr "Собрать гусеничного стрелка"
msgid "Build a tracked sniffer"
msgstr "Собрать гусеничного искателя"
msgid "Build a vault"
msgstr ""
msgid "Build a wheeled builder"
msgstr ""
@ -1980,6 +1980,9 @@ msgstr "epsitec.com"
#~ msgid "3D sound\\3D positioning of the sound"
#~ msgstr "3D-звук\\Стерео звук"
#~ msgid "Build a destroyer"
#~ msgstr "Построить уничтожитель"
#~ msgid "Building too close"
#~ msgstr "Здание слишком близко"

View File

@ -410,7 +410,7 @@ void InitializeEventTypeTexts()
EVENT_TYPE_TEXT[EVENT_OBJECT_BNUCLEAR] = "EVENT_OBJECT_BNUCLEAR";
EVENT_TYPE_TEXT[EVENT_OBJECT_BPARA] = "EVENT_OBJECT_BPARA";
EVENT_TYPE_TEXT[EVENT_OBJECT_BINFO] = "EVENT_OBJECT_BINFO";
EVENT_TYPE_TEXT[EVENT_OBJECT_BDESTROYER] = "EVENT_OBJECT_BDESTROYER";
EVENT_TYPE_TEXT[EVENT_OBJECT_BSAFE] = "EVENT_OBJECT_BSAFE";
EVENT_TYPE_TEXT[EVENT_OBJECT_GFLAT] = "EVENT_OBJECT_GFLAT";
EVENT_TYPE_TEXT[EVENT_OBJECT_FCREATE] = "EVENT_OBJECT_FCREATE";
EVENT_TYPE_TEXT[EVENT_OBJECT_FDELETE] = "EVENT_OBJECT_FDELETE";

View File

@ -474,7 +474,7 @@ enum EventType
EVENT_OBJECT_BNUCLEAR = 1060,
EVENT_OBJECT_BPARA = 1061,
EVENT_OBJECT_BINFO = 1062,
EVENT_OBJECT_BDESTROYER = 1063,
EVENT_OBJECT_BSAFE = 1063,
EVENT_OBJECT_GFLAT = 1070,
EVENT_OBJECT_FCREATE = 1071,
EVENT_OBJECT_FDELETE = 1072,

View File

@ -347,7 +347,7 @@ void InitializeRestext()
stringsEvent[EVENT_OBJECT_BNUCLEAR] = TR("Build a nuclear power plant");
stringsEvent[EVENT_OBJECT_BPARA] = TR("Build a lightning conductor");
stringsEvent[EVENT_OBJECT_BINFO] = TR("Build a exchange post");
stringsEvent[EVENT_OBJECT_BDESTROYER] = TR("Build a destroyer");
stringsEvent[EVENT_OBJECT_BSAFE] = TR("Build a vault");
stringsEvent[EVENT_OBJECT_GFLAT] = TR("Show if the ground is flat");
stringsEvent[EVENT_OBJECT_FCREATE] = TR("Plant a flag");
stringsEvent[EVENT_OBJECT_FDELETE] = TR("Remove a flag");

View File

@ -41,7 +41,8 @@ enum BuildType
BUILD_LABO = (1<<10), //! < AutoLab
BUILD_PARA = (1<<11), //! < PowerCaptor
BUILD_INFO = (1<<12), //! < ExchangePost
BUILD_DESTROYER = (1<<13), //! < Destroyer
BUILD_SAFE = (1<<13), //! < Vault
BUILD_DESTROYER = (1<<14), //! < Destroyer
BUILD_GFLAT = (1<<16), //! < checking flat ground
BUILD_FLAG = (1<<17) //! < putting / removing flags
};

View File

@ -885,6 +885,7 @@ int CLevelParserParam::ToBuildFlag(std::string value)
if (value == "AutoLab" ) return BUILD_LABO;
if (value == "PowerCaptor" ) return BUILD_PARA;
if (value == "ExchangePost" ) return BUILD_INFO;
if (value == "Vault" ) return BUILD_SAFE;
if (value == "Destroyer" ) return BUILD_DESTROYER;
if (value == "FlatGround" ) return BUILD_GFLAT;
if (value == "Flag" ) return BUILD_FLAG;

View File

@ -5887,6 +5887,7 @@ bool CRobotMain::IsBuildingEnabled(ObjectType type)
if(type == OBJECT_NUCLEAR) return IsBuildingEnabled(BUILD_NUCLEAR);
if(type == OBJECT_INFO) return IsBuildingEnabled(BUILD_INFO);
if(type == OBJECT_PARA) return IsBuildingEnabled(BUILD_PARA);
if(type == OBJECT_SAFE) return IsBuildingEnabled(BUILD_SAFE);
if(type == OBJECT_DESTROYER) return IsBuildingEnabled(BUILD_DESTROYER);
return false;

View File

@ -111,6 +111,7 @@ void CTaskBuild::CreateBuilding(Math::Vector pos, float angle, bool trainer)
if ( m_type == OBJECT_NUCLEAR ) m_buildingHeight = 40.0f;
if ( m_type == OBJECT_PARA ) m_buildingHeight = 68.0f;
if ( m_type == OBJECT_INFO ) m_buildingHeight = 19.0f;
if ( m_type == OBJECT_SAFE ) m_buildingHeight = 16.0f;
if ( m_type == OBJECT_DESTROYER) m_buildingHeight = 35.0f;
if ( m_type == OBJECT_HUSTON ) m_buildingHeight = 45.0f;
m_buildingHeight *= 0.25f;
@ -682,6 +683,7 @@ Error CTaskBuild::FlatFloor()
if ( m_type == OBJECT_NUCLEAR ) radius = 20.0f;
if ( m_type == OBJECT_PARA ) radius = 20.0f;
if ( m_type == OBJECT_INFO ) radius = 5.0f;
if ( m_type == OBJECT_SAFE ) radius = 20.0f;
if ( m_type == OBJECT_DESTROYER) radius = 20.0f;
//if ( radius == 0.0f ) return ERR_UNKNOWN;

View File

@ -3369,6 +3369,7 @@ void CScriptFunctions::Init()
CBotProgram::DefineNum("BuildAutoLab", BUILD_LABO);
CBotProgram::DefineNum("BuildPowerCaptor", BUILD_PARA);
CBotProgram::DefineNum("BuildExchangePost", BUILD_INFO);
CBotProgram::DefineNum("BuildVault", BUILD_SAFE);
CBotProgram::DefineNum("BuildDestroyer", BUILD_DESTROYER);
CBotProgram::DefineNum("FlatGround", BUILD_GFLAT);
CBotProgram::DefineNum("UseFlags", BUILD_FLAG);

View File

@ -536,9 +536,9 @@ bool CObjectInterface::EventProcess(const Event &event)
{
err = m_taskExecutor->StartTaskBuild(OBJECT_INFO);
}
if ( action == EVENT_OBJECT_BDESTROYER )
if ( action == EVENT_OBJECT_BSAFE )
{
err = m_taskExecutor->StartTaskBuild(OBJECT_DESTROYER);
err = m_taskExecutor->StartTaskBuild(OBJECT_SAFE);
}
if ( action == EVENT_OBJECT_GFLAT )
@ -1065,8 +1065,8 @@ bool CObjectInterface::CreateInterface(bool bSelect)
pos.x = ox+sx*5.4f;
pos.y = oy+sy*0.1f;
pw->CreateButton(pos, ddim, 128+41, EVENT_OBJECT_BDESTROYER);
DeadInterface(pw, EVENT_OBJECT_BDESTROYER, m_main->CanBuild(OBJECT_DESTROYER, m_object->GetTeam()));
pw->CreateButton(pos, ddim, 128+47, EVENT_OBJECT_BSAFE);
DeadInterface(pw, EVENT_OBJECT_BSAFE, m_main->CanBuild(OBJECT_SAFE, m_object->GetTeam()));
if ( m_main->IsBuildingEnabled(BUILD_GFLAT) )
{
@ -1520,8 +1520,8 @@ bool CObjectInterface::CreateInterface(bool bSelect)
DeadInterface(pw, EVENT_OBJECT_BPARA, m_main->CanBuild(OBJECT_PARA, m_object->GetTeam()));
pos.x = ox+sx*5.4f;
pw->CreateButton(pos, ddim, 128+41, EVENT_OBJECT_BDESTROYER);
DeadInterface(pw, EVENT_OBJECT_BDESTROYER, m_main->CanBuild(OBJECT_DESTROYER, m_object->GetTeam()));
pw->CreateButton(pos, ddim, 128+47, EVENT_OBJECT_BSAFE);
DeadInterface(pw, EVENT_OBJECT_BSAFE, m_main->CanBuild(OBJECT_SAFE, m_object->GetTeam()));
if ( m_main->IsBuildingEnabled(BUILD_GFLAT) )
{
@ -1823,7 +1823,7 @@ void CObjectInterface::UpdateInterface()
EnableInterface(pw, EVENT_OBJECT_BNUCLEAR, bEnable);
EnableInterface(pw, EVENT_OBJECT_BPARA, bEnable);
EnableInterface(pw, EVENT_OBJECT_BINFO, bEnable);
EnableInterface(pw, EVENT_OBJECT_BDESTROYER,bEnable);
EnableInterface(pw, EVENT_OBJECT_BSAFE, bEnable);
}
if ( type == OBJECT_HUMAN || // can create flags?
@ -1900,7 +1900,7 @@ void CObjectInterface::UpdateInterface()
pb->SetState(STATE_VISIBLE, m_buildInterface);
pb = static_cast< CButton* >(pw->SearchControl(EVENT_OBJECT_BPARA));
pb->SetState(STATE_VISIBLE, m_buildInterface);
pb = static_cast< CButton* >(pw->SearchControl(EVENT_OBJECT_BDESTROYER));
pb = static_cast< CButton* >(pw->SearchControl(EVENT_OBJECT_BSAFE));
pb->SetState(STATE_VISIBLE, m_buildInterface);
pb = static_cast< CButton* >(pw->SearchControl(EVENT_OBJECT_BINFO));
pb->SetState(STATE_VISIBLE, m_buildInterface);