Opublikowano 16 Marca16 Mar Witam, napotkalem sie na irytujący problem podczas pisania dungeonów.Mianowicie: Jeśli mam counter na dungeonie lub jakąkolwiek akcje typu when kill to w przypadku gdy:Zadam śmiertelny cios potworowi (załóżmy, że mam go na hita) -> potworowi ustawiane jest 0 hp i efekt tego otumanienia/przekręcenia/gonka chuj wie jak to nazwac, a gra dobija go i kłądzie na ziemie po około 2sek lub kolejnym hicie.PROBLEM: W przypadku wystapienia tej sytuacji (jeden strzał śmiertelny) i wyjściu z dungeona, ten mob padnie,gdy nie będę wewnątrz dunga, więc kod, który jest przy when kill sie nie wykona i kolejne pietro/flaga lub cokolwiek nie zostanie poprawnie ustawiona. Nie jest to zbyt czesty przypadek, jednak istnieje i czy ktoś ma pomysł co tu z tym zrobić?Zdjęcie obrazujące o co chodzi (szmata teoretycznie już jest martwa, a jednak nie do końca... można by powiedzieć: szmata szrodingera)
Opublikowano 16 Marca16 Mar Programista Rozwiązanie Spróbuj od końca podmienić w bool CHARACTER::Damage(...) if (GetHP() <= 0) { // @sndth002 BEGIN if (IsPC()) Stun(); else Dead(); if (pAttacker) { if (pAttacker->IsNPC()) m_dwKillerPID = 0; else m_dwKillerPID = pAttacker->GetPlayerID(); } // @sndth002 END } return false; }
Opublikowano 16 Marca16 Mar Autor 32 minuty temu, Thorek napisał(a):Spróbuj od końca podmienić w bool CHARACTER::Damage(...) if (GetHP() <= 0) { // @sndth002 BEGIN if (IsPC()) Stun(); else Dead(); if (pAttacker) { if (pAttacker->IsNPC()) m_dwKillerPID = 0; else m_dwKillerPID = pAttacker->GetPlayerID(); } // @sndth002 END } return false; }zajebiste, dzięki :) Proste a jakże skuteczne (mam nadzieje).