Jump to content
×
×
  • Create New...
  • 0

Quete de la super pierre d'âme


galat93

Question

  • Answers 40
  • Created
  • Last Reply

Top Posters For This Question

Top Posters For This Question

Recommended Posts

  • 0

Euh ?

Ça vient d'un SP ? Cherche sur le forum pour voir, mais c'est pas si dur à coder ^^

 

Oui ça viens d'un sp , j'avais même la quest en lien de téléchargement mais le lien est mort :S.

 

Hardy, j'ai essayé mais je vois pas ou je peut changé le "1" :(

Link to comment
  • 0

quest training_grandmaster_skill begin

    state start begin

        when 50513.use begin

            ---                                                   l

            say_title("Entrainement d'amélioration pour les grand")

            say_title("maitres:")

 

            if pc.get_skill_group() == 0 then

                ---                                                   l

                say("Aucune de vos compétences n'est suffisamment")

                say("développée pour essayer et achever une compétence")

                say("de Grand maitre.")

                return

            end

 

            if get_time() < pc.getqf("next_time") then

                if pc.is_skill_book_no_delay() then

                    ---                                                   l

                    say_reward("Vous utilisez un parchemin d'exorcisme.")

                else

                    ---                                                   l

                    say("Vous venez de lire une pierre d'âme il y à moins")

                    say("de 12 heures. Vous devez attendre 12 heures pour")

                    say("pouvoir lire une nouvelle pierre d'âme, ou vous")

                    say("devez utiliser des parchemins d'exorcismes. Qui")

                    say("vous permettrons de lire plusieurs pierres d'âme")

                    say("d'affilé.")

                    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

                ---                                                   l

                say("Toute vos compétences sont déjà développée à ")

                say("leurs stade maximale. Vous ne pouvez donc pas")

                say("développée plus vos compétences.")

                return

            end

 

            ---                                                   l

            say("Choisissez la compétence que vous voulez")

            say("développer comme grand maitre.")

 

            local menu_list = {}

 

            table.foreach(name_list, function(i, name) table.insert(menu_list, name) end)

            table.insert(menu_list, "Annuler")

 

            local s=select_table(menu_list)

            

            if table.getn(menu_list) == s then

                return

            end

 

            local skill_name=name_list

            local skill_vnum=vnum_list

            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("Alignement courant: "..cur_alignment)

            test_chat("Alignement nécessaire: "..need_alignment)

 

            local title=string.format("%s entrainement d'amélioration[ENTER]de la compétence grand maitre", skill_name)

 

            ---                                                   l

            say_title("Entrainement d'amélioration pour les grand")

            say_title("maitres:")

            say("L'entrainement au niveau Grand Maitre")

            say("est très coûteux en points de grade.")

            say("Il se peut qu'ils passent en négatif.")

 

            if cur_alignment<-19000+need_alignment then

                say_reward("Vous ne possédez pas assez de points de grade")

                say_reward("pour effectuer cette amélioration.")

                return

            end

 

            if cur_alignment<0 then

                ---                                                   l

                say_reward("L'amélioration de votre compétence entrainera une")

                say_reward(string.format("perte de %d points de grade.", need_alignment*2))

                need_alignment=need_alignment*2

 

            elseif cur_alignment >= need_alignment then

                say_reward(string.format("Points de grade requis : %d", need_alignment))

            end

 

            local s=select("Continuer", "Annuler")    

 

            if s==2 then

                return

            end

 

            if cur_alignment>=0 and cur_alignment

                ---                                                   l

                say_title(string.format("%s", title))

                say("Vous possédez très peu de grade. Pour continuer")

                say("cet entrainement, vous devez saisir la phrase")

                say("secrète, murmurée depuis des immémoriaux d'un")

                say("maître à son apprenti.")

                say_reward("La connaissance est un trésor.")

 

                local s=input()

 

                if s!="La connaissance est un trésor." then

                    return

                end

            end

 

            if get_time() < pc.getqf("next_time") then

                if pc.is_skill_book_no_delay() then

                    pc.remove_skill_book_no_delay()

                else

                    ---                                                   l

                    say("Votre pierre d'ame semble avoir disparu de votre")

                    say("inventaire. Allez en chercher une autre.")

                    return

                end

            end

 

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

 

            if need_alignment>0 then

                if pc.learn_grand_master_skill(skill_vnum) then

                    pc.change_alignment(-need_alignment)

                    say_title(string.format("%s", title))

 

                    if 40 == pc.get_skill_level(skill_vnum) then

                        ---                                                   l

                        say_reward("Succès!")

                        say("Félicitations ! Vous l'avez fait. La compétence")

                        say("est à présent en maitre parfait.")

                    else

                        ---                                                   l

                        say_reward("Succès!")

                        say("Félicitations ! Vous l'avez fait. Merci pour")

                        say("l'entrainement à la compétence de grand maitre.")

                        say(string.format("%s arrive au niveau %d.", skill_name, skill_level-30+2))

                        say_reward("Vous augmentez votre niveau avec succès!")

                    end

 

                    say_reward(string.format("Vous avez utilisé %d points de grade.", need_alignment))

                else

                    ---                                                   l

                    say_title(string.format("%s", title))

                    say_reward("Echec!")

                    say("Vous n'avez pas réussi à améliorer votre")

                    say("compétence.")

                    say_reward("Vous avez perdu quelques points de grade")

                    say_reward("et la pierre d'âme a été utilisée.")

                    local alignEchoue=number(need_alignment/3, need_alignment/2)

                    pc.change_alignment(-alignEchoue)

                end

            end

            item.remove()

        end

 

        function BuildGrandMasterSkillList(job, group)

 

            GRAND_MASTER_SKILL_LEVEL = 30

            PERFECT_MASTER_SKILL_LEVEL = 40

 

            local skill_list = special.active_skill_list[job+1][group]

            local ret_vnum_list = {}

            local ret_name_list = {}

 

            table.foreach(skill_list,

                function(i, skill_vnum)

                local skill_level = pc.get_skill_level(skill_vnum)

 

                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}

        end

    end

