Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Quest tęczowy kamień


Rekomendowane odpowiedzi

Opublikowano

mam problem z tym questem, po dodaniu tego questa nie dziala, gdzie wrzucac na terenzo questa ze skilami? ma to jakies znaczenie? lub czy quest jest bledny? pomocy.!

quest teczowy begin
    state start begin
        when 50512.use begin
                say_trawa("Zaawansowane Szkolenie Umiejętności")


            if pc.get_skill_group() == 0 then
                say_trawa("Zaawansowane Szkolenie Umiejętności")
                say_cialo("Nie wybrałeś jeszcze drogi duchowej."..pc.get_skill_group())
                return
            end

            if get_time() < pc.getqf("next_time") then -- and not is_test_server() then
                if pc.is_skill_book_no_delay() then
                    say_cialo("Trening spowoduje usunięcie efektu")
                    say_cialo("Zwoju Egzorcyzmu.")
                    wait()
                    say_trawa("Zaawansowane Szkolenie Umiejętności")
                else
                    say_cialo("Musisz użyć Zwoju Egzorcyzmu zanim ponownie")
                    say_cialo("rozpoczniesz trening przed upływem 24 godzin.")
                    return
                end
            end

            local result = training_grandmaster_skill.BuildGrandMasterSkillList(pc.get_job(), pc.get_skill_group())

            local vnum_list = result[1]
            local name_list = result[2]

            if table.getn(vnum_list) == 0 then
                say_cialo("Nie możesz trenować żadnej umiejętności.")
                return
            end

            say_cialo("Proszę wybrać umiejętność, którą chcesz trenować.")
            say_cialo("")

            local menu_list = {}
            table.foreach(name_list, function(i, name) table.insert(menu_list, name) end)
            table.insert(menu_list, "Anuluj") 

            local s=select_table(menu_list)
            if table.getn(menu_list) == s then
                return
            end

            local skill_name=name_list[s]
            local skill_vnum=vnum_list[s]
            local skill_level = pc.get_skill_level(skill_vnum)
            local cur_alignment = pc.get_real_alignment()
            local need_alignment = 1000+500*(skill_level-30)

            test_chat("˛{¦bµ˝´c­Č: "..cur_alignment)
            test_chat("»Ý­nµ˝´c­Č: "..need_alignment)

            local title=string.format("Trening %s Wielki Mistrz", skill_name)

            say_trawa("Zaawansowane Szkolenie Umiejętności")
            say_cialo("Jeśli będziesz używać swoich punktów Rangi")
            say_cialo("podczas treningu Umiejętności, może się zdarzyć,")
            say_cialo("że twoja Ranga stanie się negatywna.")

            if cur_alignment<-19000+need_alignment then
                say_reward("Nie masz wystarczającej ilości punktów Rangi.")
                return
            end

            if cur_alignment<0 then
                say_reward(string.format("Wymagane punkty Dobra/Zła: %d -> %d", need_alignment, need_alignment*2))
                say_reward("Jeśli trening zakończy się powodzeniem,")
                say_reward("zużyjesz 2 razy więcej punktów Rangi.")
                need_alignment=need_alignment*2
            elseif cur_alignment<need_alignment then
                say_reward(string.format("Wymagane punkty Dobra/Zła: %d", need_alignment))
                say_reward("Jeśli będziesz teraz trenować, twoja ranga")
                say_reward("stanie się negatywna.")
            else
                say_reward(string.format("Wymagane punkty Dobra/Zła: %d", need_alignment))
            end
            say_cialo("")

            local s=select("Dalej", "Anuluj")   
            if s==2 then
                return
            end


            if cur_alignment>=0 and cur_alignment<need_alignment then
                say_trawa("Zaawansowane Szkolenie Umiejętności")
                say_reward("Kontynuuj")
                say_cialo("Jeśli będziesz kontynuował trening umiejętności,")
                say_cialo("możliwe jest, że twoje punkty Rangi przyjmą ")
                say_cialo("wartość ujemną i będziesz miał negatywną Rangę.")
                say_cialo("Jeśli chcesz kontynuować, wpisz poniżej słowo")
                say_cialo('trenuj')
                say_reward("trenuj")
                say_cialo("Jeżeli nie chcesz już trenować, wciśnij 'ENTER'.")
                local s=input()
                if s!="trenuj" then
                    return
                end
            end

            if get_time() < pc.getqf("next_time") then -- and not is_test_server() then
                if pc.is_skill_book_no_delay() then
                    pc.remove_skill_book_no_delay()
                else
                    say_cialo("[°ŞŻĹµĄŻĹ]§ŢŻŕ­×˝mżů»~: Ąđ®§¤¤")
                    return
                end
            end

            pc.setqf("next_time", get_time()+time_hour_to_sec(number(8, 12)))

            if need_alignment>0 then
                if pc.learn_grand_master_skill(skill_vnum) then
                    pc.change_alignment(-need_alignment)


                    say_trawa("Zaawansowane Szkolenie Umiejętności")
                    if 40 == pc.get_skill_level(skill_vnum) then
                    say_reward("Powodzenie!")
                    say_cialo("Gratulacje! Udało się!")
                    say_cialo(string.format("%s jest teraz na poziomie Wielki Mistrz.", skill_name))
                    say_cialo("To oznacza, że osiągnąłeś poziom Perfekcyjny tej")
                    say_cialo("umiejętności. Dalsze jej szkolenie jest")
                    say_cialo("niemożliwe.")
                    else
                    say_reward("Powodzenie!")
                    say_cialo("Gratulacje! Udało się!")
                    say_cialo(string.format("%s jest teraz na poziomie Wielki Mistrz.", skill_name))
                    end
                    say_reward("Pomyślnie podnisłeś poziom!")
                    say_reward(string.format("Zużyłeś %d punktów Dobra/Zła.", need_alignment))
                    say_cialo("")
                else
                    say_trawa("Zaawansowane Szkolenie Umiejętności")
                    say_reward("Niepowodzenie!")
                    say_cialo("Nie udało się ulepszyć umiejętności.")
                    say_reward("Straciłeś trochę punktów Dobra/Zła.")
                    say_cialo("")
                    pc.change_alignment(-number(need_alignment/3, need_alignment/2))
                end
            end

            item.remove()
        end
        function BuildGrandMasterSkillList(job, group)
            GRAND_MASTER_SKILL_LEVEL = 30
            PERFECT_MASTER_SKILL_LEVEL = 59

            local skill_list = special.active_skill_list[job+1][group]
            local ret_vnum_list = {}
            local ret_name_list = {}

            -- test_chat(string.format("job=%d, group=%d", job, group))

            table.foreach(skill_list, 
            function(i, skill_vnum) 
                local skill_level = pc.get_skill_level(skill_vnum)

                -- test_chat(string.format("[%d]=%d", skill_vnum, skill_level))
                if skill_level >= GRAND_MASTER_SKILL_LEVEL and skill_level < PERFECT_MASTER_SKILL_LEVEL then

                    table.insert(ret_vnum_list, skill_vnum)
                    local name=locale.GM_SKILL_NAME_DICT[skill_vnum]
                    if name == nil then name=skill_vnum end
                    table.insert(ret_name_list, name)
                end
            end)
            return {ret_vnum_list, ret_name_list}


            --return {ret_vnum_list, ret_name_list}
        end
    end
end

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...