Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ---------------------------
- -- Metin 2 - Grotte de l'Exil - Beran-Setaou
- -- By Dj o0O Loic O0o ©
- -- Changement de quelqes fonctions (spawn de beran) par Galet & Gurgarath
- -- Toute copie non autorisée est interdite !
- ---------------------------
- quest skipia_boss_donjon begin
- state start begin
- when 30121.chat."Combattre Beran-Setaou." begin
- --- l
- say_title(""..mob_name(30121).." :")
- say("Pour entrer dans le Temple de Beran-Setaou, j'ai")
- say("besoin de 3 "..item_name(30179))
- say_item_vnum(30179)
- say("Avez-vous 3 "..item_name(30179).."?")
- local s = select("Oui", "Non")
- if 2==s then
- return
- elseif 1==s then
- if pc.count_item(30179) >= 3 then
- --- l
- say_title(""..mob_name(30121).." :")
- say("Vous avez les 3 clés en spirale, je vous envoie")
- say("dans le Temple de Beran-Setaou, faite très")
- say("attention ! ")
- wait()
- pc.remove_item(30179, 3)
- d.join(75)
- d.spawn_mob(IDDELAMETIN, x, y, 20, true, 1) -- Spawn de la metin
- d.set_unique("beran", d.spawn_mob(2493, 183, 173, 20, true, 1)) -- Mise en place du mob unique, beran
- d.unique_set_maxhp("beran", 5000000) -- Définir (enfin, redéfinir) le max_hp du beran, sur un mob_proto aléatoire "5000000" (comme c'est non testé, aucune idée si c'est nécéssaire)
- d.unique_set_hp("beran", 5000000) -- Rebelotte avec les pv normaux, afin de faire un effet de pourcentage
- notice_all("Le groupe de "..pc.name.." tente d'affronter le Beran-Setaou.")
- else
- --- l
- say_title(""..mob_name(30121).." :")
- say("Vous avez "..pc.count_item(30179).." "..item_name(30179).." sur 3.")
- sammeln = 3 - pc.count_item(30179)
- say("Il vous manque encore "..sammeln.." "..item_name(30179)..".")
- say_item_vnum(30179)
- say("Revenez quand vous les aurez toutes.")
- end
- end
- end
- when kill with npc.get_race() == IDDELAMETIN and not d.is_unique_dead("beran") begin -- La formule de déclaration du kill via le trigger "kill" est préférable dans les files sans correction (sources) de la double détente, du coup cette version est fonctionnelle et privilégiée pour que ça fonctionne chez le plus de monde. Vérification que le mob tué n'est pas le mob unique et application du reste
- d.spawn_mob(IDDELAMETIN, x, y, 20, true, 1) -- Seconde metin, remplaçant la précédente
- d.unique_set_hp("beran", (d.unique_get_hp_perc("beran")-10)) -- Beran subit une perte de Pv de 10% (en toute logique) (si ça ne fonctionne pas, essayez la commande plus bas)
- --d.unique_set_hp("beran", math.max(1, (d.unique_get_hp_perc("beran")-10))*10000)
- end
- when 30121.chat."Qu'est ce que c'est que ce portail ?" with pc.get_map_index() == 73 begin
- --- l
- say_title(""..mob_name(30121).." :")
- say("Ce portail mène dans l'antre du dragon")
- say("ténébreux, Beran-Setaou le Dieu déchu. Il est")
- say("complètement inactif depuis quelques temps ... Je")
- say("suppose qu'il dort pour régénérer ses forces.")
- end
- when login with pc.get_map_index() >= 750000 and pc.get_map_index() < 760000 begin
- d.notice("Bienvenue à l'instance de Beran Setaou")
- d.notice("Vous avez 30 minutes pour le vaincre")
- clear_server_timer("timerberan", d.get_map_index())
- clear_server_timer("tpberan", d.get_map_index())
- clear_server_timer("temple_end", d.get_map_index())
- server_timer("timerberan", 1800, d.get_map_index())
- d.setf("instanceberan", 0)
- end
- when tpberan.server_timer with pc.get_map_index() >= 750000 and pc.get_map_index() < 760000 begin
- d.exit_all()
- end
- when logout with pc.get_map_index() >= 750000 and pc.get_map_index() < 760000 begin
- warp_to_village()
- end
- when kill with npc.get_race() == 2493 and pc.get_map_index() >= 750000 and pc.get_map_index() < 760000 begin
- notice_all("Félicitations ! "..pc.name.." a terrassé le dragon bleu !")
- --- l
- say("Félicitations ! Beran-Setaou est vaincu ! Vous")
- say("allez être téléporté devant le Temple dans 60")
- say("secondes.")
- d.setf("instanceberan", 1)
- kill_all_in_map(75)
- server_timer("temple_end", 60, d.get_map_index())
- end
- when temple_end.server_timer begin
- d.exit_all()
- end
- when timerberan.server_timer with pc.get_map_index() >= 750000 and pc.get_map_index() < 760000 begin
- notice_all(""..pc.get_name().." et son équipe n'ont pas vaincu Beran")
- server_timer("tpberan", 30, d.get_map_index())
- d.notice("Fin de l'instance, vous avez échoué !")
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment