Quest soul stone a.k.a Piatra spirit/Curcubeu

Avatar utilizator
EkaVibe
Utilizator interzis !

Utilizator interzis !
Mesaje: 54
Membru din: 11 Iun 2017, 18:10
Server: In Progress.
Regat: Jinno
Aprecieri: 12  
Mulţumiri: 14  
Medalii

Principiul este simplu, elementul se comporta ca o Piatra Spirit/curcubeu normala, dar vă oferă o abilitate perfectă cu 100% șansă și nici o pierdere de rang.
Se poate edita sansa de reusita a perfectionarii unei magii. (Skill)

Cod: Selectaţi tot

quest super_ss begin
    state start begin
		when Your_Item_ID.use begin
			if pc.get_skill_group() == 0 then
				say("None of your skills are available to")
				say("try to increase their level to Perfect Master")
				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 Soul Stone: ")
			say("Choose the Skill you want to upgrade")
			say("to Perfect Master.")
			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 Soul Stone: %s", skill_name)

			say_title(string.format("%s", title))
			say("")
			say("Perfect Master training is very rare here")
			say("It's a chance you have this stone with you.")
			say("It is very rare.")
			say("")
			say_reward("The upgrade will not reduce your Rank")
			say_reward("thanks to this special stone.")	
			say("")
			
			local s=select("Continue", "Cancel")	

			if s==2 then
				return
			else
				if pc.count_item("50526") == 0 then
					say("Your Soul Stone seems to have disappeared from")
					say("your inventory. Try again later with a Super SS.")
					return
				end

				pc.set_skill_level(skill_vnum, 40)
				say_title(string.format("%s", title))
				say("")
				say("Congratulations! You did it! Your skill is")
				say("now Perfect Master.")
				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
Nu uitati sa modificat vnm-ul itemului.

Tutorial instalare quest:
1. Salvaţi conţinutul quest-ului într-un fişier text numit de exemplu nume_quest.quest .
2. Vă conectaţi la filezilla / winscp şi întrati în /usr/home/game/share/locale/germany/quest (depinde ce server aveţi).
3. Îl puneţi acolo (să fie .quest) şi da-ţi permisiuni 777.
4. Te loghezi în FreeBSD / putty şi scrii în felul următor: cd /usr/home/game/share/locale/germany/quest apoi ./qc nume_quest.quest
5. Intraţi pe server şi scrieţi /reload q .
6. Testaţi quest-ul .
Pentru acest mesaj, EkaVibe a primit 3 (de) mulţumiri
skristy96 • donwe31 • alinjuve23
Afișează semnătura
Răspunde
Răspunsuri
7
Vizualizări
453
Răspunsuri
0
Vizualizări
48
Răspunsuri
6
Vizualizări
3643
Răspunsuri
2
Vizualizări
1574

Înapoi la “Quest-uri”

  • Informaţie
  • Cine este conectat

    Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 3 vizitatori