Metin2 Hungarian Forum

Metin2 => Szerver készítés => Privát szerverek => Segítség => A témát indította: devilcon Dátum 2019-08-09, 11:41:21

Cím: Ki-Be kapcsolható krit és átható
Írta: devilcon Dátum 2019-08-09, 11:41:21
Sziasztok!
Beraktam a ki-be kapcsolható örökös potikat (lila, zöld), tökéletesen működnek.
Én ez alapján szerettem volna létrehozni egy kritet és áthatót, de sajna nem jött össze.
Leírás:
https://forum.turkmmo.com/konu/3678272-c-python-yesil-ve-mor-pot-rubinum-tarzi/
Így néz ki a kód:
case CRITICAL:
case PENETRATE:
{
EAffectTypes type = AFFECT_NONE;

if (item->GetVnum() == CRITICAL)
type = AFFECT_MALL;

if (item->GetVnum() == PENETRATE)
type = AFFECT_MALL;

if (AFFECT_NONE == type)
break;

CAffect * pAffect = FindAffect(type);

if (NULL == pAffect)
{
EPointTypes bonus = POINT_NONE;
EAffectBits flag = AFF_NONE;

if (item->GetVnum() == CRITICAL)
{
bonus = POINT_CRITICAL_PCT;
}

if (item->GetVnum() == PENETRATE)
{
bonus = POINT_PENETRATE_PCT;
}

AddAffect(type, bonus, item->GetValue(2), flag, INFINITE_AFFECT_DURATION, 0, true);

item->Lock(true);
item->SetSocket(0, true);
}
else
{
RemoveAffect(pAffect);
item->Lock(false);
item->SetSocket(0, false);
}
}
break;


Ez a hiba:
char_item.cpp: 'CRITICAL' was not declared in this scope
char_item.cpp: 'PENETRATE' was not declared in this scope

Az eredeti kóddal nem volt ilyen baj, pedig máshol nem kellett módosítani a forrásban...
Az így néz ki:
case NEW_MOVE_SPEED_POTION:
case NEW_ATTACK_SPEED_POTION:
{
EAffectTypes type = AFFECT_NONE;

if (item->GetVnum() == NEW_MOVE_SPEED_POTION)
type = AFFECT_MOV_SPEED;

if (item->GetVnum() == NEW_ATTACK_SPEED_POTION)
type = AFFECT_ATT_SPEED;

if (AFFECT_NONE == type)
break;

CAffect * pAffect = FindAffect(type);

if (NULL == pAffect)
{
EPointTypes bonus = POINT_NONE;
EAffectBits flag = AFF_NONE;

if (item->GetVnum() == NEW_MOVE_SPEED_POTION)
{
bonus = POINT_MOV_SPEED;
flag = AFF_MOV_SPEED_POTION;
}

if (item->GetVnum() == NEW_ATTACK_SPEED_POTION)
{
bonus = POINT_ATT_SPEED;
flag = AFF_ATT_SPEED_POTION;
}

AddAffect(type, bonus, item->GetValue(2), flag, INFINITE_AFFECT_DURATION, 0, true);

item->Lock(true);
item->SetSocket(0, true);
}
else
{
RemoveAffect(pAffect);
item->Lock(false);
item->SetSocket(0, false);
}
}
break;


Segítséget előre is köszönöm!
Cím: Re:Ki-Be kapcsolható krit és átható
Írta: Chookez Dátum 2019-08-09, 11:45:19
Szia.

Valószínűleg innen kihagytad: unique_item.h
CRITICAL = ITEM_ID,
PENETRATE = ITEM_ID,
Cím: Re:Ki-Be kapcsolható krit és átható
Írta: devilcon Dátum 2019-08-09, 11:49:34
Igen, kimaradt.. :-X
Köszönöm a segítséget! ;D
EhPortal 1.39 © 2025, WebDev