Skocz do zawartości
Opublikowano

Wgrałem commita od @Sevence a dokładnie ten:
[UPDATE] Otwieranie skrzynek nie będzie możliwy, gdy gracz nie ma 3 wolnych miejsc w pionowo. [commit]

Lecz mam problem taki że po otworzeniu skrzynki, lecą itemy na ziemie. 
W quescie dałem warunek sprawdzenia ale nawet to nie trybi.

u Sevence akurat działa to:
GIF 16.07.2024 10-53-04.gif

Mimo że dodałem z jego commita, porównywałem też jak ma z plikami 2.1 to i tak to nie trybi mi.

 
Mój char_item ->  char_item.cpp

Commit : https://github.com/DarkSevence/EntryCore/commit/3df5334eccf83a26970c8d750b492eff10549f21

A o to mój quest: skrzynieklasastart.lua

Rozwiązane przez Januszek

Przejdź do rozwiązania

Featured Replies

Opublikowano

to nie błąd tak funkcje masz napisana przecież w kodzie...

HasThreeEmptyVerticalSlots() funckaj która sprawdza sloty.

if (contiguousFreeSlots >= 3) { return true; } tu masz next funkcje która to sprawdza i to sprawdza tylko 3 wolne sloty pionowo. To nie jest problem.. tylko tak jest napisana funkcja .

Pozdrawiam mam nadzieje że rozwiązałem ci problem !

Opublikowano

Ta szkatułka jest zrobiona questem? Jeśli tak to musisz napisać warunek w quescie, który nie pozwoli otworzyć szkatułki jeśli nie masz wystarczającej ilości wolnych slotów.
 

            local empty_inventory_count = pc.get_empty_inventory_count()
            local required_empty_slots = 20

            if empty_inventory_count < required_empty_slots then
                chat("Masz za mało miejsca w ekwipunku, aby otworzyć tę skrzynię!")
                chat("Potrzebujesz conajmniej " .. required_empty_slots .. " pustych miejsc w ekwipunku! ")
                return
            end


 

Opublikowano

Zastosowanie do takich szkat ma special_item_group, ten quest jest zbedny 😮 Zrozumiałbym zaawansowane questy z jakimiś warunkami, losowaniami czy innym bardziej zaawansowanym kodem ale nie zwykła szkata co daje itemy. Co do samego problemu, sprawdziłbyś czy działa to na innej szkatułce, która ma drop w specialu. Obstawiałbym, że funkcja questowa pomija te sprawdzenie ilości slotów

Edytowane przez unpackboss

Opublikowano

ale w jego quescie nie ma nic o dropie, on tam ma tylko itemy na start ustawione, reszte ma w locale_item_group już spokojnie ...XD

Opublikowano
  • Programista

Nie wyświelta Ci się komunikat [LS;785], więc zacząłbym od sprawdzenia, czy item ma type ITEM_GIFTBOX.

Co do reszty tych czarodziei którzy mieszają - xD

Edytowane przez Thorek

Opublikowano
  W dniu 27.09.2024 o 17:22, Thorek napisał(a):

Nie wyświelta Ci się komunikat [LS;785], więc zacząłbym od sprawdzenia, czy item ma type ITEM_GIFTBOX.

Co do reszty tych czarodziei którzy mieszają - xD

Problemem tutaj są sloty w ekwipunku, bo jak ma zablokowaną  jedną stronę to mu nie blokuje, jak odblokujesz 4 stronę eq to blokada na skrzynki działa normalnie 

Opublikowano
  • Programista
  W dniu 27.09.2024 o 18:19, Bamboo napisał(a):

Problemem tutaj są sloty w ekwipunku, bo jak ma zablokowaną  jedną stronę to mu nie blokuje, jak odblokujesz 4 stronę eq to blokada na skrzynki działa normalnie 

a no to możliwe

Edytowane przez Thorek

Opublikowano
  • Autor
  W dniu 27.09.2024 o 17:22, Thorek napisał(a):

Nie wyświelta Ci się komunikat [LS;785], więc zacząłbym od sprawdzenia, czy item ma type ITEM_GIFTBOX.

Co do reszty tych czarodziei którzy mieszają - xD


Wykonałem to na zasadzie skrzyń ucznia, type mam ustawione na 23
Ale system odblokowania EQ bo mam na 4 stronie tylko ustawione coś krzaczy bo jak odblokuje czwartą strone to wtedy działa to 

 

 

  W dniu 27.09.2024 o 16:40, Zephyr napisał(a):

Ta szkatułka jest zrobiona questem? Jeśli tak to musisz napisać warunek w quescie, który nie pozwoli otworzyć szkatułki jeśli nie masz wystarczającej ilości wolnych slotów.
 

            local empty_inventory_count = pc.get_empty_inventory_count()
            local required_empty_slots = 20

            if empty_inventory_count < required_empty_slots then
                chat("Masz za mało miejsca w ekwipunku, aby otworzyć tę skrzynię!")
                chat("Potrzebujesz conajmniej " .. required_empty_slots .. " pustych miejsc w ekwipunku! ")
                return
            end


 


Dałem ten warunek ale i tak to nie działa
No mam w taki sposób:
 

Pokaż ukrytą zawartość


No a reszta to właśnie jak Bamboo pisał

Opublikowano

Ta funkcja check_inventory wcale ci się nie wykonuje? Spróbuj wrzucić ją do questlib.lua i dodać nazwę do quest_function. 

Opublikowano
  W dniu 27.09.2024 o 16:52, Bamboo napisał(a):

ale w jego quescie nie ma nic o dropie, on tam ma tylko itemy na start ustawione, reszte ma w locale_item_group już spokojnie ...XD

jak to nie ma xd chyba ze na item_quest działa teraz special

Opublikowano
  W dniu 27.09.2024 o 19:10, unpackboss napisał(a):

jak to nie ma xd chyba ze na item_quest działa teraz special

no u niego w quescie masz tylko skrzynki na start, a z item_group masz drop z tych skrzynek przecież XD

Opublikowano

No to przecież ta funkcja check się nie wykona skoro te skrzynki maja type pod special i drop tam wtf.

Opublikowano
  • Autor
  • Rozwiązanie

Dobra, moge zamykać temat.
Jakiś poradnik kiedyś czytałem na temat ustawiania takich skrzynek na start i że była mowa o subtype 23 i tym special item group
Ustawiłem type na 18 tak jak @Sevence mi na pw napisał, w quescie poprawiłem w ten sposób przyznawanie itemów z skrzyni

            local items = {11802, 7002, 14002, 15002, 16002, 17002, 13002, 12622, 5002}
            for _, item in ipairs(items) do
                pc.give_item2(item, 1)
            end
        end

I już trybi, dziękuje za funkcje @Zephyr
image.png.6266288a28c56c02df04860f9eaa31b7.png

  • Januszek zablokował(a) ten temat
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.