end

Link to comment
  • 0
  • Bot

Je suis pas très fort en lua, comme je te l'ai dit, mais essayer ça :

 

A ça :

  else
                       ---                                                   l
                       say_reward("Succès!")
                       say("Félicitations ! Vous l'avez fait. Merci pour")
                       say("l'entrainement à la compétence de grand maitre.")
                       say(string.format("%s arrive au niveau %d.", skill_name, skill_level-30+2))
                       say_reward("Vous augmentez votre niveau avec succès!")
                   end

 

Essaye d'ajouter  ça :

 

 

pc.set.skill_level(49)

 

 

J'ai aucune idée de si ça va marcher, je touche très peu au lua

090100logo.png 090149logo-4-bis.png

Link to comment
  • 0
  • Bot

quest stone begin
   state start begin
	when 50513.use begin
		if pc.get_skill_group() == 0 then
			say("Vous pouvez passez vos skills")
			say("directement en P grâce à cette super pierre d'âme !")
			return
		end

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

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

		say_title("Super pierre d'âme: ")
		say("Choisissez la compétence à augmenter")
		say("en P.")
		say("")

		local menu_list = {}
		table.foreach(name_list, function(i, name) table.insert(menu_list, name) end)
		table.insert(menu_list, "Cancel") 
		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 title=string.format("Super Pierre d'ame: %s", skill_name)

		say_title(string.format("%s", title))
		say("")
		say("L'entraînement d'une compétence en P")
		say("est très difficile mais ici vous aurez pas")
		say("de difficulté car c'est à 100%.")
		say("")
		say_reward("L'augmentation de la compétence ne coûte")
		say_reward("pas de points de grade.")	
		say("")

		local s=select("Continuer", "Quitter")	

		if s==2 then
			return
		else
			if pc.count_item("50513") == 0 then
				say("La pierre d'âme va disparaître de votre")
				say("inventaire.")
				return
			end

			pc.set_skill_level(skill_vnum, 40)
			say_title(string.format("%s", title))
			say("")
			say("Félicitations, votre compétence est maintenant")
			say("parfaite.")
			say("")
			item.remove()
		end
	end

	function BuildGrandMasterSkillList(job, group)

		GRAND_MASTER_SKILL_LEVEL = 30
		PERFECT_MASTER_SKILL_LEVEL = 40

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

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

			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}
	end
end
end

 

Source : Sparkk

 

 

J'ai plus ou moins essayé de la traduire,

090100logo.png 090149logo-4-bis.png

Link to comment


  • Flux d'Activité

    1. 38

      Rodnia.net | PVM | International | The Great Conqueror |

    2. 0

      [JAVA] Starloco

    3. 0

      Recherche CMS arkalys 2021

    4. 0

      AresiaCMS

    5. 62

      [CMS] Acamar Cms

    6. 3

      Éditeur Item 2.43 à 2.53

  • Recently Browsing

    • No registered users viewing this page.

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.