Aller au contenu

Nouveau membre ?! Pense à te présenter pour accéder au contenu du forum !

New member ?! Introduce yourself to get access to the forum !

  • 0
_Sufhal

en cours [RÉSOLU — QUEST] Rejoindre une instance en cours

Question

Bonjour à tous,

 

Je prépare actuellement des instances sur mon serveur sous files 2014.

Pour le donjon en lui même pas de problème (bien que je ne puisse pas faire d'instance dans les donjons des singes, pourquoi ?) avec les fonctions dungeon. , mais lorsqu'une personne du groupe sort de l'instance alors que les autres y sont encore, il lui est impossible de les rejoindre... 

Comment peut-on faire ?

 

Merci d'avance pour vos réponses,

Cordialement, Sufhal

Partager ce message


Lien à poster
Partager sur d’autres sites

7 réponses à cette question

Messages recommandés

  • 0

Quand tu crées une instance, tu as un ID d'instance a créer, tu dois le garder en mémoire et le réutiliser plus tard.

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Avec un party.setf ? ou un truc dans le style ?

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Avec party.getf("nom_de_ton_index") tu récupères l'index qui a été créé au préalable (avec party.setf("nom_de_ton_index", d.get_map_index()) ) qui va te renvoyer un map_index correspondant.

à toi d'ajouter tes coordonnées dans un pc.warp(x, y, ton_index).

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Avec party.getf("nom_de_ton_index") tu récupères l'index qui a été créé au préalable (avec party.setf("nom_de_ton_index", d.get_map_index()) ) qui va te renvoyer un map_index correspondant.

à toi d'ajouter tes coordonnées dans un pc.warp(x, y, ton_index).

 

 

C'est ce que j'ai fait : 

 

 

quest sufhal_instance_50 begin   state start begin           when 20004.chat."Salle d'entrainement 50" begin           say_npc_name()           say("Vous voulez vous entrainer ?")           say("")           local s = select("Yep", "Fermer")           if s == 2 then               return           end           if party.is_party() then               if not party.is_leader() then                   say_npc_name()                   say("Vous n'êtes pas le chef du Groupe!")                   say("")               else                       say_npc_name()                   say("Vous allez être téléporté dans quelques instants,")                   say("votre groupe vous suivera.")                   say("")                   party.chat("Vous êtes sur le point d'entrer dans la salle.")                   notice_all("Le groupe de "..pc.get_name().." est entré dans la salle.")                   wait()                   d.join(107)                   party.setf("training_map_index",d.get_map_index())               end           end       end       when 20004.chat."Rejoignez votre groupe" with (party.is_party() and d.find(party.getf("training_map_index"))) begin           local cord = set.base_cord           local n = party.getf("training_map_index")           say_npc_name()           say("Voulez-vous rejoindre votre groupe ?")           say("")           local choix = select("Oui", "Non")           if choix == 2 then               return           end           if choix == 1 then               wait()               pc.warp(cord[1]*100,cord[2]*100,107)           end       end         when login with pc.get_map_index()>=750000 and pc.get_map_index()<760000 begin           local s = pc.get_empire()           if s==1 then               pc.set_warp_location (1, 4693, 9642)           elseif s==2 then               pc.set_warp_location (21, 557, 1579 )           elseif s==3 then               pc.set_warp_location (41, 9696 , 2784)           end       end             when 101.kill with pc.get_map_index()>=75000 and pc.get_map_index()<760000 begin           notice_all("Le groupe de "..pc.get_name().." va sortir de la salle.")           chat("Vous allez etre téléporté dans 30secondes.")           d.set_exit_all_at_eliminate(30)       end         endend

 

 

La map en question c'est le donjon des singes (facile) mais je ne suis pas téléporté... une idée du problème ?

 

Merci de tes réponses Kameyu  :smiley_8:

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Parce que tu mets pas le bon ID dans ton pc.warp. Tu dois mettre l'id qui est renvoyé par: party.getf("training_map_index"). Soit "n" dans ton code.

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Effectivement, je l'ai corrigé. Merci pour la remarque !

 

Cependant ça ne téléportait toujours pas mais il se trouve que la commande d.join() empêche de se téléporter sur les maps considérés comme des donjons (donjons des singes, v1, v2, etc...) j'ai changer de map et maintenant tout fonctionne !

Le problème est donc résolu :)

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

J'archive :P

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.

×

Information importante

By using this site, you agree to our Conditions d’utilisation.