Jump to content

[PEDIDO] Quest de leveo por pvp


alexfire5

Mensajes recomendados

Necesito una quest de leveo por pvp. El nivel maximo de mi servidor es 170, y quiero que desde el 150 hasta el 170, leveen matando otros pjs. Os dejo una lista de cosas que quiero que haga la quest:

 

1.- Si el pj es lvl 150, no recibir exp de mobs.

 

2.- Si el pj es lvl 150, recibir 200kk de exp por cada jugador de DISTINTO reino matado, y 100kk por cada jugador de su MISMO reino matado.

 

2.1.- Reducir la exp recibida a la mitad cada vez que el pj mate a otro jugador de manera consecutiva (1º muerte: 200kk, 2º muerte: 100kk, 3º muere: 50kk) Con esto conseguimos reducir el numero de pjs que se "alian" para levear matandose. Nota: Aunque el pj muera, hasta pasados 5 minutos no debe volver a recibir la recompensa de exp inicial.

 

3.- Si la ip del pj que ha muerto, coincide con la que lo ha matado, reducir 200kk de exp al jugador que ha matado. Con esto conseguimos que no se hagan segundos pjs para levear, y darles una sancion automatica cada vez que lo hagan.

 

4.- Si el pj que ha muerto es menor de lvl 90, el que ha matado no recibe exp.

 

5.- Desactivar la quest en mapas de leveo, como pueden ser gruta, arañas... Asi evitamos que los lvl 150+ vayan a molestar a otros pj mientras levean.

 

Espero que todo esto sea posible de hacer, y si ya esta creado, poned link porfavor, os lo agradeceria.

 

 

Enlace para comentar
Compartir en otros sitios

--[[needed functions:	npc.get_vid() -> 
Debes iniciar sesión para ver el contenido del enlace en esta publicación.
pvplevelup begin state start begin when kill begin -- 1 if not npc.is_pc() and pc.level >= 150 then -- killing mobs pc.give_exp2(-pc.get_exp()) end -- 5 local canContinue = true local mapdict = {idx1, idx2, idx3, idx4, idx5, idx6} -- levelup map indexes for _, v in ipairs(mapdict) do if pc.get_map_index() == v then canContinue = false break end end if pc.level >= 170 or canContinue == false then return end if npc.is_pc() then -- killing other players -- 4 local oppvid = pc.select(npc.get_vid()) local opplvl, oppid = 0, 0 if oppvid == 0 then return end opplvl, oppid = pc.level, pc.get_player_id() pc.select(oppvid) if opplvl < 90 or get_time() < pc.getqf("delay") then return end -- 2 local expvalue = tonumber(pc.getqf("killed_id") ~= oppid and 200000000 or 200000000/pc.getqf("killcount")+1) pc.setqf("killed_id", oppid) pc.setqf("killcount", tonumber(pc.getqf("killcount") == 2 and 0 or pc.getqf("killcount")+1)) pc.setqf("delay", get_time()+60*5) pc.give_exp2(expvalue) end end endend
Enlace para comentar
Compartir en otros sitios

  • Dilong locked this tema
Guest
Este tema está cerrado a otras respuestas.
  • Recientemente navegando por este tema   0 miembros

    • No hay usuarios registrados visitando esta página.
×
×
  • Crear nuevo...