Jump to content
×
×
  • Create New...
  • 0

Exp sur des joueurs


Link

Question

Bonjour à tous,

 

Je souhaiterais avoir une quête qui, lorsque l'on kill un joueur en pvp, elle nous donne de l'exp. Le problème c'est que niveau quêtes je ne m'y connais pas trop; quelqu'un pourrait-il m'aider éventuellement à avoir cette quête svp ? Je remercie d'avance la personne qui se dévouera. 

 

Cordialement, Link.

Link to comment

19 answers to this question

Recommended Posts

  • 0
  • Modérateur

Voilà un truc qui ferait l'affaire

quest une_super_quete begin
	state start begin
		when kill with npc.is_pc() begin
			local enemy_id = pc.get_player_id()
			-- start select
			local s = pc.select(npc.get_vid())
			local enemy_name = pc.get_name()
			local enemy_level = pc.get_level()
			pc.select(s)
			-- end select
			
			-- tu regardes si la victime n'est pas la même que la dernière personne tuée pour éviter les abus
			if pc.getqf("last_victim") ~= enemy_id then
  				difference = math.abs(pc.get_level() - enemy_level)
  				-- le 10 correspond à la difference de level entre toi et ton ennemi
				if difference <= 10 then
					notice("Vous avez tué "..enemy_name.." level "..enemy_level..".")
					-- soit pc.give_exp2 qui donne un nombre précis d'exp
					pc.give_exp2(9999999)
					-- soit pc.give_exp_perc qui donne un pourcentage d'exp
					pc.give_exp_perc(10)
					-- il faut que tu commentes l'un des deux

					-- et tu enregistres le dernier tué pour éviter la triche
					pc.setqf("last_victim", enemy_id)
					return
				end
  			else
  				return
  			end
		end
	end
end

 

Je n'ai pas testé mais je me suis relu plusieurs fois et je pense que c'est bon.

  • J'adore 1
Link to comment
  • 0

Sujet a fermé quête fonctionnel je te remercie de ton aide @_Sufhal vraiment je te met un +1 ;)

 

EDIT: y'aurais moyens de faire une restriction autre que celle ci, car je crois que ça pose un problème quand je tue quelqu'un d'autre que la personne précédente et que je reviens ça ne marche pas, je ne prends pas d'exp 

Edited by Link
Link to comment
  • 0
quest une_super_quete begin
	state start begin
		when kill with npc.is_pc() begin
			-- start select
			local enemy_id = pc.get_player_id()
			local s = pc.select(npc.get_vid())
			local enemy_name = pc.get_name()
			local enemy_level = pc.get_level()
			pc.select(s)
			-- end select
			
			-- tu regardes si la victime n'est pas la même que la dernière personne tuée pour éviter les abus
			if pc.getqf("last_victim") ~= enemy_id then
  				difference = math.abs(pc.get_level() - enemy_level)
  				-- le 10 correspond à la difference de level entre toi et ton ennemi
				if difference <= 10 then
					notice("Vous avez tué "..enemy_name.." level "..enemy_level..".")
					-- soit pc.give_exp2 qui donne un nombre précis d'exp
					pc.give_exp2(9999999)
					-- soit pc.give_exp_perc qui donne un pourcentage d'exp
					pc.give_exp_perc(10)
					-- il faut que tu commentes l'un des deux

					-- et tu enregistres le dernier tué pour éviter la triche
					pc.setqf("last_victim", enemy_id)
					return
				end
  			else
  				return
  			end
		end
	end
end

Comme ça du coup ?

 

EDIT: Solution donné par @antok merci sujet à lock

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


  • Flux d'Activité

    1. 3

      Éditeur Item 2.43 à 2.53

    2. 0

      Grand Fantasia sur serveur Aura Kingdom

    3. 1

      Emulateur 2.43 X4

    4. 3

      Core Download - Journal des modifications

  • 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.