Jump to content
×
×
  • Create New...
  • 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.

Link to comment
  • Answers 13
  • Created
  • Last Reply

Top Posters For This Question

Top Posters For This Question

13 answers to this question

Recommended Posts

  • 0
  • Administrateur

Hello,

 

Si tu regardes à la ligne 1790,  tu peux voir qu'il y a un problème au niveau de ta condition.

Elle n'est dans aucun bloc, du coup ça compile pas.

 

AnneaudeThor.quest:1790:expecting 'when' or 'function'

Link to comment
  • 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 :)

Link to comment
  • 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. :/

Link to comment
  • 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

Link to comment
  • 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. ^^

Link to comment
Guest
This topic is now closed to further replies.


  • Flux d'Activité

    1. 2

      Site internet (CMS) compatible avec tous les emulateurs 1.29 (Azuriom)

    2. 2

      Site internet (CMS) compatible avec tous les emulateurs 1.29 (Azuriom)

    3. 84

      Granny

    4. 32

      Rodnia.net | PVM | International | The Great Conqueror |

    5. 16

      Map The OpenWorld Metin2

    6. 0
    7. 6

      [V2]Gurgarath Resurgence

  • Recently Browsing

    • No registered users viewing this page.

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.