Jump to content

kza54

Member
  • Posts

    6
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by kza54

  1. Excuse me, I posted a thank you message here for access to the download links, and my post was deleted, may I know why? While in addition I have a problem with this system I don't even know if I have the right to post now.

    My problem with this system :
    In my client I added the "say(locale_quest(14188))" (Please excuse me in advance if it is written in French in my locale_quest.txt because I am French)

     

    Spoiler

    14188    Veuillez d'abord invoquer votre buffeuse.
    14189    Veuillez mettre le nom de votre choix.
    14190    Félicitations, votre nom de buff a changé.
    14191    Une erreur s'est produite. Veuillez réessayer..
    14196    Veuillez essayer un autre nom.
    14192    Buffi Dragon
    14193    Pouvoir du Dragon Buff
    14194    Buffi Vitesse du vent
    14195    Attaque renforcée de Buffi
    14197    Vous n'avez aucune compétence de buff pour avoir besoin d'une mise à niveau.
    14198    Veuillez sélectionner une compétence.

    Server side :

    Spoiler

    quest __buffi__ begin
        state start begin
            when 952006.use begin
                say_title(item_name(952006))
                say("")
                if pc.get_buffi_count() < 1 then
                    say(locale_quest(14188))
                    return
                end
                say(locale_quest(14189))

                local result = pc.set_buffi_name(tostring(input()))
                say_title(item_name(952006))
                say("")
                if result == 99 then
                    say(locale_quest(14190))
                    item.set_count(item.get_count()-1)
                elseif result == 0 then
                    say(locale_quest(14191))
                elseif result == 1 or result == 2 then
                    say(locale_quest(14196))
                end
            end
            function BuildSkillList()
                local skillIdxList = {164, 165, 166, 167}
                local skillNameList = {locale_quest(14192), locale_quest(14193), locale_quest(14194), locale_quest(14195)}
                local ret_vnum_list = {}
                local ret_name_list = {}
                table.foreach(skillIdxList, 
                function(i, skillIdx)
                local skillLevel = pc.get_skill_level(skillIdx)
                if skillLevel >= 30 and skillLevel < 40 then
                    table.insert(ret_vnum_list, skillIdx)
                    table.insert(ret_name_list, skillNameList[i])
                    end
                end)
                return {ret_vnum_list, ret_name_list}
            end

            when 952005.use begin
                if get_time() < pc.getqf("next_time_buffi") then
                    if pc.is_skill_book_no_delay() then
                        say_title(locale_quest(9913))
                        say(locale_quest(9935))
                        wait()
                    else
                        say_title(locale_quest(9913))
                        say(locale_quest(9936))
                        return
                    end
                end

                local result = __buffi__.BuildSkillList()

                local vnum_list = result[1]
                local name_list = result[2]
                
                say_title(item_name(952005))
                say("")

                if table.getn(vnum_list) == 0 then
                    say(locale_quest(14197))
                    return
                end

                say(locale_quest(14198))

                local menu_list = {}
                table.foreach(name_list, function(i, name) table.insert(menu_list, name) end)
                table.insert(menu_list, locale_quest(1117))
                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)

                say_title(locale_quest(9913))
                say(locale_quest(9942))

                if cur_alignment<-19000+need_alignment then
                    say_reward(locale_quest(9914))
                    return
                end

                if cur_alignment<0 then
                    say_reward(string.format(locale_quest(9915), need_alignment, need_alignment*2))
                    say_reward(locale_quest(9916))
                    need_alignment=need_alignment*2
                elseif cur_alignment<need_alignment then
                    say_reward(string.format(locale_quest(9917), need_alignment))
                    say_reward(locale_quest(9918))
                else
                    say_reward(string.format(locale_quest(9917), need_alignment))
                end

                local s= select(locale_quest(10065), locale_quest(10066))
                if s==2 then
                    return
                end

                if get_time() < pc.getqf("next_time_buffi") then
                    if pc.is_skill_book_no_delay() then
                        pc.remove_skill_book_no_delay()
                    else
                        say_title(locale_quest(9913))
                        return
                    end
                end

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

                if need_alignment>0 then
                    if pc.count_item(952005) > 0 then
                        local title=string.format(locale_quest(9941), name_list[s])

                        if pc.learn_grand_master_skill(skill_vnum) then
                            pc.change_alignment(-need_alignment)
                            say_title(title)
                            say_reward(locale_quest(9923))
                            if 40 == pc.get_skill_level(skill_vnum) then
                                say(locale_quest(9925))
                                say(string.format(locale_quest(9926), name_list[s]))
                                say(locale_quest(9927))
                            else
                                say(locale_quest(9928))
                                say(string.format(locale_quest(9929), name_list[s], skill_level-30+1+1))
                            end
                            say_reward(locale_quest(9930))
                            say_reward(string.format(locale_quest(9931), need_alignment))
                        else
                            say_title(title)
                            say_reward(locale_quest(9932))
                            say(locale_quest(9933))
                            say_reward(locale_quest(9934))
                            pc.change_alignment(-number(need_alignment/3, need_alignment/2))
                        end
                        pc.remove_item(952005)
                    end
                end
            end
        end
    end

    InGame :

    https://metin2.download/picture/0DuFaN3XJ16kadvf7olS369rjWFQM533/.png

     

×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.