Bună seara,
Am o problemă cu stun-ul pe server, am serverfiles cartof v2, am modificat în sursă, dar încă tot se dă stun.
O rezolvare?
Problemă stun pe server
Cartof e plin de buguri, după urli că nu-ţi merg questurile
tutorial stun: pe care-l aplic mereu pe cartof V1 şi nu am nici o problemă(doar acest tutorial, nu mai multe că-s destule):
intri în Item.cpp din game, sursă server
cauţi:
Dacă nici ăsta nu ţi-e bun te rog eu nu mai folosi toate shiturile de sf-uri, de la v1 la v2 este o diferenţă enormă mai ales în buguri
.
tutorial stun: pe care-l aplic mereu pe cartof V1 şi nu am nici o problemă(doar acest tutorial, nu mai multe că-s destule):
intri în Item.cpp din game, sursă server
cauţi:
DWORD dwImmuneFlag = 0;
for (int i = 0; i < WEAR_MAX_NUM; ++i)
if (m_pOwner->GetWear(i))
SET_BIT(dwImmuneFlag, m_pOwner->GetWear(i)->m_pProto->dwImmuneFlag);
m_pOwner->SetImmuneFlag(dwImmuneFlag);
modifici în:
DWORD dwImmuneFlag = 0;
LPITEM item = NULL;
for (int i = 0; i < WEAR_MAX_NUM; ++i)
{
if (item=m_pOwner->GetWear(i))
{
if (item->GetImmuneFlag() != 0)
SET_BIT(dwImmuneFlag, item->GetImmuneFlag());
if (item->GetAttributeCount() > 0)
{
if (item->HasAttr(APPLY_IMMUNE_STUN))
SET_BIT(dwImmuneFlag, IMMUNE_STUN);
if (item->HasAttr(APPLY_IMMUNE_SLOW))
SET_BIT(dwImmuneFlag, IMMUNE_SLOW);
if (item->HasAttr(APPLY_IMMUNE_FALL))
SET_BIT(dwImmuneFlag, IMMUNE_FALL);
}
}
}
m_pOwner->SetImmuneFlag(dwImmuneFlag);
x2( de 2 ori faci lucrul ăsta, ai 2 funcţii la fel )Dacă nici ăsta nu ţi-e bun te rog eu nu mai folosi toate shiturile de sf-uri, de la v1 la v2 este o diferenţă enormă mai ales în buguri
Nu e buna rezolvarea aia , nu rezolva nimic 
Cauta in char.h
si adauga sub
Intra in char_resist.cpp cauta
si adauga sub
acum cauta
si aduaga in prima liinie
Acum adauga asta inainte de ultima functie cautata
Cauta in char.h
Cod: Selectaţi tot
IsImmune(DWORD dwImmuneFlag);Cod: Selectaţi tot
void UpdateImmuneFlags();Cod: Selectaţi tot
#include "locale_service.h"Cod: Selectaţi tot
#include "item.h"Cod: Selectaţi tot
bool CHARACTER::IsImmune(DWORD dwImmuneFlag)Cod: Selectaţi tot
if (!IS_SET(m_pointsInstant.dwImmuneFlag, dwImmuneFlag))
UpdateImmuneFlags(); Cod: Selectaţi tot
void CHARACTER::UpdateImmuneFlags()
{
m_pointsInstant.dwImmuneFlag = 0;
for (int i = 0; i < WEAR_MAX_NUM; i++)
{
if(GetWear(i))
{
for (int i2 = 0; i2 < ITEM_APPLY_MAX_NUM; ++i2)
{
if (GetWear(i)->GetProto()->aApplies[i2].bType == APPLY_NONE)
continue;
else if(GetWear(i)->GetProto()->aApplies[i2].bType == APPLY_IMMUNE_STUN)
SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_STUN);
else if(GetWear(i)->GetProto()->aApplies[i2].bType == APPLY_IMMUNE_SLOW)
SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_SLOW);
else if(GetWear(i)->GetProto()->aApplies[i2].bType == APPLY_IMMUNE_FALL)
SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_FALL);
}
for (int i3 = 0; i3 < ITEM_ATTRIBUTE_MAX_NUM; ++i3)
{
if (GetWear(i)->GetAttributeType(i3))
{
const TPlayerItemAttribute& ia = GetWear(i)->GetAttribute(i3);
if(ia.bType == APPLY_IMMUNE_STUN)
SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_STUN);
else if(ia.bType == APPLY_IMMUNE_SLOW)
SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_SLOW);
else if(ia.bType == APPLY_IMMUNE_FALL)
SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_FALL);
}
}
}
}
}defapt vorbeşti fără tinestilledanger scrie:Nu e buna rezolvarea aia , nu rezolva nimic
Cauta in char.h
si adauga subCod: Selectaţi tot
IsImmune(DWORD dwImmuneFlag);Intra in char_resist.cpp cautaCod: Selectaţi tot
void UpdateImmuneFlags();si adauga subCod: Selectaţi tot
#include "locale_service.h"acum cautaCod: Selectaţi tot
#include "item.h"si aduaga in prima liinieCod: Selectaţi tot
bool CHARACTER::IsImmune(DWORD dwImmuneFlag)Acum adauga asta inainte de ultima functie cautataCod: Selectaţi tot
if (!IS_SET(m_pointsInstant.dwImmuneFlag, dwImmuneFlag)) UpdateImmuneFlags();Cod: Selectaţi tot
void CHARACTER::UpdateImmuneFlags() { m_pointsInstant.dwImmuneFlag = 0; for (int i = 0; i < WEAR_MAX_NUM; i++) { if(GetWear(i)) { for (int i2 = 0; i2 < ITEM_APPLY_MAX_NUM; ++i2) { if (GetWear(i)->GetProto()->aApplies[i2].bType == APPLY_NONE) continue; else if(GetWear(i)->GetProto()->aApplies[i2].bType == APPLY_IMMUNE_STUN) SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_STUN); else if(GetWear(i)->GetProto()->aApplies[i2].bType == APPLY_IMMUNE_SLOW) SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_SLOW); else if(GetWear(i)->GetProto()->aApplies[i2].bType == APPLY_IMMUNE_FALL) SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_FALL); } for (int i3 = 0; i3 < ITEM_ATTRIBUTE_MAX_NUM; ++i3) { if (GetWear(i)->GetAttributeType(i3)) { const TPlayerItemAttribute& ia = GetWear(i)->GetAttribute(i3); if(ia.bType == APPLY_IMMUNE_STUN) SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_STUN); else if(ia.bType == APPLY_IMMUNE_SLOW) SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_SLOW); else if(ia.bType == APPLY_IMMUNE_FALL) SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_FALL); } } } } }
- Jawwad
-

