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

[Quête] Anneau du Staff + Bannir en jeu


FlavDark

Question

Bonjour,

 

J'ai installé la quête de l'anneau de thor (anneau du staff) disponible ici et j'ai voulu y ajouter (fusionner) une autre quête qui est celle permettant de bannir un joueur en jeu disponible ici.

 

Voici ce que ça donne :

 

http://pastebin.com/qjsfkqLJ

 

 

Mais quand je compile mes quêtes j'obtient cette erreur :

QUEST : AnneaudeThor
STATE : start
WHEN  : 40003.use
        with pc . is_gm ( )
WHEN  : login or
WHEN  : enter
        with game . get_event_flag ( "metin_boss" ) > 0 and pc . getqf ( "declencheur" ) == 1 and pc . is_gm ( )
WHEN  : test_buff.timer
AnneaudeThor.quest:1790:expecting 'when' or 'function'
Abort trap (core dumped)

 

N"étant pas un pro de la quête, je m'en remet à vous ! :/

Merci d'avance.

En postant ma demande d'aide, j'affirme avoir lu et accepté le règlement des demandes d'aides.

Lien vers le commentaire
Partager sur d’autres sites

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

Meilleurs contributeurs dans cette question

Meilleurs contributeurs dans cette question

13 réponses à cette question

Messages recommandés

  • 0

Tout d'abord, merci beaucoup pour ta réponse, cependant comme dis plus haut je suis loin d'être débrouillard côté quête ! ^^

Quelqu'un aurait la délicatesse de me dire qu'elle est la condition manquante approprié pour faire fonctionner cette quête ?

 

Merci :)

Lien vers le commentaire
Partager sur d’autres sites

  • 0

J'ai ajouté un "when" ce qui donne à la fin :

        when 40003.use with pc.is_gm() begin

           elseif 5==a then
           
               say_title("Anneau du Staff :")
               say("")
               say("Entrer le nom du joueur à bannir:")
               local name = input()
               if name=="" or name=="0" or name=""..pc.name.."" then --- Vérifie si l'input box est correctement remplit
                   chat("Nom invalide")
               return
               end
               local player_check = mysql_select("SELECT COUNT(*) from player.player WHERE name='"..name.."' LIMIT 1;") --- Vérification de la validité du nom
               if player_check[1][1] == "0" then
                   chat("Ce nom n'est pas attribué")
               return
               end
               local check_acc_id = mysql_select("SELECT account_id from player.player where name='"..name.."' LIMIT 1;") --- Récupération du l'ID du compte (ex : 420)
               local acc_id = check_acc_id[1][1]+1-1
               local ban = mysql_select("SELECT login from account.account where id='"..acc_id.."' LIMIT 1;") 
               mysql_notselect("UPDATE account.account SET status='BLOCK' WHERE id='"..acc_id.."' LIMIT 1;") --- Bannissement du compte
               chat("Le joueur "..name.." (ACC ID :"..ban[1][1]..") a correctement été bannis")
               command("dc "..name) -- Déconnexion du joueur à bannir
           end
   end
   
end

 

Je n'ai plus d'erreur côté compilation, en revanche la quête ne fonctionne pas, cliquer sur l'item 40003 ne fait rien. :/

Lien vers le commentaire
Partager sur d’autres sites

  • 0
  • Funkiest

Tu peux pas mettre un choix sans choix xD

 

"elseif 5==a then" = a non déclaré, pas de choix, pas de précédents choix, pas de précédent "if"

 

      when 40003.use with pc.is_gm() begin
              say_title("Anneau du Staff :")
              say("")
              say("Entrer le nom du joueur à bannir:")
              local name = input()
              if name=="" or name=="0" or name=""..pc.name.."" then --- Vérifie si l'input box est correctement remplit
                  chat("Nom invalide")
              return
              end
              local player_check = mysql_select("SELECT COUNT(*) from player.player WHERE name='"..name.."' LIMIT 1;") --- Vérification de la validité du nom
              if player_check[1][1] == "0" then
                  chat("Ce nom n'est pas attribué")
              return
              end
              local check_acc_id = mysql_select("SELECT account_id from player.player where name='"..name.."' LIMIT 1;") --- Récupération du l'ID du compte (ex : 420)
              local acc_id = check_acc_id[1][1]+1-1
              local ban = mysql_select("SELECT login from account.account where id='"..acc_id.."' LIMIT 1;")
              mysql_notselect("UPDATE account.account SET status='BLOCK' WHERE id='"..acc_id.."' LIMIT 1;") --- Bannissement du compte
              chat("Le joueur "..name.." (ACC ID :"..ban[1][1]..") a correctement été bannis")
              command("dc "..name) -- Déconnexion du joueur à bannir
  end

 

ça ça doit marcher, enfin, pas dans un nouveau fichier, mais le when est fonctionnel

Lien vers le commentaire
Partager sur d’autres sites

  • 0

C'est super gentil de ta part, mais malheureusement ça ne fonctionne toujours pas ! Je pense que je vais abandonner l'idée tout simplement. :) 

 

Du côté de la compilation j'ai :

QUEST : AnneaudeThor
STATE : start
WHEN  : 40003.use
       with pc . is_gm ( )

Mais l'item n'ouvre pas la quête.

 

Merci quand même. ^^

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.