Jump to content
  • Announcements

    • Tierri Lopes

      Introduce yourself   12/20/2017

      Introduce yourself here:  https://tlthings.net/board/index.php?/forum/6-apresentações/  

wery

[H] Honorable Member
  • Content count

    163
  • Joined

  • Last visited

  • Days Won

    6

wery last won the day on February 12

wery had the most liked content!

Community Reputation

66 Neutral

3 Followers

About wery

  • Rank
    Well-Known Member
  1. é no game option dialog, no uiscript não me recordo em qual campo, mas é nele
  2. locale_string erro

    tem algum arquivo do locale string antes do erro presente? pode ter ocorrido de abrir com algum programa que muda a formatação do texto do locale string ou do arquivo da source, acontece muito com o notepad++
  3. Efeito de icone +0 até +9

    se pelo menos tivesse baixado saberia, é um sistema que mostra a grade de refinação de um item direto no icone dele
  4. Prestige System

    creio que essas imagens sejam do sistema versão 1 versão 2 versão 3 e isto é o restante do tópico do sistema Na Locale_inc.h: a alteração para outras versões: #define ENABLE_NEW_PRESTIGE_SYSTEM 1 Na versão 3 você pode ajustar a cor: PythonTextTail.cpp #define PRESTIGECOLOR MSG_COLOR_BLUE altera as cores que você encontra em Colors.h && Adicionar Colors.h ao projeto!
  5. Bug lojas offline

    tem que ver de qual tabela está indo o banco, existe a possibilidade de ir para money, money2 e mymoney
  6. Bug lojas offline

    caso tenha o max yang deverá adicionar assim a tabela player `money` bigint(255) NOT NULL DEFAULT '0', caso não tenha `money` int(11) NOT NULL DEFAULT '0', porém há um bug no sistema que não impede os players de montar a loja mesmo com gold full, desejo boa sorte xD
  7. Stone drop

    não tenho certeza mas creio que pedras espirituais em metins são no mob_drop_item.txt, creio que apagar isto seria para não dropar joias das metins
  8. 2 inventarios

    siga o tutorial abaixo e irá funcionar os 4 inventários normalmente, ou faça processo inverso para usar so 2 https://metin2dev.org/board/index.php?/topic/791-metin2-4-inventory-page/
  9. caso tenha o max yang deverá adicionar assim a tabela player `money` bigint(255) NOT NULL DEFAULT '0', caso não tenha `money` int(11) NOT NULL DEFAULT '0', porém há um bug no sistema que não impede os players de montar a loja mesmo com gold full, desejo boa sorte xD
  10. Efeito de icone +0 até +9

    há o psd para abrir no photoshop e também há os tga. porém basta renomear a extensão de .tga para .png, caso contrario não dá para abrir
  11. Efeito de icone +0 até +9

    abrir eterPythonLib/PythonSlotWindow.h e procurar por CGraphicImageInstance * pInstance; adicionar abaixo CGraphicImageInstance * pInstanceLevel; procurar por void Destroy(); adicionar abaixo void SetSlotLevelImage(DWORD dwIndex, CGraphicImage * levelImage); abrir eterPythonLib/PythonSlotWindow.cpp e procurar por Slot.pFinishCoolTimeEffect = NULL; adicionar abaixo Slot.pInstanceLevel = NULL; procurar por void CSlotWindow::SetSlotCount(DWORD dwIndex, DWORD dwCount) adicionar antes: void CSlotWindow::SetSlotLevelImage(DWORD dwIndex, CGraphicImage * levelImage) { TSlot * pSlot; if (!GetSlotPointer(dwIndex, &pSlot) || !levelImage) return; assert(NULL == pSlot->pInstanceLevel); pSlot->pInstanceLevel = CGraphicImageInstance::New(); pSlot->pInstanceLevel->SetDiffuseColor(1.0, 1.0, 1.0, 1.0); pSlot->pInstanceLevel->SetImagePointer(levelImage); } procurar por: pSlot->dwCenterSlotNumber = 0xffffffff; adicionar abaixo if (pSlot->pInstanceLevel) { CGraphicImageInstance::Delete(pSlot->pInstanceLevel); pSlot->pInstanceLevel = NULL; } procurar por if (rSlot.bActive) adicionar antes if (rSlot.pInstanceLevel) { rSlot.pInstanceLevel->SetPosition(m_rect.left + rSlot.ixPosition, (m_rect.top + rSlot.iyPosition + rSlot.byyPlacedItemSize*ITEM_HEIGHT) - 32); rSlot.pInstanceLevel->Render(); } abrir eterPythonLib/PythonWindowManagerModule.cpp e procurar por void initwndMgr() adicionar antes PyObject * wndMgrSetSlotImage(PyObject * poSelf, PyObject * poArgs) { UI::CWindow * pWin; if (!PyTuple_GetWindow(poArgs, 0, &pWin)) return Py_BuildException(); int iSlotIndex; if (!PyTuple_GetInteger(poArgs, 1, &iSlotIndex)) return Py_BuildException(); char * szImagePath; if (!PyTuple_GetString(poArgs, 2, &szImagePath)) return Py_BuildException(); if (!pWin->IsType(UI::CSlotWindow::Type())) return Py_BuildException(); UI::CSlotWindow * pSlotWin = (UI::CSlotWindow *)pWin; CGraphicImage * pImage = (CGraphicImage *)CResourceManager::Instance().GetResourcePointer(szImagePath); if (!pImage) return Py_BuildException(); pSlotWin->SetSlotLevelImage(iSlotIndex, pImage); return Py_BuildNone(); } procurar por { "ShowOverInWindowName", wndMgrShowOverInWindowName, METH_VARARGS }, adicionar abaixo { "SetSlotLevelImage", wndMgrSetSlotImage, METH_VARARGS }, abra root/ui.py e procure por wndMgr.SetSlotCount(self.hWnd, renderingSlotNumber, ItemCount) adicione ####Item level text/icon ### itemName=item.GetItemName().strip() itemNameP=item.GetItemName().rfind('+') if itemNameP>0 and len(itemName)>itemNameP+1: level=itemName[itemNameP+1:] if level.isdigit(): wndMgr.SetSlotLevelImage(self.hWnd, renderingSlotNumber, ("icon/level/%d.tga"%int(level))) ####Item level text/icon END ### na função, ficando assim def SetItemSlot(self, renderingSlotNumber, ItemIndex, ItemCount = 0, diffuseColor = (1.0, 1.0, 1.0, 1.0)): if 0 == ItemIndex or None == ItemIndex: wndMgr.ClearSlot(self.hWnd, renderingSlotNumber) return item.SelectItem(ItemIndex) itemIcon = item.GetIconImage() item.SelectItem(ItemIndex) (width, height) = item.GetItemSize() wndMgr.SetSlot(self.hWnd, renderingSlotNumber, ItemIndex, width, height, itemIcon, diffuseColor) wndMgr.SetSlotCount(self.hWnd, renderingSlotNumber, ItemCount) ####Item level text/icon ### itemName=item.GetItemName().strip() itemNameP=item.GetItemName().rfind('+') if itemNameP>0 and len(itemName)>itemNameP+1: level=itemName[itemNameP+1:] if level.isdigit(): wndMgr.SetSlotLevelImage(self.hWnd, renderingSlotNumber, ("icon/level/%d.tga"%int(level))) ####Item level text/icon END ### icon +0 and +9.7z
  12. UserInterface/PythonTextTail.cpp abra e adicione no fim dos inclues #include "PythonPlayer.h" procure por pTextTail->pOwnerTextInstance->SetColor(1.0f, 1.0f, 0.0f); adicione acima: CInstanceBase * pInstanceBase = CPythonCharacterManager::Instance().GetMainInstancePtr(); if (pInstanceBase) { if (strcmp(pInstanceBase->GetNameString(), c_szName)) pTextTail->pOwnerTextInstance->SetColor(1.0f, 0.0f, 0.0f); } ficando assim como na imagem anexada
  13. Metin no MiniMapa

    Olá boa tarde, venho trazer algo estético que há em outros foruns a tempos, porém como não vi por aqui decidi compartilhar. abram: InstanceBase.h e procurem por NAMECOLOR_WAYPOINT, adicionem: NAMECOLOR_METIN, abram: PythonCharacterManagerModule.cpp e procurem por "NAMECOLOR_MOB" a função deve ser esta, caso não seja igual os espaços PyModule_AddIntConstant(poModule, "NAMECOLOR_MOB", CInstanceBase::NAMECOLOR_NORMAL_MOB); adicionem abaixo PyModule_AddIntConstant(poModule, "NAMECOLOR_METIN", CInstanceBase::NAMECOLOR_METIN); abram: InstanceBaseEffect.cpp e procurem por else if (IsPoly()) { return NAMECOLOR_MOB; } adicionem: else if (IsStone()) { return NAMECOLOR_METIN; } abram PythonMiniMap.cpp e procurem por m_NPCPositionVector.clear(); adicionem m_MetinPositionVector.clear(); procurem por else if (pkInstEach->IsNPC()) { aMarkPosition.m_fX = ( m_fWidth - (float)m_WhiteMark.GetWidth() ) / 2.0f + fDistanceFromCenterX + m_fScreenX; aMarkPosition.m_fY = ( m_fHeight - (float)m_WhiteMark.GetHeight() ) / 2.0f + fDistanceFromCenterY + m_fScreenY; m_NPCPositionVector.push_back(aMarkPosition); } adicionem else if (pkInstEach->IsStone()) { aMarkPosition.m_fX = ( m_fWidth - (float)m_WhiteMark.GetWidth() ) / 2.0f + fDistanceFromCenterX + m_fScreenX; aMarkPosition.m_fY = ( m_fHeight - (float)m_WhiteMark.GetHeight() ) / 2.0f + fDistanceFromCenterY + m_fScreenY; m_MetinPositionVector.push_back(aMarkPosition); } procurem por // NPC STATEMANAGER.SetRenderState(D3DRS_TEXTUREFACTOR, CInstanceBase::GetIndexedNameColor(CInstanceBase::NAMECOLOR_NPC)); aIterator = m_NPCPositionVector.begin(); while (aIterator != m_NPCPositionVector.end()) { TMarkPosition & rPosition = *aIterator; m_WhiteMark.SetPosition(rPosition.m_fX, rPosition.m_fY); m_WhiteMark.Render(); ++aIterator; } adicionem // Metin STATEMANAGER.SetRenderState(D3DRS_TEXTUREFACTOR, CInstanceBase::GetIndexedNameColor(CInstanceBase::NAMECOLOR_METIN)); aIterator = m_MetinPositionVector.begin(); while (aIterator != m_MetinPositionVector.end()) { TMarkPosition & rPosition = *aIterator; m_WhiteMark.SetPosition(rPosition.m_fX, rPosition.m_fY); m_WhiteMark.Render(); ++aIterator; } após isto já pode compactar a source e ir para a parte python root/colorinfo.py procure por CHR_NAME_RGB_WARP = (136, 218, 241) adicione abaixo: CHR_NAME_RGB_METIN = (240, 255, 255) abrir root/introloading.py e procurar por chrmgr.NAMECOLOR_WAYPOINT : colorInfo.CHR_NAME_RGB_WAYPOINT, e adicionar chrmgr.NAMECOLOR_METIN : colorInfo.CHR_NAME_RGB_METIN, imagem anexada do sistema funcional no meu próprio servidor de testes
  14. Sistema colheita

    primeiramente, sabe se é derivado do sistema? ja testou adicionar ele nas files 100% limpas?
  15. Livros de Habilidades

    creio que alterando isto iMinReadCount = aiGrandMasterSkillBookMinCount_euckr[idx]; iMaxReadCount = aiGrandMasterSkillBookMaxCount_euckr[idx]; iBookCount = aiGrandMasterSkillBookCountForLevelUp_euckr[idx]; já se resolva, em iBookCount = coloque quantos livros serão necessários para upar até g1 iMinReadCount = são quantos livros no minimo precisam ser lidos para upar o nivel iMaxReadCount = quantos livros no maximo pode ser lidos para upar o nivel, ao que parece podem falhar até 5 livros para m2, não podendo ultrapassar este limite
×

Important Information

By using this site, you agree to our Terms of Use.