Fejlesztői tárgy

Indította Pisti95, 2017-10-01, 16:21:26

Sziasztok!

Olyan kérdésem lenne, hogy a játékban létezik olyan tárgy, amit ha ráhúzok egy felszerelésre, vagy fegyverre azt tovább fejleszti (lásd: Áldástekercs) a tárgyat, de úgy, hogy nem kér fejlesztőt? Tehát nem kéri azokat a tárgyakat a tárgy húzásához amit én megadtam, hanem megkerüli ezen tárgyakat?

Nem rémlik nekem hogy lenne ilyen tárgy a játékban, de nekem jól jönne egy ilyen, ha tudtok forrásos megoldást erre, azt szívesen veszem.

2017-10-01, 16:29:23 #1 Utolsó szerkesztés: 2017-10-01, 16:39:06 Szerző: fabtam11
a forrásba elvleg a dtkovácsnak van hasonlója h ugye no tárgy csak yangos fejlesztés megy...maybe az a dolog elég jó kiindulási alap lehet.

Idézetet írta: fabtam11 Dátum 2017-10-01, 16:29:23
a forrásba elvleg a dtkovácsnak van hasonlója h ugye no tárgy csak yangos fejlesztés megy...maybe az a dolog elég jó kiindulási alap lehet.

Köszönöm a súgást, én is gondoltam a DT kovácsra, csak már régen játszottam szervereken.

Am lemásolod a teki kódját, kitörlöd/kommentezed a tárgykövetelményes részt és rárakod 1 új ID-re.

Ezt nézem most kiindulási alapnak:

http://metin2hungary.net/index.php/topic,197563.0.html

Oké, hogy hasonlóan megírom, de a fejlesztő tárgyak kérését nem találom akkor sem.  :o

2017-10-01, 19:06:41 #5 Utolsó szerkesztés: 2017-10-01, 19:08:21 Szerző: 5310pati
Pityúúúúkáááám :'( :'( :D :'( huzsi írását mellőzd
char_item
bool CHARACTER::RefineItem(LPITEM pkItem, LPITEM pkTarget)
majd ebből meglesz ez:
bool CHARACTER::RefineInformation(BYTE bCell, BYTE bType, int iAdditionalCell)
ezen belül van a dolog
const TRefineTable* prt = rm.GetRefineRecipe(item->GetRefineSet());
Ez persze csak az elküldés kliensnek h mi kell, az elvétel ebben van:
bool CHARACTER::DoRefine(LPITEM item, bool bMoneyOnly)
if (!bMoneyOnly && !RefineChance)
{
for (int i = 0; i < prt->material_count; ++i)
{
if (CountSpecifyItem(prt->materials[i].vnum) < prt->materials[i].count)
{
if (test_server)
{
ChatPacket(CHAT_TYPE_INFO, "Find %d, count %d, require %d", prt->materials[i].vnum, CountSpecifyItem(prt->materials[i].vnum), prt->materials[i].count);
}
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("°ł·®Ŕ» Çϱâ Ŕ§ÇŃ Ŕç·á°ˇ şÎÁ·ÇŐ´Ď´Ů."));
return false;
}
}

for (int i = 0; i < prt->material_count; ++i)
RemoveSpecifyItem(prt->materials[i].vnum, prt->materials[i].count);
}