Aller au contenu
Top-Metin2.org - Vous êtes à la recherche d'un serveur Metin 2 ? ×
×
×
  • Créer...
  • 0

probleme de quette


skulldeath

Question

Bonjour tout le monde,

 

je voudrais savoir si il est possible avec la commande de quête pc.get_empire () de bloquer le pvp entre 2 empire sur une map bien précise mais pas avec le 3eme un system de 2 vs 1 et si oui comment le codé.

 

et 2eme question je voudrais que la quette soit reserver GM donc avec pc.is_gm() mais que sa envoie une quette au perso joueur comme une confirmation pour participer a un event j'aimerais des indication sur comment coder cette parti aussi car j'ai un problème les joueur ne reçoivent pas la quette je suis passer par la commande set_state aurait-il fallu la commande de flag ?

 

je voudrais éviter de passer par un pnj ou par un tiem.

 

Je vous remercie par avance.

Lien vers le commentaire
Partager sur d’autres sites

  • Réponses 8
  • Créé
  • Dernière réponse

Meilleurs contributeurs dans cette question

Meilleurs contributeurs dans cette question

8 réponses à cette question

Messages recommandés

  • 0

Bonjour,

 

je voudrais savoir si il est possible avec la commande de quête pc.get_empire () de bloquer le pvp entre 2 empire sur une map bien précise mais pas avec le 3eme un system de 2 vs 1 et si oui comment le codé.

 

Il ne me semble pas que ça soit possible d'empêcher un empire de frapper un autre en utilisant une quête. Par contre, tu peux faire un système de "contournement de problème" : quand le joueur tue un autre joueur d'un empire qu'il doit pas attaquer, il se fait téléporter je ne sais où... ou il perd des items enfin des trucs comme ça...

 

et 2eme question je voudrais que la quette soit reserver GM donc avec pc.is_gm() mais que sa envoie une quette au perso joueur comme une confirmation pour participer a un event j'aimerais des indication sur comment coder cette parti aussi car j'ai un problème les joueur ne reçoivent pas la quette je suis passer par la commande set_state aurait-il fallu la commande de flag ?

 

Je ne suis pas sur d'avoir bien compris. D'après ce que j'ai compris, tu souhaites en gros qu'un perso GM puisse "lancer" une quête, un event j'imagine pour tous les autres joueurs du serveur ?

Si c'est le cas, en effet, c'est via un event_flag qu'il faut procéder. Le problème est qu'il faudra un élément déclencheur pour tous les joueurs.

Je m'explique : pour que le GM puisse lancer la quête, il faut par exemple qu'il actionne un item ou parle à un PNJ, pour lancer un état de quête qui va s'occuper de passer l'event_flag à 1 par exemple.

Mais ça ne suffit pas. Il faut ensuite que les joueurs, les autres personnages, fassent une action pour qu'on puisse faire leur quête, car sans déclencheur rien ne se passera.

Lien vers le commentaire
Partager sur d’autres sites

  • 0
Il ne me semble pas que ça soit possible d'empêcher un empire de frapper un autre en utilisant une quête. Par contre, tu peux faire un système de "contournement de problème" : quand le joueur tue un autre joueur d'un empire qu'il doit pas attaquer, il se fait téléporter je ne sais où... ou il perd des items enfin des trucs comme ça...

 

je vois un system de if qui dit que si l'empire 1 kill l'empire 3 sa tp je vois bien penser ^^mais sa risque de poser des soucis avec l'idee de ma quette peut-on allier 2 empire avec une quette ou y a t-il un moyen de faire une alliance autrement que avec une quette ?

 

Je ne suis pas sur d'avoir bien compris. D'après ce que j'ai compris, tu souhaites en gros qu'un perso GM puisse "lancer" une quête, un event j'imagine pour tous les autres joueurs du serveur ?

 

parfaitement oui

 

Si c'est le cas, en effet, c'est via un event_flag qu'il faut procéder. Le problème est qu'il faudra un élément déclencheur pour tous les joueurs.

Je m'explique : pour que le GM puisse lancer la quête, il faut par exemple qu'il actionne un item ou parle à un PNJ, pour lancer un état de quête qui va s'occuper de passer l'event_flag à 1 par exemple.

Mais ça ne suffit pas. Il faut ensuite que les joueurs, les autres personnages, fassent une action pour qu'on puisse faire leur quête, car sans déclencheur rien ne se passera.

 

ok ma quette en faite je l'ait mis en letter comme une quette de chasse donc elle se déclenche si je clique dessus et que je fait lancer l'event par contre je ne suis pas passer par l'event flag j'ai mis une condition set_state apres avoir lancer l'event sa envoie dans cette state qui elle envoie une letter au joueur pour qu'il puisse aller a l'event je voudrais éviter le pnj si possible.

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Bah... Admettons que tu veuilles allier les jaunes et les rouges contre les bleus :

 

when kill with pc.get_empire() != npc.get_empire() begin
       if pc.get_empire() != 3 then
               if npc.get_empire != 3 then
                       pc.warp(x, y)
                       notice("pas bien")
               end
       end
end

 

 

set_state() ne s'appliquera qu'au personnage sélectionné qui accompli la quête donc le GM :)

 

Pour qu'une lettre ou quoi que ce soit s'affiche chez les joueurs, t'es obligé de leur faire faire quelque chose que tu vas pouvoir détecter via les quêtes, donc parler à un PNJ, poser un item, tuer quelqu'un, se connecter, ...

 

Théoriquement, il y a une autre solution mais elle est carrément barbare et ça m'étonnerait qu'elle fonctionne correctement. En utilisant le module mysql, tu sélectionnes tous les persos et pour chacun tu test s'il est co, et si oui tu fais afficher la lettre. Je te laisse imaginer les ressources que ça demande niveau serveur...

Lien vers le commentaire
Partager sur d’autres sites

Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.


Information importante

Conditions d’utilisation / Politique de confidentialité / Règles / Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.