Merge with develop

--HG--
branch : compatibility-develop
This commit is contained in:
kervala 2016-01-16 23:50:23 +01:00
commit cc282fd3d5
8 changed files with 98 additions and 33 deletions

View file

@ -30,7 +30,9 @@ script:
- cmake --build build -- -j 2 - cmake --build build -- -j 2
notifications: notifications:
irc: "chat.freenode.net#ryzom" irc:
channels:
- "chat.freenode.net#ryzom"
template: template:
- "%{repository}#%{build_number} (%{branch} - %{commit} : %{author}): %{message}" - "%{repository}#%{build_number} (%{branch} - %{commit} : %{author}): %{message}"
- "Description : %{commit_message}" - "Description : %{commit_message}"

View file

@ -31,6 +31,11 @@ IF(COMMAND cmake_policy)
# Works around warnings about escaped quotes in ADD_DEFINITIONS # Works around warnings about escaped quotes in ADD_DEFINITIONS
# statements # statements
cmake_policy(SET CMP0005 OLD) cmake_policy(SET CMP0005 OLD)
# allow to link to qtmain automatically under Windows
IF(POLICY CMP0020)
CMAKE_POLICY(SET CMP0020 NEW)
ENDIF()
ENDIF(COMMAND cmake_policy) ENDIF(COMMAND cmake_policy)
INCLUDE(nel) INCLUDE(nel)

View file

@ -253,7 +253,9 @@ inline lua_Integer CLuaState::toInteger(int index)
{ {
//H_AUTO(Lua_CLuaState_toInteger) //H_AUTO(Lua_CLuaState_toInteger)
checkIndex(index); checkIndex(index);
#if LUA_VERSION_NUM >= 503
sint isnum = 0; sint isnum = 0;
// lua_tointeger fails with decimal numbers under Lua 5.3
lua_Integer res = lua_tointegerx(_State, index, &isnum); lua_Integer res = lua_tointegerx(_State, index, &isnum);
if (!isnum) if (!isnum)
{ {
@ -262,6 +264,9 @@ inline lua_Integer CLuaState::toInteger(int index)
res = (lua_Integer)d; res = (lua_Integer)d;
} }
return res; return res;
#else
return lua_tointeger(_State, index);
#endif
} }
//================================================================================ //================================================================================

View file

