MariMT2 Posted February 7, 2018 Report Share Posted February 7, 2018 Qué pena la molestia, sé que muchos me dirán busca en Google etc. y entre muchísimas cosas, acepto sus consejos, pero acudí a este medio para pedir ayuda. lo que pasa es que deseo un npc teleport pero aun así buscando las muchísimas quest de distintos foros a la hora de meterla al server simplemente no funcionan por ende opte por pedir ayuda, se que es incomodo y que ustedes también tienen trabajo por hacer como para hacerle el de otro, bueno mil disculpas. Estos son los datos: NPC: 20004 Mapas Thunder: 11664 16779, Limite para entrar Lvl80, yang requerido,10kk ítem requerido para entrar 27992 Cape: 11043 17885, Limite para entrar Lvl90, yang requerido 20kk,ítem requerido para entrar 27993 neprith: 10963 16744 Limite para entrar Lvl100, yang requerido 30kk,ítem requerido para entrar 27994 DISCULPEN LAS MOLESTIAS. Se los agradezco de corazón si alguien me da una manito <3 Link to comment Share on other sites More sharing options...
Neon Posted February 7, 2018 Report Share Posted February 7, 2018 Spoiler quest teleport begin state start begin when 20004.chat."Thunder" begin if pc.get_level > 80 then elseif pc.count_item(27992 ) >= 1 then pc.warp( 1166400, 1677900) pc.changegold(-10000000) pc.remove_item(27992, 1) end end end end Prueba con eso a ver.. no estoy seguro del 100% que funcione... perosi te funciona, solo debes duplicarla para los demas mapas... MariMT2 and tikiwiki 1 1 Link to comment Share on other sites More sharing options...
Dilong Posted February 7, 2018 Report Share Posted February 7, 2018 hace 1 hora, Neon dijo: no estoy seguro del 100% que funcione En lua el simbolo > significa "mayor que:", o sea que si el personaje es un nivel mayor 80 no lo dejara entrar al mapa y sabiendo eso hasta podria entrar al mapa siendo lvl 1 xD Lo mejor es if pc.get_level()== 80 then y pc.count_item(27992 ) >= 1 then por pc.count_item(27992 ) == 1 then y por ultimo falta un "pc.get_gold()< cantidad then" para que la quest avise al personaje que necesita cierta cantidad de yang MariMT2 1 Link to comment Share on other sites More sharing options...
MariMT2 Posted February 7, 2018 Author Report Share Posted February 7, 2018 Muchisimas Gracias por responder AmigosZone! se los agradezco! en ese caso la quest quedaria: quest teleport begin state start begin when 20004.chat."THUNDER" begin if pc.get_level()== 80 then pc.count_item(27992 ) == 1 pc.warp( 1166400, 1677900) pc.changegold(-10000000) pc.remove_item(27992, 1) pc.get_gold()< cantidad then end state start begin when 20004.chat."CAPE" begin if pc.get_level()== 90 then pc.count_item(27993 ) == 1 pc.warp( 1104300, 1788500) pc.changegold(-20000000) pc.remove_item(27992, 1) pc.get_gold()< cantidad then end when 20004.chat."NEPRITH" begin if pc.get_level()== 100 then pc.count_item(27993 ) == 1 pc.warp( 1096300, 1674400) pc.changegold(-30000000) pc.remove_item(27992, 1) pc.get_gold()< cantidad then end end end Link to comment Share on other sites More sharing options...
Dilong Posted February 7, 2018 Report Share Posted February 7, 2018 Spoiler quest text begin state start begin when npcid.chat."texto" begin say("texto") local menu = {"Mapa1","Mapa2","Mapa3","Mapa4","Mapa5","Salir"} local s2 = select_table(menu) local comprobar = { {coord_x,coord_y,10000000,90}, {coord_x,coord_y,20000000,91}, {coord_x,coord_y,30000000,92}, {coord_x,coord_y,40000000,93}, {coord_x,coord_y,50000000,94} } if pc.get_gold() < comprobar[s2][3] then say("error yang") else if pc.get_level() == comprobar[s2][4] then say("error nivel") else pc.warp(comprobar[s2][1],comprobar[s2][2]) pc.changegold(-comprobar[s2][3]) end end end end end end MariMT2 1 Link to comment Share on other sites More sharing options...
MariMT2 Posted February 8, 2018 Author Report Share Posted February 8, 2018 hace 16 horas, Dilong dijo: Debes iniciar sesión para ver el contenido del enlace en esta publicación. Ocultar contenido quest text begin state start begin when npcid.chat."texto" begin say("texto") local menu = {"Mapa1","Mapa2","Mapa3","Mapa4","Mapa5","Salir"} local s2 = select_table(menu) local comprobar = { {coord_x,coord_y,10000000,90}, {coord_x,coord_y,20000000,91}, {coord_x,coord_y,30000000,92}, {coord_x,coord_y,40000000,93}, {coord_x,coord_y,50000000,94} } if pc.get_gold() < comprobar[s2][3] then say("error yang") else if pc.get_level() == comprobar[s2][4] then say("error nivel") else pc.warp(comprobar[s2][1],comprobar[s2][2]) pc.changegold(-comprobar[s2][3]) end end end end end end Dilong muchisimas gracias, tengo una pregunta {coord_x,coord_y,10000000,90}, {coord_x,coord_y,20000000,91}, {coord_x,coord_y,30000000,92}, {coord_x,coord_y,40000000,93}, {coord_x,coord_y,50000000,94} el 10000000 es el yang ? 90 es el lvl? Link to comment Share on other sites More sharing options...
Dilong Posted February 8, 2018 Report Share Posted February 8, 2018 Si MariMT2 1 Link to comment Share on other sites More sharing options...
MariMT2 Posted February 8, 2018 Author Report Share Posted February 8, 2018 hace 52 minutos, Dilong dijo: Si gracia apenas llegu de trabajar la testeo <3 te lo agradezco Link to comment Share on other sites More sharing options...
PACI Posted February 8, 2018 Report Share Posted February 8, 2018 local data = { -- Mapa x y Lvl Gold Item {"Thunder", 11664, 16779, 80, 10000000, 27992}, {"Cape", 11043, 17885, 90, 20000000, 27993}, {"Nephrite", 10963, 16744, 100, 30000000, 27994}, } local options = {} for i = 1, table.getn(data) do table.insert(options, data[i][1]) end table.insert(options, "Cancelar") local sel = select_table(options) if sel == table.getn(options) return end local minLevel = data[sel][4] local neededGold = data[sel][5] local neededItem = data[sel][6] if pc.get_level() < minLevel then say("no level") return elseif pc.get_gold() < neededGold then say("no gold") return elseif pc.count_item(neededItem) < 1 then say("no item") return end pc.change_gold(- neededGold) pc.warp(data[sel][2] * 100, data[sel][3] * 100) Así también igual te sirve, como te parezca más facil. MariMT2 1 Link to comment Share on other sites More sharing options...
MariMT2 Posted February 8, 2018 Author Report Share Posted February 8, 2018 hace 10 minutos, PACI dijo: local data = { -- Mapa x y Lvl Gold Item {"Thunder", 11664, 16779, 80, 10000000, 27992}, {"Cape", 11043, 17885, 90, 20000000, 27993}, {"Nephrite", 10963, 16744, 100, 30000000, 27994}, } local options = {} for i = 1, table.getn(data) do table.insert(options, data[i][1]) end table.insert(options, "Cancelar") local sel = select_table(options) if sel == table.getn(options) return end local minLevel = data[sel][4] local neededGold = data[sel][5] local neededItem = data[sel][6] if pc.get_level() < minLevel then say("no level") return elseif pc.get_gold() < neededGold then say("no gold") return elseif pc.count_item(neededItem) < 1 then say("no item") return end pc.change_gold(- neededGold) pc.warp(data[sel][2] * 100, data[sel][3] * 100) Así también igual te sirve, como te parezca más facil. Gracias <3 una preguntica el vnum del NPC donde lo coloco Link to comment Share on other sites More sharing options...
Recommended Posts