- Mesaje: 1073
- Membru din: 06 Mai 2014, 06:25
- Aprecieri: 338
- Mulţumiri: 4019
- Discord: Copiază ID
Am încercat ambele tutoriale, ăstea sunt postate de M.Seby şi stunul tot se ia pe server.Chriss™ scrie:defapt vorbeşti fără tinestilledanger scrie:Nu e buna rezolvarea aia , nu rezolva nimic
Cauta in char.h
si adauga subCod: Selectaţi tot
IsImmune(DWORD dwImmuneFlag);Intra in char_resist.cpp cautaCod: Selectaţi tot
void UpdateImmuneFlags();si adauga subCod: Selectaţi tot
#include "locale_service.h"acum cautaCod: Selectaţi tot
#include "item.h"si aduaga in prima liinieCod: Selectaţi tot
bool CHARACTER::IsImmune(DWORD dwImmuneFlag)Acum adauga asta inainte de ultima functie cautataCod: Selectaţi tot
if (!IS_SET(m_pointsInstant.dwImmuneFlag, dwImmuneFlag)) UpdateImmuneFlags();Cod: Selectaţi tot
void CHARACTER::UpdateImmuneFlags() { m_pointsInstant.dwImmuneFlag = 0; for (int i = 0; i < WEAR_MAX_NUM; i++) { if(GetWear(i)) { for (int i2 = 0; i2 < ITEM_APPLY_MAX_NUM; ++i2) { if (GetWear(i)->GetProto()->aApplies[i2].bType == APPLY_NONE) continue; else if(GetWear(i)->GetProto()->aApplies[i2].bType == APPLY_IMMUNE_STUN) SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_STUN); else if(GetWear(i)->GetProto()->aApplies[i2].bType == APPLY_IMMUNE_SLOW) SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_SLOW); else if(GetWear(i)->GetProto()->aApplies[i2].bType == APPLY_IMMUNE_FALL) SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_FALL); } for (int i3 = 0; i3 < ITEM_ATTRIBUTE_MAX_NUM; ++i3) { if (GetWear(i)->GetAttributeType(i3)) { const TPlayerItemAttribute& ia = GetWear(i)->GetAttribute(i3); if(ia.bType == APPLY_IMMUNE_STUN) SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_STUN); else if(ia.bType == APPLY_IMMUNE_SLOW) SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_SLOW); else if(ia.bType == APPLY_IMMUNE_FALL) SET_BIT(m_pointsInstant.dwImmuneFlag, IMMUNE_FALL); } } } } }dacă eu doar acel tutorial îl folosesc şi n-am nici o problemă cu stunu
cum poţi să-mi spui tu mie că nu rezolvă nimic ?:))) serios?:)))
-
- Informaţie
-
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 64 vizitatori



