Merge branch 'dev' into dev-physfs

Conflicts:
	data
	src/app/gamedata.cpp
	src/ui/control.cpp
	src/ui/edit.cpp
	src/ui/maindialog.cpp
dev-mp
krzys-h 2014-07-11 15:24:44 +02:00
commit 96d49d84aa
39 changed files with 6369 additions and 6731 deletions

View File

@ -13,7 +13,7 @@ project(colobot C CXX)
set(COLOBOT_VERSION_CODENAME "Gold") set(COLOBOT_VERSION_CODENAME "Gold")
set(COLOBOT_VERSION_MAJOR 0) set(COLOBOT_VERSION_MAJOR 0)
set(COLOBOT_VERSION_MINOR 1) set(COLOBOT_VERSION_MINOR 1)
set(COLOBOT_VERSION_REVISION 2) set(COLOBOT_VERSION_REVISION 3)
# Used on official releases # Used on official releases
#set(COLOBOT_VERSION_RELEASE_CODENAME "-alpha") #set(COLOBOT_VERSION_RELEASE_CODENAME "-alpha")
@ -25,9 +25,11 @@ if(DEFINED COLOBOT_VERSION_UNRELEASED)
if(EXISTS "${CMAKE_SOURCE_DIR}/.git") if(EXISTS "${CMAKE_SOURCE_DIR}/.git")
find_package(Git) find_package(Git)
execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
OUTPUT_VARIABLE GIT_BRANCH OUTPUT_VARIABLE GIT_BRANCH
OUTPUT_STRIP_TRAILING_WHITESPACE) OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
OUTPUT_VARIABLE GIT_REVISION OUTPUT_VARIABLE GIT_REVISION
OUTPUT_STRIP_TRAILING_WHITESPACE) OUTPUT_STRIP_TRAILING_WHITESPACE)
set(COLOBOT_VERSION_UNRELEASED "${COLOBOT_VERSION_UNRELEASED}-git-${GIT_BRANCH}~r${GIT_REVISION}") set(COLOBOT_VERSION_UNRELEASED "${COLOBOT_VERSION_UNRELEASED}-git-${GIT_BRANCH}~r${GIT_REVISION}")

2
data

@ -1 +1 @@
Subproject commit aa3b09f4dfbc0d6fae888f528dae724e8fbedf31 Subproject commit bacf4c9dac9efc817907ab4e172231d3396a421d

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-12-27 17:09+0100\n" "POT-Creation-Date: 2014-07-10 16:50+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -255,9 +255,6 @@ msgstr ""
msgid "Previous" msgid "Previous"
msgstr "" msgstr ""
msgid "Menu (\\key quit;)"
msgstr ""
msgid "Exercises\\Programming exercises" msgid "Exercises\\Programming exercises"
msgstr "" msgstr ""
@ -641,6 +638,9 @@ msgstr ""
msgid "Take off to finish the mission" msgid "Take off to finish the mission"
msgstr "" msgstr ""
msgid "Destroy"
msgstr ""
msgid "Build a derrick" msgid "Build a derrick"
msgstr "" msgstr ""
@ -680,6 +680,9 @@ msgstr ""
msgid "Build a exchange post" msgid "Build a exchange post"
msgstr "" msgstr ""
msgid "Build a destroyer"
msgstr ""
msgid "Show if the ground is flat" msgid "Show if the ground is flat"
msgstr "" msgstr ""
@ -809,6 +812,9 @@ msgstr ""
msgid "Shoot (\\key action;)" msgid "Shoot (\\key action;)"
msgstr "" msgstr ""
msgid "Explode (\\key action;)"
msgstr ""
msgid "Recycle (\\key action;)" msgid "Recycle (\\key action;)"
msgstr "" msgstr ""
@ -1280,6 +1286,9 @@ msgstr ""
msgid "Lunar Roving Vehicle" msgid "Lunar Roving Vehicle"
msgstr "" msgstr ""
msgid "Internal error - tell the developers"
msgstr ""
msgid "Unknown command" msgid "Unknown command"
msgstr "" msgstr ""
@ -1340,6 +1349,12 @@ msgstr ""
msgid "Too close to a building" msgid "Too close to a building"
msgstr "" msgstr ""
msgid "Can not produce this object in this mission"
msgstr ""
msgid "Can not produce not researched object"
msgstr ""
msgid "Ground inappropriate" msgid "Ground inappropriate"
msgstr "" msgstr ""
@ -1445,6 +1460,12 @@ msgstr ""
msgid "No flag nearby" msgid "No flag nearby"
msgstr "" msgstr ""
msgid "Not found anything to destroy"
msgstr ""
msgid "Inappropriate object"
msgstr ""
msgid "" msgid ""
"The mission is not accomplished yet (press \\key help; for more details)" "The mission is not accomplished yet (press \\key help; for more details)"
msgstr "" msgstr ""
@ -1789,10 +1810,6 @@ msgstr ""
msgid "speed20;" msgid "speed20;"
msgstr "" msgstr ""
#, c-format
msgid "GetResource event num out of range: %d\n"
msgstr ""
msgid "Ctrl" msgid "Ctrl"
msgstr "" msgstr ""
@ -1810,4 +1827,3 @@ msgstr ""
msgid "%1" msgid "%1"
msgstr "" msgstr ""

3048
po/de.po

File diff suppressed because it is too large Load Diff

3046
po/fr.po

File diff suppressed because it is too large Load Diff

3141
po/pl.po

File diff suppressed because it is too large Load Diff

3069
po/ru.po

File diff suppressed because it is too large Load Diff

View File

@ -67,7 +67,6 @@ void InitializeEventTypeTexts()
EVENT_TYPE_TEXT[EVENT_BUTTON_CANCEL] = "EVENT_BUTTON_CANCEL"; EVENT_TYPE_TEXT[EVENT_BUTTON_CANCEL] = "EVENT_BUTTON_CANCEL";
EVENT_TYPE_TEXT[EVENT_BUTTON_NEXT] = "EVENT_BUTTON_NEXT"; EVENT_TYPE_TEXT[EVENT_BUTTON_NEXT] = "EVENT_BUTTON_NEXT";
EVENT_TYPE_TEXT[EVENT_BUTTON_PREV] = "EVENT_BUTTON_PREV"; EVENT_TYPE_TEXT[EVENT_BUTTON_PREV] = "EVENT_BUTTON_PREV";
EVENT_TYPE_TEXT[EVENT_BUTTON_QUIT] = "EVENT_BUTTON_QUIT";
EVENT_TYPE_TEXT[EVENT_BUTTON0] = "EVENT_BUTTON0"; EVENT_TYPE_TEXT[EVENT_BUTTON0] = "EVENT_BUTTON0";
EVENT_TYPE_TEXT[EVENT_BUTTON1] = "EVENT_BUTTON1"; EVENT_TYPE_TEXT[EVENT_BUTTON1] = "EVENT_BUTTON1";
@ -170,7 +169,6 @@ void InitializeEventTypeTexts()
EVENT_TYPE_TEXT[EVENT_INTERFACE_READ] = "EVENT_INTERFACE_READ"; EVENT_TYPE_TEXT[EVENT_INTERFACE_READ] = "EVENT_INTERFACE_READ";
EVENT_TYPE_TEXT[EVENT_INTERFACE_ABORT] = "EVENT_INTERFACE_ABORT"; EVENT_TYPE_TEXT[EVENT_INTERFACE_ABORT] = "EVENT_INTERFACE_ABORT";
EVENT_TYPE_TEXT[EVENT_INTERFACE_USER] = "EVENT_INTERFACE_USER"; EVENT_TYPE_TEXT[EVENT_INTERFACE_USER] = "EVENT_INTERFACE_USER";
EVENT_TYPE_TEXT[EVENT_INTERFACE_TEEN] = "EVENT_INTERFACE_TEEN";
EVENT_TYPE_TEXT[EVENT_INTERFACE_CHAP] = "EVENT_INTERFACE_CHAP"; EVENT_TYPE_TEXT[EVENT_INTERFACE_CHAP] = "EVENT_INTERFACE_CHAP";
EVENT_TYPE_TEXT[EVENT_INTERFACE_LIST] = "EVENT_INTERFACE_LIST"; EVENT_TYPE_TEXT[EVENT_INTERFACE_LIST] = "EVENT_INTERFACE_LIST";

View File

@ -90,7 +90,6 @@ enum EventType
EVENT_BUTTON_CANCEL = 41, EVENT_BUTTON_CANCEL = 41,
EVENT_BUTTON_NEXT = 42, EVENT_BUTTON_NEXT = 42,
EVENT_BUTTON_PREV = 43, EVENT_BUTTON_PREV = 43,
EVENT_BUTTON_QUIT = 44,
EVENT_BUTTON0 = 50, EVENT_BUTTON0 = 50,
EVENT_BUTTON1 = 51, EVENT_BUTTON1 = 51,
@ -193,7 +192,6 @@ enum EventType
EVENT_INTERFACE_READ = 411, EVENT_INTERFACE_READ = 411,
EVENT_INTERFACE_ABORT = 412, EVENT_INTERFACE_ABORT = 412,
EVENT_INTERFACE_USER = 413, EVENT_INTERFACE_USER = 413,
EVENT_INTERFACE_TEEN = 414,
EVENT_INTERFACE_CHAP = 420, EVENT_INTERFACE_CHAP = 420,
EVENT_INTERFACE_LIST = 421, EVENT_INTERFACE_LIST = 421,

View File

@ -428,3 +428,44 @@ bool CImage::SavePNG(const std::string& fileName)
return true; return true;
} }
void CImage::SetDataPixels(void *pixels){
Uint8* srcPixels = static_cast<Uint8*> (pixels);
Uint8* resultPixels = static_cast<Uint8*> (m_data->surface->pixels);
Uint32 pitch = m_data->surface->pitch;
for(int line = 0; line < m_data->surface->h; ++line) {
Uint32 pos = line * pitch;
memcpy(&resultPixels[pos], &srcPixels[pos], pitch);
}
}
void CImage::flipVertically(){
SDL_Surface* result = SDL_CreateRGBSurface( m_data->surface->flags,
m_data->surface->w,
m_data->surface->h,
m_data->surface->format->BytesPerPixel * 8,
m_data->surface->format->Rmask,
m_data->surface->format->Gmask,
m_data->surface->format->Bmask,
m_data->surface->format->Amask);
assert(result != nullptr);
Uint8* srcPixels = static_cast<Uint8*> (m_data->surface->pixels);
Uint8* resultPixels = static_cast<Uint8*> (result->pixels);
Uint32 pitch = m_data->surface->pitch;
Uint32 pxLength = pitch*m_data->surface->h;
for(int line = 0; line < m_data->surface->h; ++line) {
Uint32 pos = line * pitch;
memcpy(&resultPixels[pos], &srcPixels[(pxLength-pos)-pitch], pitch);
}
SDL_FreeSurface(m_data->surface);
m_data->surface = result;
}

View File

@ -109,6 +109,12 @@ public:
//! Returns the last error //! Returns the last error
std::string GetError(); std::string GetError();
//! Flips the image vertically
void flipVertically();
//! sets/replaces the pixels from the surface
void SetDataPixels(void *pixels);
private: private:
//! Blit to new RGBA surface with given size //! Blit to new RGBA surface with given size
void BlitToNewRGBASurface(int width, int height); void BlitToNewRGBASurface(int width, int height);

View File

@ -192,18 +192,6 @@ void TimeToAscii(time_t time, char *buffer)
year = when.tm_year+1900; year = when.tm_year+1900;
if ( year < 2000 ) year -= 1900; if ( year < 2000 ) year -= 1900;
else year -= 2000; else year -= 2000;
/* TODO
#if _FRENCH
sprintf(buffer, "%.2d.%.2d.%.2d %.2d:%.2d",
when.tm_mday, when.tm_mon+1, year,
when.tm_hour, when.tm_min);
#endif
#if _GERMAN | _WG
sprintf(buffer, "%.2d.%.2d.%.2d %.2d:%.2d",
when.tm_mday, when.tm_mon+1, year,
when.tm_hour, when.tm_min);
#endif
#if _ENGLISH*/
char format[10]; char format[10];
int hour; int hour;
@ -222,12 +210,6 @@ void TimeToAscii(time_t time, char *buffer)
sprintf(buffer, "%.2d.%.2d.%.2d %.2d:%.2d %s", sprintf(buffer, "%.2d.%.2d.%.2d %.2d:%.2d %s",
when.tm_mon+1, when.tm_mday, year, when.tm_mon+1, when.tm_mday, year,
hour, when.tm_min, format); hour, when.tm_min, format);
/*#endif
#if _POLISH
sprintf(buffer, "%.2d.%.2d.%.2d %.2d:%.2d",
when.tm_mday, when.tm_mon+1, year,
when.tm_hour, when.tm_min);
#endif*/
} }
// Converting time to string. // Converting time to string.

