mirror of
https://port.numenaute.org/aleajactaest/khanat-opennel-code.git
synced 2024-12-25 02:10:53 +00:00
Merge with develop
This commit is contained in:
parent
6c19bba957
commit
2368805d2f
4 changed files with 88 additions and 41 deletions
|
@ -154,15 +154,15 @@ void flushDebugStack(const std::string &title)
|
||||||
strTmp = toString("\n");
|
strTmp = toString("\n");
|
||||||
DebugFile.serialBuffer((uint8*)strTmp.c_str(), (uint)strTmp.size());
|
DebugFile.serialBuffer((uint8*)strTmp.c_str(), (uint)strTmp.size());
|
||||||
}
|
}
|
||||||
// No Output File -> nlwarning
|
// No Output File -> nldebug only if DisableNLDebug not set to true
|
||||||
else
|
else if (!DisableNLDebug)
|
||||||
{
|
{
|
||||||
nlwarning("%s", title.c_str());
|
nldebug("%s", title.c_str());
|
||||||
for(uint i=0; i<DebugStack.size(); ++i)
|
for(uint i=0; i<DebugStack.size(); ++i)
|
||||||
nlwarning(" %s", DebugStack[i].c_str());
|
nldebug(" %s", DebugStack[i].c_str());
|
||||||
|
|
||||||
// Empty line separator
|
// Empty line separator
|
||||||
nlwarning("");
|
nldebug("");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -441,7 +441,7 @@ void SCharacter3DSetup::setupFromCS_ModelCol (SLOTTYPE::EVisualSlot s, sint32 mo
|
||||||
Parts[part].Name = item->getShapeFemale();
|
Parts[part].Name = item->getShapeFemale();
|
||||||
|
|
||||||
// use the right type of boots if wearing a caster dress
|
// use the right type of boots if wearing a caster dress
|
||||||
if ((s == SLOTTYPE::FEET_SLOT) && (item->ItemType == ITEM_TYPE::LIGHT_BOOTS))
|
if ((s == SLOTTYPE::FEET_SLOT) && (item->ItemType == ITEM_TYPE::LIGHT_BOOTS || item->ItemType == ITEM_TYPE::MEDIUM_BOOTS || item->ItemType == ITEM_TYPE::HEAVY_BOOTS))
|
||||||
{
|
{
|
||||||
std::string shapeLegs = Parts[Char3DPart_Legs].Name;
|
std::string shapeLegs = Parts[Char3DPart_Legs].Name;
|
||||||
|
|
||||||
|
@ -458,27 +458,39 @@ void SCharacter3DSetup::setupFromCS_ModelCol (SLOTTYPE::EVisualSlot s, sint32 mo
|
||||||
tmpName.replace(posBottes+7, 0, "_" + orgType);
|
tmpName.replace(posBottes+7, 0, "_" + orgType);
|
||||||
tmpName.replace(7, orgType.length(), "caster01");
|
tmpName.replace(7, orgType.length(), "caster01");
|
||||||
|
|
||||||
// temporary hack because Fyros boots don't respect conventions
|
|
||||||
if (tmpName[0] == 'f')
|
|
||||||
{
|
|
||||||
if (tmpName[5] == 'f')
|
|
||||||
{
|
|
||||||
tmpName = "fy_hof_caster01_bottes_civil.shape";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
tmpName = "fy_hom_caster01_civil01_bottes.shape";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// use fixed shape name only if file is present
|
|
||||||
if (CPath::exists(tmpName))
|
if (CPath::exists(tmpName))
|
||||||
{
|
{
|
||||||
|
// use fixed shape name only if file is present
|
||||||
Parts[part].Name = tmpName;
|
Parts[part].Name = tmpName;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
nlwarning("File %s doesn't exist, use %s", tmpName.c_str(), Parts[part].Name.c_str());
|
// temporary hack because Fyros light boots don't respect conventions
|
||||||
|
if (tmpName[0] == 'f' && (item->ItemType == ITEM_TYPE::LIGHT_BOOTS))
|
||||||
|
{
|
||||||
|
if (tmpName[5] == 'f')
|
||||||
|
{
|
||||||
|
tmpName = "fy_hof_caster01_bottes_civil.shape";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
tmpName = "fy_hom_caster01_civil01_bottes.shape";
|
||||||
|
}
|
||||||
|
|
||||||
|
// use fixed shape name only if file is present
|
||||||
|
if (CPath::exists(tmpName))
|
||||||
|
{
|
||||||
|
Parts[part].Name = tmpName;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
nlwarning("File %s doesn't exist, use %s", tmpName.c_str(), Parts[part].Name.c_str());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
nlwarning("File %s doesn't exist, use %s", tmpName.c_str(), Parts[part].Name.c_str());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -201,11 +201,34 @@ CPatchManager::CPatchManager() : State("t_state"), DataScanState("t_data_scan_st
|
||||||
_StateListener = NULL;
|
_StateListener = NULL;
|
||||||
_StartRyzomAtEnd = true;
|
_StartRyzomAtEnd = true;
|
||||||
|
|
||||||
#ifdef NL_OS_UNIX
|
// only download binaries for current platform
|
||||||
// don't use cfg, exe and dll from Windows version
|
|
||||||
ForceRemovePatchCategories.clear();
|
ForceRemovePatchCategories.clear();
|
||||||
ForceRemovePatchCategories.push_back("main_exedll");
|
ForceRemovePatchCategories.push_back("main_exedll");
|
||||||
ForceRemovePatchCategories.push_back("main_cfg");
|
#if defined(NL_OS_WIN64)
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_win32");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_linux32");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_linux64");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_osx");
|
||||||
|
#elif defined(NL_OS_WIN32)
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_win34");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_linux32");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_linux64");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_osx");
|
||||||
|
#elif defined(NL_OS_APPLE)
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_win32");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_win34");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_linux32");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_linux64");
|
||||||
|
#elif defined(NL_OS_UNIX) && defined(_LP64)
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_win32");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_win34");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_linux32");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_osx");
|
||||||
|
#else
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_win32");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_win64");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_linux64");
|
||||||
|
ForceRemovePatchCategories.push_back("main_exedll_osx");
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3029,7 +3052,7 @@ void CPatchThread::processFile (CPatchManager::SFileToPatch &rFTP)
|
||||||
// to apply a single patch from a refrence version to them. (so here we necessarily got
|
// to apply a single patch from a refrence version to them. (so here we necessarily got
|
||||||
// 'rFTP.Patches.size() == 1' !)
|
// 'rFTP.Patches.size() == 1' !)
|
||||||
// The reference version itself is incrementally patched, however, and may be rebuilt from time to time
|
// The reference version itself is incrementally patched, however, and may be rebuilt from time to time
|
||||||
// when the delta to the reference has become to big (but is most of the time < to the sum of equivallent delta patchs)
|
// when the delta to the reference has become too big (but is most of the time < to the sum of equivallent delta patchs)
|
||||||
// The non-incremental final patch (from ref file to final bnp), is guaranteed to be done last
|
// The non-incremental final patch (from ref file to final bnp), is guaranteed to be done last
|
||||||
// after the reference file has been updated
|
// after the reference file has been updated
|
||||||
|
|
||||||
|
|
|
@ -543,7 +543,7 @@ void CPlayerCL::equip(SLOTTYPE::EVisualSlot slot, uint index, uint color)
|
||||||
std::string shapeName = _Gender == GSGENDER::female ? item->getShapeFemale():item->getShape();
|
std::string shapeName = _Gender == GSGENDER::female ? item->getShapeFemale():item->getShape();
|
||||||
|
|
||||||
// use the right type of boots if wearing a caster dress
|
// use the right type of boots if wearing a caster dress
|
||||||
if ((slot == SLOTTYPE::FEET_SLOT) && (item->ItemType == ITEM_TYPE::LIGHT_BOOTS))
|
if ((slot == SLOTTYPE::FEET_SLOT) && (item->ItemType == ITEM_TYPE::LIGHT_BOOTS || item->ItemType == ITEM_TYPE::MEDIUM_BOOTS || item->ItemType == ITEM_TYPE::HEAVY_BOOTS))
|
||||||
{
|
{
|
||||||
std::string shapeLegs;
|
std::string shapeLegs;
|
||||||
|
|
||||||
|
@ -569,27 +569,39 @@ void CPlayerCL::equip(SLOTTYPE::EVisualSlot slot, uint index, uint color)
|
||||||
tmpName.replace(posBottes+7, 0, "_" + orgType);
|
tmpName.replace(posBottes+7, 0, "_" + orgType);
|
||||||
tmpName.replace(7, orgType.length(), "caster01");
|
tmpName.replace(7, orgType.length(), "caster01");
|
||||||
|
|
||||||
// temporary hack because Fyros boots don't respect conventions
|
|
||||||
if (tmpName[0] == 'f')
|
|
||||||
{
|
|
||||||
if (tmpName[5] == 'f')
|
|
||||||
{
|
|
||||||
tmpName = "fy_hof_caster01_bottes_civil.shape";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
tmpName = "fy_hom_caster01_civil01_bottes.shape";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// use fixed shape name only if file is present
|
|
||||||
if (CPath::exists(tmpName))
|
if (CPath::exists(tmpName))
|
||||||
{
|
{
|
||||||
|
// use fixed shape name only if file is present
|
||||||
shapeName = tmpName;
|
shapeName = tmpName;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
nlwarning("File %s doesn't exist, use %s", tmpName.c_str(), shapeName.c_str());
|
// temporary hack because Fyros light boots don't respect conventions
|
||||||
|
if (tmpName[0] == 'f' && (item->ItemType == ITEM_TYPE::LIGHT_BOOTS))
|
||||||
|
{
|
||||||
|
if (tmpName[5] == 'f')
|
||||||
|
{
|
||||||
|
tmpName = "fy_hof_caster01_bottes_civil.shape";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
tmpName = "fy_hom_caster01_civil01_bottes.shape";
|
||||||
|
}
|
||||||
|
|
||||||
|
// use fixed shape name only if file is present
|
||||||
|
if (CPath::exists(tmpName))
|
||||||
|
{
|
||||||
|
shapeName = tmpName;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
nlwarning("File %s doesn't exist, use %s", tmpName.c_str(), shapeName.c_str());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
nlwarning("File %s doesn't exist, use %s", tmpName.c_str(), shapeName.c_str());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue