Szerző Téma: Ki-Be kapcsolható krit és átható  (Megtekintve 247 alkalommal)

Nem elérhető devilcon

  • Beginner
  • Thank You
  • -Given: 16
  • -Receive: 0
  • Hozzászólások: 24
  • Segített: 1
Ki-Be kapcsolható krit és átható
« 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 scopechar_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!

Nem elérhető Chookez™

  • Intermediate
  • **
  • Thank You
  • -Given: 19
  • -Receive: 55
  • Hozzászólások: 246
  • Segített: 76
  • めヴィジャ
Re:Ki-Be kapcsolható krit és átható
« Válasz #1 Dátum: 2019-08-09, 11:45:19 »
Szia.

Valószínűleg innen kihagytad: unique_item.h
CRITICAL = ITEM_ID,
PENETRATE = ITEM_ID,

Nem elérhető devilcon

  • Beginner
  • Thank You
  • -Given: 16
  • -Receive: 0
  • Hozzászólások: 24
  • Segített: 1
Re:Ki-Be kapcsolható krit és átható
« Válasz #2 Dátum: 2019-08-09, 11:49:34 »
Igen, kimaradt.. :-X
Köszönöm a segítséget! ;D
« Utoljára szerkesztve: 2019-08-09, 13:04:46 írta devilcon »