[C++] Forrás módosítások

Indította huzsihun1997, 2016-05-24, 14:45:26

2016-05-24, 14:45:26 Utolsó szerkesztés: 2016-05-24, 15:21:26 Szerző: huzsihun1997
Sziasztok! Mivel már senki sem gyüjti, itt a fórumon ezért megpróbálom én, a témát folyton bővítem. Ha látod hogy nyítva van, kérlek ne írj bele!

[1]
ROOT ÁTÍRÁSA

userinterface.cpp

CEterPackManager::Instance().RegisterRootPack((stFolder + std::string("root")).c_str());

irjuk át pl:

CEterPackManager::Instance().RegisterRootPack((stFolder + std::string("npc2")).c_str());

innentől kezdve az npc2 lessz a root. Már csak át kell nevezni őket (npc2-t rootra és a rootot npc2-re)

[2]
GRANNY FRISSÍTÉSE 2.9 re!

Ugyebár, sokan szenvednek az indítóval, ami buggos, hogy nincs minimap a granny miatt stb.
Ne kész filet töltsetek le, hanem tegyétek be, amire szükségetek van!

NE FELEJTS EL BIZTONSÁGI MENTÉST CSINÁLNI, AHOGY SLZ IS LEÍRTA, LEGALÁBB A MODOSÍTOTT FÁJLOKRÓL!



1. lépés:

Menyj a novaline/Srcs/Tools/RAD Game Tools/granny/common és bontsd ki a granny_common_2_9_12_0_release.zip-et.
Menyj ezen belül az include mappába és másold ki a  granny.h-t a bined include mappájába.
most menyj a  lib/win32 mappába és másold ki az összes *.lib és *.pdb fájlokat a kliensed lib mappájába



2. lépés:

EterGrnLib.

Mesh.cpp.

Keress rá erre

int * boneIndices = GrannyGetMeshBindingToBoneIndices(pgrnMeshBinding);

Írd felül ezzel:

int * boneIndices = (int*)GrannyGetMeshBindingToBoneIndices(pgrnMeshBinding);

Keress rá erre

return GrannyGetMeshBindingToBoneIndices(m_pgrnMeshBindingTemp);

Írd felül ezzel:

return (int*)GrannyGetMeshBindingToBoneIndices(m_pgrnMeshBindingTemp);


Keress rá erre

m_pgrnMeshDeformer = GrannyNewMeshDeformer(pgrnInputType, pgrnOutputType, GrannyDeformPositionNormal);

Írd felül ezzel:

m_pgrnMeshDeformer = GrannyNewMeshDeformer(pgrnInputType, pgrnOutputType, GrannyDeformPositionNormal, GrannyAllowUncopiedTail);

Nyisd meg a  ModelInstanceUpdate.cpp.

Keress rá erre

GrannyUpdateModelMatrix(m_pgrnModelInstance, fSecondsElapsed, (const float *) pMatrix, (float *) pMatrix);

Írd felül ezzel:

GrannyUpdateModelMatrix(m_pgrnModelInstance, fSecondsElapsed, (const float *) pMatrix, (float *) pMatrix, false);

Nyisd meg a  Material.cpp.

Keress rá erre

granny_variant twoSideResult = GrannyFindMatchingMember(pgrnMaterial->ExtendedData.Type, pgrnMaterial->ExtendedData.Object, "Two-sided");

if (NULL != twoSideResult.Type)
GrannyConvertSingleObject(twoSideResult.Type, twoSideResult.Object, TwoSidedFieldType, &twoSided);


Írd felül ezzel:

granny_variant twoSideResult;

if (GrannyFindMatchingMember(pgrnMaterial->ExtendedData.Type, pgrnMaterial->ExtendedData.Object, "Two-sided", &twoSideResult) 
&& NULL != twoSideResult.Type)
GrannyConvertSingleObject(twoSideResult.Type, twoSideResult.Object, TwoSidedFieldType, &twoSided, NULL);


Nyisd meg a  ModelInstanceModel.cpp

Keress rá erre

return GrannyGetMeshBindingToBoneIndices(m_vct_pgrnMeshBinding[iMeshBinding]);

Írd felül ezzel:

return (int*)GrannyGetMeshBindingToBoneIndices(m_vct_pgrnMeshBinding[iMeshBinding]);

Menyj az userinterface projectre.

Nyisd meg a  UserInterface.cpp.

static void GrannyError(granny_log_message_type Type,
granny_log_message_origin Origin,
char const *Error,
void *UserData)
{
    TraceError("GRANNY: %s", Error);
}


Írd felül ezzel:

static void GrannyError(granny_log_message_type Type,
granny_log_message_origin Origin,
char const* File,
granny_int32x Line,
char const *Error,
void *UserData)
{
    TraceError("GRANNY: %s", Error);
}


Buildeld a projectedet!





3. lépés:

Tedd be a 2.9-es granny2.dll-t a kliensedbe.


[3]
Locale-ban lévő fájlok átírása.


PythonApplication.cpp

snprintf(szItemList, sizeof(szItemList) , "%s/item_list.txt", localePath);
snprintf(szItemProto, sizeof(szItemProto), "%s/item_proto", localePath);
snprintf(szItemDesc, sizeof(szItemDesc), "%s/itemdesc.txt", localePath);
snprintf(szMobProto, sizeof(szMobProto), "%s/mob_proto", localePath);
snprintf(szSkillDescFileName, sizeof(szSkillDescFileName), "%s/SkillDesc.txt", localePath);
snprintf(szSkillTableFileName, sizeof(szSkillTableFileName), "%s/SkillTable.txt", localePath);
snprintf(szInsultList, sizeof(szInsultList), "%s/insult.txt", localePath);


ha pl az item_proto-t átírjuk "targy_proto"-ra, akkor locale-ban is így kell újra csomagoljuk!