View File

@ -61,7 +61,6 @@ void InitializeRestext()
stringsText[RT_TITLE_DEFI] = "Challenges"; stringsText[RT_TITLE_DEFI] = "Challenges";
stringsText[RT_TITLE_MISSION] = "Missions"; stringsText[RT_TITLE_MISSION] = "Missions";
stringsText[RT_TITLE_FREE] = "Free game"; stringsText[RT_TITLE_FREE] = "Free game";
stringsText[RT_TITLE_TEEN] = "Free game";
stringsText[RT_TITLE_USER] = "User levels"; stringsText[RT_TITLE_USER] = "User levels";
stringsText[RT_TITLE_SETUP] = "Options"; stringsText[RT_TITLE_SETUP] = "Options";
stringsText[RT_TITLE_NAME] = "Player's name"; stringsText[RT_TITLE_NAME] = "Player's name";
@ -80,7 +79,6 @@ void InitializeRestext()
stringsText[RT_PLAY_LISTm] = " Missions on this planet:"; stringsText[RT_PLAY_LISTm] = " Missions on this planet:";
stringsText[RT_PLAY_LISTf] = " Free game on this planet:"; stringsText[RT_PLAY_LISTf] = " Free game on this planet:";
stringsText[RT_PLAY_LISTu] = " Missions on this level:"; stringsText[RT_PLAY_LISTu] = " Missions on this level:";
stringsText[RT_PLAY_LISTk] = " Free game on this chapter:";
stringsText[RT_PLAY_RESUME] = " Summary:"; stringsText[RT_PLAY_RESUME] = " Summary:";
stringsText[RT_SETUP_DEVICE] = " Drivers:"; stringsText[RT_SETUP_DEVICE] = " Drivers:";
@ -141,7 +139,6 @@ void InitializeRestext()
stringsEvent[EVENT_BUTTON_CANCEL] = "Cancel"; stringsEvent[EVENT_BUTTON_CANCEL] = "Cancel";
stringsEvent[EVENT_BUTTON_NEXT] = "Next"; stringsEvent[EVENT_BUTTON_NEXT] = "Next";
stringsEvent[EVENT_BUTTON_PREV] = "Previous"; stringsEvent[EVENT_BUTTON_PREV] = "Previous";
stringsEvent[EVENT_BUTTON_QUIT] = "Menu (\\key quit;)";
stringsEvent[EVENT_DIALOG_OK] = "OK"; stringsEvent[EVENT_DIALOG_OK] = "OK";
stringsEvent[EVENT_DIALOG_CANCEL] = "Cancel"; stringsEvent[EVENT_DIALOG_CANCEL] = "Cancel";
@ -150,7 +147,6 @@ void InitializeRestext()
stringsEvent[EVENT_INTERFACE_DEFI] = "Challenges\\Programming challenges"; stringsEvent[EVENT_INTERFACE_DEFI] = "Challenges\\Programming challenges";
stringsEvent[EVENT_INTERFACE_MISSION] = "Missions\\Select mission"; stringsEvent[EVENT_INTERFACE_MISSION] = "Missions\\Select mission";
stringsEvent[EVENT_INTERFACE_FREE] = "Free game\\Free game without a specific goal"; stringsEvent[EVENT_INTERFACE_FREE] = "Free game\\Free game without a specific goal";
stringsEvent[EVENT_INTERFACE_TEEN] = "Free game\\Free game without a specific goal";
stringsEvent[EVENT_INTERFACE_USER] = "User\\User levels"; stringsEvent[EVENT_INTERFACE_USER] = "User\\User levels";
stringsEvent[EVENT_INTERFACE_NAME] = "Change player\\Change player"; stringsEvent[EVENT_INTERFACE_NAME] = "Change player\\Change player";
stringsEvent[EVENT_INTERFACE_SETUP] = "Options\\Preferences"; stringsEvent[EVENT_INTERFACE_SETUP] = "Options\\Preferences";

View File

@ -72,7 +72,6 @@ enum ResTextType
RT_TITLE_WRITE = 50, RT_TITLE_WRITE = 50,
RT_TITLE_READ = 51, RT_TITLE_READ = 51,
RT_TITLE_USER = 52, RT_TITLE_USER = 52,
RT_TITLE_TEEN = 53,
RT_PLAY_CHAPt = 60, RT_PLAY_CHAPt = 60,
RT_PLAY_CHAPd = 61, RT_PLAY_CHAPd = 61,
@ -86,7 +85,6 @@ enum ResTextType
RT_PLAY_CHAPu = 71, RT_PLAY_CHAPu = 71,
RT_PLAY_LISTu = 72, RT_PLAY_LISTu = 72,
RT_PLAY_CHAPte = 73, RT_PLAY_CHAPte = 73,
RT_PLAY_LISTk = 74,
RT_SETUP_DEVICE = 80, RT_SETUP_DEVICE = 80,
RT_SETUP_MODE = 81, RT_SETUP_MODE = 81,

View File

@ -400,6 +400,9 @@ public:
virtual void SetFillMode(FillMode mode) = 0; virtual void SetFillMode(FillMode mode) = 0;
//! Returns the current fill mode //! Returns the current fill mode
virtual FillMode GetFillMode() = 0; virtual FillMode GetFillMode() = 0;
//! Returns the pixels of the entire screen
virtual void* GetFrameBufferPixels()const = 0;
}; };

View File

@ -82,7 +82,9 @@ struct VertexCol
Math::Vector coord; Math::Vector coord;
Color color; Color color;
explicit VertexCol(Math::Vector aCoord = Math::Vector(), VertexCol() = default;
explicit VertexCol(Math::Vector aCoord,
Color aColor = Color()) Color aColor = Color())
: coord(aCoord), color(aColor) {} : coord(aCoord), color(aColor) {}

View File

@ -593,9 +593,6 @@ void CCamera::EffectFrame(const Event &event)
dist = Math::Norm((dist - 100.f) / 100.0f); dist = Math::Norm((dist - 100.f) / 100.0f);
force *= 1.0f-dist; force *= 1.0f-dist;
#if _TEEN
force *= 2.0f;
#endif
m_effectOffset *= force; m_effectOffset *= force;
if (m_effectProgress >= 1.0f) if (m_effectProgress >= 1.0f)

View File

@ -423,9 +423,20 @@ void CEngine::FrameUpdate()
bool CEngine::WriteScreenShot(const std::string& fileName, int width, int height) bool CEngine::WriteScreenShot(const std::string& fileName, int width, int height)
{ {
// TODO write screenshot: not very important for now void *pixels = m_device->GetFrameBufferPixels();
GetLogger()->Debug("CEngine::WriteSceenShot(): stub!\n"); CImage img({width,height});
return true;
img.SetDataPixels(pixels);
img.flipVertically();
if ( img.SavePNG(fileName.c_str()) ){
GetLogger()->Info("Save SceenShot Saved Successfully!\n");
return true;
}
else{
GetLogger()->Error("%s!\n",img.GetError().c_str());
return false;
}
} }
bool CEngine::GetPause() bool CEngine::GetPause()

View File

@ -1791,6 +1791,19 @@ FillMode CGLDevice::GetFillMode()
return FILL_POINT; return FILL_POINT;
} }
void* CGLDevice::GetFrameBufferPixels()const{
GLubyte* pixels = new GLubyte [4 * m_config.size.x * m_config.size.y];
glReadPixels(0, 0, m_config.size.x, m_config.size.y, GL_RGBA, GL_UNSIGNED_BYTE, pixels);
unsigned int* p = static_cast<unsigned int*> ( static_cast<void*>(pixels) );
for (int i = 0; i < m_config.size.x * m_config.size.y; ++i)
p[i] |= 0xFF000000;
return static_cast<void*>(p);
}
} // namespace Gfx } // namespace Gfx

View File

@ -188,6 +188,8 @@ public:
virtual void SetFillMode(FillMode mode) ; virtual void SetFillMode(FillMode mode) ;
virtual FillMode GetFillMode(); virtual FillMode GetFillMode();
virtual void* GetFrameBufferPixels()const;
private: private:
//! Updates internal modelview matrix //! Updates internal modelview matrix
void UpdateModelviewMatrix(); void UpdateModelviewMatrix();

View File

@ -1356,11 +1356,7 @@ void CAutoBase::BeginTransit()
} }
else else
{ {
#if _DEMO
m_bgBack = "back46b.png"; // paintings
#else
m_bgBack = "back46.png"; // paintings m_bgBack = "back46.png"; // paintings
#endif
} }
m_engine->SetFogStart(0.9f); // hardly any fog m_engine->SetFogStart(0.9f); // hardly any fog

View File

@ -1789,9 +1789,6 @@ bool CBrain::CreateInterface(bool bSelect)
pos.x = ox+sx*13.4f; pos.x = ox+sx*13.4f;
pos.y = oy+sy*0; pos.y = oy+sy*0;
#if _TEEN
pw->CreateButton(pos, dim, 9, EVENT_OBJECT_RESET);
#else
if ( m_object->GetTrainer() ) // Training? if ( m_object->GetTrainer() ) // Training?
{ {
pw->CreateButton(pos, dim, 9, EVENT_OBJECT_RESET); pw->CreateButton(pos, dim, 9, EVENT_OBJECT_RESET);
@ -1800,7 +1797,6 @@ bool CBrain::CreateInterface(bool bSelect)
{ {
pw->CreateButton(pos, dim, 10, EVENT_OBJECT_DESELECT); pw->CreateButton(pos, dim, 10, EVENT_OBJECT_DESELECT);
} }
#endif
if ( type == OBJECT_MOBILEfa || if ( type == OBJECT_MOBILEfa ||
type == OBJECT_MOBILEta || type == OBJECT_MOBILEta ||
@ -2459,17 +2455,10 @@ void CBrain::UpdateScript(Ui::CWindow *pw)
char name[100]; char name[100];
char title[100]; char title[100];
int i; int i;
bool bSoluce;
pl = static_cast< Ui::CList* >(pw->SearchControl(EVENT_OBJECT_PROGLIST)); pl = static_cast< Ui::CList* >(pw->SearchControl(EVENT_OBJECT_PROGLIST));
if ( pl == 0 ) return; if ( pl == 0 ) return;
#if _SCHOOL
bSoluce = m_main->GetSoluce4();
#else
bSoluce = true;
#endif
for ( i=0 ; i<BRAINMAXSCRIPT ; i++ ) for ( i=0 ; i<BRAINMAXSCRIPT ; i++ )
{ {
sprintf(name, "%d", i+1); sprintf(name, "%d", i+1);
@ -2477,10 +2466,6 @@ void CBrain::UpdateScript(Ui::CWindow *pw)
if ( m_script[i] != 0 ) if ( m_script[i] != 0 )
{ {
m_script[i]->GetTitle(title); m_script[i]->GetTitle(title);
if ( !bSoluce && i == 3 )
{
title[0] = 0;
}
if ( title[0] != 0 ) if ( title[0] != 0 )
{ {
sprintf(name, "%d: %s", i+1, title); sprintf(name, "%d: %s", i+1, title);
@ -2490,11 +2475,6 @@ void CBrain::UpdateScript(Ui::CWindow *pw)
pl->SetItemName(i, name); pl->SetItemName(i, name);
} }
if ( !bSoluce )
{
pl->SetEnable(3, false);
}
pl->SetSelect(m_selScript); pl->SetSelect(m_selScript);
pl->ShowSelect(true); pl->ShowSelect(true);
} }

View File

@ -860,8 +860,6 @@ CRobotMain::CRobotMain(CApplication* app, bool loadProfile)
CBotProgram::DefineNum("ResearchSubber", RESEARCH_SUBM); CBotProgram::DefineNum("ResearchSubber", RESEARCH_SUBM);
CBotProgram::DefineNum("ResearchSniffer", RESEARCH_SNIFFER); CBotProgram::DefineNum("ResearchSniffer", RESEARCH_SNIFFER);
//? CBotProgram::
CBotProgram::DefineNum("PolskiPortalColobota", 1337); CBotProgram::DefineNum("PolskiPortalColobota", 1337);
CBotClass* bc; CBotClass* bc;
@ -1084,9 +1082,6 @@ void CRobotMain::ChangePhase(Phase phase)
m_sound->StopMusic(0.0f); m_sound->StopMusic(0.0f);
m_camera->SetControllingObject(0); m_camera->SetControllingObject(0);
/* TODO: #if _SCHOOL
if ( true )
#else*/
if (m_gameTime > 10.0f) // did you play at least 10 seconds? if (m_gameTime > 10.0f) // did you play at least 10 seconds?
{ {
int rank = m_dialog->GetSceneRank(); int rank = m_dialog->GetSceneRank();
@ -1173,12 +1168,6 @@ void CRobotMain::ChangePhase(Phase phase)
m_cmdEdit = false; // hidden for now m_cmdEdit = false; // hidden for now
// Creates the speedometer. // Creates the speedometer.
/* TODO: #if _TEEN
dim.x = 30.0f/640.0f;
dim.y = 20.0f/480.0f;
pos.x = 4.0f/640.0f;
pos.y = 454.0f/480.0f;
#else*/
dim.x = 30.0f/640.0f; dim.x = 30.0f/640.0f;
dim.y = 20.0f/480.0f; dim.y = 20.0f/480.0f;
pos.x = 4.0f/640.0f; pos.x = 4.0f/640.0f;
@ -1225,14 +1214,6 @@ void CRobotMain::ChangePhase(Phase phase)
m_app->ResetTimeAfterLoading(); m_app->ResetTimeAfterLoading();
/*Math::Point ddim;
pos.x = 620.0f/640.0f;
pos.y = 460.0f/480.0f;
ddim.x = 20.0f/640.0f;
ddim.y = 20.0f/480.0f;
m_interface->CreateButton(pos, ddim, 11, EVENT_BUTTON_QUIT);*/
if (m_immediatSatCom && !loading && if (m_immediatSatCom && !loading &&
m_infoFilename[SATCOM_HUSTON][0] != 0) m_infoFilename[SATCOM_HUSTON][0] != 0)
StartDisplayInfo(SATCOM_HUSTON, false); // shows the instructions StartDisplayInfo(SATCOM_HUSTON, false); // shows the instructions
@ -1250,10 +1231,6 @@ void CRobotMain::ChangePhase(Phase phase)
} }
else else
{ {
/* TODO: #if _TEEN
m_winTerminate = (m_endingWinRank == 900);
m_dialog->SetSceneName("teenw");
#else*/
m_winTerminate = (m_endingWinRank == 904); m_winTerminate = (m_endingWinRank == 904);
m_dialog->SetSceneName("win"); m_dialog->SetSceneName("win");
@ -1267,16 +1244,6 @@ void CRobotMain::ChangePhase(Phase phase)
if (m_winTerminate) if (m_winTerminate)
{ {
/* TODO: #if _TEEN
pos.x = ox+sx*3; pos.y = oy+sy*1;
ddim.x = dim.x*15; ddim.y = dim.y*2;
pe = m_interface->CreateEdit(pos, ddim, 0, EVENT_EDIT0);
pe->SetFontType(FONT_COLOBOT);
pe->SetEditCap(false);
pe->SetHiliteCap(false);
pe->ReadText("help/teenw.txt");
#else*/
pos.x = ox+sx*3; pos.y = oy+sy*0.2f; pos.x = ox+sx*3; pos.y = oy+sy*0.2f;
ddim.x = dim.x*15; ddim.y = dim.y*3.0f; ddim.x = dim.x*15; ddim.y = dim.y*3.0f;
pe = m_interface->CreateEdit(pos, ddim, 0, EVENT_EDIT0); pe = m_interface->CreateEdit(pos, ddim, 0, EVENT_EDIT0);
@ -1662,18 +1629,6 @@ bool CRobotMain::ProcessEvent(Event &event)
m_cameraZoom = 0.0f; m_cameraZoom = 0.0f;
break; break;
case EVENT_BUTTON_QUIT:
if (m_movie->IsExist())
StartDisplayInfo(SATCOM_HUSTON, false);
else if (m_winDelay > 0.0f)
ChangePhase(PHASE_WIN);
else if (m_lostDelay > 0.0f)
ChangePhase(PHASE_LOST);
else
m_dialog->StartAbort(); // do you want to leave?
break;
case EVENT_OBJECT_LIMIT: case EVENT_OBJECT_LIMIT:
StartShowLimit(); StartShowLimit();
break; break;
@ -2107,9 +2062,6 @@ void CRobotMain::ExecuteCmd(char *cmd)
return; return;
} }
/* TODO: #if _TEEN
if (strcmp(cmd, "allteens") == 0)
#else*/
if (strcmp(cmd, "allmission") == 0) if (strcmp(cmd, "allmission") == 0)
{ {
m_showAll = !m_showAll; m_showAll = !m_showAll;
@ -2216,12 +2168,6 @@ void CRobotMain::StartDisplayInfo(const char *filename, int index)
m_sound->MuteAll(true); m_sound->MuteAll(true);
} }
Ui::CButton* pb = static_cast<Ui::CButton*>(m_interface->SearchControl(EVENT_BUTTON_QUIT));
if (pb != nullptr)
{
pb->ClearState(Ui::STATE_VISIBLE);
}
bool soluce = m_dialog->GetSceneSoluce(); bool soluce = m_dialog->GetSceneSoluce();
m_displayInfo = new Ui::CDisplayInfo(); m_displayInfo = new Ui::CDisplayInfo();
@ -2250,10 +2196,6 @@ void CRobotMain::StopDisplayInfo()
if (!m_editLock) if (!m_editLock)
{ {
Ui::CButton* pb = static_cast<Ui::CButton*>(m_interface->SearchControl(EVENT_BUTTON_QUIT));
if (pb != nullptr)
pb->SetState(Ui::STATE_VISIBLE);
SelectObject(m_infoObject, false); // gives the command buttons SelectObject(m_infoObject, false); // gives the command buttons
m_displayText->HideText(false); m_displayText->HideText(false);
@ -2291,20 +2233,12 @@ void CRobotMain::StartSuspend()
m_infoObject = DeselectAll(); // removes the control buttons m_infoObject = DeselectAll(); // removes the control buttons
m_displayText->HideText(true); m_displayText->HideText(true);
Ui::CButton* pb = static_cast<Ui::CButton*>(m_interface->SearchControl(EVENT_BUTTON_QUIT));
if (pb != nullptr)
pb->ClearState(Ui::STATE_VISIBLE);
m_suspend = true; m_suspend = true;
} }
//! End of dialogue during the game //! End of dialogue during the game
void CRobotMain::StopSuspend() void CRobotMain::StopSuspend()
{ {
Ui::CButton* pb = static_cast<Ui::CButton*>(m_interface->SearchControl(EVENT_BUTTON_QUIT));
if (pb != nullptr)
pb->SetState(Ui::STATE_VISIBLE);
SelectObject(m_infoObject, false); // gives the command buttons SelectObject(m_infoObject, false); // gives the command buttons
m_map->ShowMap(m_mapShow); m_map->ShowMap(m_mapShow);
m_displayText->HideText(false); m_displayText->HideText(false);
@ -4770,9 +4704,6 @@ void CRobotMain::CreateScene(bool soluce, bool fixScene, bool resetObject)
{ {
sprintf(op, "script%d", i+1); // script1..script10 sprintf(op, "script%d", i+1); // script1..script10
OpString(line, op, name); OpString(line, op, name);
/* TODO: #if _SCHOOL
if ( !m_dialog->GetSoluce4() && i == 3 ) continue;
#endif*/
if (name[0] != 0) if (name[0] != 0)
brain->SetScriptName(i, name); brain->SetScriptName(i, name);

View File

@ -44,7 +44,6 @@ enum Phase
PHASE_DEFI, PHASE_DEFI,
PHASE_MISSION, PHASE_MISSION,
PHASE_FREE, PHASE_FREE,
PHASE_TEEN,
PHASE_USER, PHASE_USER,
PHASE_LOADING, PHASE_LOADING,
PHASE_SIMUL, PHASE_SIMUL,

View File

@ -76,15 +76,9 @@ bool CTaskTerraform::EventProcess(const Event &event)
{ {
if ( m_soundChannel == -1 ) if ( m_soundChannel == -1 )
{ {
#if _TEEN
m_soundChannel = m_sound->Play(SOUND_GGG, m_object->GetPosition(0), 1.0f, 0.5f, true);
m_sound->AddEnvelope(m_soundChannel, 1.0f, 2.0f, 1.5f, SOPER_CONTINUE);
m_sound->AddEnvelope(m_soundChannel, 0.0f, 0.5f, 0.5f, SOPER_STOP);
#else
m_soundChannel = m_sound->Play(SOUND_GGG, m_object->GetPosition(0), 1.0f, 0.5f, true); m_soundChannel = m_sound->Play(SOUND_GGG, m_object->GetPosition(0), 1.0f, 0.5f, true);
m_sound->AddEnvelope(m_soundChannel, 1.0f, 2.0f, 4.0f, SOPER_CONTINUE); m_sound->AddEnvelope(m_soundChannel, 1.0f, 2.0f, 4.0f, SOPER_CONTINUE);
m_sound->AddEnvelope(m_soundChannel, 0.0f, 0.5f, 0.5f, SOPER_STOP); m_sound->AddEnvelope(m_soundChannel, 0.0f, 0.5f, 0.5f, SOPER_STOP);
#endif
} }
dir.x = 0.0f; dir.x = 0.0f;
@ -109,11 +103,7 @@ bool CTaskTerraform::EventProcess(const Event &event)
if ( m_phase == TTP_DOWN ) if ( m_phase == TTP_DOWN )
{ {
pos.x = 9.0f; pos.x = 9.0f;
#if _TEEN
pos.y = 4.0f-m_progress*4.0f;
#else
pos.y = 4.0f-m_progress*5.8f; pos.y = 4.0f-m_progress*5.8f;
#endif
pos.z = 0.0f; pos.z = 0.0f;
m_object->SetPosition(2, pos); m_object->SetPosition(2, pos);
} }
@ -121,11 +111,7 @@ bool CTaskTerraform::EventProcess(const Event &event)
if ( m_phase == TTP_UP ) if ( m_phase == TTP_UP )
{ {
pos.x = 9.0f; pos.x = 9.0f;
#if _TEEN
pos.y = 4.0f-(1.0f-m_progress)*4.0f;
#else
pos.y = 4.0f-(1.0f-m_progress)*5.8f; pos.y = 4.0f-(1.0f-m_progress)*5.8f;
#endif
pos.z = 0.0f; pos.z = 0.0f;
m_object->SetPosition(2, pos); m_object->SetPosition(2, pos);
} }
@ -230,11 +216,7 @@ Error CTaskTerraform::Start()
m_phase = TTP_CHARGE; m_phase = TTP_CHARGE;
m_progress = 0.0f; m_progress = 0.0f;
#if _TEEN
m_speed = 1.0f/1.5f;
#else
m_speed = 1.0f/4.0f; m_speed = 1.0f/4.0f;
#endif
m_time = 0.0f; m_time = 0.0f;
m_bError = false; // ok m_bError = false; // ok
@ -261,9 +243,6 @@ Error CTaskTerraform::IsEnded()
if ( m_phase == TTP_CHARGE ) if ( m_phase == TTP_CHARGE )
{ {
#if _TEEN
Terraform(); // changes the terrain.
#endif
m_phase = TTP_DOWN; m_phase = TTP_DOWN;
m_speed = 1.0f/0.2f; m_speed = 1.0f/0.2f;
@ -272,9 +251,7 @@ Error CTaskTerraform::IsEnded()
if ( m_phase == TTP_DOWN ) if ( m_phase == TTP_DOWN )
{ {
#if !_TEEN
Terraform(); // changes the terrain. Terraform(); // changes the terrain.
#endif
m_object->SetCirVibration(Math::Vector(0.0f, 0.0f, 0.0f)); m_object->SetCirVibration(Math::Vector(0.0f, 0.0f, 0.0f));
m_object->SetZoom(0, 1.0f); m_object->SetZoom(0, 1.0f);

View File

@ -2581,16 +2581,10 @@ int CPhysics::ObjectAdapt(const Math::Vector &pos, const Math::Vector &angle)
(oType >= OBJECT_MUSHROOM1 && oType <= OBJECT_MUSHROOM2) ) continue; (oType >= OBJECT_MUSHROOM1 && oType <= OBJECT_MUSHROOM2) ) continue;
} }
/* TODO: #if _TEEN
if ( oType == OBJECT_WAYPOINT &&
pObj->GetEnable() &&
!m_object->GetResetBusy() ) // driving vehicle?
#else */
if ( oType == OBJECT_WAYPOINT && if ( oType == OBJECT_WAYPOINT &&
pObj->GetEnable() && pObj->GetEnable() &&
!m_object->GetResetBusy() && !m_object->GetResetBusy() &&
m_object->GetTrainer() ) // driving vehicle? m_object->GetTrainer() ) // driving vehicle?
/* #endif */
{ {
oPos = pObj->GetPosition(0); oPos = pObj->GetPosition(0);
distance = Math::DistanceProjected(oPos, iPos); distance = Math::DistanceProjected(oPos, iPos);
@ -2996,15 +2990,15 @@ void CPhysics::FrameParticle(float aTime, float rTime)
{ {
Math::Vector pos; Math::Vector pos;
CObject* power; CObject* power;
float energy, intensity; float energy/*, intensity*/;
int effectLight; int effectLight;
bool bFlash; //bool bFlash;
m_restBreakParticle -= rTime; m_restBreakParticle -= rTime;
if ( aTime-m_lastPowerParticle < m_engine->ParticleAdapt(0.05f) ) return; if ( aTime-m_lastPowerParticle < m_engine->ParticleAdapt(0.05f) ) return;
m_lastPowerParticle = aTime; m_lastPowerParticle = aTime;
bFlash = false; //bFlash = false;
energy = 0.0f; energy = 0.0f;
power = m_object->GetPower(); power = m_object->GetPower();
@ -3018,7 +3012,7 @@ void CPhysics::FrameParticle(float aTime, float rTime)
if ( energy > m_lastEnergy ) // recharge? if ( energy > m_lastEnergy ) // recharge?
{ {
PowerParticle(1.0f, false); PowerParticle(1.0f, false);
bFlash = true; //bFlash = true;
} }
if ( energy == 0.0f || m_lastEnergy == 0.0f ) if ( energy == 0.0f || m_lastEnergy == 0.0f )
@ -3032,7 +3026,7 @@ void CPhysics::FrameParticle(float aTime, float rTime)
if ( m_restBreakParticle > 0.0f ) if ( m_restBreakParticle > 0.0f )
{ {
PowerParticle(m_restBreakParticle/2.5f, (energy == 0)); PowerParticle(m_restBreakParticle/2.5f, (energy == 0));
bFlash = true; //bFlash = true;
} }
effectLight = m_object->GetEffectLight(); effectLight = m_object->GetEffectLight();

View File

@ -2865,7 +2865,6 @@ bool CScript::rShield(CBotVar* var, CBotVar* result, int& exception, void* user)
CBotTypResult CScript::cFire(CBotVar* &var, void* user) CBotTypResult CScript::cFire(CBotVar* &var, void* user)
{ {
#if 0
CObject* pThis = static_cast<CObject *>(user); CObject* pThis = static_cast<CObject *>(user);
ObjectType type; ObjectType type;
@ -2873,23 +2872,25 @@ CBotTypResult CScript::cFire(CBotVar* &var, void* user)
if ( type == OBJECT_ANT ) if ( type == OBJECT_ANT )
{ {
return cOnePoint(var, user); if ( var == 0 ) return CBotTypResult(CBotErrLowParam);
CBotTypResult ret = cPoint(var, user);
if ( ret.GetType() != 0 ) return ret;
if ( var != 0 ) return CBotTypResult(CBotErrOverParam);
} }
else if ( type == OBJECT_SPIDER ) else if ( type == OBJECT_SPIDER )
{ {
return cNull(var, user); if ( var != 0 ) return CBotTypResult(CBotErrOverParam);
} }
else else
{ {
if ( var == 0 ) return CBotTypResult(CBotTypFloat); if ( var != 0 )
if ( var->GetType() > CBotTypDouble ) return CBotTypResult(CBotErrBadNum); {
var = var->GetNext(); if ( var->GetType() > CBotTypDouble ) return CBotTypResult(CBotErrBadNum);
if ( var != 0 ) return CBotTypResult(CBotErrOverParam); var = var->GetNext();
return CBotTypResult(CBotTypFloat); if ( var != 0 ) return CBotTypResult(CBotErrOverParam);
}
} }
#else
return CBotTypResult(CBotTypFloat); return CBotTypResult(CBotTypFloat);
#endif
} }
// Instruction "fire(delay)". // Instruction "fire(delay)".
@ -2925,6 +2926,7 @@ bool CScript::rFire(CBotVar* var, CBotVar* result, int& exception, void* user)
{ {
if ( var == 0 ) delay = 0.0f; if ( var == 0 ) delay = 0.0f;
else delay = var->GetValFloat(); else delay = var->GetValFloat();
if ( delay < 0.0f ) delay = -delay;
err = script->m_primaryTask->StartTaskFire(delay); err = script->m_primaryTask->StartTaskFire(delay);
} }

View File

@ -141,38 +141,7 @@ void CColor::Draw()
m_engine->SetTexture("interface/button1.png"); m_engine->SetTexture("interface/button1.png");
m_engine->SetState(Gfx::ENG_RSTATE_NORMAL); m_engine->SetState(Gfx::ENG_RSTATE_NORMAL);
CControl::Draw(); CControl::Draw();
#if _TEEN
// color = GetColor(m_color);
color = GetColor();
m_engine->SetTexture(""); // no texture
m_engine->SetState(Gfx::ENG_RSTATE_NORMAL);
device = m_engine->GetDevice();
p1.x = m_pos.x + (4.0f / 640.0f);
p1.y = m_pos.y + (4.0f / 480.0f);
p2.x = m_pos.x + m_dim.x - (4.0f / 640.0f);
p2.y = m_pos.y + m_dim.y - (4.0f / 480.0f);
vertex[0] = Gfx::Vertex(Math::Vector(p1.x, p1.y, 0.0f), 0x00000000,0x00000000, Math::Point( 0.0f, 0.0f));
vertex[1] = Gfx::Vertex(Math::Vector(p1.x, p2.y, 0.0f), 0x00000000,0x00000000, Math::Point( 0.0f, 0.0f));
vertex[2] = Gfx::Vertex(Math::Vector(p2.x, p1.y, 0.0f), 0x00000000,0x00000000, Math::Point( 0.0f, 0.0f));
vertex[3] = Gfx::Vertex(Math::Vector(p2.x, p2.y, 0.0f), 0x00000000,0x00000000, Math::Point( 0.0f, 0.0f));
device->DrawPrimitive(Gfx::PRIMITIVE_TRIANGLE_STRIP, vertex, 4);
p1.x = m_pos.x + (5.0f / 640.0f);
p1.y = m_pos.y + (5.0f / 480.0f);
p2.x = m_pos.x + m_dim.x - (5.0f / 640.0f);
p2.y = m_pos.y + m_dim.y - (5.0f / 480.0f);
vertex[0] = Gfx::Vertex(Math::Vector(p1.x, p1.y, 0.0f), color,0x00000000, Math::Point( 0.0f, 0.0f));
vertex[1] = Gfx::Vertex(Math::Vector(p1.x, p2.y, 0.0f), color,0x00000000, Math::Point( 0.0f, 0.0f));
vertex[2] = Gfx::Vertex(Math::Vector(p2.x, p1.y, 0.0f), color,0x00000000, Math::Point( 0.0f, 0.0f));
vertex[3] = Gfx::Vertex(Math::Vector(p2.x, p2.y, 0.0f), color,0x00000000, Math::Point( 0.0f, 0.0f));
device->DrawPrimitive(Gfx::PRIMITIVE_TRIANGLE_STRIP, vertex, 4);
m_engine->AddStatisticTriangle(4);
#else
p1.x = m_pos.x + (3.0f / 640.0f); p1.x = m_pos.x + (3.0f / 640.0f);
p1.y = m_pos.y + (3.0f / 480.0f); p1.y = m_pos.y + (3.0f / 480.0f);
p2.x = m_pos.x + m_dim.x - (3.0f / 640.0f); p2.x = m_pos.x + m_dim.x - (3.0f / 640.0f);
@ -191,7 +160,6 @@ void CColor::Draw()
device = m_engine->GetDevice(); device = m_engine->GetDevice();
device->DrawPrimitive(Gfx::PRIMITIVE_TRIANGLE_STRIP, vertex, 4); device->DrawPrimitive(Gfx::PRIMITIVE_TRIANGLE_STRIP, vertex, 4);
m_engine->AddStatisticTriangle(2); m_engine->AddStatisticTriangle(2);
#endif
} }

View File

@ -506,11 +506,7 @@ void CControl::Draw()
if ( icon >= 192 ) if ( icon >= 192 )
{ {
icon -= 192; icon -= 192;
#if _POLISH
m_engine->SetTexture("interface/textp.png");
#else
m_engine->SetTexture("interface/text.png"); m_engine->SetTexture("interface/text.png");
#endif
m_engine->SetState(Gfx::ENG_RSTATE_TTEXTURE_WHITE); m_engine->SetState(Gfx::ENG_RSTATE_TTEXTURE_WHITE);
} }
else if ( icon >= 128 ) else if ( icon >= 128 )

View File

@ -388,13 +388,7 @@ void CDisplayInfo::StartDisplayInfo(std::string filename, int index, bool bSoluc
button = pw->CreateButton(pos, dim, 128+57, EVENT_SATCOM_HUSTON); button = pw->CreateButton(pos, dim, 128+57, EVENT_SATCOM_HUSTON);
button->SetState(STATE_SHADOW); button->SetState(STATE_SHADOW);
#if _TEEN
#if !_ENGLISH
button = pw->CreateButton(pos, dim, 46, EVENT_SATCOM_SAT);
#endif
#else
button = pw->CreateButton(pos, dim, 128+58, EVENT_SATCOM_SAT); button = pw->CreateButton(pos, dim, 128+58, EVENT_SATCOM_SAT);
#endif
button->SetState(STATE_SHADOW); button->SetState(STATE_SHADOW);
//? button = pw->CreateButton(pos, dim, 128+59, EVENT_SATCOM_OBJECT); //? button = pw->CreateButton(pos, dim, 128+59, EVENT_SATCOM_OBJECT);
//? button->SetState(STATE_SHADOW); //? button->SetState(STATE_SHADOW);

View File

@ -1225,11 +1225,7 @@ void CEdit::DrawPart(Math::Point pos, Math::Point dim, int icon)
Math::Point uv1, uv2; Math::Point uv1, uv2;
float dp; float dp;
#if _POLISH
m_engine->SetTexture("interface/textp.png");
#else
m_engine->SetTexture("interface/text.png"); m_engine->SetTexture("interface/text.png");
#endif
m_engine->SetState(Gfx::ENG_RSTATE_NORMAL); m_engine->SetState(Gfx::ENG_RSTATE_NORMAL);
uv1.x = (16.0f/256.0f)*(icon%16); uv1.x = (16.0f/256.0f)*(icon%16);

View File

@ -161,9 +161,6 @@ CMainDialog::CMainDialog()
m_bMovies = true; m_bMovies = true;
m_bNiceReset = true; m_bNiceReset = true;
m_bHimselfDamage = true; m_bHimselfDamage = true;
/* TODO: #if _TEEN
m_bCameraScroll = false;
#else*/
m_bCameraScroll = true; m_bCameraScroll = true;
m_bCameraInvertX = false; m_bCameraInvertX = false;
@ -248,9 +245,6 @@ void CMainDialog::ChangePhase(Phase phase)
pos.y = 0.10f; pos.y = 0.10f;
ddim.x = 0.30f; ddim.x = 0.30f;
ddim.y = 0.80f; ddim.y = 0.80f;
/* TODO: #if _TEEN
pw = m_interface->CreateWindows(pos, ddim, 12, EVENT_WINDOW5);
#else*/
pw = m_interface->CreateWindows(pos, ddim, 10, EVENT_WINDOW5); pw = m_interface->CreateWindows(pos, ddim, 10, EVENT_WINDOW5);
GetResource(RES_TEXT, RT_TITLE_INIT, name); GetResource(RES_TEXT, RT_TITLE_INIT, name);
@ -266,22 +260,7 @@ void CMainDialog::ChangePhase(Phase phase)
ddim.x = 0.30f; ddim.x = 0.30f;
ddim.y = 0.30f; ddim.y = 0.30f;
pw->CreateGroup(pos, ddim, 4, EVENT_INTERFACE_GLINTr); // blue corner pw->CreateGroup(pos, ddim, 4, EVENT_INTERFACE_GLINTr); // blue corner
/* TODO: #if _SCHOOL
ddim.x = 0.20f;
ddim.y = dim.y*2.4f;
pos.x = 0.40f;
pos.y = oy+sy*7.9f;
pg = pw->CreateGroup(pos, ddim, 24, EVENT_LABEL1); // orange
pg->SetState(STATE_SHADOW);
pos.y = oy+sy*3.9f;
pg = pw->CreateGroup(pos, ddim, 25, EVENT_LABEL1); // orange
pg->SetState(STATE_SHADOW);
ddim.y = dim.y*1.2f;
pos.y = oy+sy*1.9f;
pg = pw->CreateGroup(pos, ddim, 26, EVENT_LABEL1); // red
pg->SetState(STATE_SHADOW);
#else */
ddim.x = 0.20f; ddim.x = 0.20f;
ddim.y = dim.y*2.4f; ddim.y = dim.y*2.4f;
pos.x = 0.40f; pos.x = 0.40f;
@ -301,26 +280,7 @@ void CMainDialog::ChangePhase(Phase phase)
pos.y = oy+sy*1.9f; pos.y = oy+sy*1.9f;
pg = pw->CreateGroup(pos, ddim, 26, EVENT_LABEL1); // red pg = pw->CreateGroup(pos, ddim, 26, EVENT_LABEL1); // red
pg->SetState(STATE_SHADOW); pg->SetState(STATE_SHADOW);
/* TODO: #if _SCHOOL
ddim.x = 0.18f;
ddim.y = dim.y*1;
pos.x = 0.41f;
pos.y = oy+sy*9.1f;
pb = pw->CreateButton(pos, ddim, -1, EVENT_INTERFACE_TRAINER);
pb->SetState(STATE_SHADOW);
pos.y = oy+sy*8.0f;
#if _TEEN
pb = pw->CreateButton(pos, ddim, -1, EVENT_INTERFACE_TEEN);
#else
pb = pw->CreateButton(pos, ddim, -1, EVENT_INTERFACE_DEFI);
#endif
#if _CEEBOTDEMO
pb->ClearState(STATE_ENABLE);
#endif
pb->SetState(STATE_SHADOW);
#else */
ddim.x = 0.18f; ddim.x = 0.18f;
ddim.y = dim.y*1; ddim.y = dim.y*1;
pos.x = 0.41f; pos.x = 0.41f;
@ -357,20 +317,14 @@ pb->SetState(STATE_SHADOW);
pb->SetState(STATE_SHADOW); pb->SetState(STATE_SHADOW);
#if DEV_BUILD #if DEV_BUILD
// TODO: #if !_DEMO & !_SCHOOL
if ( m_accessEnable && m_accessUser ) if ( m_accessEnable && m_accessUser )
{ {
pos.x = 447.0f/640.0f; pos.x = 447.0f/640.0f;
pos.y = 313.0f/480.0f; pos.y = 313.0f/480.0f;
ddim.x = 0.09f; ddim.x = 0.09f;
/*#if _POLISH
pos.x -= 5.0f/640.0f;
ddim.x += 10.0f/640.0f;
#endif*/
pb = pw->CreateButton(pos, ddim, -1, EVENT_INTERFACE_USER); pb = pw->CreateButton(pos, ddim, -1, EVENT_INTERFACE_USER);
pb->SetState(STATE_SHADOW); pb->SetState(STATE_SHADOW);
} }
// #endif
#endif #endif
/*pos.x = 139.0f/640.0f; /*pos.x = 139.0f/640.0f;
@ -409,19 +363,6 @@ pb->SetState(STATE_SHADOW);
GetResource(RES_TEXT, RT_TITLE_NAME, name); GetResource(RES_TEXT, RT_TITLE_NAME, name);
pw->SetName(name); pw->SetName(name);
/* TODO: #if _NEWLOOK
pos.x = 80.0f/640.0f;
pos.y = 93.0f/480.0f;
ddim.x = 285.0f/640.0f;
ddim.y = 266.0f/480.0f;
pg = pw->CreateGroup(pos, ddim, 23, EVENT_LABEL1); // blue
pg->SetState(STATE_SHADOW);
pos.x = 372.0f/640.0f;
ddim.x = 188.0f/640.0f;
pg = pw->CreateGroup(pos, ddim, 26, EVENT_LABEL1); // violet
pg->SetState(STATE_SHADOW);
#endif*/
pos.x = 0.10f; pos.x = 0.10f;
pos.y = 0.40f; pos.y = 0.40f;
ddim.x = 0.50f; ddim.x = 0.50f;
@ -529,15 +470,6 @@ pb->SetState(STATE_SHADOW);
GetResource(RES_TEXT, RT_TITLE_PERSO, name); GetResource(RES_TEXT, RT_TITLE_PERSO, name);
pw->SetName(name); pw->SetName(name);
/* TODO: #if _NEWLOOK
pos.x = 95.0f/640.0f;
pos.y = 66.0f/480.0f;
ddim.x = 443.0f/640.0f;
ddim.y = 42.0f/480.0f;
pg = pw->CreateGroup(pos, ddim, 26, EVENT_LABEL1); // violet
pg->SetState(STATE_SHADOW);
#endif*/
pos.x = 0.10f; pos.x = 0.10f;
pos.y = 0.40f; pos.y = 0.40f;
ddim.x = 0.50f; ddim.x = 0.50f;
@ -772,7 +704,6 @@ pb->SetState(STATE_SHADOW);
m_phase == PHASE_DEFI || m_phase == PHASE_DEFI ||
m_phase == PHASE_MISSION || m_phase == PHASE_MISSION ||
m_phase == PHASE_FREE || m_phase == PHASE_FREE ||
m_phase == PHASE_TEEN ||
m_phase == PHASE_USER ) m_phase == PHASE_USER )
{ {
if ( m_phase == PHASE_TRAINER ) m_index = 0; if ( m_phase == PHASE_TRAINER ) m_index = 0;
@ -780,7 +711,6 @@ pb->SetState(STATE_SHADOW);
if ( m_phase == PHASE_MISSION ) m_index = 2; if ( m_phase == PHASE_MISSION ) m_index = 2;
if ( m_phase == PHASE_FREE ) m_index = 3; if ( m_phase == PHASE_FREE ) m_index = 3;
if ( m_phase == PHASE_USER ) m_index = 4; if ( m_phase == PHASE_USER ) m_index = 4;
if ( m_phase == PHASE_TEEN ) m_index = 6;
if ( m_phase == PHASE_FREE ) if ( m_phase == PHASE_FREE )
{ {
@ -793,7 +723,6 @@ pb->SetState(STATE_SHADOW);
if ( m_phase == PHASE_DEFI ) strcpy(m_sceneName, "challenges" ); if ( m_phase == PHASE_DEFI ) strcpy(m_sceneName, "challenges" );
if ( m_phase == PHASE_MISSION ) strcpy(m_sceneName, "missions"); if ( m_phase == PHASE_MISSION ) strcpy(m_sceneName, "missions");
if ( m_phase == PHASE_FREE ) strcpy(m_sceneName, "freemissions"); if ( m_phase == PHASE_FREE ) strcpy(m_sceneName, "freemissions");
if ( m_phase == PHASE_TEEN ) strcpy(m_sceneName, "teen");
if ( m_phase == PHASE_USER ) strcpy(m_sceneName, "user"); if ( m_phase == PHASE_USER ) strcpy(m_sceneName, "user");
ReadGamerInfo(); ReadGamerInfo();
@ -808,34 +737,10 @@ pb->SetState(STATE_SHADOW);
if ( m_phase == PHASE_DEFI ) res = RT_TITLE_DEFI; if ( m_phase == PHASE_DEFI ) res = RT_TITLE_DEFI;
if ( m_phase == PHASE_MISSION ) res = RT_TITLE_MISSION; if ( m_phase == PHASE_MISSION ) res = RT_TITLE_MISSION;
if ( m_phase == PHASE_FREE ) res = RT_TITLE_FREE; if ( m_phase == PHASE_FREE ) res = RT_TITLE_FREE;
if ( m_phase == PHASE_TEEN ) res = RT_TITLE_TEEN;
if ( m_phase == PHASE_USER ) res = RT_TITLE_USER; if ( m_phase == PHASE_USER ) res = RT_TITLE_USER;
GetResource(RES_TEXT, res, name); GetResource(RES_TEXT, res, name);
pw->SetName(name); pw->SetName(name);
/* TODO: #if _NEWLOOK
pos.x = 100.0f/640.0f;
pos.y = 226.0f/480.0f;
ddim.x = 216.0f/640.0f;
ddim.y = 160.0f/480.0f;
pg = pw->CreateGroup(pos, ddim, 23, EVENT_LABEL1); // blue
pg->SetState(STATE_SHADOW);
pos.x = 322.0f/640.0f;
pg = pw->CreateGroup(pos, ddim, 24, EVENT_LABEL1); // cyan
pg->SetState(STATE_SHADOW);
pos.x = 100.0f/640.0f;
pos.y = 122.0f/480.0f;
ddim.x = 438.0f/640.0f;
ddim.y = 98.0f/480.0f;
pg = pw->CreateGroup(pos, ddim, 25, EVENT_LABEL1); // green
pg->SetState(STATE_SHADOW);
pos.y = 66.0f/480.0f;
ddim.y = 42.0f/480.0f;
pg = pw->CreateGroup(pos, ddim, 26, EVENT_LABEL1); // violet
pg->SetState(STATE_SHADOW);
#endif */
pos.x = 0.10f; pos.x = 0.10f;
pos.y = 0.40f; pos.y = 0.40f;
ddim.x = 0.50f; ddim.x = 0.50f;
@ -856,7 +761,6 @@ pb->SetState(STATE_SHADOW);
if ( m_phase == PHASE_DEFI ) res = RT_PLAY_CHAPd; if ( m_phase == PHASE_DEFI ) res = RT_PLAY_CHAPd;
if ( m_phase == PHASE_MISSION ) res = RT_PLAY_CHAPm; if ( m_phase == PHASE_MISSION ) res = RT_PLAY_CHAPm;
if ( m_phase == PHASE_FREE ) res = RT_PLAY_CHAPf; if ( m_phase == PHASE_FREE ) res = RT_PLAY_CHAPf;
if ( m_phase == PHASE_TEEN ) res = RT_PLAY_CHAPte;
if ( m_phase == PHASE_USER ) res = RT_PLAY_CHAPu; if ( m_phase == PHASE_USER ) res = RT_PLAY_CHAPu;
GetResource(RES_TEXT, res, name); GetResource(RES_TEXT, res, name);
pl = pw->CreateLabel(pos, ddim, 0, EVENT_LABEL11, name); pl = pw->CreateLabel(pos, ddim, 0, EVENT_LABEL11, name);
@ -879,7 +783,6 @@ pb->SetState(STATE_SHADOW);
if ( m_phase == PHASE_DEFI ) res = RT_PLAY_LISTd; if ( m_phase == PHASE_DEFI ) res = RT_PLAY_LISTd;
if ( m_phase == PHASE_MISSION ) res = RT_PLAY_LISTm; if ( m_phase == PHASE_MISSION ) res = RT_PLAY_LISTm;
if ( m_phase == PHASE_FREE ) res = RT_PLAY_LISTf; if ( m_phase == PHASE_FREE ) res = RT_PLAY_LISTf;
if ( m_phase == PHASE_TEEN ) res = RT_PLAY_LISTk;
if ( m_phase == PHASE_USER ) res = RT_PLAY_LISTu; if ( m_phase == PHASE_USER ) res = RT_PLAY_LISTu;
GetResource(RES_TEXT, res, name); GetResource(RES_TEXT, res, name);
pl = pw->CreateLabel(pos, ddim, 0, EVENT_LABEL12, name); pl = pw->CreateLabel(pos, ddim, 0, EVENT_LABEL12, name);
@ -916,8 +819,7 @@ pb->SetState(STATE_SHADOW);
// Button displays the "soluce": // Button displays the "soluce":
if ( m_phase != PHASE_TRAINER && if ( m_phase != PHASE_TRAINER &&
m_phase != PHASE_FREE && m_phase != PHASE_FREE )
m_phase != PHASE_TEEN )
{ {
pos.x = ox+sx*9.5f; pos.x = ox+sx*9.5f;
pos.y = oy+sy*5.8f; pos.y = oy+sy*5.8f;
@ -1046,80 +948,6 @@ pb->SetState(STATE_SHADOW);
ddim.y = 0.05f; ddim.y = 0.05f;
pw->CreateGroup(pos, ddim, 3, EVENT_NULL); // transparent -> gray pw->CreateGroup(pos, ddim, 3, EVENT_NULL); // transparent -> gray
/* TODO: #if _NEWLOOK
if ( m_phase == PHASE_SETUPd || // setup/display ?
m_phase == PHASE_SETUPds )
{
pos.x = 100.0f/640.0f;
pos.y = 130.0f/480.0f;
ddim.x = 216.0f/640.0f;
ddim.y = 212.0f/480.0f;
pg = pw->CreateGroup(pos, ddim, 23, EVENT_LABEL1); // blue
pg->SetState(STATE_SHADOW);
pos.x = 324.0f/640.0f;
pg = pw->CreateGroup(pos, ddim, 24, EVENT_LABEL1); // cyan
pg->SetState(STATE_SHADOW);
}
if ( m_phase == PHASE_SETUPg || // setup/graphic ?
m_phase == PHASE_SETUPgs )
{
pos.x = 100.0f/640.0f;
pos.y = 130.0f/480.0f;
ddim.x = 174.0f/640.0f;
ddim.y = 212.0f/480.0f;
pg = pw->CreateGroup(pos, ddim, 23, EVENT_LABEL1); // blue
pg->SetState(STATE_SHADOW);
pos.x = 282.0f/640.0f;
ddim.x = 258.0f/640.0f;
pg = pw->CreateGroup(pos, ddim, 24, EVENT_LABEL1); // cyan
pg->SetState(STATE_SHADOW);
}
if ( m_phase == PHASE_SETUPp || // setup/game ?
m_phase == PHASE_SETUPps )
{
pos.x = 100.0f/640.0f;
pos.y = 130.0f/480.0f;
ddim.x = 226.0f/640.0f;
ddim.y = 212.0f/480.0f;
pg = pw->CreateGroup(pos, ddim, 23, EVENT_LABEL1); // blue
pg->SetState(STATE_SHADOW);
pos.x = 334.0f/640.0f;
ddim.x = 206.0f/640.0f;
pg = pw->CreateGroup(pos, ddim, 24, EVENT_LABEL1); // cyan
pg->SetState(STATE_SHADOW);
}
if ( m_phase == PHASE_SETUPc || // setup/command ?
m_phase == PHASE_SETUPcs )
{
pos.x = 100.0f/640.0f;
pos.y = 125.0f/480.0f;
ddim.x = 440.0f/640.0f;
ddim.y = 222.0f/480.0f;
pg = pw->CreateGroup(pos, ddim, 23, EVENT_LABEL1); // blue
pg->SetState(STATE_SHADOW);
}
if ( m_phase == PHASE_SETUPs || // setup/sound ?
m_phase == PHASE_SETUPss )
{
pos.x = 100.0f/640.0f;
pos.y = 130.0f/480.0f;
ddim.x = 216.0f/640.0f;
ddim.y = 212.0f/480.0f;
pg = pw->CreateGroup(pos, ddim, 23, EVENT_LABEL1); // blue
pg->SetState(STATE_SHADOW);
pos.x = 324.0f/640.0f;
pg = pw->CreateGroup(pos, ddim, 24, EVENT_LABEL1); // cyan
pg->SetState(STATE_SHADOW);
}
pos.x = 100.0f/640.0f;
pos.y = 66.0f/480.0f;
ddim.x = 440.0f/640.0f;
ddim.y = 42.0f/480.0f;
pg = pw->CreateGroup(pos, ddim, 26, EVENT_LABEL1); // violet
pg->SetState(STATE_SHADOW);
#endif */
ddim.x = 0.78f/5-0.01f; ddim.x = 0.78f/5-0.01f;
ddim.y = 0.06f; ddim.y = 0.06f;
pos.x = 0.115f; pos.x = 0.115f;
@ -1350,10 +1178,7 @@ pb->SetState(STATE_SHADOW);
ddim.y = dim.y*1; ddim.y = dim.y*1;
pos.x = ox+sx*10; pos.x = ox+sx*10;
pos.y = oy+sy*2; pos.y = oy+sy*2;
/* TODO: #if _POLISH
ddim.x += 20.0f/640.0f;
pos.x -= 20.0f/640.0f*3.0f;
#endif*/
pb = pw->CreateButton(pos, ddim, -1, EVENT_INTERFACE_MIN); pb = pw->CreateButton(pos, ddim, -1, EVENT_INTERFACE_MIN);
pb->SetState(STATE_SHADOW); pb->SetState(STATE_SHADOW);
pos.x += ddim.x; pos.x += ddim.x;
@ -1376,13 +1201,7 @@ pb->SetState(STATE_SHADOW);
//? pc = pw->CreateCheck(pos, ddim, -1, EVENT_INTERFACE_TOTO); //? pc = pw->CreateCheck(pos, ddim, -1, EVENT_INTERFACE_TOTO);
//? pc->SetState(STATE_SHADOW); //? pc->SetState(STATE_SHADOW);
//? pos.y -= 0.048f; //? pos.y -= 0.048f;
/*TODO: #if _SCHOOL
#if _EDU
pc = pw->CreateCheck(pos, ddim, -1, EVENT_INTERFACE_SOLUCE4);
pc->SetState(STATE_SHADOW);
pos.y -= 0.048f;
#endif
#else*/
pc = pw->CreateCheck(pos, ddim, -1, EVENT_INTERFACE_MOVIES); pc = pw->CreateCheck(pos, ddim, -1, EVENT_INTERFACE_MOVIES);
pc->SetState(STATE_SHADOW); pc->SetState(STATE_SHADOW);
pos.y -= 0.048f; pos.y -= 0.048f;
@ -1504,7 +1323,6 @@ pos.y -= 0.048f;
pl = pw->CreateLabel(pos, ddim, 0, EVENT_LABEL1, name); pl = pw->CreateLabel(pos, ddim, 0, EVENT_LABEL1, name);
pl->SetTextAlign(Gfx::TEXT_ALIGN_LEFT); pl->SetTextAlign(Gfx::TEXT_ALIGN_LEFT);
// TODO: #if (_FULL | _NET) & _SOUNDTRACKS
pos.x = ox+sx*3; pos.x = ox+sx*3;
pos.y = 0.40f; pos.y = 0.40f;
ddim.x = dim.x*4.0f; ddim.x = dim.x*4.0f;
@ -1517,7 +1335,6 @@ pos.y -= 0.048f;
GetResource(RES_EVENT, EVENT_INTERFACE_VOLMUSIC, name); GetResource(RES_EVENT, EVENT_INTERFACE_VOLMUSIC, name);
pl = pw->CreateLabel(pos, ddim, 0, EVENT_LABEL2, name); pl = pw->CreateLabel(pos, ddim, 0, EVENT_LABEL2, name);
pl->SetTextAlign(Gfx::TEXT_ALIGN_LEFT); pl->SetTextAlign(Gfx::TEXT_ALIGN_LEFT);
// #endif
ddim.x = dim.x*3; ddim.x = dim.x*3;
ddim.y = dim.y*1; ddim.y = dim.y*1;
@ -1555,15 +1372,6 @@ pos.y -= 0.048f;
ddim.y = 0.50f; ddim.y = 0.50f;
pw->CreateGroup(pos, ddim, 4, EVENT_INTERFACE_GLINTr); // blue corner pw->CreateGroup(pos, ddim, 4, EVENT_INTERFACE_GLINTr); // blue corner
/* TODO: #if _NEWLOOK
pos.x = 100.0f/640.0f;
pos.y = 66.0f/480.0f;
ddim.x = 438.0f/640.0f;
ddim.y = 42.0f/480.0f;
pg = pw->CreateGroup(pos, ddim, 26, EVENT_LABEL1); // violet
pg->SetState(STATE_SHADOW);
#endif */
pos.x = 290.0f/640.0f; pos.x = 290.0f/640.0f;
ddim.x = 245.0f/640.0f; ddim.x = 245.0f/640.0f;
@ -1639,15 +1447,6 @@ pos.y -= 0.048f;
ddim.y = 0.50f; ddim.y = 0.50f;
pw->CreateGroup(pos, ddim, 4, EVENT_INTERFACE_GLINTr); // blue corner pw->CreateGroup(pos, ddim, 4, EVENT_INTERFACE_GLINTr); // blue corner
/* TODO: #if _NEWLOOK
pos.x = 100.0f/640.0f;
pos.y = 66.0f/480.0f;
ddim.x = 438.0f/640.0f;
ddim.y = 42.0f/480.0f;
pg = pw->CreateGroup(pos, ddim, 26, EVENT_LABEL1); // violet
pg->SetState(STATE_SHADOW);
#endif*/
pos.x = 290.0f/640.0f; pos.x = 290.0f/640.0f;
ddim.x = 245.0f/640.0f; ddim.x = 245.0f/640.0f;
@ -1707,9 +1506,6 @@ pos.y -= 0.048f;
pos.y = 0.10f; pos.y = 0.10f;
ddim.x = 0.30f; ddim.x = 0.30f;
ddim.y = 0.80f; ddim.y = 0.80f;
/*TODO: #if _TEEN
pw = m_interface->CreateWindows(pos, ddim, 12, EVENT_WINDOW5);
#else*/
pw = m_interface->CreateWindows(pos, ddim, 10, EVENT_WINDOW5); pw = m_interface->CreateWindows(pos, ddim, 10, EVENT_WINDOW5);
pw->SetName(" "); pw->SetName(" ");
@ -1818,7 +1614,6 @@ pos.y -= 0.048f;
ddim.y = 0.0f; ddim.y = 0.0f;
pw = m_interface->CreateWindows(pos, ddim, -1, EVENT_WINDOW5); pw = m_interface->CreateWindows(pos, ddim, -1, EVENT_WINDOW5);
// TODO: #if _FULL | _NET
pos.x = 80.0f/640.0f; pos.x = 80.0f/640.0f;
pos.y = 240.0f/480.0f; pos.y = 240.0f/480.0f;
ddim.x = 490.0f/640.0f; ddim.x = 490.0f/640.0f;
@ -1831,54 +1626,6 @@ pos.y -= 0.048f;
pe->SetFontSize(Gfx::FONT_SIZE_SMALL); pe->SetFontSize(Gfx::FONT_SIZE_SMALL);
pe->ReadText(std::string("help/") + m_app->GetLanguageChar() + std::string("/authors.txt")); pe->ReadText(std::string("help/") + m_app->GetLanguageChar() + std::string("/authors.txt"));
// #endif
/* TODO: #if _SCHOOL
#if _CEEBOTDEMO
pos.x = 80.0f/640.0f;
pos.y = 210.0f/480.0f;
ddim.x = 490.0f/640.0f;
ddim.y = 150.0f/480.0f;
#else
pos.x = 80.0f/640.0f;
pos.y = 200.0f/480.0f;
ddim.x = 490.0f/640.0f;
ddim.y = 150.0f/480.0f;
#endif
pe = pw->CreateEdit(pos, ddim, 0, EVENT_EDIT1);
pe->SetGenericMode(true);
pe->SetEditCap(false);
pe->SetHighlightCap(false);
pe->SetFontType(Gfx::FONT_COURIER);
pe->SetFontSize(Gfx::FONT_SIZE_SMALL);
pe->ReadText("help/authors.txt");*/
/* #if _DEMO
//? pos.x = 80.0f/640.0f;
//? pos.y = 240.0f/480.0f;
//? ddim.x = 490.0f/640.0f;
//? ddim.y = 110.0f/480.0f;
//? pe = pw->CreateEdit(pos, ddim, 0, EVENT_EDIT1);
//? pe->SetGenericMode(true);
//? pe->SetEditCap(false);
//? pe->SetHiliteCap(false);
//? pe->SetFontType(Gfx::FONT_COURIER);
//? pe->SetFontSize(Gfx::FONT_SIZE_SMALL);
//? pe->ReadText("help/demo.txt");
//? pos.x = 80.0f/640.0f;
//? pos.y = 140.0f/480.0f;
//? ddim.x = 490.0f/640.0f;
//? ddim.y = 100.0f/480.0f;
//? pe = pw->CreateEdit(pos, ddim, 0, EVENT_EDIT2);
//? pe->SetGenericMode(true);
//? pe->SetEditCap(false);
//? pe->SetHiliteCap(false);
//? pe->SetFontType(Gfx::FONT_COURIER);
//? pe->SetFontSize(Gfx::FONT_SIZE_SMALL);
//? pe->ReadText("help/authors.txt");
#endif */
// TODO: #if !_DEMO
pos.x = 40.0f/640.0f; pos.x = 40.0f/640.0f;
pos.y = 83.0f/480.0f; pos.y = 83.0f/480.0f;
ddim.x = 246.0f/640.0f; ddim.x = 246.0f/640.0f;
@ -1908,23 +1655,13 @@ pos.y -= 0.048f;
pl = pw->CreateLabel(pos, ddim, 0, EVENT_LABEL4, name); pl = pw->CreateLabel(pos, ddim, 0, EVENT_LABEL4, name);
pl->SetFontType(Gfx::FONT_COURIER); pl->SetFontType(Gfx::FONT_COURIER);
pl->SetFontSize(Gfx::FONT_SIZE_SMALL); pl->SetFontSize(Gfx::FONT_SIZE_SMALL);
// #endif
/* TODO: #if _DEMO
pos.x = 481.0f/640.0f;
pos.y = 51.0f/480.0f;
ddim.x = 30.0f/640.0f;
ddim.y = 30.0f/480.0f;
pb = pw->CreateButton(pos, ddim, 49, EVENT_INTERFACE_ABORT);
pb->SetState(STATE_SHADOW);
#else */
pos.x = 306.0f/640.0f; pos.x = 306.0f/640.0f;
pos.y = 17.0f/480.0f; pos.y = 17.0f/480.0f;
ddim.x = 30.0f/640.0f; ddim.x = 30.0f/640.0f;
ddim.y = 30.0f/480.0f; ddim.y = 30.0f/480.0f;
pb = pw->CreateButton(pos, ddim, 49, EVENT_INTERFACE_ABORT); pb = pw->CreateButton(pos, ddim, 49, EVENT_INTERFACE_ABORT);
pb->SetState(STATE_SHADOW); pb->SetState(STATE_SHADOW);
// #endif
m_engine->SetBackground("interface/generico.png", m_engine->SetBackground("interface/generico.png",
Gfx::Color(0.0f, 0.0f, 0.0f, 0.0f), Gfx::Color(0.0f, 0.0f, 0.0f, 0.0f),
@ -1941,7 +1678,6 @@ pos.y -= 0.048f;
m_phase == PHASE_DEFI || m_phase == PHASE_DEFI ||
m_phase == PHASE_MISSION || m_phase == PHASE_MISSION ||
m_phase == PHASE_FREE || m_phase == PHASE_FREE ||
m_phase == PHASE_TEEN ||
m_phase == PHASE_USER || m_phase == PHASE_USER ||
m_phase == PHASE_SETUPd || m_phase == PHASE_SETUPd ||
m_phase == PHASE_SETUPg || m_phase == PHASE_SETUPg ||
@ -1951,24 +1687,10 @@ pos.y -= 0.048f;
m_phase == PHASE_READ || m_phase == PHASE_READ ||
m_phase == PHASE_LOADING ) m_phase == PHASE_LOADING )
{ {
/*TODO: #if _SCHOOL
#if _TEEN
pos.x = 50.0f/640.0f;
pos.y = 430.0f/480.0f;
ddim.x = 200.0f/640.0f;
ddim.y = 10.0f/480.0f;
#else
pos.x = 450.0f/640.0f;
pos.y = 0.0f/480.0f;
ddim.x = 170.0f/640.0f;
ddim.y = 9.0f/480.0f;
#endif
#else */
pos.x = 540.0f/640.0f; pos.x = 540.0f/640.0f;
pos.y = 9.0f/480.0f; pos.y = 9.0f/480.0f;
ddim.x = 90.0f/640.0f; ddim.x = 90.0f/640.0f;
ddim.y = 10.0f/480.0f; ddim.y = 10.0f/480.0f;
//#endif
//GetResource(RES_TEXT, RT_VERSION_ID, name); //GetResource(RES_TEXT, RT_VERSION_ID, name);
pl = pw->CreateLabel(pos, ddim, 0, EVENT_LABEL1, COLOBOT_VERSION_DISPLAY); pl = pw->CreateLabel(pos, ddim, 0, EVENT_LABEL1, COLOBOT_VERSION_DISPLAY);
pl->SetFontType(Gfx::FONT_COURIER); pl->SetFontType(Gfx::FONT_COURIER);
@ -2076,9 +1798,10 @@ bool CMainDialog::EventProcess(const Event &event)
{ {
m_shotDelay --; m_shotDelay --;
if ( m_shotDelay == 0 ) if ( m_shotDelay == 0 )
{ {
m_engine->WriteScreenShot(m_shotName, 320, 240); Math::IntPoint windowSize = m_engine->GetWindowSize();
//? m_engine->WriteScreenShot(m_shotName, 160, 120);
m_engine->WriteScreenShot(m_shotName, windowSize.x, windowSize.y);
} }
} }
@ -2218,10 +1941,6 @@ bool CMainDialog::EventProcess(const Event &event)
m_main->ChangePhase(PHASE_FREE); m_main->ChangePhase(PHASE_FREE);
break; break;
case EVENT_INTERFACE_TEEN:
m_main->ChangePhase(PHASE_TEEN);
break;
case EVENT_INTERFACE_USER: case EVENT_INTERFACE_USER:
m_main->ChangePhase(PHASE_USER); m_main->ChangePhase(PHASE_USER);
break; break;
@ -2428,7 +2147,6 @@ bool CMainDialog::EventProcess(const Event &event)
m_phase == PHASE_DEFI || m_phase == PHASE_DEFI ||
m_phase == PHASE_MISSION || m_phase == PHASE_MISSION ||
m_phase == PHASE_FREE || m_phase == PHASE_FREE ||
m_phase == PHASE_TEEN ||
m_phase == PHASE_USER ) m_phase == PHASE_USER )
{ {
pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW5)); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW5));
@ -2447,7 +2165,6 @@ bool CMainDialog::EventProcess(const Event &event)
m_phase == PHASE_DEFI || m_phase == PHASE_DEFI ||
m_phase == PHASE_MISSION || m_phase == PHASE_MISSION ||
m_phase == PHASE_FREE || m_phase == PHASE_FREE ||
m_phase == PHASE_TEEN ||
m_phase == PHASE_USER ) m_phase == PHASE_USER )
{ {
switch( event.type ) switch( event.type )
@ -3090,7 +2807,6 @@ void CMainDialog::GlintMove()
m_phase == PHASE_TRAINER || m_phase == PHASE_TRAINER ||
m_phase == PHASE_MISSION || m_phase == PHASE_MISSION ||
m_phase == PHASE_FREE || m_phase == PHASE_FREE ||
m_phase == PHASE_TEEN ||
m_phase == PHASE_USER ) m_phase == PHASE_USER )
{ {
pg = static_cast<CGroup*>(pw->SearchControl(EVENT_INTERFACE_GLINTl)); pg = static_cast<CGroup*>(pw->SearchControl(EVENT_INTERFACE_GLINTl));
@ -3227,8 +2943,6 @@ Math::Vector SoundRand()
void CMainDialog::FrameParticle(float rTime) void CMainDialog::FrameParticle(float rTime)
{ {
/* TODO: #if _NEWLOOK
#else */
Math::Vector pos, speed; Math::Vector pos, speed;
Math::Point dim; Math::Point dim;
float *pParti, *pGlint; float *pParti, *pGlint;
@ -3317,7 +3031,6 @@ void CMainDialog::FrameParticle(float rTime)
m_phase == PHASE_DEFI || m_phase == PHASE_DEFI ||
m_phase == PHASE_MISSION || m_phase == PHASE_MISSION ||
m_phase == PHASE_FREE || m_phase == PHASE_FREE ||
m_phase == PHASE_TEEN ||
m_phase == PHASE_USER || m_phase == PHASE_USER ||
m_phase == PHASE_SETUPd || m_phase == PHASE_SETUPd ||
m_phase == PHASE_SETUPg || m_phase == PHASE_SETUPg ||
@ -4690,7 +4403,6 @@ void CMainDialog::AllMissionUpdate()
m_phase == PHASE_DEFI || m_phase == PHASE_DEFI ||
m_phase == PHASE_MISSION || m_phase == PHASE_MISSION ||
m_phase == PHASE_FREE || m_phase == PHASE_FREE ||
m_phase == PHASE_TEEN ||
m_phase == PHASE_USER ) m_phase == PHASE_USER )
{ {
UpdateSceneChap(m_chap[m_index]); UpdateSceneChap(m_chap[m_index]);
@ -4876,21 +4588,6 @@ void CMainDialog::UpdateSceneList(int chap, int &sel)
for ( j=0 ; j<99 ; j++ ) for ( j=0 ; j<99 ; j++ )
{ {
/* TODO: #if _SCHOOL
if ( m_phase == PHASE_MISSION ) break;
if ( m_phase == PHASE_FREE ) break;
#if _CEEBOTDEMO
#if _TEEN
if ( m_phase == PHASE_TRAINER && j >= 5 ) break;
#else
if ( m_phase == PHASE_TRAINER && j >= 3 ) break;
#endif
#endif
#endif
#if _DEMO
if ( m_phase == PHASE_MISSION && j >= 3 ) break;
if ( m_phase == PHASE_TRAINER && j >= 5 ) break;
#endif */
BuildSceneName(fileName, m_sceneName, (chap+1)*100+(j+1)); BuildSceneName(fileName, m_sceneName, (chap+1)*100+(j+1));
CInputStream stream; CInputStream stream;
@ -4936,14 +4633,6 @@ void CMainDialog::UpdateSceneList(int chap, int &sel)
j ++; j ++;
break; break;
} }
/* TODO: #if _TEEN
if ( m_phase == PHASE_TRAINER && !m_main->GetShowAll() && !bPassed )
{
j ++;
break;
}
#endif*/
} }
/* TODO: ????? /* TODO: ?????
@ -4978,7 +4667,6 @@ void CMainDialog::ShowSoluceUpdate()
m_phase == PHASE_DEFI || m_phase == PHASE_DEFI ||
m_phase == PHASE_MISSION || m_phase == PHASE_MISSION ||
m_phase == PHASE_FREE || m_phase == PHASE_FREE ||
m_phase == PHASE_TEEN ||
m_phase == PHASE_USER ) m_phase == PHASE_USER )
{ {
m_bSceneSoluce = false; m_bSceneSoluce = false;
@ -5572,21 +5260,7 @@ void CMainDialog::SetupMemorize()
GetProfile().SetLocalProfileString("Setup", "KeyMap", key.str()); GetProfile().SetLocalProfileString("Setup", "KeyMap", key.str());
#if _NET
if ( m_accessEnable )
{
iValue = m_accessMission;
SetLocalProfileInt("Setup", "AccessMission", iValue);
iValue = m_accessUser;
SetLocalProfileInt("Setup", "AccessUser", iValue);
}
#endif
GetProfile().SetLocalProfileInt("Setup", "DeleteGamer", m_bDeleteGamer); GetProfile().SetLocalProfileInt("Setup", "DeleteGamer", m_bDeleteGamer);
// TODO: write graphic engine profile
//m_engine->WriteProfile();
} }
// Remember all the settings. // Remember all the settings.
@ -5791,21 +5465,6 @@ void CMainDialog::SetupRecall()
} }
} }
#if _NET
if ( m_accessEnable )
{
if ( GetProfile().GetLocalProfileInt("Setup", "AccessMission", iValue) )
{
m_accessMission = iValue;
}
if ( GetProfile().GetLocalProfileInt("Setup", "AccessUser", iValue) )
{
m_accessUser = iValue;
}
}
#endif
if ( GetProfile().GetLocalProfileInt("Setup", "DeleteGamer", iValue) ) if ( GetProfile().GetLocalProfileInt("Setup", "DeleteGamer", iValue) )
{ {
m_bDeleteGamer = iValue; m_bDeleteGamer = iValue;
@ -6008,10 +5667,6 @@ void CMainDialog::StartAbort()
pos.x = 0.40f; pos.x = 0.40f;
dim.x = 0.20f; dim.x = 0.20f;
/* TODO: #if _POLISH
pos.x -= 7.0f/640.0f;
dim.x += 14.0f/640.0f;
#endif*/
dim.y = 32.0f/480.0f; dim.y = 32.0f/480.0f;
pos.y = 0.74f; pos.y = 0.74f;
@ -6202,12 +5857,6 @@ void CMainDialog::StartDialog(Math::Point dim, bool bFire, bool bOK, bool bCance
pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW8)); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW8));
if ( pw != 0 ) pw->ClearState(STATE_ENABLE); if ( pw != 0 ) pw->ClearState(STATE_ENABLE);
pb = static_cast<CButton*>(m_interface->SearchControl(EVENT_BUTTON_QUIT));
if ( pb != 0 )
{
pb->ClearState(STATE_VISIBLE);
}
m_bDialogFire = bFire; m_bDialogFire = bFire;
std::string name; std::string name;
@ -6390,12 +6039,6 @@ void CMainDialog::StopDialog()
pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW8)); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW8));
if ( pw != 0 ) pw->SetState(STATE_ENABLE); if ( pw != 0 ) pw->SetState(STATE_ENABLE);
pb = static_cast<CButton*>(m_interface->SearchControl(EVENT_BUTTON_QUIT));
if ( pb != 0 )
{
pb->SetState(STATE_VISIBLE);
}
StopSuspend(); StopSuspend();
m_interface->DeleteControl(EVENT_WINDOW9); m_interface->DeleteControl(EVENT_WINDOW9);
m_bDialog = false; m_bDialog = false;

View File

@ -573,10 +573,6 @@ void CStudio::StartEditScript(CScript *script, std::string name, int rank)
m_bRealTime = m_bRunning; m_bRealTime = m_bRunning;
m_script->SetStepMode(!m_bRealTime); m_script->SetStepMode(!m_bRealTime);
button = static_cast< CButton* >(m_interface->SearchControl(EVENT_BUTTON_QUIT));
if (button != nullptr)
button->ClearState(STATE_VISIBLE);
pos = m_editFinalPos = m_editActualPos = m_main->GetWindowPos(); pos = m_editFinalPos = m_editActualPos = m_main->GetWindowPos();
dim = m_editFinalDim = m_editActualDim = m_main->GetWindowDim(); dim = m_editFinalDim = m_editActualDim = m_main->GetWindowDim();
pw = m_interface->CreateWindows(pos, dim, 8, EVENT_WINDOW3); pw = m_interface->CreateWindows(pos, dim, 8, EVENT_WINDOW3);
@ -877,12 +873,6 @@ bool CStudio::StopEditScript(bool bCancel)
m_interface->DeleteControl(EVENT_WINDOW3); m_interface->DeleteControl(EVENT_WINDOW3);
button = static_cast< CButton* >(m_interface->SearchControl(EVENT_BUTTON_QUIT));
if ( button != 0 )
{
button->SetState(STATE_VISIBLE);
}
m_pause->SetPause(m_bInitPause); m_pause->SetPause(m_bInitPause);
m_sound->MuteAll(false); m_sound->MuteAll(false);
m_main->SetEditLock(false, true); m_main->SetEditLock(false, true);
@ -1111,17 +1101,11 @@ void CStudio::StartDialog(StudioDialog type)
GetResource(RES_TEXT, RT_IO_PRIVATE, name); GetResource(RES_TEXT, RT_IO_PRIVATE, name);
pc->SetName(name); pc->SetName(name);
pc->SetState(STATE_SHADOW); pc->SetState(STATE_SHADOW);
#if _POLISH
pc->SetFontSize(8.0f);
#endif
pc = pw->CreateCheck(pos, dim, 0, EVENT_DIALOG_CHECK2); pc = pw->CreateCheck(pos, dim, 0, EVENT_DIALOG_CHECK2);
GetResource(RES_TEXT, RT_IO_PUBLIC, name); GetResource(RES_TEXT, RT_IO_PUBLIC, name);
pc->SetName(name); pc->SetName(name);
pc->SetState(STATE_SHADOW); pc->SetState(STATE_SHADOW);
#if _POLISH
pc->SetFontSize(8.0f);
#endif
pb = pw->CreateButton(pos, dim, -1, EVENT_DIALOG_OK); pb = pw->CreateButton(pos, dim, -1, EVENT_DIALOG_OK);
pb->SetState(STATE_SHADOW); pb->SetState(STATE_SHADOW);

View File

@ -1536,8 +1536,6 @@ void CWindow::DrawVertex(Math::Point pos, Math::Point dim, int icon)
void CWindow::DrawHach(Math::Point pos, Math::Point dim) void CWindow::DrawHach(Math::Point pos, Math::Point dim)
{ {
#if _NEWLOOK
#else
Math::Point ppos, ddim, uv1, uv2; Math::Point ppos, ddim, uv1, uv2;
float dp, max, ndim; float dp, max, ndim;
bool bStop; bool bStop;
@ -1575,7 +1573,6 @@ void CWindow::DrawHach(Math::Point pos, Math::Point dim)
ppos.x += ddim.x; ppos.x += ddim.x;
} }
while ( !bStop ); while ( !bStop );
#endif
} }
} }

View File

@ -78,7 +78,7 @@ void Render(Gfx::CGLDevice *device)
worldMat.LoadIdentity(); worldMat.LoadIdentity();
device->SetTransform(Gfx::TRANSFORM_WORLD, worldMat); device->SetTransform(Gfx::TRANSFORM_WORLD, worldMat);
Gfx::VertexCol line[2] = { Gfx::VertexCol() }; Gfx::VertexCol line[2] = {};
for (int x = -40; x <= 40; ++x) for (int x = -40; x <= 40; ++x)
{ {
@ -103,7 +103,7 @@ void Render(Gfx::CGLDevice *device)
} }
Gfx::VertexCol quad[6] = { Gfx::VertexCol() }; Gfx::VertexCol quad[6] = {};
quad[0].coord = Math::Vector(-1.0f, -1.0f, 0.0f); quad[0].coord = Math::Vector(-1.0f, -1.0f, 0.0f);
quad[1].coord = Math::Vector( 1.0f, -1.0f, 0.0f); quad[1].coord = Math::Vector( 1.0f, -1.0f, 0.0f);

View File

@ -73,7 +73,7 @@ void Render(Gfx::CGLDevice *device)
worldMat.LoadIdentity(); worldMat.LoadIdentity();
device->SetTransform(Gfx::TRANSFORM_WORLD, worldMat); device->SetTransform(Gfx::TRANSFORM_WORLD, worldMat);
Gfx::VertexCol line[2] = { Gfx::VertexCol() }; Gfx::VertexCol line[2] = {};
for (int x = -40; x <= 40; ++x) for (int x = -40; x <= 40; ++x)
{ {
@ -98,7 +98,7 @@ void Render(Gfx::CGLDevice *device)
} }
Gfx::VertexCol quad[6] = { Gfx::VertexCol() }; Gfx::VertexCol quad[6] = {};
for (int i = 0; i < 6; ++i) for (int i = 0; i < 6; ++i)
quad[i].color = Gfx::Color(1.0f, 1.0f, 0.0f); quad[i].color = Gfx::Color(1.0f, 1.0f, 0.0f);

View File

@ -105,4 +105,6 @@ public:
MOCK_METHOD1(SetFillMode, void(Gfx::FillMode mode)); MOCK_METHOD1(SetFillMode, void(Gfx::FillMode mode));
MOCK_METHOD0(GetFillMode, Gfx::FillMode()); MOCK_METHOD0(GetFillMode, Gfx::FillMode());
MOCK_CONST_METHOD0(GetFrameBufferPixels, void*());
}; };

View File

@ -1,4 +1,5 @@
#include "app/app.h" #include "app/app.h"
#include "app/gamedata.h"
#include "ui/edit.h" #include "ui/edit.h"
@ -14,6 +15,7 @@ class CEditTest : public testing::Test
public: public:
CEditTest() CEditTest()
: m_robotMain(nullptr) : m_robotMain(nullptr)
, m_gameData(nullptr)
, m_engine(nullptr) , m_engine(nullptr)
, m_edit(nullptr) , m_edit(nullptr)
{} {}
@ -21,21 +23,24 @@ public:
virtual void SetUp() virtual void SetUp()
{ {
m_robotMain = new CRobotMain(&m_app, false); m_robotMain = new CRobotMain(&m_app, false);
m_gameData = new CGameData();
m_engine = new Gfx::CEngine(nullptr); m_engine = new Gfx::CEngine(nullptr);
m_edit = new Ui::CEdit; m_edit = new Ui::CEdit;
} }
virtual void TearDown() virtual void TearDown()
{ {
delete m_robotMain;
m_robotMain = nullptr;
delete m_engine;
m_engine = nullptr;
delete m_edit; delete m_edit;
m_edit = nullptr; m_edit = nullptr;
delete m_engine;
m_engine = nullptr;
delete m_gameData;
m_gameData = nullptr;
delete m_robotMain;
m_robotMain = nullptr;
} }
virtual ~CEditTest() virtual ~CEditTest()
{ {
@ -45,6 +50,7 @@ public:
protected: protected:
CApplication m_app; CApplication m_app;
CRobotMain* m_robotMain; CRobotMain* m_robotMain;
CGameData * m_gameData;
Gfx::CEngine * m_engine; Gfx::CEngine * m_engine;
Ui::CEdit * m_edit; Ui::CEdit * m_edit;
CLogger m_logger; CLogger m_logger;

View File

@ -21,11 +21,6 @@ CApplication::~CApplication()
{ {
} }
std::string CApplication::GetDataFilePath(DataDir /* dataDir */, const std::string& subpath) const
{
return subpath;
}
CSoundInterface* CApplication::GetSound() CSoundInterface* CApplication::GetSound()
{ {
return nullptr; return nullptr;
@ -36,11 +31,6 @@ CEventQueue* CApplication::GetEventQueue()
return nullptr; return nullptr;
} }
std::string CApplication::GetDataDirPath() const
{
return "";
}
Event CApplication::CreateUpdateEvent() Event CApplication::CreateUpdateEvent()
{ {
return Event(EVENT_NULL); return Event(EVENT_NULL);