@ -70,7 +70,7 @@ void CCmdArgs::addArg(const std::string &helpName, const std::string &helpDescri
bool CCmdArgs::haveArg(const std::string &argName) const bool CCmdArgs::haveArg(const std::string &argName) const
{ {
// process each argument // process each argument
for(uint i = 0; i < _Args.size(); i) for(uint i = 0; i < _Args.size(); ++i)
{ {
const TArg &arg = _Args[i]; const TArg &arg = _Args[i];

View file

@ -15,7 +15,6 @@ SET(CMAKE_AUTOMOC ON)
QT5_ADD_RESOURCES(RESOURCE_ADDED ${RESOURCES}) QT5_ADD_RESOURCES(RESOURCE_ADDED ${RESOURCES})
CMAKE_POLICY(SET CMP0020 NEW)
ADD_EXECUTABLE(nl_panoply_preview WIN32 ${SRC} ADD_EXECUTABLE(nl_panoply_preview WIN32 ${SRC}
${SRCS} ${SRCS}
${HDRS} ${HDRS}

View file

@ -11,7 +11,6 @@ SET(CMAKE_AUTOMOC ON)
QT5_ADD_RESOURCES(RESOURCE_ADDED ${RESOURCES}) QT5_ADD_RESOURCES(RESOURCE_ADDED ${RESOURCES})
CMAKE_POLICY(SET CMP0020 NEW)
NL_TARGET_LIB(shared_widgets ${SRCS} ${HDRS} ${RSRC} ${RESOURCE_ADDED}) NL_TARGET_LIB(shared_widgets ${SRCS} ${HDRS} ${RSRC} ${RESOURCE_ADDED})
TARGET_LINK_LIBRARIES(shared_widgets nelmisc nel3d Qt5::Widgets) TARGET_LINK_LIBRARIES(shared_widgets nelmisc nel3d Qt5::Widgets)

View file

@ -368,7 +368,7 @@ int extractNewSheetNames(int argc, char *argv[])
CPath::addSearchPath(NLMISC::expandEnvironmentVariables(pathNoRecurse.asString(i)), false, false); CPath::addSearchPath(NLMISC::expandEnvironmentVariables(pathNoRecurse.asString(i)), false, false);
} }
std::string leveldesignDataPath = NLMISC::expandEnvironmentVariables(leveldesignDataPathVar.asString()); std::string leveldesignDataPath = CPath::standardizePath(NLMISC::expandEnvironmentVariables(leveldesignDataPathVar.asString()));
// init ligo config once // init ligo config once
string ligoPath = CPath::lookup(NLMISC::expandEnvironmentVariables(ligoClassFile.asString()), true, true); string ligoPath = CPath::lookup(NLMISC::expandEnvironmentVariables(ligoClassFile.asString()), true, true);
@ -376,8 +376,6 @@ int extractNewSheetNames(int argc, char *argv[])
NLLIGO::Register(); NLLIGO::Register();
CPrimitiveContext::instance().CurrentLigoConfig = &LigoConfig; CPrimitiveContext::instance().CurrentLigoConfig = &LigoConfig;
// **** Parse all the different type of sheets // **** Parse all the different type of sheets
const char *sheetDefs[]= const char *sheetDefs[]=
{ {
@ -397,22 +395,20 @@ int extractNewSheetNames(int argc, char *argv[])
{ {
CSheetWordListBuilder builder; CSheetWordListBuilder builder;
builder.SheetExt= sheetDefs[i*4+2]; builder.SheetExt= sheetDefs[i*4+2];
builder.SheetPath= CPath::standardizePath(leveldesignDataPath) + sheetDefs[i*4+3]; builder.SheetPath= leveldesignDataPath + sheetDefs[i*4+3];
extractNewWords(sheetDefs[i*4+0], sheetDefs[i*4+1], builder); extractNewWords(sheetDefs[i*4+0], sheetDefs[i*4+1], builder);
} }
// **** Parse place and region names // **** Parse place and region names
{ {
// build place names // build place names
CRegionPrimWordListBuilder builder; CRegionPrimWordListBuilder builder;
builder.PrimPath= leveldesignDataPath; builder.PrimPath= leveldesignDataPath + "primitives";
builder.PrimFilter.push_back("region_*.primitive"); builder.PrimFilter.push_back("region_*.primitive");
builder.PrimFilter.push_back("indoors_*.primitive"); builder.PrimFilter.push_back("indoors_*.primitive");
extractNewWords("work/place_words_wk.txt", "placeId", builder); extractNewWords("work/place_words_wk.txt", "placeId", builder);
} }
return 0; return 0;
} }

View file

@ -0,0 +1,59 @@
// This cfg is used for bot names extraction
// This paths are recursives
Paths =
{
// word editor class config file are here
"$RYZOM_LEVELDESIGN/leveldesign/world_editor_files",
// all the primitives we want to parse are here
"$RYZOM_LEVELDESIGN/primitives"
};
// This paths are non recursives
PathsNoRecurse =
{
// allow the prog to load the sheet_id.bin file.
"$RYZOM_LEVELDESIGN/leveldesign/Game_elem",
// path for world_editor_class.xml
"$RYZOM_LEVELDESIGN/leveldesign/world_editor_files",
};
LeveldesignDataPath = "$RYZOM_LEVELDESIGN";
// This paths are recursive and parsed only if the creature data packed sheet is not found (this take time)
GeorgesPaths =
{
// the DFNs
"$RYZOM_LEVELDESIGN/leveldesign/DFN",
// All the creature and npc sheets
"$RYZOM_LEVELDESIGN/leveldesign/Game_elem/creature"
};
// The filters, if the fullpath to a file contains a part of this filter, it is rejected
Filters =
{
// we don't want backuped primitives !
"backup_old",
// nor the test primitives !
"test_",
/* "botobject",
"deposit",
"dynfauna",
"dynnpc",
"invasion",
"staticfauna",
"task"
*/
};
// This is the name of the world_editor_classes.xml file.
LigoClassFile = "world_editor_classes.xml";
// Path to the working bot name file
WorkBotNamesFile = "work/bot_names.txt";
// Path to the translated bot names file
TransBotNamesFile = "translated/bot_names.txt";
// Path to the work title file
WorkTitleFile = "work/title_words_wk.txt";