Opublikowano 1 Października 20231 r Witajcie! Podczas niedawnego tworzenia zadania napotkałem na problem związany z funkcją 'd.count_monster()', która jest często używana w zadaniach do dungeonów. Funkcja ta ma za zadanie zliczanie potworów na danej mapie, a kiedy ich liczba spadnie do zera, aktywowany jest następny etap zadania. Jednakże odkryłem, że funkcja ta zlicza nie tylko potwory, ale również inne elementy, takie jak postacie graczy, zwierzęta czy wierzchowce. To prowadziło do nieprawidłowego działania zadań w niektórych przypadkach, uniemożliwiając przejście do kolejnych etapów. Postanowiłem podzielić się moim rozwiązaniem tego problemu. Zmiany: Zmieniłem nazwę zmiennej n -> monsterCount. Zastosowałem 'static_cast' zamiast rzutowania w stylu C. Zainicjowałem zmienną monsterCount bezpośrednio w definicji klasy. Zastąpiłem postinkrementację (n++) preinkrementacją ++monsterCount, które jest bardziej wydajne. Rozwiązałem błąd w którym zliczano wszystko co nie jest postacią na zliczanie tylko potworów oraz metinów. Rozwiązanie: 📁 Lokalizacja pliku: 'game-> dungeon.cpp' 🔍 Szukaj 🔐 Ukryta Treść 🔐 Zaloguj się lub Zarejestruj się ♻️ Zamień: 🔐 Ukryta Treść 🔐 Zaloguj się lub Zarejestruj się 🔍 Szukaj 🔐 Ukryta Treść 🔐 Zaloguj się lub Zarejestruj się 🔐 Ukryta Treść 🔐 Zaloguj się lub Zarejestruj się ♻️ Zamień: 🔐 Ukryta Treść 🔐 Zaloguj się lub Zarejestruj się
Opublikowano 28 Kwietnia 20241 r akurat bawię się z questem i akurat z tą funkcją 😄 no nic zobaczmy czy defaultowo było na 1.6 dograne czy nie ^^ EDIT: No nic bug i tak nadal trwa, mianowicie od pokoleń jest tak: Jeśli chcemy robić licznik z getf na d.count_monster() to po zabiciu "gromadki"(czyli np. 4 moby) to d.count_monster() zliczy jako 1 mob informacje od siebie: d.count_monster() można stosować przy loginie, np.: when login begin -- chat chat("Ilość mobów do zabicia: ", d.count_monster()) -- syschat syschat("Ilość mobów do zabicia: ", d.count_monster()) -- d.notice d.notice("Ilość mobów do zabicia: "..(d.count_monster()).."") end ale już do zliczania mobów preferuje standardowo jeśli to dung: d.setf, d.getf tylko z getami najlepiej jak robić licznik na czacie to należy najlepiej zdefiniować lokalną liczbę mobów która będzie minusowana z setami/ getami Edytowane 28 Kwietnia 20241 r przez HelpDev
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.