Sim, fixei 100%.
https://i.imgur.com/EvqRGTn.png
Printable View
Sim, fixei 100%.
https://i.imgur.com/EvqRGTn.png
4 minutes:------- Atualizado -------
When i build Release_CS and run GameServer.exe get this error
https://i.ibb.co/j337hHq/Screenshot-17.png
to tentando fixar ela tambem, consegui fazer a parte de pegas as skills, porem alguams ficam bugadas e as passivas n puxa nenhuma
4 minutes:------- Atualizado -------
eu tentei fixar tambem, porem nao consigo usar algumas skills, elas bugam e as passivas nao consigo pegar tambem
https://i.imgur.com/KL38LfE.jpeg
MASTER SKILL TREE 4º CLASSE
skill files
![]()
Citação:
CSkill* CSkillManager::GetSkill(LPOBJ lpObj, int index) // OK{
index = ((index == SKILL_NOVA_START) ? SKILL_NOVA : index);
index = ((index == MASTER_SKILL_ADD_NOVA_START_IMPROVED) ? SKILL_NOVA : index);
for (int n = 0; n < MAX_SKILL_LIST; n++)
{
if (lpObj->Skill[n].IsSkill() != 0)
{
if (lpObj->Skill[n].m_index == index || lpObj->Skill[n].m_skill == index)
{
gSkillManager.GCSkillAddSend(lpObj->Index, n, index, 0, 0);
return &lpObj->Skill[n];
}
}
}
return 0;
}
skillManager.cpp
Citação:
void MasterSkillTree_4th::CGMasterSkillRecv(PMSG_FOR_MA STER_SKILL_RECV* lpMsg, int aIndex) // OK
{
//return; //disabled until full implementation and test of skills
LPOBJ lpObj = &gObj[aIndex];
if (gObjIsConnectedGP(aIndex) == 0)
{
return;
}
FOR_MASTER_SKILL_INFO ForMasterSkillTreeInfo;
if (this->GetInfo(lpObj->Class,lpMsg->ForMasterSkill,lpMsg->Group, &ForMasterSkillTreeInfo) == 0)
{
return;
}
if (lpObj->SkillEnhanceTreePoints < ForMasterSkillTreeInfo.m_ForMasterSkillData.NeedPo int)
{
return;
}
CSkill* lpForMasterSkill = gSkillManager.GetForMasterSkill(lpObj, ForMasterSkillTreeInfo.m_ForMasterSkillData.SkillI D,lpMsg->Group);
if (lpForMasterSkill == 0)
{
if (this->CheckParentSkill(lpObj, &ForMasterSkillTreeInfo)==0)
{
return ;
}
if (this->CheckForMasterSkillGroup(lpObj, lpMsg->Group, lpMsg->Line, &ForMasterSkillTreeInfo) == 0)
{
return;
}
if (this->ReplaceSkill(lpObj, ForMasterSkillTreeInfo.m_ForMasterSkillData.NeedPo int, &ForMasterSkillTreeInfo) == 0)
{
return;
}
gSkillManager.AddForMasterSkill(lpObj, ForMasterSkillTreeInfo.m_ForMasterSkillData.SkillI D, ForMasterSkillTreeInfo.m_ForMasterSkillData.NeedPo int, ForMasterSkillTreeInfo.m_ForMasterSkillData.Group) ;
}
else
{
if ((lpForMasterSkill->m_level+1) > ForMasterSkillTreeInfo.m_ForMasterSkillData.MaxPoi nt)
{
return;
}
if (this->ReplaceSkill(lpObj, lpForMasterSkill->m_level + 1, &ForMasterSkillTreeInfo) == 0)
{
return;
}
lpForMasterSkill->Set1(lpObj->Index, ForMasterSkillTreeInfo.m_ForMasterSkillData.SkillI D, (lpForMasterSkill->m_level + 1),ForMasterSkillTreeInfo.m_ForMasterSkillData.Gro up);
}
gSkillManager.GCSkillAddSend(lpObj->Index, gSkillManager.GetSkillSlot(lpObj, ForMasterSkillTreeInfo.m_ForMasterSkillData.SkillI D), ForMasterSkillTreeInfo.m_ForMasterSkillData.SkillI D, 0, 0);
gSkillManager.GCSkillListSend(lpObj, 0);
lpObj->SkillEnhanceTreePoints -= ForMasterSkillTreeInfo.m_ForMasterSkillData.NeedPo int;
this->GCAddForMasterSkill(lpObj, &ForMasterSkillTreeInfo);
gObjectManager.CharacterCalcAttribute(aIndex);
//this->GCMasterSkillSend(aIndex, 0, 0, lpObj->MasterPoint, lpMsg->MasterSkill, lpMsg->MasterEmpty);
//this->GCMasterInfoSend(lpObj);
}