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

Quête bonus pour royaume


Hmz

Question

[Message d'introduction]

 

Bonjour,

 

J'ai besoin d'aide merci à vous

 

Explication: La quête permet de choisir entre trois bonus pour sont royaume pendant 1h. L'objet disparait ensuite.

 

Voici la quête:

 

quest bonus_empire begin
state start begin
       when 40001.use begin
		say_title("Gestion du bonus :")
		say("Je suis l'objet qui te permettera,")
		say("de donner un bonus à ton royaume.")
		say("Temp du bonus: 1H")
		say("Bon geste !")
		say("Je vous laisse le choix :")
		local bonus=select("10% cc", "5% DH", "10% cp", "Quitter")
		if bonus == 1 then
			say_title("10% cc")
			say("Temp du bonus: 1H.")
		elseif bonus == 2 then
			say_title("5% DH")
			say("Temp du bonus: 1H.")
		elseif bonus == 3 then
			say_title("10% cp")
			say("Temp du bonus: 1H.")
		end
	end
end
end

 

 

 

Question/aide: J'ai fais l'affichage, mais je n'est pas les base pour créer les bonus et le temps enfin je vois pas comment faire.

 

Hmz,

 

 

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 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
  • Retraité

Bien que loin d'être parfaite, la quête de base devrait ressembler à ça :

 

quest bonus_empire begin
    state start begin
        when 40001.use begin
            say_title("Gestion du bonus :")
            say("Je suis l'objet qui te permettera,")
            say("de donner un bonus à ton royaume.")
            say("Temp du bonus: 1H")
            say("Bon geste !")
            say("Je vous laisse le choix :")
            local bonus=select("10% cc", "10% cp", "5% DH", "Quitter")
            if bonus == 1 then
                say_title("10% cc")
            elseif bonus == 2 then
                say_title("10% cp")
            elseif bonus == 3 then
                say_title("5% DH")
            else
                return
            end
            say("Temp du bonus: 1H.")
            if game.get_event_flag("duree_bonus_empire_"..pc.get_empire()) > get_time() then
                say("Il y a déjà un bonus en cours dans votre royaume !")
                return
            end
            puissance = {10, 10, 5}
            game.set_event_flag("duree_bonus_empire_"..pc.get_empire(), get_time()+3600)
            game.set_event_flag("bonus_empire_"..pc.get_empire(), bonus)
            affect.add_collect(bonus+14, puissance[bonus], 3600)
            item.remove()
        end
        
        when login begin
            affect.remove_collect(15, 10)
            affect.remove_collect(16, 10)
            affect.remove_collect(17, 5)            
            duree, heure = game.get_event_flag("duree_bonus_empire_"..pc.get_empire()), get_time()
            if duree > heure then
                puissance, bonus = {10, 10, 5}, game.get_event_flag("bonus_empire_"..pc.get_empire())
                affect.add_collect(bonus+14, puissance[bonus], duree-heure)
            end
        end
    end
end

  • Love 1
Lien vers le commentaire
Partager sur d’autres sites

  • 0

Merci à toi pour ta quête je crois qu'il faut fignoler quelque point:

 

Hidden Content

    Give reaction to this post to see the hidden content.

Modifié par Funky Emulation
Core X - External 2 Internal
Lien vers le commentaire
Partager sur d’autres sites

  • 0

quest bonus_empire begin
   state start begin
       when 31080.use begin
           say_title("Gestion du bonus :")
           say("Je suis l'objet qui te permettera,")
           say("de donner un bonus à ton royaume.")
           say("Temp du bonus: 1H")
           say("Bon geste !")
           say("Je vous laisse le choix :")
           local bonus=select("10% cc", "10% cp", "5% DH", "Quitter")
           if bonus == 1 then
               say_title("10% cc")
               notice_all(""..pc.get_name().." à donner 10% cc à sont royaume.")	
           elseif bonus == 2 then
               say_title("10% cp")
               notice_all(""..pc.get_name().." à donner 10% cc à sont royaume.")	
           elseif bonus == 3 then
               say_title("5% DH")
               notice_all(""..pc.get_name().." à donner 10% cc à sont royaume.")	
           else
               return
           end
           say("Temp du bonus: 1H.")
           if game.get_event_flag("duree_bonus_empire_"..pc.get_empire()) > get_time() then
               say("Il y a déjà un bonus en cours dans votre royaume !")
               return
           end
           puissance = {10, 10, 5}
           game.set_event_flag("duree_bonus_empire_"..pc.get_empire(), get_time()+3600)
           game.set_event_flag("bonus_empire_"..pc.get_empire(), bonus)
           affect.add_collect(bonus+14, puissance[bonus], 3600)
           pc.remove_item(40001,1)
       end
       
       when login begin
           affect.remove_collect(15, 10)
           affect.remove_collect(16, 10)
           affect.remove_collect(17, 5)            
           duree, heure = game.get_event_flag("duree_bonus_empire_"..pc.get_empire()), get_time()
           if duree > heure then
               puissance, bonus = {10, 10, 5}, game.get_event_flag("bonus_empire_"..pc.get_empire())
               affect.add_collect(bonus+14, puissance[bonus], duree-heure)
           end
       end
   end
end 

 

Voila résolut merci à toi.

Je voulais juste savoir si ont peut supprimer le bonus qui est en cours via un GM ?

 

Merci

Lien vers le commentaire
Partager sur d’autres sites

  • 0
  • Retraité

Les notice_all sont mal placés, j'en ai profité pour amélioré un peu tout ça :

 

quest bonus_empire begin
    state start begin
        when 40001.use begin
            say_title("Gestion du bonus :")
            say("Je suis l'objet qui te permettera,")
            say("de donner un bonus à ton royaume.")
            say("Temp du bonus: 1H")
            say("Bon geste !")
            say("Je vous laisse le choix :")
            choix = {"10% cc", "10% cp", "5% DH", "Quitter"}
            local bonus=select_table(choix)
            if bonus > 3 then return end
            say_title(choix[bonus])
            say("Temp du bonus: 1H.")
            if game.get_event_flag("duree_bonus_empire_"..pc.get_empire()) > get_time() then
                say("Il y a déjà un bonus en cours dans votre royaume !")
                return
            end
            notice_all(pc.get_name().." a donné "..choix[bonus].." à son royaume !")
            puissance = {10, 10, 5}
            game.set_event_flag("duree_bonus_empire_"..pc.get_empire(), get_time()+3600)
            game.set_event_flag("bonus_empire_"..pc.get_empire(), bonus)
            affect.add_collect(bonus+14, puissance[bonus], 3600)
            pc.remove_item(40001, 1)
        end
        
        when login begin
            affect.remove_collect(15, 10)
            affect.remove_collect(16, 10)
            affect.remove_collect(17, 5)            
            duree, heure = game.get_event_flag("duree_bonus_empire_"..pc.get_empire()), get_time()
            if duree > heure then
                puissance, bonus = {10, 10, 5}, game.get_event_flag("bonus_empire_"..pc.get_empire())
                affect.add_collect(bonus+14, puissance[bonus], duree-heure)
            end
        end
    end
end

 

Pour le supprimer avec un gm il faut rentrer la commande :

/event duree_bonus_empire_X 0

Il faut remplacer X par l'empire que tu veux, il faut donc faire une fois la commande pour chaque royaume.

Après, il est toujours possible de bloquer les bonus et l'item avec une commande plus simple mais il faut modifier la quête en conséquence.

Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant


  • brilliantdiscord_widget
  • Flux d'Activité

    1. 6

      problème de connexion à mon serveur local (je suis débutant dans ce genre d'entreprise )

    2. 2

      problème de lancement serveur

    3. 9
    4. 0

      [PVM/PVP] ATLAX2 - EASY PLAY

    5. 2

      problème de lancement serveur

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.