Merge of master and dev
parent
cf65681f80
commit
a134cb75c5
|
@ -7,6 +7,32 @@ cmake_minimum_required(VERSION 2.8)
|
||||||
|
|
||||||
project(colobot C CXX)
|
project(colobot C CXX)
|
||||||
|
|
||||||
|
##
|
||||||
|
# Project version
|
||||||
|
##
|
||||||
|
set(COLOBOT_VERSION_CODENAME "Gold")
|
||||||
|
set(COLOBOT_VERSION_MAJOR 0)
|
||||||
|
set(COLOBOT_VERSION_MINOR 1)
|
||||||
|
set(COLOBOT_VERSION_REVISION 0)
|
||||||
|
|
||||||
|
# Comment out when releasing
|
||||||
|
set(COLOBOT_VERSION_UNRELEASED "~pre-alpha")
|
||||||
|
|
||||||
|
# Append git characteristics to version
|
||||||
|
if(DEFINED COLOBOT_VERSION_UNRELEASED AND EXISTS "${CMAKE_SOURCE_DIR}/.git")
|
||||||
|
find_package(Git)
|
||||||
|
execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD
|
||||||
|
OUTPUT_VARIABLE GIT_BRANCH
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD
|
||||||
|
OUTPUT_VARIABLE GIT_REVISION
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
set(COLOBOT_VERSION_UNRELEASED "${COLOBOT_VERSION_UNRELEASED}-git-${GIT_BRANCH}~r${GIT_REVISION}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(COLOBOT_VERSION_FULL "${COLOBOT_VERSION_MAJOR}.${COLOBOT_VERSION_MINOR}.${COLOBOT_VERSION_REVISION}${COLOBOT_VERSION_UNRELEASED}")
|
||||||
|
message(STATUS "Building Colobot \"${COLOBOT_VERSION_CODENAME}\" (${COLOBOT_VERSION_FULL})")
|
||||||
|
|
||||||
# Include cmake directory with some additional scripts
|
# Include cmake directory with some additional scripts
|
||||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${colobot_SOURCE_DIR}/cmake")
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${colobot_SOURCE_DIR}/cmake")
|
||||||
|
|
||||||
|
@ -127,7 +153,7 @@ if(${TESTS})
|
||||||
add_definitions(-DTEST_VIRTUAL=virtual)
|
add_definitions(-DTEST_VIRTUAL=virtual)
|
||||||
enable_testing()
|
enable_testing()
|
||||||
else()
|
else()
|
||||||
add_definitions(-DTEST_VIRTUAL)
|
add_definitions(-DTEST_VIRTUAL=)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
@ -183,11 +209,11 @@ if(${TESTS})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Installation paths defined before compiling sources
|
# Installation paths defined before compiling sources
|
||||||
set(COLOBOT_INSTALL_BIN_DIR ${CMAKE_INSTALL_PREFIX}/games CACHE PATH "Colobot binary directory")
|
set(COLOBOT_INSTALL_BIN_DIR games CACHE PATH "Colobot binary directory")
|
||||||
set(COLOBOT_INSTALL_DATA_DIR ${CMAKE_INSTALL_PREFIX}/share/games/colobot CACHE PATH "Colobot shared data directory")
|
set(COLOBOT_INSTALL_DATA_DIR share/games/colobot CACHE PATH "Colobot shared data directory")
|
||||||
set(COLOBOT_INSTALL_LIB_DIR ${CMAKE_INSTALL_PREFIX}/lib/colobot CACHE PATH "Colobot libraries directory")
|
set(COLOBOT_INSTALL_LIB_DIR lib/colobot CACHE PATH "Colobot libraries directory")
|
||||||
set(COLOBOT_INSTALL_DOC_DIR ${CMAKE_INSTALL_PREFIX}/share/doc/colobot CACHE PATH "Colobot documentation directory")
|
set(COLOBOT_INSTALL_DOC_DIR share/doc/colobot CACHE PATH "Colobot documentation directory")
|
||||||
set(COLOBOT_INSTALL_I18N_DIR ${CMAKE_INSTALL_PREFIX}/share/locale CACHE PATH "Colobot translations directory")
|
set(COLOBOT_INSTALL_I18N_DIR share/locale CACHE PATH "Colobot translations directory")
|
||||||
|
|
||||||
# Subdirectory with sources
|
# Subdirectory with sources
|
||||||
add_subdirectory(src bin)
|
add_subdirectory(src bin)
|
||||||
|
|
|
@ -127,7 +127,8 @@ CBotString::CBotString()
|
||||||
|
|
||||||
CBotString::~CBotString()
|
CBotString::~CBotString()
|
||||||
{
|
{
|
||||||
free(m_ptr); //we can call free on null pointer as it's save
|
delete[] m_ptr;
|
||||||
|
m_ptr = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -138,7 +139,7 @@ CBotString::CBotString(const char* p)
|
||||||
m_ptr = NULL;
|
m_ptr = NULL;
|
||||||
if (m_lg>0)
|
if (m_lg>0)
|
||||||
{
|
{
|
||||||
m_ptr = static_cast<char*>(malloc(m_lg+1));
|
m_ptr = new char[m_lg+1];
|
||||||
strcpy(m_ptr, p);
|
strcpy(m_ptr, p);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -150,7 +151,7 @@ CBotString::CBotString(const CBotString& srcString)
|
||||||
m_ptr = NULL;
|
m_ptr = NULL;
|
||||||
if (m_lg>0)
|
if (m_lg>0)
|
||||||
{
|
{
|
||||||
m_ptr = static_cast<char*>(malloc(m_lg+1));
|
m_ptr = new char[m_lg+1];
|
||||||
strcpy(m_ptr, srcString.m_ptr);
|
strcpy(m_ptr, srcString.m_ptr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -285,12 +286,12 @@ CBotString CBotString::Mid(int start, int lg)
|
||||||
|
|
||||||
if ( lg < 0 ) lg = m_lg - start;
|
if ( lg < 0 ) lg = m_lg - start;
|
||||||
|
|
||||||
char* p = static_cast<char*>(malloc(m_lg+1));
|
char* p = new char[m_lg+1];
|
||||||
strcpy(p, m_ptr+start);
|
strcpy(p, m_ptr+start);
|
||||||
p[lg] = 0;
|
p[lg] = 0;
|
||||||
|
|
||||||
res = p;
|
res = p;
|
||||||
free(p);
|
delete[] p;
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -314,15 +315,16 @@ void CBotString::MakeLower()
|
||||||
|
|
||||||
bool CBotString::LoadString(unsigned int id)
|
bool CBotString::LoadString(unsigned int id)
|
||||||
{
|
{
|
||||||
const char * str = NULL;
|
const char * str = nullptr;
|
||||||
str = MapIdToString(static_cast<EID>(id));
|
str = MapIdToString(static_cast<EID>(id));
|
||||||
if (m_ptr != NULL) free(m_ptr);
|
if (m_ptr != nullptr)
|
||||||
|
delete[] m_ptr;
|
||||||
|
|
||||||
m_lg = strlen(str);
|
m_lg = strlen(str);
|
||||||
m_ptr = NULL;
|
m_ptr = NULL;
|
||||||
if (m_lg > 0)
|
if (m_lg > 0)
|
||||||
{
|
{
|
||||||
m_ptr = static_cast<char*>(malloc(m_lg+1));
|
m_ptr = new char[m_lg+1];
|
||||||
strcpy(m_ptr, str);
|
strcpy(m_ptr, str);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -332,14 +334,14 @@ bool CBotString::LoadString(unsigned int id)
|
||||||
|
|
||||||
const CBotString& CBotString::operator=(const CBotString& stringSrc)
|
const CBotString& CBotString::operator=(const CBotString& stringSrc)
|
||||||
{
|
{
|
||||||
free(m_ptr);
|
delete[] m_ptr;
|
||||||
m_ptr = NULL;
|
m_ptr = nullptr;
|
||||||
|
|
||||||
m_lg = stringSrc.m_lg;
|
m_lg = stringSrc.m_lg;
|
||||||
|
|
||||||
if (m_lg > 0)
|
if (m_lg > 0)
|
||||||
{
|
{
|
||||||
m_ptr = static_cast<char*>(malloc(m_lg+1));
|
m_ptr = new char[m_lg+1];
|
||||||
strcpy(m_ptr, stringSrc.m_ptr);
|
strcpy(m_ptr, stringSrc.m_ptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -355,13 +357,13 @@ CBotString operator+(const CBotString& string, const char * lpsz)
|
||||||
|
|
||||||
const CBotString& CBotString::operator+(const CBotString& stringSrc)
|
const CBotString& CBotString::operator+(const CBotString& stringSrc)
|
||||||
{
|
{
|
||||||
char* p = static_cast<char*>(malloc(m_lg+stringSrc.m_lg+1));
|
char* p = new char[m_lg+stringSrc.m_lg+1];
|
||||||
|
|
||||||
if (m_ptr!=NULL) strcpy(p, m_ptr);
|
if (m_ptr!=NULL) strcpy(p, m_ptr);
|
||||||
char* pp = p + m_lg;
|
char* pp = p + m_lg;
|
||||||
if (stringSrc.m_ptr!=NULL) strcpy(pp, stringSrc.m_ptr);
|
if (stringSrc.m_ptr!=NULL) strcpy(pp, stringSrc.m_ptr);
|
||||||
|
|
||||||
free(m_ptr);
|
delete[] m_ptr;
|
||||||
m_ptr = p;
|
m_ptr = p;
|
||||||
m_lg += stringSrc.m_lg;
|
m_lg += stringSrc.m_lg;
|
||||||
|
|
||||||
|
@ -370,11 +372,11 @@ const CBotString& CBotString::operator+(const CBotString& stringSrc)
|
||||||
|
|
||||||
const CBotString& CBotString::operator=(const char ch)
|
const CBotString& CBotString::operator=(const char ch)
|
||||||
{
|
{
|
||||||
free(m_ptr);
|
delete[] m_ptr;
|
||||||
|
|
||||||
m_lg = 1;
|
m_lg = 1;
|
||||||
|
|
||||||
m_ptr = static_cast<char*>(malloc(2));
|
m_ptr = new char[2];
|
||||||
m_ptr[0] = ch;
|
m_ptr[0] = ch;
|
||||||
m_ptr[1] = 0;
|
m_ptr[1] = 0;
|
||||||
|
|
||||||
|
@ -383,16 +385,16 @@ const CBotString& CBotString::operator=(const char ch)
|
||||||
|
|
||||||
const CBotString& CBotString::operator=(const char* pString)
|
const CBotString& CBotString::operator=(const char* pString)
|
||||||
{
|
{
|
||||||
free(m_ptr);
|
delete[] m_ptr;
|
||||||
m_ptr = NULL;
|
m_ptr = nullptr;
|
||||||
|
|
||||||
if (pString != NULL)
|
if (pString != nullptr)
|
||||||
{
|
{
|
||||||
m_lg = strlen(pString);
|
m_lg = strlen(pString);
|
||||||
|
|
||||||
if (m_lg != 0)
|
if (m_lg != 0)
|
||||||
{
|
{
|
||||||
m_ptr = static_cast<char*>(malloc(m_lg+1));
|
m_ptr = new char[m_lg+1];
|
||||||
strcpy(m_ptr, pString);
|
strcpy(m_ptr, pString);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -403,13 +405,13 @@ const CBotString& CBotString::operator=(const char* pString)
|
||||||
|
|
||||||
const CBotString& CBotString::operator+=(const char ch)
|
const CBotString& CBotString::operator+=(const char ch)
|
||||||
{
|
{
|
||||||
char* p = static_cast<char*>(malloc(m_lg+2));
|
char* p = new char[m_lg+2];
|
||||||
|
|
||||||
if (m_ptr!=NULL) strcpy(p, m_ptr);
|
if (m_ptr != nullptr) strcpy(p, m_ptr);
|
||||||
p[m_lg++] = ch;
|
p[m_lg++] = ch;
|
||||||
p[m_lg] = 0;
|
p[m_lg] = 0;
|
||||||
|
|
||||||
free(m_ptr);
|
delete[] m_ptr;
|
||||||
|
|
||||||
m_ptr = p;
|
m_ptr = p;
|
||||||
|
|
||||||
|
@ -418,7 +420,7 @@ const CBotString& CBotString::operator+=(const char ch)
|
||||||
|
|
||||||
const CBotString& CBotString::operator+=(const CBotString& str)
|
const CBotString& CBotString::operator+=(const CBotString& str)
|
||||||
{
|
{
|
||||||
char* p = static_cast<char*>(malloc(m_lg+str.m_lg+1));
|
char* p = new char[m_lg+str.m_lg+1];
|
||||||
|
|
||||||
strcpy(p, m_ptr);
|
strcpy(p, m_ptr);
|
||||||
char* pp = p + m_lg;
|
char* pp = p + m_lg;
|
||||||
|
@ -426,7 +428,7 @@ const CBotString& CBotString::operator+=(const CBotString& str)
|
||||||
|
|
||||||
m_lg = m_lg + str.m_lg;
|
m_lg = m_lg + str.m_lg;
|
||||||
|
|
||||||
free(m_ptr);
|
delete[] m_ptr;
|
||||||
|
|
||||||
m_ptr = p;
|
m_ptr = p;
|
||||||
|
|
||||||
|
@ -500,8 +502,8 @@ bool CBotString::IsEmpty() const
|
||||||
|
|
||||||
void CBotString::Empty()
|
void CBotString::Empty()
|
||||||
{
|
{
|
||||||
free(m_ptr);
|
delete[] m_ptr;
|
||||||
m_ptr = NULL;
|
m_ptr = nullptr;
|
||||||
m_lg = 0;
|
m_lg = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
165
src/app/app.cpp
165
src/app/app.cpp
|
@ -246,7 +246,7 @@ ParseArgsStatus CApplication::ParseArguments(int argc, char *argv[])
|
||||||
else if (arg == "-help")
|
else if (arg == "-help")
|
||||||
{
|
{
|
||||||
GetLogger()->Message("\n");
|
GetLogger()->Message("\n");
|
||||||
GetLogger()->Message("COLOBOT GOLD pre-alpha\n");
|
GetLogger()->Message("Colobot %s (%s)\n",COLOBOT_CODENAME,COLOBOT_VERSION);
|
||||||
GetLogger()->Message("\n");
|
GetLogger()->Message("\n");
|
||||||
GetLogger()->Message("List of available options:\n");
|
GetLogger()->Message("List of available options:\n");
|
||||||
GetLogger()->Message(" -help this help\n");
|
GetLogger()->Message(" -help this help\n");
|
||||||
|
@ -285,51 +285,16 @@ bool CApplication::Create()
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Gettext initialization */
|
SetLanguage(m_language);
|
||||||
|
|
||||||
std::string locale = "";
|
|
||||||
switch (m_language)
|
|
||||||
{
|
|
||||||
default:
|
|
||||||
case LANGUAGE_ENV:
|
|
||||||
locale = "";
|
|
||||||
break;
|
|
||||||
|
|
||||||
case LANGUAGE_ENGLISH:
|
|
||||||
locale = "en_US.utf8";
|
|
||||||
break;
|
|
||||||
|
|
||||||
case LANGUAGE_GERMAN:
|
|
||||||
locale = "de_DE.utf8";
|
|
||||||
break;
|
|
||||||
|
|
||||||
case LANGUAGE_FRENCH:
|
|
||||||
locale = "fr_FR.utf8";
|
|
||||||
break;
|
|
||||||
|
|
||||||
case LANGUAGE_POLISH:
|
|
||||||
locale = "pl_PL.utf8";
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
std::string langStr = "LANGUAGE=";
|
|
||||||
langStr += locale;
|
|
||||||
strcpy(S_LANGUAGE, langStr.c_str());
|
|
||||||
putenv(S_LANGUAGE);
|
|
||||||
setlocale(LC_ALL, locale.c_str());
|
|
||||||
GetLogger()->Debug("Set locale to '%s'\n", locale.c_str());
|
|
||||||
|
|
||||||
bindtextdomain("colobot", COLOBOT_I18N_DIR);
|
|
||||||
bind_textdomain_codeset("colobot", "UTF-8");
|
|
||||||
textdomain("colobot");
|
|
||||||
|
|
||||||
GetLogger()->Debug("Testing gettext translation: '%s'\n", gettext("Colobot rules!"));
|
|
||||||
|
|
||||||
//Create the sound instance.
|
//Create the sound instance.
|
||||||
if (!GetProfile().InitCurrentDirectory()) {
|
if (!GetProfile().InitCurrentDirectory())
|
||||||
|
{
|
||||||
GetLogger()->Warn("Config not found. Default values will be used!\n");
|
GetLogger()->Warn("Config not found. Default values will be used!\n");
|
||||||
m_sound = new CSoundInterface();
|
m_sound = new CSoundInterface();
|
||||||
} else {
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
std::string path;
|
std::string path;
|
||||||
if (GetProfile().GetLocalProfileString("Resources", "Data", path))
|
if (GetProfile().GetLocalProfileString("Resources", "Data", path))
|
||||||
m_dataPath = path;
|
m_dataPath = path;
|
||||||
|
@ -345,7 +310,7 @@ bool CApplication::Create()
|
||||||
if (GetProfile().GetLocalProfileString("Resources", "Sound", path))
|
if (GetProfile().GetLocalProfileString("Resources", "Sound", path))
|
||||||
m_sound->CacheAll(path);
|
m_sound->CacheAll(path);
|
||||||
else
|
else
|
||||||
m_sound->CacheAll(m_dataPath);
|
m_sound->CacheAll(GetDataSubdirPath(DIR_SOUND));
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string standardInfoMessage =
|
std::string standardInfoMessage =
|
||||||
|
@ -1418,9 +1383,20 @@ std::string CApplication::GetDataDirPath()
|
||||||
return m_dataPath;
|
return m_dataPath;
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string CApplication::GetDataFilePath(DataDir dataDir, const std::string& subpath)
|
std::string CApplication::GetDataSubdirPath(DataDir stdDir)
|
||||||
{
|
{
|
||||||
int index = static_cast<int>(dataDir);
|
int index = static_cast<int>(stdDir);
|
||||||
|
assert(index >= 0 && index < DIR_MAX);
|
||||||
|
std::stringstream str;
|
||||||
|
str << m_dataPath;
|
||||||
|
str << "/";
|
||||||
|
str << m_dataDirs[index];
|
||||||
|
return str.str();
|
||||||
|
}
|
||||||
|
|
||||||
|
std::string CApplication::GetDataFilePath(DataDir stdDir, const std::string& subpath)
|
||||||
|
{
|
||||||
|
int index = static_cast<int>(stdDir);
|
||||||
assert(index >= 0 && index < DIR_MAX);
|
assert(index >= 0 && index < DIR_MAX);
|
||||||
std::stringstream str;
|
std::stringstream str;
|
||||||
str << m_dataPath;
|
str << m_dataPath;
|
||||||
|
@ -1431,23 +1407,104 @@ std::string CApplication::GetDataFilePath(DataDir dataDir, const std::string& su
|
||||||
return str.str();
|
return str.str();
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string CApplication::GetDataFilePath(const std::string& subpath)
|
|
||||||
{
|
|
||||||
std::stringstream str;
|
|
||||||
str << m_dataPath;
|
|
||||||
str << "/";
|
|
||||||
str << subpath;
|
|
||||||
return str.str();
|
|
||||||
}
|
|
||||||
|
|
||||||
Language CApplication::GetLanguage()
|
Language CApplication::GetLanguage()
|
||||||
{
|
{
|
||||||
return m_language;
|
return m_language;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char CApplication::GetLanguageChar()
|
||||||
|
{
|
||||||
|
char langChar = 'E';
|
||||||
|
switch (m_language)
|
||||||
|
{
|
||||||
|
default:
|
||||||
|
case LANGUAGE_ENV:
|
||||||
|
case LANGUAGE_ENGLISH:
|
||||||
|
langChar = 'E';
|
||||||
|
break;
|
||||||
|
|
||||||
|
case LANGUAGE_GERMAN:
|
||||||
|
langChar = 'D';
|
||||||
|
break;
|
||||||
|
|
||||||
|
case LANGUAGE_FRENCH:
|
||||||
|
langChar = 'F';
|
||||||
|
break;
|
||||||
|
|
||||||
|
case LANGUAGE_POLISH:
|
||||||
|
langChar = 'P';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return langChar;
|
||||||
|
}
|
||||||
|
|
||||||
void CApplication::SetLanguage(Language language)
|
void CApplication::SetLanguage(Language language)
|
||||||
{
|
{
|
||||||
m_language = language;
|
m_language = language;
|
||||||
|
|
||||||
|
/* Gettext initialization */
|
||||||
|
|
||||||
|
std::string locale = "";
|
||||||
|
switch (m_language)
|
||||||
|
{
|
||||||
|
default:
|
||||||
|
case LANGUAGE_ENV:
|
||||||
|
locale = "";
|
||||||
|
break;
|
||||||
|
|
||||||
|
case LANGUAGE_ENGLISH:
|
||||||
|
locale = "en_US.utf8";
|
||||||
|
break;
|
||||||
|
|
||||||
|
case LANGUAGE_GERMAN:
|
||||||
|
locale = "de_DE.utf8";
|
||||||
|
break;
|
||||||
|
|
||||||
|
case LANGUAGE_FRENCH:
|
||||||
|
locale = "fr_FR.utf8";
|
||||||
|
break;
|
||||||
|
|
||||||
|
case LANGUAGE_POLISH:
|
||||||
|
locale = "pl_PL.utf8";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (locale.empty())
|
||||||
|
{
|
||||||
|
char *envLang = getenv("LANGUAGE");
|
||||||
|
if (strncmp(envLang,"en",2) == 0)
|
||||||
|
{
|
||||||
|
m_language = LANGUAGE_ENGLISH;
|
||||||
|
}
|
||||||
|
else if (strncmp(envLang,"de",2) == 0)
|
||||||
|
{
|
||||||
|
m_language = LANGUAGE_GERMAN;
|
||||||
|
}
|
||||||
|
else if (strncmp(envLang,"fr",2) == 0)
|
||||||
|
{
|
||||||
|
m_language = LANGUAGE_FRENCH;
|
||||||
|
}
|
||||||
|
else if (strncmp(envLang,"po",2) == 0)
|
||||||
|
{
|
||||||
|
m_language = LANGUAGE_POLISH;
|
||||||
|
}
|
||||||
|
GetLogger()->Trace("SetLanguage: Inherit LANGUAGE=%s from environment\n", envLang);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
std::string langStr = "LANGUAGE=";
|
||||||
|
langStr += locale;
|
||||||
|
strcpy(S_LANGUAGE, langStr.c_str());
|
||||||
|
putenv(S_LANGUAGE);
|
||||||
|
GetLogger()->Trace("SetLanguage: Set LANGUAGE=%s in environment\n", locale.c_str());
|
||||||
|
}
|
||||||
|
setlocale(LC_ALL, "");
|
||||||
|
|
||||||
|
bindtextdomain("colobot", COLOBOT_I18N_DIR);
|
||||||
|
bind_textdomain_codeset("colobot", "UTF-8");
|
||||||
|
textdomain("colobot");
|
||||||
|
|
||||||
|
GetLogger()->Debug("SetLanguage: Test gettext translation: '%s'\n", gettext("Colobot rules!"));
|
||||||
}
|
}
|
||||||
|
|
||||||
void CApplication::SetLowCPU(bool low)
|
void CApplication::SetLowCPU(bool low)
|
||||||
|
|
|
@ -285,15 +285,16 @@ public:
|
||||||
//! Returns the full path to data directory
|
//! Returns the full path to data directory
|
||||||
std::string GetDataDirPath();
|
std::string GetDataDirPath();
|
||||||
|
|
||||||
//! Returns the full path to a file in data directory given standard dir and subpath
|
//! Returns the full path to a standard dir in data directory
|
||||||
std::string GetDataFilePath(DataDir dir, const std::string &subpath);
|
std::string GetDataSubdirPath(DataDir stdDir);
|
||||||
|
|
||||||
//! Returns the full path to a file in data directory given custom subpath in data dir
|
//! Returns the full path to a file in data directory given standard dir and subpath
|
||||||
std::string GetDataFilePath(const std::string &subpath);
|
std::string GetDataFilePath(DataDir stdDir, const std::string &subpath);
|
||||||
|
|
||||||
//! Management of language
|
//! Management of language
|
||||||
//@{
|
//@{
|
||||||
Language GetLanguage();
|
Language GetLanguage();
|
||||||
|
char GetLanguageChar();
|
||||||
void SetLanguage(Language language);
|
void SetLanguage(Language language);
|
||||||
//@}
|
//@}
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,10 @@
|
||||||
#cmakedefine USE_GLEW @USE_GLEW@
|
#cmakedefine USE_GLEW @USE_GLEW@
|
||||||
#cmakedefine GLEW_STATIC
|
#cmakedefine GLEW_STATIC
|
||||||
|
|
||||||
|
#define COLOBOT_VERSION "@COLOBOT_VERSION_FULL@"
|
||||||
|
#define COLOBOT_CODENAME "@COLOBOT_VERSION_CODENAME@"
|
||||||
|
#define COLOBOT_FULLNAME "Colobot @COLOBOT_VERSION_CODENAME@"
|
||||||
|
|
||||||
#define COLOBOT_DEFAULT_DATADIR "@COLOBOT_INSTALL_DATA_DIR@"
|
#define COLOBOT_DEFAULT_DATADIR "@COLOBOT_INSTALL_DATA_DIR@"
|
||||||
#define COLOBOT_I18N_DIR "@COLOBOT_INSTALL_I18N_DIR@"
|
#define COLOBOT_I18N_DIR "@COLOBOT_INSTALL_I18N_DIR@"
|
||||||
|
|
||||||
|
|
|
@ -124,14 +124,14 @@ bool PNGSaveSurface(const char *filename, SDL_Surface *surf)
|
||||||
png_write_info(png_ptr, info_ptr);
|
png_write_info(png_ptr, info_ptr);
|
||||||
png_set_packing(png_ptr);
|
png_set_packing(png_ptr);
|
||||||
|
|
||||||
row_pointers = static_cast<png_bytep*>( malloc(sizeof(png_bytep)*surf->h) );
|
row_pointers = new png_bytep[surf->h];
|
||||||
for (i = 0; i < surf->h; i++)
|
for (i = 0; i < surf->h; i++)
|
||||||
row_pointers[i] = static_cast<png_bytep>( static_cast<Uint8 *>(surf->pixels) ) + i*surf->pitch;
|
row_pointers[i] = static_cast<png_bytep>( static_cast<Uint8 *>(surf->pixels) ) + i*surf->pitch;
|
||||||
png_write_image(png_ptr, row_pointers);
|
png_write_image(png_ptr, row_pointers);
|
||||||
png_write_end(png_ptr, info_ptr);
|
png_write_end(png_ptr, info_ptr);
|
||||||
|
|
||||||
/* Cleaning out... */
|
/* Cleaning out... */
|
||||||
free(row_pointers);
|
delete[] row_pointers;
|
||||||
png_destroy_write_struct(&png_ptr, &info_ptr);
|
png_destroy_write_struct(&png_ptr, &info_ptr);
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
|
|
||||||
|
|
|
@ -17,6 +17,8 @@
|
||||||
|
|
||||||
#include "common/restext.h"
|
#include "common/restext.h"
|
||||||
|
|
||||||
|
#include "common/config.h"
|
||||||
|
|
||||||
#include "common/global.h"
|
#include "common/global.h"
|
||||||
#include "common/event.h"
|
#include "common/event.h"
|
||||||
#include "common/logger.h"
|
#include "common/logger.h"
|
||||||
|
@ -39,7 +41,7 @@ const char* stringsCbot[TX_MAX] = { nullptr };
|
||||||
|
|
||||||
void InitializeRestext()
|
void InitializeRestext()
|
||||||
{
|
{
|
||||||
stringsText[RT_VERSION_ID] = "Colobot Gold";
|
stringsText[RT_VERSION_ID] = COLOBOT_FULLNAME;
|
||||||
|
|
||||||
stringsText[RT_DISINFO_TITLE] = "SatCom";
|
stringsText[RT_DISINFO_TITLE] = "SatCom";
|
||||||
stringsText[RT_WINDOW_MAXIMIZED] = "Maximize";
|
stringsText[RT_WINDOW_MAXIMIZED] = "Maximize";
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
lang/
|
|
@ -37,6 +37,41 @@ if(RSVG_CONVERT)
|
||||||
endforeach()
|
endforeach()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# Create manpage from pod-formatted file
|
||||||
|
find_program(POD2MAN pod2man)
|
||||||
|
if(POD2MAN)
|
||||||
|
set(COLOBOT_MANPAGE_SECTION 6)
|
||||||
|
|
||||||
|
macro(podman)
|
||||||
|
cmake_parse_arguments(PM "" "PODFILE;LOCALE;" "" ${ARGN})
|
||||||
|
if(PM_LOCALE)
|
||||||
|
# This copes with the fact that english has no "/LANG" in the paths and filenames.
|
||||||
|
set(SLASHLOCALE /${PM_LOCALE})
|
||||||
|
endif()
|
||||||
|
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}${SLASHLOCALE})
|
||||||
|
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}${SLASHLOCALE}/colobot.${COLOBOT_MANPAGE_SECTION}
|
||||||
|
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${PM_PODFILE}
|
||||||
|
COMMAND ${POD2MAN} ARGS --section=${COLOBOT_MANPAGE_SECTION}
|
||||||
|
--center="Colobot" --stderr --utf8
|
||||||
|
--release="${COLOBOT_VERSION_FULL}"
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/${PM_PODFILE}
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}${SLASHLOCALE}/colobot.${COLOBOT_MANPAGE_SECTION}
|
||||||
|
COMMENT "Create ${SLASHLOCALE}/colobot.${COLOBOT_MANPAGE_SECTION} manpage"
|
||||||
|
)
|
||||||
|
add_custom_target(man${PM_LOCALE} ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}${SLASHLOCALE}/colobot.${COLOBOT_MANPAGE_SECTION})
|
||||||
|
|
||||||
|
install(
|
||||||
|
FILES ${CMAKE_CURRENT_BINARY_DIR}${SLASHLOCALE}/colobot.${COLOBOT_MANPAGE_SECTION}
|
||||||
|
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/man${SLASHLOCALE}/man${COLOBOT_MANPAGE_SECTION}/ )
|
||||||
|
|
||||||
|
add_dependencies(man man${PM_LOCALE})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
# Create the english manpage
|
||||||
|
podman(PODFILE colobot.pod)
|
||||||
|
|
||||||
|
endif()
|
||||||
|
|
||||||
# Translate translatable material
|
# Translate translatable material
|
||||||
find_program(PO4A po4a)
|
find_program(PO4A po4a)
|
||||||
|
|
||||||
|
@ -46,4 +81,17 @@ if(PO4A)
|
||||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
)
|
)
|
||||||
add_dependencies(desktopfile desktop_po4a)
|
add_dependencies(desktopfile desktop_po4a)
|
||||||
|
|
||||||
|
if(POD2MAN)
|
||||||
|
add_custom_target(man_po4a
|
||||||
|
COMMAND ${PO4A} po4a.cfg
|
||||||
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
)
|
||||||
|
add_dependencies(man man_po4a)
|
||||||
|
file(GLOB LINGUAS_PO RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/po/ ${CMAKE_CURRENT_SOURCE_DIR}/po/*.po)
|
||||||
|
string(REGEX REPLACE ".po$" "" LINGUAS ${LINGUAS_PO})
|
||||||
|
foreach(LOCALE ${LINGUAS})
|
||||||
|
podman(PODFILE lang/${LOCALE}/colobot.pod LOCALE ${LOCALE})
|
||||||
|
endforeach()
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -0,0 +1,47 @@
|
||||||
|
=encoding utf8
|
||||||
|
|
||||||
|
=head1 COLOBOT
|
||||||
|
|
||||||
|
colobot - educational programming strategy game
|
||||||
|
|
||||||
|
=head1 SYNOPSIS
|
||||||
|
|
||||||
|
B<colobot> [B<-datadir> I<path>] [B<-debug>] [B<-loglevel> I<level>] [B<-language> I<lang>]
|
||||||
|
|
||||||
|
=head1 DESCRIPTION
|
||||||
|
|
||||||
|
Colobot (Colonize with Bots) is an educational game aiming to teach
|
||||||
|
programming through entertainment. You are playing as an astronaut on a
|
||||||
|
journey with robot helpers to find a planet for colonization. It features 3D
|
||||||
|
real-time graphics and a C++ and Java-like, object-oriented language, CBOT,
|
||||||
|
which can be used to program the robots available in the game.
|
||||||
|
|
||||||
|
=head1 OPTIONS
|
||||||
|
|
||||||
|
=over 8
|
||||||
|
|
||||||
|
=item B<-help>
|
||||||
|
|
||||||
|
Display a short help text
|
||||||
|
|
||||||
|
=item B<-datadir> F</path/to/data/>
|
||||||
|
|
||||||
|
Set custom data directory path
|
||||||
|
|
||||||
|
=item B<-debug>
|
||||||
|
|
||||||
|
Enable debug mode (more info printed in logs)
|
||||||
|
|
||||||
|
=item B<-loglevel> I<level>
|
||||||
|
|
||||||
|
Set log level. Possible choices are: trace, debug, info, warn, error, none.
|
||||||
|
|
||||||
|
=item B<-language> I<lang>
|
||||||
|
|
||||||
|
Set language. Note that you can also fill the B<LANG> environment variable.
|
||||||
|
|
||||||
|
=back
|
||||||
|
|
||||||
|
=head1 AUTHOR
|
||||||
|
|
||||||
|
This manpage was written by Didier Raboud <S<odyx@debian.org>>.
|
|
@ -7,13 +7,13 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"POT-Creation-Date: 2012-12-26 15:05+0100\n"
|
"POT-Creation-Date: 2012-12-27 10:59+0100\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"
|
||||||
"Language: \n"
|
"Language: \n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=CHARSET\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
#: colobot.ini:1
|
#: colobot.ini:1
|
||||||
|
@ -30,3 +30,105 @@ msgstr ""
|
||||||
#, no-wrap
|
#, no-wrap
|
||||||
msgid "Colonize with bots"
|
msgid "Colonize with bots"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: =head1
|
||||||
|
#: colobot.pod:3
|
||||||
|
msgid "COLOBOT"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:5
|
||||||
|
msgid "colobot - educational programming strategy game"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: =head1
|
||||||
|
#: colobot.pod:7
|
||||||
|
msgid "SYNOPSIS"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:9
|
||||||
|
msgid ""
|
||||||
|
"B<colobot> [B<-datadir> I<path>] [B<-debug>] [B<-loglevel> I<level>] "
|
||||||
|
"[B<-language> I<lang>]"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: =head1
|
||||||
|
#: colobot.pod:11
|
||||||
|
msgid "DESCRIPTION"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:13
|
||||||
|
msgid ""
|
||||||
|
"Colobot (Colonize with Bots) is an educational game aiming to teach "
|
||||||
|
"programming through entertainment. You are playing as an astronaut on a "
|
||||||
|
"journey with robot helpers to find a planet for colonization. It features 3D "
|
||||||
|
"real-time graphics and a C++ and Java-like, object-oriented language, CBOT, "
|
||||||
|
"which can be used to program the robots available in the game."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: =head1
|
||||||
|
#: colobot.pod:19
|
||||||
|
msgid "OPTIONS"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: =item
|
||||||
|
#: colobot.pod:23
|
||||||
|
msgid "B<-help>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:25
|
||||||
|
msgid "Display a short help text"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: =item
|
||||||
|
#: colobot.pod:27
|
||||||
|
msgid "B<-datadir> F</path/to/data/>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:29
|
||||||
|
msgid "Set custom data directory path"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: =item
|
||||||
|
#: colobot.pod:31
|
||||||
|
msgid "B<-debug>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:33
|
||||||
|
msgid "Enable debug mode (more info printed in logs)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: =item
|
||||||
|
#: colobot.pod:35
|
||||||
|
msgid "B<-loglevel> I<level>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:37
|
||||||
|
msgid "Set log level. Possible choices are: trace, debug, info, warn, error, none."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: =item
|
||||||
|
#: colobot.pod:39
|
||||||
|
msgid "B<-language> I<lang>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:41
|
||||||
|
msgid "Set language. Note that you can also fill the B<LANG> environment variable."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: =head1
|
||||||
|
#: colobot.pod:45
|
||||||
|
msgid "AUTHOR"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:47
|
||||||
|
msgid "This manpage was written by Didier Raboud <S<odyx@debian.org>>."
|
||||||
|
msgstr ""
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
# French translations for PACKAGE package
|
# French translations for PACKAGE package
|
||||||
# Copyright (C) 2012 Free Software Foundation, Inc.
|
# Copyright (C) 2012 Free Software Foundation, Inc.
|
||||||
# This file is distributed under the same license as the PACKAGE package.
|
# This file is distributed under the same license as the PACKAGE package.
|
||||||
# Automatically generated, 2012.
|
|
||||||
#
|
#
|
||||||
|
# Didier Raboud <odyx@debian.org>, 2012.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"POT-Creation-Date: 2012-12-26 15:05+0100\n"
|
"POT-Creation-Date: 2012-12-27 10:55+0100\n"
|
||||||
"PO-Revision-Date: 2012-12-26 15:05+0100\n"
|
"PO-Revision-Date: 2012-12-27 11:00+0100\n"
|
||||||
"Last-Translator: Didier Raboud <odyx@debian.org>\n"
|
"Last-Translator: Didier Raboud <odyx@debian.org>\n"
|
||||||
"Language-Team: none\n"
|
"Language-Team: none\n"
|
||||||
"Language: fr\n"
|
"Language: fr\n"
|
||||||
|
@ -30,3 +30,124 @@ msgstr "Apprentissage de la programmation par le jeu"
|
||||||
#, no-wrap
|
#, no-wrap
|
||||||
msgid "Colonize with bots"
|
msgid "Colonize with bots"
|
||||||
msgstr "Colonise avec des roBots"
|
msgstr "Colonise avec des roBots"
|
||||||
|
|
||||||
|
#. type: =head1
|
||||||
|
#: colobot.pod:3
|
||||||
|
msgid "COLOBOT"
|
||||||
|
msgstr "COLOBOT"
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:5
|
||||||
|
msgid "colobot - educational programming strategy game"
|
||||||
|
msgstr "colobot - Jeu éducatif de stratégie et de programmation"
|
||||||
|
|
||||||
|
#. type: =head1
|
||||||
|
#: colobot.pod:7
|
||||||
|
msgid "SYNOPSIS"
|
||||||
|
msgstr "RÉSUMÉ"
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:9
|
||||||
|
msgid ""
|
||||||
|
"B<colobot> [B<-datadir> I<path>] [B<-debug>] [B<-loglevel> I<level>] [B<-"
|
||||||
|
"language> I<lang>]"
|
||||||
|
msgstr ""
|
||||||
|
"B<colobot> [B<-datadir> I<chemin>] [B<-debug>] [B<-loglevel> I<niveau>] [B<-"
|
||||||
|
"language> I<code-de-langue>]"
|
||||||
|
|
||||||
|
#. type: =head1
|
||||||
|
#: colobot.pod:11
|
||||||
|
msgid "DESCRIPTION"
|
||||||
|
msgstr "DESCRIPTION"
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:13
|
||||||
|
msgid ""
|
||||||
|
"Colobot (Colonize with Bots) is an educational game aiming to teach "
|
||||||
|
"programming through entertainment. You are playing as an astronaut on a "
|
||||||
|
"journey with robot helpers to find a planet for colonization. It features 3D "
|
||||||
|
"real-time graphics and a C++ and Java-like, object-oriented language, CBOT, "
|
||||||
|
"which can be used to program the robots available in the game."
|
||||||
|
msgstr ""
|
||||||
|
"Colobot (Colonise avec des roBots) est un jeu éducatif visant à "
|
||||||
|
"l'enseignement de la programmation par le jeu. Vous jouez un astronaute en "
|
||||||
|
"voyage avec des robots à la recherche d'une planète à coloniser. Son "
|
||||||
|
"interface est en trois-dimensions et en temps réel; le language utilisé "
|
||||||
|
"(CBOT) ressemble au C++ et à Java et peut être utilisé pour programmer les "
|
||||||
|
"robots disponibles dans le jeu."
|
||||||
|
|
||||||
|
#. type: =head1
|
||||||
|
#: colobot.pod:19
|
||||||
|
msgid "OPTIONS"
|
||||||
|
msgstr "OPTIONS"
|
||||||
|
|
||||||
|
#. type: =item
|
||||||
|
#: colobot.pod:23
|
||||||
|
msgid "B<-help>"
|
||||||
|
msgstr "B<-help>"
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:25
|
||||||
|
msgid "Display a short help text"
|
||||||
|
msgstr "Affiche un court texte d'aide"
|
||||||
|
|
||||||
|
#. type: =item
|
||||||
|
#: colobot.pod:27
|
||||||
|
msgid "B<-datadir> F</path/to/data/>"
|
||||||
|
msgstr "B<-datadir> F</chemin/vers/les/donnes/>"
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:29
|
||||||
|
msgid "Set custom data directory path"
|
||||||
|
msgstr "Définit le chemin vers un répertoire de données spécifique"
|
||||||
|
|
||||||
|
#. type: =item
|
||||||
|
#: colobot.pod:31
|
||||||
|
msgid "B<-debug>"
|
||||||
|
msgstr "B<-debug>"
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:33
|
||||||
|
msgid "Enable debug mode (more info printed in logs)"
|
||||||
|
msgstr ""
|
||||||
|
"Active le mode de déboguage (plus d'informations sont affichées dans le "
|
||||||
|
"journal)"
|
||||||
|
|
||||||
|
#. type: =item
|
||||||
|
#: colobot.pod:35
|
||||||
|
msgid "B<-loglevel> I<level>"
|
||||||
|
msgstr "B<-loglevel> I<niveau>"
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:37
|
||||||
|
msgid ""
|
||||||
|
"Set log level. Possible choices are: trace, debug, info, warn, error, none."
|
||||||
|
msgstr ""
|
||||||
|
"Définit le niveau de journalisation parmi: trace, debug, info, warn, error, "
|
||||||
|
"none."
|
||||||
|
|
||||||
|
#. type: =item
|
||||||
|
#: colobot.pod:39
|
||||||
|
msgid "B<-language> I<lang>"
|
||||||
|
msgstr "B<-language> I<langue>"
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:41
|
||||||
|
msgid ""
|
||||||
|
"Set language. Note that you can also fill the B<LANG> environment variable."
|
||||||
|
msgstr ""
|
||||||
|
"Définit la langue. Il est aussi possible d'utiliser la variable "
|
||||||
|
"d'environnement B<LANG>."
|
||||||
|
|
||||||
|
#. type: =head1
|
||||||
|
#: colobot.pod:45
|
||||||
|
msgid "AUTHOR"
|
||||||
|
msgstr "Auteur"
|
||||||
|
|
||||||
|
#. type: textblock
|
||||||
|
#: colobot.pod:47
|
||||||
|
msgid "This manpage was written by Didier Raboud <S<odyx@debian.org>>."
|
||||||
|
msgstr ""
|
||||||
|
"Cette page de manuel a été écrite et traduite par Didier Raboud "
|
||||||
|
"<S<odyx@debian.org>>."
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
[po_directory] po/
|
[po_directory] po/
|
||||||
|
|
||||||
[type:ini] colobot.ini $lang:lang/$lang/colobot.ini
|
[type:ini] colobot.ini $lang:lang/$lang/colobot.ini
|
||||||
|
[type:pod] colobot.pod $lang:lang/$lang/colobot.pod
|
||||||
|
|
|
@ -677,7 +677,7 @@ void CText::DrawCharAndAdjustPos(UTF8Char ch, FontType font, float size, Math::P
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int width = 1;
|
int width = 1;
|
||||||
if (ch.c1 < 32) { // FIXME add support for chars with code 9 10 23
|
if (ch.c1 > 0 && ch.c1 < 32) { // FIXME add support for chars with code 9 10 23
|
||||||
ch.c1 = ' ';
|
ch.c1 = ' ';
|
||||||
ch.c2 = 0;
|
ch.c2 = 0;
|
||||||
ch.c3 = 0;
|
ch.c3 = 0;
|
||||||
|
|
|
@ -99,7 +99,7 @@ CBrain::CBrain(CInstanceManager* iMan, CObject* object)
|
||||||
m_selScript = 0;
|
m_selScript = 0;
|
||||||
|
|
||||||
m_bTraceRecord = false;
|
m_bTraceRecord = false;
|
||||||
m_traceRecordBuffer = 0;
|
m_traceRecordBuffer = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Object's destructor.
|
// Object's destructor.
|
||||||
|
@ -111,12 +111,21 @@ CBrain::~CBrain()
|
||||||
for ( i=0 ; i<BRAINMAXSCRIPT ; i++ )
|
for ( i=0 ; i<BRAINMAXSCRIPT ; i++ )
|
||||||
{
|
{
|
||||||
delete m_script[i];
|
delete m_script[i];
|
||||||
|
m_script[i] = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
delete m_primaryTask;
|
delete m_primaryTask;
|
||||||
|
m_primaryTask = nullptr;
|
||||||
|
|
||||||
delete m_secondaryTask;
|
delete m_secondaryTask;
|
||||||
|
m_secondaryTask = nullptr;
|
||||||
|
|
||||||
delete m_studio;
|
delete m_studio;
|
||||||
delete m_traceRecordBuffer;
|
m_studio = nullptr;
|
||||||
|
|
||||||
|
delete[] m_traceRecordBuffer;
|
||||||
|
m_traceRecordBuffer = nullptr;
|
||||||
|
|
||||||
m_iMan->DeleteInstance(CLASS_BRAIN, this);
|
m_iMan->DeleteInstance(CLASS_BRAIN, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2791,8 +2800,8 @@ void CBrain::TraceRecordStart()
|
||||||
m_traceColor = -1;
|
m_traceColor = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
delete m_traceRecordBuffer;
|
delete[] m_traceRecordBuffer;
|
||||||
m_traceRecordBuffer = static_cast<TraceRecord*>(malloc(sizeof(TraceRecord)*MAXTRACERECORD));
|
m_traceRecordBuffer = new TraceRecord[MAXTRACERECORD];
|
||||||
m_traceRecordIndex = 0;
|
m_traceRecordIndex = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2858,10 +2867,10 @@ void CBrain::TraceRecordStop()
|
||||||
int max, i;
|
int max, i;
|
||||||
char* buffer;
|
char* buffer;
|
||||||
|
|
||||||
if ( m_traceRecordBuffer == 0 ) return;
|
if ( m_traceRecordBuffer == nullptr ) return;
|
||||||
|
|
||||||
max = 10000;
|
max = 10000;
|
||||||
buffer = static_cast<char*>(malloc(max));
|
buffer = new char[max];
|
||||||
*buffer = 0;
|
*buffer = 0;
|
||||||
strncat(buffer, "extern void object::AutoDraw()\n{\n", max-1);
|
strncat(buffer, "extern void object::AutoDraw()\n{\n", max-1);
|
||||||
|
|
||||||
|
@ -2892,8 +2901,8 @@ void CBrain::TraceRecordStop()
|
||||||
}
|
}
|
||||||
TraceRecordPut(buffer, max, lastOper, lastParam);
|
TraceRecordPut(buffer, max, lastOper, lastParam);
|
||||||
|
|
||||||
delete m_traceRecordBuffer;
|
delete[] m_traceRecordBuffer;
|
||||||
m_traceRecordBuffer = 0;
|
m_traceRecordBuffer = nullptr;
|
||||||
|
|
||||||
strncat(buffer, "}\n", max-1);
|
strncat(buffer, "}\n", max-1);
|
||||||
buffer[max-1] = 0;
|
buffer[max-1] = 0;
|
||||||
|
@ -2904,7 +2913,7 @@ void CBrain::TraceRecordStop()
|
||||||
m_script[i] = new CScript(m_iMan, m_object, &m_secondaryTask);
|
m_script[i] = new CScript(m_iMan, m_object, &m_secondaryTask);
|
||||||
}
|
}
|
||||||
m_script[i]->SendScript(buffer);
|
m_script[i]->SendScript(buffer);
|
||||||
delete buffer;
|
delete[] buffer;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Saves an instruction CBOT.
|
// Saves an instruction CBOT.
|
||||||
|
|
|
@ -3808,16 +3808,16 @@ void CRobotMain::CreateScene(bool soluce, bool fixScene, bool resetObject)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: language letters
|
// TODO: Fallback to an non-localized entry
|
||||||
sprintf(op, "Title.%c", 'E' /*GetLanguageLetter()*/);
|
sprintf(op, "Title.%c", m_app->GetLanguageChar());
|
||||||
if (Cmd(line, op) && !resetObject)
|
if (Cmd(line, op) && !resetObject)
|
||||||
OpString(line, "text", m_title);
|
OpString(line, "text", m_title);
|
||||||
|
|
||||||
sprintf(op, "Resume.%c", 'E' /*GetLanguageLetter()*/);
|
sprintf(op, "Resume.%c", m_app->GetLanguageChar());
|
||||||
if (Cmd(line, op) && !resetObject)
|
if (Cmd(line, op) && !resetObject)
|
||||||
OpString(line, "text", m_resume);
|
OpString(line, "text", m_resume);
|
||||||
|
|
||||||
sprintf(op, "ScriptName.%c", 'E' /*GetLanguageLetter()*/);
|
sprintf(op, "ScriptName.%c", m_app->GetLanguageChar());
|
||||||
if (Cmd(line, op) && !resetObject)
|
if (Cmd(line, op) && !resetObject)
|
||||||
OpString(line, "text", m_scriptName);
|
OpString(line, "text", m_scriptName);
|
||||||
|
|
||||||
|
|
|
@ -2119,7 +2119,7 @@ bool CTaskGoto::BitmapOpen()
|
||||||
BitmapClose();
|
BitmapClose();
|
||||||
|
|
||||||
m_bmSize = static_cast<int>(3200.0f/BM_DIM_STEP);
|
m_bmSize = static_cast<int>(3200.0f/BM_DIM_STEP);
|
||||||
m_bmArray = static_cast<unsigned char*>(malloc(m_bmSize*m_bmSize/8*2));
|
m_bmArray = new unsigned char[m_bmSize*m_bmSize/8*2];
|
||||||
memset(m_bmArray, 0, m_bmSize*m_bmSize/8*2);
|
memset(m_bmArray, 0, m_bmSize*m_bmSize/8*2);
|
||||||
|
|
||||||
m_bmOffset = m_bmSize/2;
|
m_bmOffset = m_bmSize/2;
|
||||||
|
@ -2137,7 +2137,7 @@ bool CTaskGoto::BitmapOpen()
|
||||||
|
|
||||||
bool CTaskGoto::BitmapClose()
|
bool CTaskGoto::BitmapClose()
|
||||||
{
|
{
|
||||||
free(m_bmArray);
|
delete[] m_bmArray;
|
||||||
m_bmArray = 0;
|
m_bmArray = 0;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,14 +6,13 @@ find_program(XGETTEXT_CMD xgettext)
|
||||||
|
|
||||||
add_custom_command(OUTPUT ${_potFile}
|
add_custom_command(OUTPUT ${_potFile}
|
||||||
COMMAND ${XGETTEXT_CMD} ../app/app.cpp --output=${_potFile}
|
COMMAND ${XGETTEXT_CMD} ../app/app.cpp --output=${_potFile}
|
||||||
COMMAND ${XGETTEXT_CMD} ../common/restext_strings.c --output=${_potFile} --join-existing --extract-all --no-location
|
COMMAND ${XGETTEXT_CMD} ../common/restext.cpp --output=${_potFile} --join-existing --extract-all --no-location
|
||||||
|
|
||||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
COMMENT "Extract translatable messages to ${_potFile}"
|
COMMENT "Extract translatable messages to ${_potFile}"
|
||||||
)
|
)
|
||||||
|
|
||||||
add_custom_target(_${potFile} ${_all} DEPENDS ${_potFile})
|
add_custom_target(update-pot DEPENDS ${_potFile})
|
||||||
|
|
||||||
file(GLOB _poFiles *.po)
|
file(GLOB _poFiles *.po)
|
||||||
|
|
||||||
gettext_create_translations(${_potFile} ALL ${_poFiles})
|
gettext_create_translations(${_potFile} ALL ${_poFiles})
|
||||||
|
|
|
@ -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-13 21:46+0100\n"
|
"POT-Creation-Date: 2012-12-27 17:09+0100\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"
|
||||||
|
@ -20,9 +20,6 @@ msgstr ""
|
||||||
msgid "Colobot rules!"
|
msgid "Colobot rules!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "Colobot Gold"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "SatCom"
|
msgid "SatCom"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -1436,7 +1433,7 @@ msgstr ""
|
||||||
msgid "Program infected by a virus"
|
msgid "Program infected by a virus"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "Infected by a virus, temporarily out of order"
|
msgid "Infected by a virus; temporarily out of order"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "Impossible when swimming"
|
msgid "Impossible when swimming"
|
||||||
|
@ -1464,7 +1461,7 @@ msgstr ""
|
||||||
msgid "Building destroyed"
|
msgid "Building destroyed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "Can not create this, there are too many objects"
|
msgid "Can not create this; there are too many objects"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
|
@ -1528,10 +1525,10 @@ msgstr ""
|
||||||
msgid "Found a site for a derrick"
|
msgid "Found a site for a derrick"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "<<< Well done, mission accomplished >>>"
|
msgid "<<< Well done; mission accomplished >>>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "<<< Sorry, mission failed >>>"
|
msgid "<<< Sorry; mission failed >>>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "Current mission saved"
|
msgid "Current mission saved"
|
||||||
|
@ -1612,7 +1609,7 @@ msgstr ""
|
||||||
msgid "Instruction \"break\" outside a loop"
|
msgid "Instruction \"break\" outside a loop"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "A label must be followed by \"for\", \"while\", \"do\" or \"switch\""
|
msgid "A label must be followed by \"for\"; \"while\"; \"do\" or \"switch\""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "This label does not exist"
|
msgid "This label does not exist"
|
||||||
|
@ -1734,3 +1731,88 @@ msgstr ""
|
||||||
|
|
||||||
msgid "Write error"
|
msgid "Write error"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "left;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "right;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "up;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "down;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "gup;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "gdown;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "camera;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "desel;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "action;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "near;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "away;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "next;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "human;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "quit;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "help;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "prog;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "cbot;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "visit;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "speed10;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "speed15;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "speed20;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "GetResource event num out of range: %d\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Ctrl"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Shift"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Alt"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Win"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Button %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "%1"
|
||||||
|
msgstr ""
|
||||||
|
|
117
src/po/de.po
117
src/po/de.po
|
@ -1,7 +1,7 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2012-12-13 21:46+0100\n"
|
"POT-Creation-Date: 2012-12-27 17:09+0100\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
@ -64,6 +64,9 @@ msgstr "Es fehlt eine geschlossene eckige Klammer \" ] \""
|
||||||
msgid "\"%s\" missing in this exercise"
|
msgid "\"%s\" missing in this exercise"
|
||||||
msgstr "Es fehlt \"%s\" in Ihrem Programm"
|
msgstr "Es fehlt \"%s\" in Ihrem Programm"
|
||||||
|
|
||||||
|
msgid "%1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "..behind"
|
msgid "..behind"
|
||||||
msgstr "..hinten"
|
msgstr "..hinten"
|
||||||
|
|
||||||
|
@ -85,13 +88,16 @@ msgstr "3D-Geräusche\\Orten der Geräusche im Raum"
|
||||||
msgid "<< Back \\Back to the previous screen"
|
msgid "<< Back \\Back to the previous screen"
|
||||||
msgstr "<< Zurück \\Zurück zum Hauptmenü"
|
msgstr "<< Zurück \\Zurück zum Hauptmenü"
|
||||||
|
|
||||||
msgid "<<< Sorry, mission failed >>>"
|
#, fuzzy
|
||||||
|
msgid "<<< Sorry; mission failed >>>"
|
||||||
msgstr "<<< Mission gescheitert >>>"
|
msgstr "<<< Mission gescheitert >>>"
|
||||||
|
|
||||||
msgid "<<< Well done, mission accomplished >>>"
|
#, fuzzy
|
||||||
|
msgid "<<< Well done; mission accomplished >>>"
|
||||||
msgstr "<<< Bravo, Mission vollendet >>>"
|
msgstr "<<< Bravo, Mission vollendet >>>"
|
||||||
|
|
||||||
msgid "A label must be followed by \"for\", \"while\", \"do\" or \"switch\""
|
#, fuzzy
|
||||||
|
msgid "A label must be followed by \"for\"; \"while\"; \"do\" or \"switch\""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Ein Label kann nur vor den Anweisungen \"for\", \"while\", \"do\" oder "
|
"Ein Label kann nur vor den Anweisungen \"for\", \"while\", \"do\" oder "
|
||||||
"\"switch\" vorkommen"
|
"\"switch\" vorkommen"
|
||||||
|
@ -122,6 +128,9 @@ msgstr "Insektenkönigin tödlich verwundet"
|
||||||
msgid "Already carrying something"
|
msgid "Already carrying something"
|
||||||
msgstr "Trägt schon etwas"
|
msgstr "Trägt schon etwas"
|
||||||
|
|
||||||
|
msgid "Alt"
|
||||||
|
msgstr "Alt"
|
||||||
|
|
||||||
msgid "Analysis already performed"
|
msgid "Analysis already performed"
|
||||||
msgstr "Analyse schon durchgeführt"
|
msgstr "Analyse schon durchgeführt"
|
||||||
|
|
||||||
|
@ -299,6 +308,9 @@ msgstr "Gebäude zerstört"
|
||||||
msgid "Building too close"
|
msgid "Building too close"
|
||||||
msgstr "Gebäude zu nahe"
|
msgstr "Gebäude zu nahe"
|
||||||
|
|
||||||
|
msgid "Button %1"
|
||||||
|
msgstr "Knopf %1"
|
||||||
|
|
||||||
msgid "COLOBOT"
|
msgid "COLOBOT"
|
||||||
msgstr "COLOBOT"
|
msgstr "COLOBOT"
|
||||||
|
|
||||||
|
@ -326,7 +338,8 @@ msgstr "Kamera links"
|
||||||
msgid "Camera to right"
|
msgid "Camera to right"
|
||||||
msgstr "Kamera rechts"
|
msgstr "Kamera rechts"
|
||||||
|
|
||||||
msgid "Can not create this, there are too many objects"
|
#, fuzzy
|
||||||
|
msgid "Can not create this; there are too many objects"
|
||||||
msgstr "Kein neues Objekt kann erstellt werden (zu viele vorhanden)"
|
msgstr "Kein neues Objekt kann erstellt werden (zu viele vorhanden)"
|
||||||
|
|
||||||
msgid "Can't open file"
|
msgid "Can't open file"
|
||||||
|
@ -365,9 +378,6 @@ msgstr "Schließen"
|
||||||
msgid "Closing bracket missing "
|
msgid "Closing bracket missing "
|
||||||
msgstr "Es fehlt eine geschlossene Klammer \")\""
|
msgstr "Es fehlt eine geschlossene Klammer \")\""
|
||||||
|
|
||||||
msgid "Colobot Gold"
|
|
||||||
msgstr "Colobot Gold"
|
|
||||||
|
|
||||||
msgid "Colobot rules!"
|
msgid "Colobot rules!"
|
||||||
msgstr "Colobot ist wunderbar!"
|
msgstr "Colobot ist wunderbar!"
|
||||||
|
|
||||||
|
@ -404,6 +414,9 @@ msgstr "Kopieren"
|
||||||
msgid "Copy (Ctrl+c)"
|
msgid "Copy (Ctrl+c)"
|
||||||
msgstr "Kopieren (Ctrl+c)"
|
msgstr "Kopieren (Ctrl+c)"
|
||||||
|
|
||||||
|
msgid "Ctrl"
|
||||||
|
msgstr "Ctrl"
|
||||||
|
|
||||||
msgid "Current mission saved"
|
msgid "Current mission saved"
|
||||||
msgstr "Mission gespeichert"
|
msgstr "Mission gespeichert"
|
||||||
|
|
||||||
|
@ -610,6 +623,10 @@ msgstr "Spiel\\Gameplay Einstellungen"
|
||||||
msgid "Gantry crane"
|
msgid "Gantry crane"
|
||||||
msgstr "Träger"
|
msgstr "Träger"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "GetResource event num out of range: %d\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Goto: destination occupied"
|
msgid "Goto: destination occupied"
|
||||||
msgstr "Ziel ist schon besetzt"
|
msgstr "Ziel ist schon besetzt"
|
||||||
|
|
||||||
|
@ -682,7 +699,8 @@ msgstr "Falscher Batterietyp"
|
||||||
msgid "Incorrect index type"
|
msgid "Incorrect index type"
|
||||||
msgstr "Falscher Typ für einen Index"
|
msgstr "Falscher Typ für einen Index"
|
||||||
|
|
||||||
msgid "Infected by a virus, temporarily out of order"
|
#, fuzzy
|
||||||
|
msgid "Infected by a virus; temporarily out of order"
|
||||||
msgstr "Von Virus infiziert, zeitweise außer Betrieb"
|
msgstr "Von Virus infiziert, zeitweise außer Betrieb"
|
||||||
|
|
||||||
msgid "Information exchange post"
|
msgid "Information exchange post"
|
||||||
|
@ -1256,6 +1274,9 @@ msgstr "Reichweite Schutzschild"
|
||||||
msgid "Shielder"
|
msgid "Shielder"
|
||||||
msgstr "Schutzschild"
|
msgstr "Schutzschild"
|
||||||
|
|
||||||
|
msgid "Shift"
|
||||||
|
msgstr "Shift"
|
||||||
|
|
||||||
msgid "Shoot (\\key action;)"
|
msgid "Shoot (\\key action;)"
|
||||||
msgstr "Feuer (\\key action;)"
|
msgstr "Feuer (\\key action;)"
|
||||||
|
|
||||||
|
@ -1565,6 +1586,9 @@ msgstr "Shooter"
|
||||||
msgid "Wheeled sniffer"
|
msgid "Wheeled sniffer"
|
||||||
msgstr "Schnüffler"
|
msgstr "Schnüffler"
|
||||||
|
|
||||||
|
msgid "Win"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Winged grabber"
|
msgid "Winged grabber"
|
||||||
msgstr "Transporter"
|
msgstr "Transporter"
|
||||||
|
|
||||||
|
@ -1730,6 +1754,69 @@ msgstr "\\b;Liste der Roboter\n"
|
||||||
msgid "\\c; (none)\\n;\n"
|
msgid "\\c; (none)\\n;\n"
|
||||||
msgstr "\\c; (keine)\\n;\n"
|
msgstr "\\c; (keine)\\n;\n"
|
||||||
|
|
||||||
|
msgid "action;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "away;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "camera;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "cbot;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "desel;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "down;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "gdown;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "gup;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "help;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "human;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "left;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "near;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "next;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "prog;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "quit;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "right;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "speed10;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "speed15;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "speed20;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "up;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "visit;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "www.epsitec.com"
|
msgid "www.epsitec.com"
|
||||||
msgstr "www.epsitec.com"
|
msgstr "www.epsitec.com"
|
||||||
|
|
||||||
|
@ -1739,9 +1826,6 @@ msgstr "www.epsitec.com"
|
||||||
#~ msgid "<--"
|
#~ msgid "<--"
|
||||||
#~ msgstr "<--"
|
#~ msgstr "<--"
|
||||||
|
|
||||||
#~ msgid "Alt"
|
|
||||||
#~ msgstr "Alt"
|
|
||||||
|
|
||||||
#~ msgid "Application key"
|
#~ msgid "Application key"
|
||||||
#~ msgstr "Application key"
|
#~ msgstr "Application key"
|
||||||
|
|
||||||
|
@ -1760,9 +1844,6 @@ msgstr "www.epsitec.com"
|
||||||
#~ msgid "Attn"
|
#~ msgid "Attn"
|
||||||
#~ msgstr "Attn"
|
#~ msgstr "Attn"
|
||||||
|
|
||||||
#~ msgid "Button %1"
|
|
||||||
#~ msgstr "Knopf %1"
|
|
||||||
|
|
||||||
#~ msgid "Caps Lock"
|
#~ msgid "Caps Lock"
|
||||||
#~ msgstr "Caps Lock"
|
#~ msgstr "Caps Lock"
|
||||||
|
|
||||||
|
@ -1775,9 +1856,6 @@ msgstr "www.epsitec.com"
|
||||||
#~ msgid "CrSel"
|
#~ msgid "CrSel"
|
||||||
#~ msgstr "CrSel"
|
#~ msgstr "CrSel"
|
||||||
|
|
||||||
#~ msgid "Ctrl"
|
|
||||||
#~ msgstr "Ctrl"
|
|
||||||
|
|
||||||
#~ msgid "Delete Key"
|
#~ msgid "Delete Key"
|
||||||
#~ msgstr "Delete"
|
#~ msgstr "Delete"
|
||||||
|
|
||||||
|
@ -1961,9 +2039,6 @@ msgstr "www.epsitec.com"
|
||||||
#~ msgid "Select"
|
#~ msgid "Select"
|
||||||
#~ msgstr "Select"
|
#~ msgstr "Select"
|
||||||
|
|
||||||
#~ msgid "Shift"
|
|
||||||
#~ msgstr "Shift"
|
|
||||||
|
|
||||||
#~ msgid "Space"
|
#~ msgid "Space"
|
||||||
#~ msgstr "Leertaste"
|
#~ msgstr "Leertaste"
|
||||||
|
|
||||||
|
|
279
src/po/fr.po
279
src/po/fr.po
|
@ -1,13 +1,18 @@
|
||||||
|
# Didier Raboud <odyx@debian.org>, 2012.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2012-12-13 21:46+0100\n"
|
"POT-Creation-Date: 2012-12-27 17:09+0100\n"
|
||||||
|
"PO-Revision-Date: 2012-12-27 14:07+0100\n"
|
||||||
|
"Last-Translator: Didier Raboud <odyx@debian.org>\n"
|
||||||
|
"Language: fr\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||||
"X-Language: fr_FR\n"
|
"X-Language: fr_FR\n"
|
||||||
"X-Source-Language: en_US\n"
|
"X-Source-Language: en_US\n"
|
||||||
|
"X-Generator: Lokalize 1.4\n"
|
||||||
|
|
||||||
msgid " "
|
msgid " "
|
||||||
msgstr " "
|
msgstr " "
|
||||||
|
@ -37,7 +42,7 @@ msgid " Missions on this planet:"
|
||||||
msgstr " Liste des missions du chapitre :"
|
msgstr " Liste des missions du chapitre :"
|
||||||
|
|
||||||
msgid " Planets:"
|
msgid " Planets:"
|
||||||
msgstr " Liste des plančtes :"
|
msgstr " Liste des planètes :"
|
||||||
|
|
||||||
msgid " Prototypes on this planet:"
|
msgid " Prototypes on this planet:"
|
||||||
msgstr " Liste des prototypes du chapitre :"
|
msgstr " Liste des prototypes du chapitre :"
|
||||||
|
@ -64,8 +69,11 @@ msgstr "\" ] \" attendu"
|
||||||
msgid "\"%s\" missing in this exercise"
|
msgid "\"%s\" missing in this exercise"
|
||||||
msgstr "Il manque \"%s\" dans le programme"
|
msgstr "Il manque \"%s\" dans le programme"
|
||||||
|
|
||||||
|
msgid "%1"
|
||||||
|
msgstr "%1"
|
||||||
|
|
||||||
msgid "..behind"
|
msgid "..behind"
|
||||||
msgstr "..derričre"
|
msgstr "..derrière"
|
||||||
|
|
||||||
msgid "..in front"
|
msgid "..in front"
|
||||||
msgstr "..devant"
|
msgstr "..devant"
|
||||||
|
@ -74,7 +82,7 @@ msgid "..power cell"
|
||||||
msgstr "..pile"
|
msgstr "..pile"
|
||||||
|
|
||||||
msgid "1) First click on the key you want to redefine."
|
msgid "1) First click on the key you want to redefine."
|
||||||
msgstr "1) Cliquez d'abord sur la touche ŕ redéfinir."
|
msgstr "1) Cliquez d'abord sur la touche à redéfinir."
|
||||||
|
|
||||||
msgid "2) Then press the key you want to use instead."
|
msgid "2) Then press the key you want to use instead."
|
||||||
msgstr "2) Appuyez ensuite sur la nouvelle touche souhaitée."
|
msgstr "2) Appuyez ensuite sur la nouvelle touche souhaitée."
|
||||||
|
@ -85,15 +93,15 @@ msgstr "Bruitages 3D\\Positionnement sonore dans l'espace"
|
||||||
msgid "<< Back \\Back to the previous screen"
|
msgid "<< Back \\Back to the previous screen"
|
||||||
msgstr "<< Retour \\Retour au niveau précédent"
|
msgstr "<< Retour \\Retour au niveau précédent"
|
||||||
|
|
||||||
msgid "<<< Sorry, mission failed >>>"
|
msgid "<<< Sorry; mission failed >>>"
|
||||||
msgstr "<<< Désolé, mission échouée >>>"
|
msgstr "<<< Désolé; mission échouée >>>"
|
||||||
|
|
||||||
msgid "<<< Well done, mission accomplished >>>"
|
msgid "<<< Well done; mission accomplished >>>"
|
||||||
msgstr "<<< Bravo, mission terminée >>>"
|
msgstr "<<< Bravo; mission terminée >>>"
|
||||||
|
|
||||||
msgid "A label must be followed by \"for\", \"while\", \"do\" or \"switch\""
|
msgid "A label must be followed by \"for\"; \"while\"; \"do\" or \"switch\""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Un label ne peut se placer que devant un \"for\", un \"while\", un \"do\" ou "
|
"Un label ne peut se placer que devant un \"for\"; un \"while\"; un \"do\" ou "
|
||||||
"un \"switch\""
|
"un \"switch\""
|
||||||
|
|
||||||
msgid "A variable can not be declared twice"
|
msgid "A variable can not be declared twice"
|
||||||
|
@ -103,14 +111,14 @@ msgid "Abort\\Abort the current mission"
|
||||||
msgstr "Abandonner\\Abandonner la mission en cours"
|
msgstr "Abandonner\\Abandonner la mission en cours"
|
||||||
|
|
||||||
msgid "Access beyond array limit"
|
msgid "Access beyond array limit"
|
||||||
msgstr "Accčs hors du tableau"
|
msgstr "Accès hors du tableau"
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Access to solution\\Shows the solution (detailed instructions for missions)"
|
"Access to solution\\Shows the solution (detailed instructions for missions)"
|
||||||
msgstr "Accčs ŕ la solution\\Donne la solution"
|
msgstr "Accès à la solution\\Donne la solution"
|
||||||
|
|
||||||
msgid "Access to solutions\\Show program \"4: Solution\" in the exercises"
|
msgid "Access to solutions\\Show program \"4: Solution\" in the exercises"
|
||||||
msgstr "Accčs aux solutions\\Programme \"4: Solution\" dans les exercices"
|
msgstr "Accès aux solutions\\Programme \"4: Solution\" dans les exercices"
|
||||||
|
|
||||||
msgid "Alien Queen"
|
msgid "Alien Queen"
|
||||||
msgstr "Pondeuse"
|
msgstr "Pondeuse"
|
||||||
|
@ -119,16 +127,19 @@ msgid "Alien Queen killed"
|
||||||
msgstr "Pondeuse mortellement touchée"
|
msgstr "Pondeuse mortellement touchée"
|
||||||
|
|
||||||
msgid "Already carrying something"
|
msgid "Already carrying something"
|
||||||
msgstr "Porte déjŕ quelque chose"
|
msgstr "Porte déjà quelque chose"
|
||||||
|
|
||||||
|
msgid "Alt"
|
||||||
|
msgstr "Alt"
|
||||||
|
|
||||||
msgid "Analysis already performed"
|
msgid "Analysis already performed"
|
||||||
msgstr "Analyse déjŕ effectuée"
|
msgstr "Analyse déjà effectuée"
|
||||||
|
|
||||||
msgid "Analysis performed"
|
msgid "Analysis performed"
|
||||||
msgstr "Analyse terminée"
|
msgstr "Analyse terminée"
|
||||||
|
|
||||||
msgid "Analyzes only organic matter"
|
msgid "Analyzes only organic matter"
|
||||||
msgstr "N'analyse que la matičre organique"
|
msgstr "N'analyse que la matière organique"
|
||||||
|
|
||||||
msgid "Ant"
|
msgid "Ant"
|
||||||
msgstr "Fourmi"
|
msgstr "Fourmi"
|
||||||
|
@ -149,7 +160,7 @@ msgid "Assignment impossible"
|
||||||
msgstr "Assignation impossible"
|
msgstr "Assignation impossible"
|
||||||
|
|
||||||
msgid "Autolab"
|
msgid "Autolab"
|
||||||
msgstr "Laboratoire de matičres organiques"
|
msgstr "Laboratoire de matières organiques"
|
||||||
|
|
||||||
msgid "Automatic indent\\When program editing"
|
msgid "Automatic indent\\When program editing"
|
||||||
msgstr "Indentation automatique\\Pendant l'édition d'un programme"
|
msgstr "Indentation automatique\\Pendant l'édition d'un programme"
|
||||||
|
@ -164,7 +175,7 @@ msgid "Backward (\\key down;)"
|
||||||
msgstr "Recule (\\key down;)"
|
msgstr "Recule (\\key down;)"
|
||||||
|
|
||||||
msgid "Backward\\Moves backward"
|
msgid "Backward\\Moves backward"
|
||||||
msgstr "Reculer\\Moteur en arričre"
|
msgstr "Reculer\\Moteur en arrière"
|
||||||
|
|
||||||
msgid "Bad argument for \"new\""
|
msgid "Bad argument for \"new\""
|
||||||
msgstr "Mauvais argument pour \"new\""
|
msgstr "Mauvais argument pour \"new\""
|
||||||
|
@ -203,16 +214,16 @@ msgid "Build a exchange post"
|
||||||
msgstr "Construit une borne d'information"
|
msgstr "Construit une borne d'information"
|
||||||
|
|
||||||
msgid "Build a legged grabber"
|
msgid "Build a legged grabber"
|
||||||
msgstr "Fabrique un déménageur ŕ pattes"
|
msgstr "Fabrique un déménageur à pattes"
|
||||||
|
|
||||||
msgid "Build a legged orga shooter"
|
msgid "Build a legged orga shooter"
|
||||||
msgstr "Fabrique un orgaShooter ŕ pattes"
|
msgstr "Fabrique un orgaShooter à pattes"
|
||||||
|
|
||||||
msgid "Build a legged shooter"
|
msgid "Build a legged shooter"
|
||||||
msgstr "Fabrique un shooter ŕ pattes"
|
msgstr "Fabrique un shooter à pattes"
|
||||||
|
|
||||||
msgid "Build a legged sniffer"
|
msgid "Build a legged sniffer"
|
||||||
msgstr "Fabrique un renifleur ŕ pattes"
|
msgstr "Fabrique un renifleur à pattes"
|
||||||
|
|
||||||
msgid "Build a lightning conductor"
|
msgid "Build a lightning conductor"
|
||||||
msgstr "Construit un paratonnerre"
|
msgstr "Construit un paratonnerre"
|
||||||
|
@ -251,28 +262,28 @@ msgid "Build a thumper"
|
||||||
msgstr "Fabrique un robot secoueur"
|
msgstr "Fabrique un robot secoueur"
|
||||||
|
|
||||||
msgid "Build a tracked grabber"
|
msgid "Build a tracked grabber"
|
||||||
msgstr "Fabrique un déménageur ŕ chenilles"
|
msgstr "Fabrique un déménageur à chenilles"
|
||||||
|
|
||||||
msgid "Build a tracked orga shooter"
|
msgid "Build a tracked orga shooter"
|
||||||
msgstr "Fabrique un orgaShooter ŕ chenilles"
|
msgstr "Fabrique un orgaShooter à chenilles"
|
||||||
|
|
||||||
msgid "Build a tracked shooter"
|
msgid "Build a tracked shooter"
|
||||||
msgstr "Fabrique un shooter ŕ chenilles"
|
msgstr "Fabrique un shooter à chenilles"
|
||||||
|
|
||||||
msgid "Build a tracked sniffer"
|
msgid "Build a tracked sniffer"
|
||||||
msgstr "Fabrique un renifleur ŕ chenilles"
|
msgstr "Fabrique un renifleur à chenilles"
|
||||||
|
|
||||||
msgid "Build a wheeled grabber"
|
msgid "Build a wheeled grabber"
|
||||||
msgstr "Fabrique un déménageur ŕ roues"
|
msgstr "Fabrique un déménageur à roues"
|
||||||
|
|
||||||
msgid "Build a wheeled orga shooter"
|
msgid "Build a wheeled orga shooter"
|
||||||
msgstr "Fabrique un orgaShooter ŕ roues"
|
msgstr "Fabrique un orgaShooter à roues"
|
||||||
|
|
||||||
msgid "Build a wheeled shooter"
|
msgid "Build a wheeled shooter"
|
||||||
msgstr "Fabrique un shooter ŕ roues"
|
msgstr "Fabrique un shooter à roues"
|
||||||
|
|
||||||
msgid "Build a wheeled sniffer"
|
msgid "Build a wheeled sniffer"
|
||||||
msgstr "Fabrique un renifleur ŕ roues"
|
msgstr "Fabrique un renifleur à roues"
|
||||||
|
|
||||||
msgid "Build a winged grabber"
|
msgid "Build a winged grabber"
|
||||||
msgstr "Fabrique un déménageur volant"
|
msgstr "Fabrique un déménageur volant"
|
||||||
|
@ -298,6 +309,9 @@ msgstr "Bâtiment détruit"
|
||||||
msgid "Building too close"
|
msgid "Building too close"
|
||||||
msgstr "Bâtiment trop proche"
|
msgstr "Bâtiment trop proche"
|
||||||
|
|
||||||
|
msgid "Button %1"
|
||||||
|
msgstr "Bouton %1"
|
||||||
|
|
||||||
msgid "COLOBOT"
|
msgid "COLOBOT"
|
||||||
msgstr "COLOBOT"
|
msgstr "COLOBOT"
|
||||||
|
|
||||||
|
@ -320,13 +334,13 @@ msgid "Camera nearest"
|
||||||
msgstr "Caméra plus proche"
|
msgstr "Caméra plus proche"
|
||||||
|
|
||||||
msgid "Camera to left"
|
msgid "Camera to left"
|
||||||
msgstr "Caméra ŕ gauche"
|
msgstr "Caméra à gauche"
|
||||||
|
|
||||||
msgid "Camera to right"
|
msgid "Camera to right"
|
||||||
msgstr "Caméra ŕ droite"
|
msgstr "Caméra à droite"
|
||||||
|
|
||||||
msgid "Can not create this, there are too many objects"
|
msgid "Can not create this; there are too many objects"
|
||||||
msgstr "Création impossible, il y a trop d'objets"
|
msgstr "Création impossible; il y a trop d'objets"
|
||||||
|
|
||||||
msgid "Can't open file"
|
msgid "Can't open file"
|
||||||
msgstr "Ouverture du fichier impossible"
|
msgstr "Ouverture du fichier impossible"
|
||||||
|
@ -362,10 +376,7 @@ msgid "Close"
|
||||||
msgstr "Fermer"
|
msgstr "Fermer"
|
||||||
|
|
||||||
msgid "Closing bracket missing "
|
msgid "Closing bracket missing "
|
||||||
msgstr "Il manque une parenthčse fermante"
|
msgstr "Il manque une parenthèse fermante"
|
||||||
|
|
||||||
msgid "Colobot Gold"
|
|
||||||
msgstr "Colobot Gold"
|
|
||||||
|
|
||||||
msgid "Colobot rules!"
|
msgid "Colobot rules!"
|
||||||
msgstr "Colobot est super!"
|
msgstr "Colobot est super!"
|
||||||
|
@ -403,6 +414,9 @@ msgstr "Copier"
|
||||||
msgid "Copy (Ctrl+c)"
|
msgid "Copy (Ctrl+c)"
|
||||||
msgstr "Copier (Ctrl+c)"
|
msgstr "Copier (Ctrl+c)"
|
||||||
|
|
||||||
|
msgid "Ctrl"
|
||||||
|
msgstr "Ctrl"
|
||||||
|
|
||||||
msgid "Current mission saved"
|
msgid "Current mission saved"
|
||||||
msgstr "Enregistrement effectué"
|
msgstr "Enregistrement effectué"
|
||||||
|
|
||||||
|
@ -477,10 +491,10 @@ msgid "Dust\\Dust and dirt on bots and buildings"
|
||||||
msgstr "Salissures\\Salissures des robots et bâtiments"
|
msgstr "Salissures\\Salissures des robots et bâtiments"
|
||||||
|
|
||||||
msgid "Dynamic lighting\\Mobile light sources"
|
msgid "Dynamic lighting\\Mobile light sources"
|
||||||
msgstr "Lumičres dynamiques\\Eclairages mobiles"
|
msgstr "Lumières dynamiques\\Éclairages mobiles"
|
||||||
|
|
||||||
msgid "Edit the selected program"
|
msgid "Edit the selected program"
|
||||||
msgstr "Edite le programme sélectionné"
|
msgstr "Édite le programme sélectionné"
|
||||||
|
|
||||||
msgid "Egg"
|
msgid "Egg"
|
||||||
msgstr "Oeuf"
|
msgstr "Oeuf"
|
||||||
|
@ -531,7 +545,7 @@ msgid "Filename:"
|
||||||
msgstr "Nom du fichier :"
|
msgstr "Nom du fichier :"
|
||||||
|
|
||||||
msgid "Film sequences\\Films before and after the missions"
|
msgid "Film sequences\\Films before and after the missions"
|
||||||
msgstr "Séquences cinématiques\\Films avant ou aprčs une mission"
|
msgstr "Séquences cinématiques\\Films avant ou après une mission"
|
||||||
|
|
||||||
msgid "Finish"
|
msgid "Finish"
|
||||||
msgstr "But"
|
msgstr "But"
|
||||||
|
@ -553,7 +567,7 @@ msgid "Folder: %s"
|
||||||
msgstr "Dossier: %s"
|
msgstr "Dossier: %s"
|
||||||
|
|
||||||
msgid "Font size"
|
msgid "Font size"
|
||||||
msgstr "Taille des caractčres"
|
msgstr "Taille des caractères"
|
||||||
|
|
||||||
msgid "Forward"
|
msgid "Forward"
|
||||||
msgstr "Page suivante"
|
msgstr "Page suivante"
|
||||||
|
@ -589,13 +603,13 @@ msgid "Free game\\Free game without a specific goal"
|
||||||
msgstr "Jeu libre\\Jeu libre sans but précis"
|
msgstr "Jeu libre\\Jeu libre sans but précis"
|
||||||
|
|
||||||
msgid "Friendly fire\\Your shooting can damage your own objects "
|
msgid "Friendly fire\\Your shooting can damage your own objects "
|
||||||
msgstr "Dégâts ŕ soi-męme\\Vos tirs infligent des dommages ŕ vos unités"
|
msgstr "Dégâts à soi-même\\Vos tirs infligent des dommages à vos unités"
|
||||||
|
|
||||||
msgid "Full screen\\Full screen or window mode"
|
msgid "Full screen\\Full screen or window mode"
|
||||||
msgstr "Plein écran\\Plein écran ou fenętré"
|
msgstr "Plein écran\\Plein écran ou fenêtré"
|
||||||
|
|
||||||
msgid "Function already exists"
|
msgid "Function already exists"
|
||||||
msgstr "Cette fonction existe déjŕ"
|
msgstr "Cette fonction existe déjà"
|
||||||
|
|
||||||
msgid "Function name missing"
|
msgid "Function name missing"
|
||||||
msgstr "Nom de la fonction attendu"
|
msgstr "Nom de la fonction attendu"
|
||||||
|
@ -609,8 +623,12 @@ msgstr "Jeu\\Options de jouabilité"
|
||||||
msgid "Gantry crane"
|
msgid "Gantry crane"
|
||||||
msgstr "Portique"
|
msgstr "Portique"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "GetResource event num out of range: %d\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Goto: destination occupied"
|
msgid "Goto: destination occupied"
|
||||||
msgstr "Destination occupée"
|
msgstr "Goto: Destination occupée"
|
||||||
|
|
||||||
msgid "Goto: inaccessible destination"
|
msgid "Goto: inaccessible destination"
|
||||||
msgstr "Chemin introuvable"
|
msgstr "Chemin introuvable"
|
||||||
|
@ -637,7 +655,7 @@ msgid "Hair color:"
|
||||||
msgstr "Couleur des cheveux :"
|
msgstr "Couleur des cheveux :"
|
||||||
|
|
||||||
msgid "Head\\Face and hair"
|
msgid "Head\\Face and hair"
|
||||||
msgstr "Tęte\\Visage et cheveux"
|
msgstr "Tête\\Visage et cheveux"
|
||||||
|
|
||||||
msgid "Help about selected object"
|
msgid "Help about selected object"
|
||||||
msgstr "Instructions sur la sélection"
|
msgstr "Instructions sur la sélection"
|
||||||
|
@ -681,8 +699,8 @@ msgstr "Pas le bon type de pile"
|
||||||
msgid "Incorrect index type"
|
msgid "Incorrect index type"
|
||||||
msgstr "Mauvais type d'index"
|
msgstr "Mauvais type d'index"
|
||||||
|
|
||||||
msgid "Infected by a virus, temporarily out of order"
|
msgid "Infected by a virus; temporarily out of order"
|
||||||
msgstr "Infecté par un virus, ne fonctionne plus temporairement"
|
msgstr "Infecté par un virus; ne fonctionne plus temporairement"
|
||||||
|
|
||||||
msgid "Information exchange post"
|
msgid "Information exchange post"
|
||||||
msgstr "Borne d'information"
|
msgstr "Borne d'information"
|
||||||
|
@ -703,7 +721,7 @@ msgid "Instructions (\\key help;)"
|
||||||
msgstr "Instructions (\\key help;)"
|
msgstr "Instructions (\\key help;)"
|
||||||
|
|
||||||
msgid "Instructions after the final closing brace"
|
msgid "Instructions after the final closing brace"
|
||||||
msgstr "Instructions aprčs la fin"
|
msgstr "Instructions après la fin"
|
||||||
|
|
||||||
msgid "Instructions for the mission (\\key help;)"
|
msgid "Instructions for the mission (\\key help;)"
|
||||||
msgstr "Instructions sur la mission (\\key help;)"
|
msgstr "Instructions sur la mission (\\key help;)"
|
||||||
|
@ -712,7 +730,7 @@ msgid "Instructions from Houston"
|
||||||
msgstr "Instructions de Houston"
|
msgstr "Instructions de Houston"
|
||||||
|
|
||||||
msgid "Instructions\\Shows the instructions for the current mission"
|
msgid "Instructions\\Shows the instructions for the current mission"
|
||||||
msgstr "Instructions mission\\Marche ŕ suivre"
|
msgstr "Instructions mission\\Marche à suivre"
|
||||||
|
|
||||||
msgid "Jet temperature"
|
msgid "Jet temperature"
|
||||||
msgstr "Température du réacteur"
|
msgstr "Température du réacteur"
|
||||||
|
@ -843,16 +861,16 @@ msgid "No energy in the subsoil"
|
||||||
msgstr "Pas d'énergie en sous-sol"
|
msgstr "Pas d'énergie en sous-sol"
|
||||||
|
|
||||||
msgid "No flag nearby"
|
msgid "No flag nearby"
|
||||||
msgstr "Aucun drapeau ŕ proximité"
|
msgstr "Aucun drapeau à proximité"
|
||||||
|
|
||||||
msgid "No function running"
|
msgid "No function running"
|
||||||
msgstr "Pas de fonction en exécution"
|
msgstr "Pas de fonction en exécution"
|
||||||
|
|
||||||
msgid "No function with this name accepts this kind of parameter"
|
msgid "No function with this name accepts this kind of parameter"
|
||||||
msgstr "Aucune fonction de ce nom n'accepte ce(s) type(s) de paramčtre(s)"
|
msgstr "Aucune fonction de ce nom n'accepte ce(s) type(s) de paramètre(s)"
|
||||||
|
|
||||||
msgid "No function with this name accepts this number of parameters"
|
msgid "No function with this name accepts this number of parameters"
|
||||||
msgstr "Aucune fonction de ce nom n'accepte ce nombre de paramčtres"
|
msgstr "Aucune fonction de ce nom n'accepte ce nombre de paramètres"
|
||||||
|
|
||||||
msgid "No information exchange post within range"
|
msgid "No information exchange post within range"
|
||||||
msgstr "Pas trouvé de borne d'information"
|
msgstr "Pas trouvé de borne d'information"
|
||||||
|
@ -876,13 +894,13 @@ msgid "No titanium around"
|
||||||
msgstr "Titanium inexistant"
|
msgstr "Titanium inexistant"
|
||||||
|
|
||||||
msgid "No titanium ore to convert"
|
msgid "No titanium ore to convert"
|
||||||
msgstr "Pas de minerai de titanium ŕ convertir"
|
msgstr "Pas de minerai de titanium à convertir"
|
||||||
|
|
||||||
msgid "No titanium to transform"
|
msgid "No titanium to transform"
|
||||||
msgstr "Pas de titanium ŕ transformer"
|
msgstr "Pas de titanium à transformer"
|
||||||
|
|
||||||
msgid "No uranium to transform"
|
msgid "No uranium to transform"
|
||||||
msgstr "Pas d'uranium ŕ transformer"
|
msgstr "Pas d'uranium à transformer"
|
||||||
|
|
||||||
msgid "Normal size"
|
msgid "Normal size"
|
||||||
msgstr "Taille normale"
|
msgstr "Taille normale"
|
||||||
|
@ -903,16 +921,16 @@ msgid "Not yet enough energy"
|
||||||
msgstr "Pas encore assez d'énergie"
|
msgstr "Pas encore assez d'énergie"
|
||||||
|
|
||||||
msgid "Nothing to analyze"
|
msgid "Nothing to analyze"
|
||||||
msgstr "Rien ŕ analyser"
|
msgstr "Rien à analyser"
|
||||||
|
|
||||||
msgid "Nothing to drop"
|
msgid "Nothing to drop"
|
||||||
msgstr "Rien ŕ déposer"
|
msgstr "Rien à déposer"
|
||||||
|
|
||||||
msgid "Nothing to grab"
|
msgid "Nothing to grab"
|
||||||
msgstr "Rien ŕ prendre"
|
msgstr "Rien à prendre"
|
||||||
|
|
||||||
msgid "Nothing to recycle"
|
msgid "Nothing to recycle"
|
||||||
msgstr "Rien ŕ recycler"
|
msgstr "Rien à recycler"
|
||||||
|
|
||||||
msgid "Nuclear power cell"
|
msgid "Nuclear power cell"
|
||||||
msgstr "Pile nucléaire"
|
msgstr "Pile nucléaire"
|
||||||
|
@ -933,7 +951,7 @@ msgid "Number of insects detected"
|
||||||
msgstr "Nombre d'insectes détectés"
|
msgstr "Nombre d'insectes détectés"
|
||||||
|
|
||||||
msgid "Number of particles\\Explosions, dust, reflections, etc."
|
msgid "Number of particles\\Explosions, dust, reflections, etc."
|
||||||
msgstr "Quantité de particules\\Explosions, poussičres, reflets, etc."
|
msgstr "Quantité de particules\\Explosions, poussières, reflets, etc."
|
||||||
|
|
||||||
msgid "OK"
|
msgid "OK"
|
||||||
msgstr "D'accord"
|
msgstr "D'accord"
|
||||||
|
@ -963,7 +981,7 @@ msgid "Opening brace missing "
|
||||||
msgstr "Début d'un bloc attendu"
|
msgstr "Début d'un bloc attendu"
|
||||||
|
|
||||||
msgid "Opening bracket missing"
|
msgid "Opening bracket missing"
|
||||||
msgstr "Il manque une parenthčse ouvrante"
|
msgstr "Il manque une parenthèse ouvrante"
|
||||||
|
|
||||||
msgid "Operation impossible with value \"nan\""
|
msgid "Operation impossible with value \"nan\""
|
||||||
msgstr "Opération sur un \"nan\""
|
msgstr "Opération sur un \"nan\""
|
||||||
|
@ -975,13 +993,13 @@ msgid "Options\\Preferences"
|
||||||
msgstr "Options\\Réglages"
|
msgstr "Options\\Réglages"
|
||||||
|
|
||||||
msgid "Organic matter"
|
msgid "Organic matter"
|
||||||
msgstr "Matičre organique"
|
msgstr "Matière organique"
|
||||||
|
|
||||||
msgid "Origin of last message\\Shows where the last message was sent from"
|
msgid "Origin of last message\\Shows where the last message was sent from"
|
||||||
msgstr "Montrer le lieu d'un message\\Montrer le lieu du dernier message"
|
msgstr "Montrer le lieu d'un message\\Montrer le lieu du dernier message"
|
||||||
|
|
||||||
msgid "Parameters missing "
|
msgid "Parameters missing "
|
||||||
msgstr "Pas assez de paramčtres"
|
msgstr "Pas assez de paramètres"
|
||||||
|
|
||||||
msgid "Particles in the interface\\Steam clouds and sparks in the interface"
|
msgid "Particles in the interface\\Steam clouds and sparks in the interface"
|
||||||
msgstr "Particules dans l'interface\\Pluie de particules"
|
msgstr "Particules dans l'interface\\Pluie de particules"
|
||||||
|
@ -1002,7 +1020,7 @@ msgid "Place occupied"
|
||||||
msgstr "Emplacement occupé"
|
msgstr "Emplacement occupé"
|
||||||
|
|
||||||
msgid "Planets and stars\\Astronomical objects in the sky"
|
msgid "Planets and stars\\Astronomical objects in the sky"
|
||||||
msgstr "Plančtes et étoiles\\Motifs mobiles dans le ciel"
|
msgstr "Planètes et étoiles\\Motifs mobiles dans le ciel"
|
||||||
|
|
||||||
msgid "Plans for defense tower available"
|
msgid "Plans for defense tower available"
|
||||||
msgstr "Construction d'une tour de défense possible"
|
msgstr "Construction d'une tour de défense possible"
|
||||||
|
@ -1023,7 +1041,7 @@ msgid "Plans for thumper available"
|
||||||
msgstr "Fabrication d'un robot secoueur possible"
|
msgstr "Fabrication d'un robot secoueur possible"
|
||||||
|
|
||||||
msgid "Plans for tracked robots available "
|
msgid "Plans for tracked robots available "
|
||||||
msgstr "Fabrication d'un robot ŕ chenilles possible"
|
msgstr "Fabrication d'un robot à chenilles possible"
|
||||||
|
|
||||||
msgid "Plant a flag"
|
msgid "Plant a flag"
|
||||||
msgstr "Pose un drapeau de couleur"
|
msgstr "Pose un drapeau de couleur"
|
||||||
|
@ -1086,10 +1104,10 @@ msgid "Programming exercises"
|
||||||
msgstr "Programmation"
|
msgstr "Programmation"
|
||||||
|
|
||||||
msgid "Programming help"
|
msgid "Programming help"
|
||||||
msgstr "Aide ŕ la programmation"
|
msgstr "Aide à la programmation"
|
||||||
|
|
||||||
msgid "Programming help (\\key prog;)"
|
msgid "Programming help (\\key prog;)"
|
||||||
msgstr "Aide ŕ la programmation (\\key prog;)"
|
msgstr "Aide à la programmation (\\key prog;)"
|
||||||
|
|
||||||
msgid "Programming help\\Gives more detailed help with programming"
|
msgid "Programming help\\Gives more detailed help with programming"
|
||||||
msgstr "Instructions programmation\\Explication sur la programmation"
|
msgstr "Instructions programmation\\Explication sur la programmation"
|
||||||
|
@ -1107,7 +1125,7 @@ msgid "Public required"
|
||||||
msgstr "Public requis"
|
msgstr "Public requis"
|
||||||
|
|
||||||
msgid "Public\\Common folder"
|
msgid "Public\\Common folder"
|
||||||
msgstr "Public\\Dossier commun ŕ tous les joueurs"
|
msgstr "Public\\Dossier commun à tous les joueurs"
|
||||||
|
|
||||||
msgid "Quake at explosions\\The screen shakes at explosions"
|
msgid "Quake at explosions\\The screen shakes at explosions"
|
||||||
msgstr "Secousses lors d'explosions\\L'écran vibre lors d'une explosion"
|
msgstr "Secousses lors d'explosions\\L'écran vibre lors d'une explosion"
|
||||||
|
@ -1125,7 +1143,7 @@ msgid "Radar station"
|
||||||
msgstr "Radar"
|
msgstr "Radar"
|
||||||
|
|
||||||
msgid "Read error"
|
msgid "Read error"
|
||||||
msgstr "Erreur ŕ la lecture"
|
msgstr "Erreur à la lecture"
|
||||||
|
|
||||||
msgid "Recorder"
|
msgid "Recorder"
|
||||||
msgstr "Enregistreur"
|
msgstr "Enregistreur"
|
||||||
|
@ -1149,7 +1167,7 @@ msgid "Remains of Apollo mission"
|
||||||
msgstr "Vestige d'une mission Apollo"
|
msgstr "Vestige d'une mission Apollo"
|
||||||
|
|
||||||
msgid "Remove a flag"
|
msgid "Remove a flag"
|
||||||
msgstr "Enlčve un drapeau"
|
msgstr "Enlève un drapeau"
|
||||||
|
|
||||||
msgid "Repair center"
|
msgid "Repair center"
|
||||||
msgstr "Centre de réparation"
|
msgstr "Centre de réparation"
|
||||||
|
@ -1158,7 +1176,7 @@ msgid "Research center"
|
||||||
msgstr "Centre de recherches"
|
msgstr "Centre de recherches"
|
||||||
|
|
||||||
msgid "Research program already performed"
|
msgid "Research program already performed"
|
||||||
msgstr "Recherche déjŕ effectuée"
|
msgstr "Recherche déjà effectuée"
|
||||||
|
|
||||||
msgid "Research program completed"
|
msgid "Research program completed"
|
||||||
msgstr "Recherche terminée"
|
msgstr "Recherche terminée"
|
||||||
|
@ -1258,6 +1276,9 @@ msgstr "Rayon du bouclier"
|
||||||
msgid "Shielder"
|
msgid "Shielder"
|
||||||
msgstr "Robot bouclier"
|
msgstr "Robot bouclier"
|
||||||
|
|
||||||
|
msgid "Shift"
|
||||||
|
msgstr "Shift"
|
||||||
|
|
||||||
msgid "Shoot (\\key action;)"
|
msgid "Shoot (\\key action;)"
|
||||||
msgstr "Tir (\\key action;)"
|
msgstr "Tir (\\key action;)"
|
||||||
|
|
||||||
|
@ -1350,7 +1371,7 @@ msgid "Still working ..."
|
||||||
msgstr "Travail en cours ..."
|
msgstr "Travail en cours ..."
|
||||||
|
|
||||||
msgid "String missing"
|
msgid "String missing"
|
||||||
msgstr "Une chaîne de caractčre est attendue"
|
msgstr "Une chaîne de caractère est attendue"
|
||||||
|
|
||||||
msgid "Strip color:"
|
msgid "Strip color:"
|
||||||
msgstr "Couleur des bandes :"
|
msgstr "Couleur des bandes :"
|
||||||
|
@ -1405,7 +1426,7 @@ msgid "The types of the two operands are incompatible "
|
||||||
msgstr "Les deux opérandes ne sont pas de types compatibles"
|
msgstr "Les deux opérandes ne sont pas de types compatibles"
|
||||||
|
|
||||||
msgid "This class already exists"
|
msgid "This class already exists"
|
||||||
msgstr "Cette classe existe déjŕ"
|
msgstr "Cette classe existe déjà"
|
||||||
|
|
||||||
msgid "This class does not exist"
|
msgid "This class does not exist"
|
||||||
msgstr "Cette classe n'existe pas"
|
msgstr "Cette classe n'existe pas"
|
||||||
|
@ -1456,7 +1477,7 @@ msgid "Too many flags of this color (maximum 5)"
|
||||||
msgstr "Trop de drapeaux de cette couleur (maximum 5)"
|
msgstr "Trop de drapeaux de cette couleur (maximum 5)"
|
||||||
|
|
||||||
msgid "Too many parameters"
|
msgid "Too many parameters"
|
||||||
msgstr "Trop de paramčtres"
|
msgstr "Trop de paramètres"
|
||||||
|
|
||||||
msgid "Tracked grabber"
|
msgid "Tracked grabber"
|
||||||
msgstr "Robot déménageur"
|
msgstr "Robot déménageur"
|
||||||
|
@ -1480,16 +1501,16 @@ msgid "Transmitted information"
|
||||||
msgstr "Informations diffusées"
|
msgstr "Informations diffusées"
|
||||||
|
|
||||||
msgid "Turn left (\\key left;)"
|
msgid "Turn left (\\key left;)"
|
||||||
msgstr "Tourne ŕ gauche (\\key left;)"
|
msgstr "Tourne à gauche (\\key left;)"
|
||||||
|
|
||||||
msgid "Turn left\\turns the bot to the left"
|
msgid "Turn left\\turns the bot to the left"
|
||||||
msgstr "Tourner ŕ gauche\\Moteur ŕ gauche"
|
msgstr "Tourner à gauche\\Moteur à gauche"
|
||||||
|
|
||||||
msgid "Turn right (\\key right;)"
|
msgid "Turn right (\\key right;)"
|
||||||
msgstr "Tourne ŕ droite (\\key right;)"
|
msgstr "Tourne à droite (\\key right;)"
|
||||||
|
|
||||||
msgid "Turn right\\turns the bot to the right"
|
msgid "Turn right\\turns the bot to the right"
|
||||||
msgstr "Tourner ŕ droite\\Moteur ŕ droite"
|
msgstr "Tourner à droite\\Moteur à droite"
|
||||||
|
|
||||||
msgid "Type declaration missing"
|
msgid "Type declaration missing"
|
||||||
msgstr "Déclaration de type attendu"
|
msgstr "Déclaration de type attendu"
|
||||||
|
@ -1543,7 +1564,7 @@ msgid "Violet flag"
|
||||||
msgstr "Drapeau violet"
|
msgstr "Drapeau violet"
|
||||||
|
|
||||||
msgid "Void parameter"
|
msgid "Void parameter"
|
||||||
msgstr "Paramčtre void"
|
msgstr "Paramètre void"
|
||||||
|
|
||||||
msgid "Wasp"
|
msgid "Wasp"
|
||||||
msgstr "Guępe"
|
msgstr "Guępe"
|
||||||
|
@ -1566,6 +1587,9 @@ msgstr "Robot shooter"
|
||||||
msgid "Wheeled sniffer"
|
msgid "Wheeled sniffer"
|
||||||
msgstr "Robot renifleur"
|
msgstr "Robot renifleur"
|
||||||
|
|
||||||
|
msgid "Win"
|
||||||
|
msgstr "Gagné"
|
||||||
|
|
||||||
msgid "Winged grabber"
|
msgid "Winged grabber"
|
||||||
msgstr "Robot déménageur"
|
msgstr "Robot déménageur"
|
||||||
|
|
||||||
|
@ -1591,7 +1615,7 @@ msgid "Wreckage"
|
||||||
msgstr "Epave de robot"
|
msgstr "Epave de robot"
|
||||||
|
|
||||||
msgid "Write error"
|
msgid "Write error"
|
||||||
msgstr "Erreur ŕ l'écriture"
|
msgstr "Erreur à l'écriture"
|
||||||
|
|
||||||
msgid "Wrong type for the assignment"
|
msgid "Wrong type for the assignment"
|
||||||
msgstr "Mauvais type de résultat pour l'assignation"
|
msgstr "Mauvais type de résultat pour l'assignation"
|
||||||
|
@ -1652,13 +1676,13 @@ msgid "\\Green flags"
|
||||||
msgstr "\\Drapeaux verts"
|
msgstr "\\Drapeaux verts"
|
||||||
|
|
||||||
msgid "\\New player name"
|
msgid "\\New player name"
|
||||||
msgstr "\\Nom du joueur ŕ créer"
|
msgstr "\\Nom du joueur à créer"
|
||||||
|
|
||||||
msgid "\\No eyeglasses"
|
msgid "\\No eyeglasses"
|
||||||
msgstr "\\Pas de lunettes"
|
msgstr "\\Pas de lunettes"
|
||||||
|
|
||||||
msgid "\\Raise the pencil"
|
msgid "\\Raise the pencil"
|
||||||
msgstr "\\Relčve le crayon"
|
msgstr "\\Relève le crayon"
|
||||||
|
|
||||||
msgid "\\Red flags"
|
msgid "\\Red flags"
|
||||||
msgstr "\\Drapeaux rouges"
|
msgstr "\\Drapeaux rouges"
|
||||||
|
@ -1676,10 +1700,10 @@ msgid "\\Stop recording"
|
||||||
msgstr "\\Stoppe l'enregistrement"
|
msgstr "\\Stoppe l'enregistrement"
|
||||||
|
|
||||||
msgid "\\Turn left"
|
msgid "\\Turn left"
|
||||||
msgstr "\\Rotation ŕ gauche"
|
msgstr "\\Rotation à gauche"
|
||||||
|
|
||||||
msgid "\\Turn right"
|
msgid "\\Turn right"
|
||||||
msgstr "\\Rotation ŕ droite"
|
msgstr "\\Rotation à droite"
|
||||||
|
|
||||||
msgid "\\Use the black pencil"
|
msgid "\\Use the black pencil"
|
||||||
msgstr "\\Abaisse le crayon noir"
|
msgstr "\\Abaisse le crayon noir"
|
||||||
|
@ -1732,6 +1756,69 @@ msgstr "\\b;Listes des robots\n"
|
||||||
msgid "\\c; (none)\\n;\n"
|
msgid "\\c; (none)\\n;\n"
|
||||||
msgstr "\\c; (aucun)\\n;\n"
|
msgstr "\\c; (aucun)\\n;\n"
|
||||||
|
|
||||||
|
msgid "action;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "away;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "camera;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "cbot;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "desel;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "down;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "gdown;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "gup;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "help;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "human;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "left;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "near;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "next;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "prog;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "quit;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "right;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "speed10;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "speed15;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "speed20;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "up;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "visit;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "www.epsitec.com"
|
msgid "www.epsitec.com"
|
||||||
msgstr "www.epsitec.com"
|
msgstr "www.epsitec.com"
|
||||||
|
|
||||||
|
@ -1741,30 +1828,24 @@ msgstr "www.epsitec.com"
|
||||||
#~ msgid "<--"
|
#~ msgid "<--"
|
||||||
#~ msgstr "<--"
|
#~ msgstr "<--"
|
||||||
|
|
||||||
#~ msgid "Alt"
|
|
||||||
#~ msgstr "Alt"
|
|
||||||
|
|
||||||
#~ msgid "Application key"
|
#~ msgid "Application key"
|
||||||
#~ msgstr "Application key"
|
#~ msgstr "Application key"
|
||||||
|
|
||||||
#~ msgid "Arrow down"
|
#~ msgid "Arrow down"
|
||||||
#~ msgstr "Flčche Bas"
|
#~ msgstr "Flèche Bas"
|
||||||
|
|
||||||
#~ msgid "Arrow left"
|
#~ msgid "Arrow left"
|
||||||
#~ msgstr "Flčche Gauche"
|
#~ msgstr "Flèche Gauche"
|
||||||
|
|
||||||
#~ msgid "Arrow right"
|
#~ msgid "Arrow right"
|
||||||
#~ msgstr "Flčche Droite"
|
#~ msgstr "Flèche Droite"
|
||||||
|
|
||||||
#~ msgid "Arrow up"
|
#~ msgid "Arrow up"
|
||||||
#~ msgstr "Flčche Haut"
|
#~ msgstr "Flèche Haut"
|
||||||
|
|
||||||
#~ msgid "Attn"
|
#~ msgid "Attn"
|
||||||
#~ msgstr "Attn"
|
#~ msgstr "Attn"
|
||||||
|
|
||||||
#~ msgid "Button %1"
|
|
||||||
#~ msgstr "Bouton %1"
|
|
||||||
|
|
||||||
#~ msgid "Caps Lock"
|
#~ msgid "Caps Lock"
|
||||||
#~ msgstr "Caps Lock"
|
#~ msgstr "Caps Lock"
|
||||||
|
|
||||||
|
@ -1777,9 +1858,6 @@ msgstr "www.epsitec.com"
|
||||||
#~ msgid "CrSel"
|
#~ msgid "CrSel"
|
||||||
#~ msgstr "CrSel"
|
#~ msgstr "CrSel"
|
||||||
|
|
||||||
#~ msgid "Ctrl"
|
|
||||||
#~ msgstr "Ctrl"
|
|
||||||
|
|
||||||
#~ msgid "Delete Key"
|
#~ msgid "Delete Key"
|
||||||
#~ msgstr "Delete"
|
#~ msgstr "Delete"
|
||||||
|
|
||||||
|
@ -1963,9 +2041,6 @@ msgstr "www.epsitec.com"
|
||||||
#~ msgid "Select"
|
#~ msgid "Select"
|
||||||
#~ msgstr "Select"
|
#~ msgstr "Select"
|
||||||
|
|
||||||
#~ msgid "Shift"
|
|
||||||
#~ msgstr "Shift"
|
|
||||||
|
|
||||||
#~ msgid "Space"
|
#~ msgid "Space"
|
||||||
#~ msgstr "Espace"
|
#~ msgstr "Espace"
|
||||||
|
|
||||||
|
|
117
src/po/pl.po
117
src/po/pl.po
|
@ -1,7 +1,7 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2012-12-13 21:46+0100\n"
|
"POT-Creation-Date: 2012-12-27 17:09+0100\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
@ -65,6 +65,9 @@ msgstr "Brak \" ] \""
|
||||||
msgid "\"%s\" missing in this exercise"
|
msgid "\"%s\" missing in this exercise"
|
||||||
msgstr "It misses \"%s\" in this exercise"
|
msgstr "It misses \"%s\" in this exercise"
|
||||||
|
|
||||||
|
msgid "%1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "..behind"
|
msgid "..behind"
|
||||||
msgstr "..za"
|
msgstr "..za"
|
||||||
|
|
||||||
|
@ -86,13 +89,16 @@ msgstr "Dźwięk 3D\\Przestrzenne pozycjonowanie dźwięków"
|
||||||
msgid "<< Back \\Back to the previous screen"
|
msgid "<< Back \\Back to the previous screen"
|
||||||
msgstr "<< Wstecz \\Wraca do poprzedniego ekranu"
|
msgstr "<< Wstecz \\Wraca do poprzedniego ekranu"
|
||||||
|
|
||||||
msgid "<<< Sorry, mission failed >>>"
|
#, fuzzy
|
||||||
|
msgid "<<< Sorry; mission failed >>>"
|
||||||
msgstr "<<< Niestety, misja nie powiodła się >>>"
|
msgstr "<<< Niestety, misja nie powiodła się >>>"
|
||||||
|
|
||||||
msgid "<<< Well done, mission accomplished >>>"
|
#, fuzzy
|
||||||
|
msgid "<<< Well done; mission accomplished >>>"
|
||||||
msgstr "<<< Dobra robota, misja wypełniona >>>"
|
msgstr "<<< Dobra robota, misja wypełniona >>>"
|
||||||
|
|
||||||
msgid "A label must be followed by \"for\", \"while\", \"do\" or \"switch\""
|
#, fuzzy
|
||||||
|
msgid "A label must be followed by \"for\"; \"while\"; \"do\" or \"switch\""
|
||||||
msgstr "Po etykiecie musi wystąpić \"for\", \"while\", \"do\" lub \"switch\""
|
msgstr "Po etykiecie musi wystąpić \"for\", \"while\", \"do\" lub \"switch\""
|
||||||
|
|
||||||
msgid "A variable can not be declared twice"
|
msgid "A variable can not be declared twice"
|
||||||
|
@ -122,6 +128,9 @@ msgstr "Królowa Obcych została zabita"
|
||||||
msgid "Already carrying something"
|
msgid "Already carrying something"
|
||||||
msgstr "Nie można nieść więcej przedmiotów"
|
msgstr "Nie można nieść więcej przedmiotów"
|
||||||
|
|
||||||
|
msgid "Alt"
|
||||||
|
msgstr "Alt"
|
||||||
|
|
||||||
msgid "Analysis already performed"
|
msgid "Analysis already performed"
|
||||||
msgstr "Analiza została już wykonana"
|
msgstr "Analiza została już wykonana"
|
||||||
|
|
||||||
|
@ -301,6 +310,9 @@ msgstr "Budynek zniszczony"
|
||||||
msgid "Building too close"
|
msgid "Building too close"
|
||||||
msgstr "Budynek za blisko"
|
msgstr "Budynek za blisko"
|
||||||
|
|
||||||
|
msgid "Button %1"
|
||||||
|
msgstr "Przycisk %1"
|
||||||
|
|
||||||
msgid "COLOBOT"
|
msgid "COLOBOT"
|
||||||
msgstr "COLOBOT"
|
msgstr "COLOBOT"
|
||||||
|
|
||||||
|
@ -328,7 +340,8 @@ msgstr "Camera to left"
|
||||||
msgid "Camera to right"
|
msgid "Camera to right"
|
||||||
msgstr "Camera to right"
|
msgstr "Camera to right"
|
||||||
|
|
||||||
msgid "Can not create this, there are too many objects"
|
#, fuzzy
|
||||||
|
msgid "Can not create this; there are too many objects"
|
||||||
msgstr "Nie można tego utworzyć, za dużo obiektów"
|
msgstr "Nie można tego utworzyć, za dużo obiektów"
|
||||||
|
|
||||||
msgid "Can't open file"
|
msgid "Can't open file"
|
||||||
|
@ -367,9 +380,6 @@ msgstr "Zamknij"
|
||||||
msgid "Closing bracket missing "
|
msgid "Closing bracket missing "
|
||||||
msgstr "Brak nawiasu zamykającego"
|
msgstr "Brak nawiasu zamykającego"
|
||||||
|
|
||||||
msgid "Colobot Gold"
|
|
||||||
msgstr "Colobot Gold"
|
|
||||||
|
|
||||||
msgid "Colobot rules!"
|
msgid "Colobot rules!"
|
||||||
msgstr "Colobot rządzi!"
|
msgstr "Colobot rządzi!"
|
||||||
|
|
||||||
|
@ -406,6 +416,9 @@ msgstr "Kopiuj"
|
||||||
msgid "Copy (Ctrl+c)"
|
msgid "Copy (Ctrl+c)"
|
||||||
msgstr "Kopiuj (Ctrl+C)"
|
msgstr "Kopiuj (Ctrl+C)"
|
||||||
|
|
||||||
|
msgid "Ctrl"
|
||||||
|
msgstr "Ctrl"
|
||||||
|
|
||||||
msgid "Current mission saved"
|
msgid "Current mission saved"
|
||||||
msgstr "Bieżąca misja zapisana"
|
msgstr "Bieżąca misja zapisana"
|
||||||
|
|
||||||
|
@ -612,6 +625,10 @@ msgstr "Gra\\Ustawienia gry"
|
||||||
msgid "Gantry crane"
|
msgid "Gantry crane"
|
||||||
msgstr "Żuraw przesuwalny"
|
msgstr "Żuraw przesuwalny"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "GetResource event num out of range: %d\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Goto: destination occupied"
|
msgid "Goto: destination occupied"
|
||||||
msgstr "Goto: miejsce docelowe zajęte"
|
msgstr "Goto: miejsce docelowe zajęte"
|
||||||
|
|
||||||
|
@ -685,7 +702,8 @@ msgstr "Nieodpowiedni rodzaj ogniw"
|
||||||
msgid "Incorrect index type"
|
msgid "Incorrect index type"
|
||||||
msgstr "Nieprawidłowy typ indeksu"
|
msgstr "Nieprawidłowy typ indeksu"
|
||||||
|
|
||||||
msgid "Infected by a virus, temporarily out of order"
|
#, fuzzy
|
||||||
|
msgid "Infected by a virus; temporarily out of order"
|
||||||
msgstr "Zainfekowane wirusem, chwilowo niesprawne"
|
msgstr "Zainfekowane wirusem, chwilowo niesprawne"
|
||||||
|
|
||||||
msgid "Information exchange post"
|
msgid "Information exchange post"
|
||||||
|
@ -1264,6 +1282,9 @@ msgstr "Zasięg osłony"
|
||||||
msgid "Shielder"
|
msgid "Shielder"
|
||||||
msgstr "Osłaniacz"
|
msgstr "Osłaniacz"
|
||||||
|
|
||||||
|
msgid "Shift"
|
||||||
|
msgstr "Shift"
|
||||||
|
|
||||||
msgid "Shoot (\\key action;)"
|
msgid "Shoot (\\key action;)"
|
||||||
msgstr "Strzelaj (\\key action;)"
|
msgstr "Strzelaj (\\key action;)"
|
||||||
|
|
||||||
|
@ -1575,6 +1596,9 @@ msgstr "Działo na kołach"
|
||||||
msgid "Wheeled sniffer"
|
msgid "Wheeled sniffer"
|
||||||
msgstr "Szperacz na kołach"
|
msgstr "Szperacz na kołach"
|
||||||
|
|
||||||
|
msgid "Win"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Winged grabber"
|
msgid "Winged grabber"
|
||||||
msgstr "Transporter latający"
|
msgstr "Transporter latający"
|
||||||
|
|
||||||
|
@ -1740,6 +1764,69 @@ msgstr "\\b;Roboty\n"
|
||||||
msgid "\\c; (none)\\n;\n"
|
msgid "\\c; (none)\\n;\n"
|
||||||
msgstr "\\c; (brak)\\n;\n"
|
msgstr "\\c; (brak)\\n;\n"
|
||||||
|
|
||||||
|
msgid "action;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "away;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "camera;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "cbot;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "desel;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "down;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "gdown;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "gup;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "help;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "human;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "left;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "near;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "next;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "prog;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "quit;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "right;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "speed10;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "speed15;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "speed20;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "up;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "visit;"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "www.epsitec.com"
|
msgid "www.epsitec.com"
|
||||||
msgstr "www.epsitec.com"
|
msgstr "www.epsitec.com"
|
||||||
|
|
||||||
|
@ -1749,9 +1836,6 @@ msgstr "www.epsitec.com"
|
||||||
#~ msgid "<--"
|
#~ msgid "<--"
|
||||||
#~ msgstr "<--"
|
#~ msgstr "<--"
|
||||||
|
|
||||||
#~ msgid "Alt"
|
|
||||||
#~ msgstr "Alt"
|
|
||||||
|
|
||||||
#~ msgid "Application key"
|
#~ msgid "Application key"
|
||||||
#~ msgstr "Klawisz menu kontekstowego"
|
#~ msgstr "Klawisz menu kontekstowego"
|
||||||
|
|
||||||
|
@ -1770,9 +1854,6 @@ msgstr "www.epsitec.com"
|
||||||
#~ msgid "Attn"
|
#~ msgid "Attn"
|
||||||
#~ msgstr "Attn"
|
#~ msgstr "Attn"
|
||||||
|
|
||||||
#~ msgid "Button %1"
|
|
||||||
#~ msgstr "Przycisk %1"
|
|
||||||
|
|
||||||
#~ msgid "Caps Lock"
|
#~ msgid "Caps Lock"
|
||||||
#~ msgstr "Caps Lock"
|
#~ msgstr "Caps Lock"
|
||||||
|
|
||||||
|
@ -1785,9 +1866,6 @@ msgstr "www.epsitec.com"
|
||||||
#~ msgid "CrSel"
|
#~ msgid "CrSel"
|
||||||
#~ msgstr "CrSel"
|
#~ msgstr "CrSel"
|
||||||
|
|
||||||
#~ msgid "Ctrl"
|
|
||||||
#~ msgstr "Ctrl"
|
|
||||||
|
|
||||||
#~ msgid "Delete Key"
|
#~ msgid "Delete Key"
|
||||||
#~ msgstr "Delete"
|
#~ msgstr "Delete"
|
||||||
|
|
||||||
|
@ -1971,9 +2049,6 @@ msgstr "www.epsitec.com"
|
||||||
#~ msgid "Select"
|
#~ msgid "Select"
|
||||||
#~ msgstr "Zaznacz"
|
#~ msgstr "Zaznacz"
|
||||||
|
|
||||||
#~ msgid "Shift"
|
|
||||||
#~ msgstr "Shift"
|
|
||||||
|
|
||||||
#~ msgid "Space"
|
#~ msgid "Space"
|
||||||
#~ msgstr "Spacja"
|
#~ msgstr "Spacja"
|
||||||
|
|
||||||
|
|
|
@ -2753,9 +2753,14 @@ void CScript::InitFonctions()
|
||||||
CScript::~CScript()
|
CScript::~CScript()
|
||||||
{
|
{
|
||||||
delete m_botProg;
|
delete m_botProg;
|
||||||
|
m_botProg = nullptr;
|
||||||
|
|
||||||
delete m_primaryTask;
|
delete m_primaryTask;
|
||||||
delete m_script;
|
m_primaryTask = nullptr;
|
||||||
m_script = 0;
|
|
||||||
|
delete[] m_script;
|
||||||
|
m_script = nullptr;
|
||||||
|
|
||||||
m_len = 0;
|
m_len = 0;
|
||||||
|
|
||||||
m_iMan->DeleteInstance(CLASS_SCRIPT, this);
|
m_iMan->DeleteInstance(CLASS_SCRIPT, this);
|
||||||
|
@ -2766,7 +2771,7 @@ CScript::~CScript()
|
||||||
|
|
||||||
void CScript::PutScript(Ui::CEdit* edit, const char* name)
|
void CScript::PutScript(Ui::CEdit* edit, const char* name)
|
||||||
{
|
{
|
||||||
if ( m_script == 0 )
|
if ( m_script == nullptr )
|
||||||
{
|
{
|
||||||
New(edit, name);
|
New(edit, name);
|
||||||
}
|
}
|
||||||
|
@ -2785,11 +2790,11 @@ bool CScript::GetScript(Ui::CEdit* edit)
|
||||||
{
|
{
|
||||||
int len;
|
int len;
|
||||||
|
|
||||||
delete m_script;
|
delete[] m_script;
|
||||||
m_script = 0;
|
m_script = nullptr;
|
||||||
|
|
||||||
len = edit->GetTextLength();
|
len = edit->GetTextLength();
|
||||||
m_script = static_cast<char*>(malloc(sizeof(char)*(len+1)));
|
m_script = new char[len+1];
|
||||||
|
|
||||||
edit->GetText(m_script, len+1);
|
edit->GetText(m_script, len+1);
|
||||||
edit->GetCursor(m_cursor2, m_cursor1);
|
edit->GetCursor(m_cursor2, m_cursor1);
|
||||||
|
@ -2997,7 +3002,7 @@ void CScript::SetStepMode(bool bStep)
|
||||||
bool CScript::Run()
|
bool CScript::Run()
|
||||||
{
|
{
|
||||||
if( m_botProg == 0 ) return false;
|
if( m_botProg == 0 ) return false;
|
||||||
if ( m_script == 0 || m_len == 0 ) return false;
|
if ( m_script == nullptr || m_len == 0 ) return false;
|
||||||
|
|
||||||
if ( !m_botProg->Start(m_title) ) return false;
|
if ( !m_botProg->Start(m_title) ) return false;
|
||||||
|
|
||||||
|
@ -3475,9 +3480,9 @@ bool CScript::IntroduceVirus()
|
||||||
start = found[i+1];
|
start = found[i+1];
|
||||||
i = found[i+0];
|
i = found[i+0];
|
||||||
|
|
||||||
newScript = static_cast<char*>(malloc(sizeof(char)*(m_len+strlen(names[i+1])+1)));
|
newScript = new char[m_len+strlen(names[i+1])+1];
|
||||||
strcpy(newScript, m_script);
|
strcpy(newScript, m_script);
|
||||||
delete m_script;
|
delete[] m_script;
|
||||||
m_script = newScript;
|
m_script = newScript;
|
||||||
|
|
||||||
DeleteToken(m_script, start, strlen(names[i]));
|
DeleteToken(m_script, start, strlen(names[i]));
|
||||||
|
@ -3638,7 +3643,7 @@ void CScript::New(Ui::CEdit* edit, const char* name)
|
||||||
bool CScript::SendScript(char* text)
|
bool CScript::SendScript(char* text)
|
||||||
{
|
{
|
||||||
m_len = strlen(text);
|
m_len = strlen(text);
|
||||||
m_script = static_cast<char*>(malloc(sizeof(char)*(m_len+1)));
|
m_script = new char[m_len+1];
|
||||||
strcpy(m_script, text);
|
strcpy(m_script, text);
|
||||||
if ( !CheckToken() ) return false;
|
if ( !CheckToken() ) return false;
|
||||||
if ( !Compile() ) return false;
|
if ( !Compile() ) return false;
|
||||||
|
@ -3669,8 +3674,8 @@ bool CScript::ReadScript(const char* filename)
|
||||||
if ( file == NULL ) return false;
|
if ( file == NULL ) return false;
|
||||||
fclose(file);
|
fclose(file);
|
||||||
|
|
||||||
delete m_script;
|
delete[] m_script;
|
||||||
m_script = 0;
|
m_script = nullptr;
|
||||||
|
|
||||||
edit = m_interface->CreateEdit(Math::Point(0.0f, 0.0f), Math::Point(0.0f, 0.0f), 0, EVENT_EDIT9);
|
edit = m_interface->CreateEdit(Math::Point(0.0f, 0.0f), Math::Point(0.0f, 0.0f), 0, EVENT_EDIT9);
|
||||||
edit->SetMaxChar(Ui::EDITSTUDIOMAX);
|
edit->SetMaxChar(Ui::EDITSTUDIOMAX);
|
||||||
|
@ -3697,7 +3702,7 @@ bool CScript::WriteScript(const char* filename)
|
||||||
name = filename;
|
name = filename;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( m_script == 0 )
|
if ( m_script == nullptr )
|
||||||
{
|
{
|
||||||
remove(filename);
|
remove(filename);
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -297,6 +297,8 @@ int ALSound::Play(Sound sound, Math::Vector pos, float amplitude, float frequenc
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GetLogger()->Trace("ALSound::Play sound: %d volume: %f frequency: %f\n", sound, amplitude, frequency);
|
||||||
|
|
||||||
int channel;
|
int channel;
|
||||||
bool bAlreadyLoaded;
|
bool bAlreadyLoaded;
|
||||||
if (!SearchFreeBuffer(sound, channel, bAlreadyLoaded))
|
if (!SearchFreeBuffer(sound, channel, bAlreadyLoaded))
|
||||||
|
@ -308,12 +310,12 @@ int ALSound::Play(Sound sound, Math::Vector pos, float amplitude, float frequenc
|
||||||
Position(channel, pos);
|
Position(channel, pos);
|
||||||
|
|
||||||
// setting initial values
|
// setting initial values
|
||||||
mChannels[channel]->SetStartAmplitude(amplitude);
|
mChannels[channel]->SetStartAmplitude(mAudioVolume);
|
||||||
mChannels[channel]->SetStartFrequency(frequency);
|
mChannels[channel]->SetStartFrequency(frequency);
|
||||||
mChannels[channel]->SetChangeFrequency(1.0f);
|
mChannels[channel]->SetChangeFrequency(1.0f);
|
||||||
mChannels[channel]->ResetOper();
|
mChannels[channel]->ResetOper();
|
||||||
mChannels[channel]->AdjustFrequency(frequency);
|
mChannels[channel]->AdjustFrequency(frequency);
|
||||||
mChannels[channel]->AdjustVolume(mAudioVolume);
|
mChannels[channel]->AdjustVolume(amplitude * mAudioVolume);
|
||||||
mChannels[channel]->Play();
|
mChannels[channel]->Play();
|
||||||
return channel;
|
return channel;
|
||||||
}
|
}
|
||||||
|
@ -451,17 +453,17 @@ void ALSound::FrameMove(float delta)
|
||||||
it.second->AdjustVolume(volume * mAudioVolume);
|
it.second->AdjustVolume(volume * mAudioVolume);
|
||||||
|
|
||||||
// setting frequency
|
// setting frequency
|
||||||
frequency = progress * (oper.finalFrequency - it.second->GetStartFrequency()) * it.second->GetStartFrequency() * it.second->GetChangeFrequency();
|
frequency = progress * abs(oper.finalFrequency - it.second->GetStartFrequency()) * it.second->GetStartFrequency() * it.second->GetChangeFrequency();
|
||||||
it.second->AdjustFrequency(frequency);
|
it.second->AdjustFrequency(frequency);
|
||||||
|
|
||||||
if (it.second->GetEnvelope().totalTime <= it.second->GetCurrentTime()) {
|
if (it.second->GetEnvelope().totalTime <= it.second->GetCurrentTime()) {
|
||||||
|
|
||||||
if (oper.nextOper == SOPER_LOOP) {
|
if (oper.nextOper == SOPER_LOOP) {
|
||||||
GetLogger()->Trace("Sound oper: replay.\n");
|
GetLogger()->Trace("ALSound::FrameMove oper: replay.\n");
|
||||||
it.second->SetCurrentTime(0.0f);
|
it.second->SetCurrentTime(0.0f);
|
||||||
it.second->Play();
|
it.second->Play();
|
||||||
} else {
|
} else {
|
||||||
GetLogger()->Trace("Sound oper: next.\n");
|
GetLogger()->Trace("ALSound::FrameMove oper: next.\n");
|
||||||
it.second->SetStartAmplitude(oper.finalAmplitude);
|
it.second->SetStartAmplitude(oper.finalAmplitude);
|
||||||
it.second->SetStartFrequency(oper.finalFrequency);
|
it.second->SetStartFrequency(oper.finalFrequency);
|
||||||
it.second->PopEnvelope();
|
it.second->PopEnvelope();
|
||||||
|
|
|
@ -39,7 +39,7 @@ Channel::~Channel() {
|
||||||
alSourcei(mSource, AL_BUFFER, 0);
|
alSourcei(mSource, AL_BUFFER, 0);
|
||||||
alDeleteSources(1, &mSource);
|
alDeleteSources(1, &mSource);
|
||||||
if (alCheck())
|
if (alCheck())
|
||||||
GetLogger()->Warn("Failed to delete sound source. Code: %s\n", alGetCode());
|
GetLogger()->Warn("Failed to delete sound source. Code: %d\n", alGetCode());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -50,7 +50,7 @@ bool Channel::Play() {
|
||||||
|
|
||||||
alSourcePlay(mSource);
|
alSourcePlay(mSource);
|
||||||
if (alCheck())
|
if (alCheck())
|
||||||
GetLogger()->Warn("Could not play audio sound source. Code: %s\n", alGetCode());
|
GetLogger()->Warn("Could not play audio sound source. Code: %d\n", alGetCode());
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -61,7 +61,7 @@ bool Channel::SetPosition(Math::Vector pos) {
|
||||||
|
|
||||||
alSource3f(mSource, AL_POSITION, pos.x, pos.y, pos.z);
|
alSource3f(mSource, AL_POSITION, pos.x, pos.y, pos.z);
|
||||||
if (alCheck()) {
|
if (alCheck()) {
|
||||||
GetLogger()->Warn("Could not set sound position. Code: %s\n", alGetCode());
|
GetLogger()->Warn("Could not set sound position. Code: %d\n", alGetCode());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
@ -75,7 +75,7 @@ bool Channel::SetFrequency(float freq)
|
||||||
|
|
||||||
alSourcef(mSource, AL_PITCH, freq);
|
alSourcef(mSource, AL_PITCH, freq);
|
||||||
if (alCheck()) {
|
if (alCheck()) {
|
||||||
GetLogger()->Warn("Could not set sound pitch. Code: %s\n", alGetCode());
|
GetLogger()->Warn("Could not set sound pitch to '%f'. Code: %d\n", freq, alGetCode());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
@ -90,7 +90,7 @@ float Channel::GetFrequency()
|
||||||
|
|
||||||
alGetSourcef(mSource, AL_PITCH, &freq);
|
alGetSourcef(mSource, AL_PITCH, &freq);
|
||||||
if (alCheck()) {
|
if (alCheck()) {
|
||||||
GetLogger()->Warn("Could not get sound pitch. Code: %s\n", alGetCode());
|
GetLogger()->Warn("Could not get sound pitch. Code: %d\n", alGetCode());
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -105,7 +105,7 @@ bool Channel::SetVolume(float vol)
|
||||||
|
|
||||||
alSourcef(mSource, AL_GAIN, vol / MAXVOLUME);
|
alSourcef(mSource, AL_GAIN, vol / MAXVOLUME);
|
||||||
if (alCheck()) {
|
if (alCheck()) {
|
||||||
GetLogger()->Warn("Could not set sound volume. Code: %s\n", alGetCode());
|
GetLogger()->Warn("Could not set sound volume to '%f'. Code: %d\n", vol, alGetCode());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
@ -120,7 +120,7 @@ float Channel::GetVolume()
|
||||||
|
|
||||||
alGetSourcef(mSource, AL_GAIN, &vol);
|
alGetSourcef(mSource, AL_GAIN, &vol);
|
||||||
if (alCheck()) {
|
if (alCheck()) {
|
||||||
GetLogger()->Warn("Could not get sound volume. Code: %s\n", alGetCode());
|
GetLogger()->Warn("Could not get sound volume. Code: %d\n", alGetCode());
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -213,7 +213,7 @@ bool Channel::SetBuffer(Buffer *buffer) {
|
||||||
mBuffer = buffer;
|
mBuffer = buffer;
|
||||||
alSourcei(mSource, AL_BUFFER, buffer->GetBuffer());
|
alSourcei(mSource, AL_BUFFER, buffer->GetBuffer());
|
||||||
if (alCheck()) {
|
if (alCheck()) {
|
||||||
GetLogger()->Warn("Could not set sound buffer. Code: %s\n", alGetCode());
|
GetLogger()->Warn("Could not set sound buffer. Code: %d\n", alGetCode());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
mInitFrequency = GetFrequency();
|
mInitFrequency = GetFrequency();
|
||||||
|
@ -237,7 +237,7 @@ bool Channel::IsPlaying() {
|
||||||
|
|
||||||
alGetSourcei(mSource, AL_SOURCE_STATE, &status);
|
alGetSourcei(mSource, AL_SOURCE_STATE, &status);
|
||||||
if (alCheck()) {
|
if (alCheck()) {
|
||||||
GetLogger()->Warn("Could not get sound status. Code: %s\n", alGetCode());
|
GetLogger()->Warn("Could not get sound status. Code: %d\n", alGetCode());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -253,7 +253,7 @@ bool Channel::IsReady() {
|
||||||
bool Channel::Stop() {
|
bool Channel::Stop() {
|
||||||
alSourceStop(mSource);
|
alSourceStop(mSource);
|
||||||
if (alCheck()) {
|
if (alCheck()) {
|
||||||
GetLogger()->Warn("Could not stop sound. Code: %s\n", alGetCode());
|
GetLogger()->Warn("Could not stop sound. Code: %d\n", alGetCode());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
@ -265,7 +265,7 @@ float Channel::GetCurrentTime()
|
||||||
ALfloat current;
|
ALfloat current;
|
||||||
alGetSourcef(mSource, AL_SEC_OFFSET, ¤t);
|
alGetSourcef(mSource, AL_SEC_OFFSET, ¤t);
|
||||||
if (alCheck()) {
|
if (alCheck()) {
|
||||||
GetLogger()->Warn("Could not get source current play time. Code: %s\n", alGetCode());
|
GetLogger()->Warn("Could not get source current play time. Code: %d\n", alGetCode());
|
||||||
return 0.0f;
|
return 0.0f;
|
||||||
}
|
}
|
||||||
return current;
|
return current;
|
||||||
|
@ -276,7 +276,7 @@ void Channel::SetCurrentTime(float current)
|
||||||
{
|
{
|
||||||
alSourcef(mSource, AL_SEC_OFFSET, current);
|
alSourcef(mSource, AL_SEC_OFFSET, current);
|
||||||
if (alCheck())
|
if (alCheck())
|
||||||
GetLogger()->Warn("Could not get source current play time. Code: %s\n", alGetCode());
|
GetLogger()->Warn("Could not get source current play time. Code: %d\n", alGetCode());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -168,7 +168,7 @@ class CSoundInterface
|
||||||
* Function calls \link CSoundInterface::Cache() \endlink for each file
|
* Function calls \link CSoundInterface::Cache() \endlink for each file
|
||||||
*/
|
*/
|
||||||
inline void CacheAll(std::string path) {
|
inline void CacheAll(std::string path) {
|
||||||
for ( int i = 1; i < 69; i++ ) {
|
for ( int i = 1; i <= 81; i++ ) {
|
||||||
std::stringstream filename;
|
std::stringstream filename;
|
||||||
filename << path << "/sound" << std::setfill('0') << std::setw(3) << i << ".wav";
|
filename << path << "/sound" << std::setfill('0') << std::setw(3) << i << ".wav";
|
||||||
if ( !Cache(static_cast<Sound>(i), filename.str()) )
|
if ( !Cache(static_cast<Sound>(i), filename.str()) )
|
||||||
|
|
|
@ -243,7 +243,7 @@ bool CEdit::EventProcess(const Event &event)
|
||||||
Scroll(m_lineFirst-3, true);
|
Scroll(m_lineFirst-3, true);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (event.type == EVENT_KEY_DOWN &&
|
if (event.type == EVENT_MOUSE_WHEEL &&
|
||||||
event.mouseWheel.dir == WHEEL_DOWN &&
|
event.mouseWheel.dir == WHEEL_DOWN &&
|
||||||
Detect(event.mousePos) )
|
Detect(event.mousePos) )
|
||||||
{
|
{
|
||||||
|
@ -282,7 +282,7 @@ bool CEdit::EventProcess(const Event &event)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( m_scroll != 0 && !m_bGeneric )
|
if ( m_scroll != nullptr && !m_bGeneric )
|
||||||
{
|
{
|
||||||
m_scroll->EventProcess(event);
|
m_scroll->EventProcess(event);
|
||||||
|
|
||||||
|
@ -2172,11 +2172,11 @@ void CEdit::Scroll()
|
||||||
{
|
{
|
||||||
float value;
|
float value;
|
||||||
|
|
||||||
if ( m_scroll != 0 )
|
if ( m_scroll != nullptr )
|
||||||
{
|
{
|
||||||
value = m_scroll->GetVisibleValue();
|
value = m_scroll->GetVisibleValue();
|
||||||
value *= m_lineTotal-m_lineVisible;
|
value *= m_lineTotal - m_lineVisible;
|
||||||
Scroll(static_cast<int>(value+0.5f), true);
|
Scroll(static_cast<int>(value + 0.5f), true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3048,7 +3048,7 @@ bool CEdit::MinMaj(bool bMaj)
|
||||||
|
|
||||||
void CEdit::Justif()
|
void CEdit::Justif()
|
||||||
{
|
{
|
||||||
float width, value, size, indentLength;
|
float width, size, indentLength;
|
||||||
int i, j, line, indent;
|
int i, j, line, indent;
|
||||||
bool bDual, bString, bRem;
|
bool bDual, bString, bRem;
|
||||||
|
|
||||||
|
@ -3176,26 +3176,7 @@ void CEdit::Justif()
|
||||||
m_lineFirst = 0;
|
m_lineFirst = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( m_scroll != 0 )
|
UpdateScroll();
|
||||||
{
|
|
||||||
if ( m_lineTotal <= m_lineVisible )
|
|
||||||
{
|
|
||||||
m_scroll->SetVisibleRatio(1.0f);
|
|
||||||
m_scroll->SetVisibleValue(0.0f);
|
|
||||||
m_scroll->SetArrowStep(0.0f);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
value = static_cast<float>(m_lineVisible/m_lineTotal);
|
|
||||||
m_scroll->SetVisibleRatio(value);
|
|
||||||
|
|
||||||
value = static_cast<float>(m_lineFirst/(m_lineTotal-m_lineVisible));
|
|
||||||
m_scroll->SetVisibleValue(value);
|
|
||||||
|
|
||||||
value = static_cast<float>(1.0f/(m_lineTotal-m_lineVisible));
|
|
||||||
m_scroll->SetArrowStep(value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
m_timeBlink = 0.0f; // lights the cursor immediately
|
m_timeBlink = 0.0f; // lights the cursor immediately
|
||||||
}
|
}
|
||||||
|
@ -3326,5 +3307,30 @@ bool CEdit::SetFormat(int cursor1, int cursor2, int format)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CEdit::UpdateScroll()
|
||||||
|
{
|
||||||
|
float value;
|
||||||
|
|
||||||
|
if ( m_scroll != nullptr )
|
||||||
|
{
|
||||||
|
if ( m_lineTotal <= m_lineVisible )
|
||||||
|
{
|
||||||
|
m_scroll->SetVisibleRatio(1.0f);
|
||||||
|
m_scroll->SetVisibleValue(0.0f);
|
||||||
|
m_scroll->SetArrowStep(0.0f);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
value = static_cast<float>(m_lineVisible) / m_lineTotal;
|
||||||
|
m_scroll->SetVisibleRatio(value);
|
||||||
|
|
||||||
|
value = static_cast<float>(m_lineFirst) / (m_lineTotal - m_lineVisible);
|
||||||
|
m_scroll->SetVisibleValue(value);
|
||||||
|
|
||||||
|
value = 1.0f / (m_lineTotal - m_lineVisible);
|
||||||
|
m_scroll->SetArrowStep(value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -235,6 +235,8 @@ protected:
|
||||||
void UndoMemorize(OperUndo oper);
|
void UndoMemorize(OperUndo oper);
|
||||||
bool UndoRecall();
|
bool UndoRecall();
|
||||||
|
|
||||||
|
void UpdateScroll();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
CScroll* m_scroll; // vertical scrollbar on the right
|
CScroll* m_scroll; // vertical scrollbar on the right
|
||||||
|
|
||||||
|
|
|
@ -4305,8 +4305,8 @@ void CMainDialog::IOReadName()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: language letters
|
// TODO: Fallback to an non-localized entry
|
||||||
sprintf(op, "Title.%c", 'E' /*MAX_FNAME()*/ );
|
sprintf(op, "Title.%c", m_app->GetLanguageChar() );
|
||||||
if ( Cmd(line, op) )
|
if ( Cmd(line, op) )
|
||||||
{
|
{
|
||||||
OpString(line, "resume", resume);
|
OpString(line, "resume", resume);
|
||||||
|
@ -4701,8 +4701,8 @@ void CMainDialog::UpdateSceneChap(int &chap)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* TODO: language letters */
|
// TODO: Fallback to an non-localized entry
|
||||||
sprintf(op, "Title.%c", 'E' /*GetLanguageLetter()*/);
|
sprintf(op, "Title.%c", m_app->GetLanguageChar());
|
||||||
if ( Cmd(line, op) )
|
if ( Cmd(line, op) )
|
||||||
{
|
{
|
||||||
OpString(line, "text", name);
|
OpString(line, "text", name);
|
||||||
|
@ -4748,8 +4748,8 @@ void CMainDialog::UpdateSceneChap(int &chap)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: language letters
|
// TODO: Fallback to an non-localized entry
|
||||||
sprintf(op, "Title.%c", 'E'/*GetLanguageLetter()*/);
|
sprintf(op, "Title.%c", m_app->GetLanguageChar());
|
||||||
if ( Cmd(line, op) )
|
if ( Cmd(line, op) )
|
||||||
{
|
{
|
||||||
OpString(line, "text", name);
|
OpString(line, "text", name);
|
||||||
|
@ -4851,8 +4851,8 @@ void CMainDialog::UpdateSceneList(int chap, int &sel)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: language letters
|
// TODO: Fallback to an non-localized entry
|
||||||
sprintf(op, "Title.%c", 'E' /*MAX_FNAME()*/);
|
sprintf(op, "Title.%c", m_app->GetLanguageChar());
|
||||||
if ( Cmd(line, op) )
|
if ( Cmd(line, op) )
|
||||||
{
|
{
|
||||||
OpString(line, "text", name);
|
OpString(line, "text", name);
|
||||||
|
@ -4996,8 +4996,8 @@ void CMainDialog::UpdateSceneResume(int rank)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: language letters
|
// TODO: Fallback to an non-localized entry
|
||||||
sprintf(op, "Resume.%c", 'E' /*MAX_FNAME()*/);
|
sprintf(op, "Resume.%c", m_app->GetLanguageChar());
|
||||||
if ( Cmd(line, op) )
|
if ( Cmd(line, op) )
|
||||||
{
|
{
|
||||||
OpString(line, "text", name);
|
OpString(line, "text", name);
|
||||||
|
|
Loading…
Reference in New Issue