Opublikowano 1 Października 20232 l 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 Tylko zalogowani Zaloguj się, aby wyświetlić chronioną treść Ten post zawiera treści dostępne tylko dla członków. Zaloguj się lub utwórz konto, aby odblokować całą zawartość tego posta. Zaloguj się Utwórz konto ♻️ Zamień: 🔍 Szukaj ♻️ Zamień:
Opublikowano 28 Kwietnia 20242 l 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.: LuaKod został skopiowany 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 20242 l przez HelpDev
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto