Jump to content
4Metin

Quest jefes

Recommended Posts

Hola queria una quest para cuando mates un jefe por ejemplo tortuga aparezca en el chat como "El jugador logro matar a la tortuga"

Gracias

Share this post


Link to post
Share on other sites

Creo que así:

quest jefes begin
state start begin
  when kill with not npc.is_pc() begin
   local jefes = {
   [2191] = {"Tortuga Gigante"},
   [2192] = {"Tortuga Gigante Negra"}
   }
  
   notice_all(..pc.get_name().." ha matado la "..jefes[npc.get_race()][1].."")
  end
end
end

Share this post


Link to post
Share on other sites

quest jefe begin

state start begin

when 2191.kill begin

notice_all ("el jugador "..pc.get_name().." mató a la tortuga")

end

end

end

 

esta es muy simple y funciona xd

 

A pero se me olvido algo como seria para que de rango tambien ? como 2000 para que sea amigable :P

Gracias

Share this post


Link to post
Share on other sites

quest jefe begin

state start begin

when 2191.kill begin

notice_all ("el jugador "..pc.get_name().." mató a la tortuga")

end

end

end

 

esta es muy simple y funciona xd

 

No lo hice por kill por si tenía un kill en ese id xD

 

 

A pero se me olvido algo como seria para que de rango tambien ? como 2000 para que sea amigable :P

Gracias

 

quest jefe begin

state start begin

when 2191.kill begin

notice_all ("el jugador "..pc.get_name().." mató a la tortuga")

pc.change_alignment(2000)

end

end

end

Share this post


Link to post
Share on other sites

No lo hice por kill por si tenía un kill en ese id xD

 

 

 

quest jefe begin

state start begin

when 2191.kill begin

notice_all ("el jugador "..pc.get_name().." mató a la tortuga")

pc.change_alignment(2000)

end

end

end

 

para poner multiples en una sola quest seria asi?

 

quest jefe begin

state start begin

when 2191.kill begin

notice_all ("el jugador "..pc.get_name().." mató a la tortuga")

pc.change_alignment(2000)

end

end

end

quest jefe begin

state start begin

when 2191.kill begin

notice_all ("el jugador "..pc.get_name().." mató a la tortuga")

pc.change_alignment(2000)

end

end

end

Share this post


Link to post
Share on other sites

Creo que así:

quest jefes begin
state start begin
when kill with not npc.is_pc() begin
local jefes = {
[2191] = {"Tortuga Gigante"},
[2191] = {"Tortuga Gigante Negra"}
}
notice_all(..pc.get_name().." ha matado la "..jefes[npc.get_race()][1].."")
end
end
end

En mi opinion esta mejor que use esta, ya que como dices no podra usar el mob para ninguna mision mas, incluido el killcount, que me he fijado que no cuenta los mobs que estan usados en misiones.

 

Saludos

Share this post


Link to post
Share on other sites

el problema es que al fin de cuentas tienes que hacer la tabla de todas formas, asique si ya la tienes hecha, para que exportarla a un archivo a aparte? es que tampoko explicaste mucho en el post que ventajas ofrece...

Share this post


Link to post
Share on other sites

tab=mysql_query("select vnum,locale_name from player.mob_proto where rank=5;")
tabla={}
table.foreachi(tab,function(index,value)
tabla[value[1]]={value[1],value[2]}
end)
table.save(tabla,"ruta/asta/las/quests/jefe_tabla.lua")
creo que el value[1] y 2 esta correcto, con eso ustedes tienen una tabla en un archivo con todo los jefes de mysql,

despues no se nesesita usar mysql

para usar en la quest se nesesita esto,

--[[

tab se ve asi

tab={

[vnum]={vnum,nombre}

}

pero en verdad no se nesesita el ombre en la tabla, solo lo ise para escplicar

]]

when kill begin
local tab=table.load(tabla,"ruta/asta/las/quests/jefe_tabla.lua")
if tab[npc.get_race()]=="table" then
say("mataste a "..mob_name(npc.get_race()))
end
end
creo q los jefes en la db son en rank 5 por eso lo use

@yori para q aser una tabla con todos los jefes, si se puede aser todo automatico

Share this post


Link to post
Share on other sites

Ya me tienes medio convencido xD pero tengo una duda

 

cuando pones 'if tab[npc.get_race()]=="table" then' a que te refieres con "table"??

Share this post


Link to post
Share on other sites

con el if-->'table' te dise que el npc que matastes es un jefe, que el vnum esta en la tabla

por ejemplo, piensa que el perro es un jefe, y esta en la tabla

tab={

[101]={101,"Perro"}

}

asi se ve si el perro es un jefe pero eso no se ve por que esta cargado en la tabla, eso funciona de esta forma.

 

if tab[npc.get_race()]=='table' then

 

npc.get_race() te da el vnum de el monstro que matastes, pero es tabien el index de la tabla tab

 

sie el bicho es el perro entonses 101

print(tab[101])--tabla
y si el bicho no esta en el index entonses te da

say(tab[npc.get_race()])--nil
por que no esta escrito

Share this post


Link to post
Share on other sites

pero mi idea no esta mui correcta, el tipo qiere que venga el texto solo en unos jefes y no a todos, para eso es tu modo mejor, solo el string no lo nesesitas en la tabla, con mob_name(npc.get_race()) tambien tienes el nombre del bicho

Share this post


Link to post
Share on other sites

<p>Bueno yo ya edite un poco la quest y al final quedo asi :D</p>

<p>

</p>

<div>----------------------------------</div>

<div>-- MOB KILL NOTICE</div>

<div>-- Messaggio uccisione mostro</div>

<div>----------------------------------</div>

<div>quest mob_kill_notice begin</div>

<div>state start begin</div>

<div>when 691.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 300 )</div>

<div>chat ("Gradul tau a crescut cu 300 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Seful Orc din Valea Orcilor!" )</div>

<div>end</div>

<div> </div>

<div>when 692.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 900 )</div>

<div>chat ("Gradul tau a crescut cu 900 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Seful Orc de elita din Valea Orcilor!" )</div>

<div>end</div>

<div> </div>

<div>when 693.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 1500 )</div>

<div>chat ("Gradul tau a crescut cu 1500 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Seful Orc ucigator din Valea Orcilor!" )</div>

<div>end</div>

<div> </div>

<div>when 791.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 500 )</div>

<div>pc . give_item2 ( 50513 )</div>

<div>chat ("Ai primit 1 piatra spiritului si gradul tau a crescut cu 500 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Stapânul Esotericilor din Templul Întunecat!" )</div>

<div>end</div>

<div> </div>

<div>when 792.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 900 )</div>

<div>chat ("Gradul tau a crescut cu 900 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Stapânul Esotericilor Demonizat din Templul Întunecat!" )</div>

<div>end</div>

<div> </div>

<div>when 793.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 900 )</div>

<div>chat ("Gradul tau a crescut cu 900 de puncte!")</div>

<div>notice_all ( pc.getname() , "l-a omorât pe Stapânul Esotericilor Demonizat din Templul Întunecat!" )</div>

<div>end</div>

<div> </div>

<div>when 794.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 1500 )</div>

<div>chat ("Gradul tau a crescut cu 1500 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Stapânul Esotericilor din Templul Întunecat!" )</div>

<div>end</div>

<div> </div>

<div>when 795.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 8000 )</div>

<div>chat ("Gradul tau a crescut cu 8000 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Stapânul Esotercilor Demonizat EXTRA" )</div>

<div>end</div>

<div> </div>

<div>when 1306.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 1500 )</div>

<div>chat ("Gradul tau a crescut cu 1500 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Fantoma Tigrului Galben !" )</div>

<div>end</div>

<div> </div>

<div>when 1307.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 8000 )</div>

<div>chat ("Gradul tau a crescut cu 8000 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Fantoma Tigrului Galben EXTRA !" )</div>

<div>end</div>

<div> </div>

<div>when 1091.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 600 )</div>

<div>chat ("Gradul tau a crescut cu 600 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Regele Demon!" )</div>

<div>end</div>

<div> </div>

<div>when 1092.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 800 )</div>

<div>chat ("Gradul tau a crescut cu 800 de puncte!")</div>

<div>notice_all ( pc.getname() , "l-a omorât pe Regele Demon Mândru!" )</div>

<div>end</div>

<div> </div>

<div>when 1093.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 1000 )</div>

<div>chat ("Gradul tau a crescut cu 1000 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Îngerul cu Coasa!" )</div>

<div>end</div>

<div> </div>

<div>when 1094.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 1000 )</div>

<div>chat ("Gradul tau a crescut cu 1000 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Regele Demon Mândru EXTRA!" )</div>

<div>end</div>

<div> </div>

<div>when 1095.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 8000 )</div>

<div>chat ("Gradul tau a crescut cu 8000 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Îngerul cu Coasa EXTRA!" )</div>

<div>end</div>

<div> </div>

<div>when 993.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 1500 )</div>

<div>chat ("Gradul tau a crescut cu 1500 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Regele gazda al ciumei!" )</div>

<div>end</div>

<div> </div>

<div>when 1901.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 1500 )</div>

<div>chat ("Gradul tau a crescut cu 1500 de puncte!")</div>

<div>notice_all ( pc.getname() , " a omorât-o pe Vulpea cu 9 cozi!" )</div>

<div>end</div>

<div> </div>

<div>when 1902.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 2000 )</div>

<div>chat ("Gradul tau a crescut cu 2000 de puncte!")</div>

<div>notice_all ( pc.getname() , " a omorât-o pe Vulpea cu 9 cozi 2!" )</div>

<div>end</div>

<div> </div>

<div>when 1903.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 3000 )</div>

<div>chat ("Gradul tau a crescut cu 3000 de puncte!!")</div>

<div>notice_all ( pc.getname() , " a omorât-o pe Vulpea cu 9 cozi EXTRA!" )</div>

<div>end</div>

<div> </div>

<div>when 2091.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 1500 )</div>

<div>chat ("Gradul tau a crescut cu 1500 de puncte!")</div>

<div>notice_all ( pc.getname() , " a omorât-o pe Regina Paianjen!" )</div>

<div>end</div>

<div> </div>

<div>when 2092.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 3000 )</div>

<div>chat ("Gradul tau a crescut cu 3000 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Regele Paianjen!" )</div>

<div>end</div>

<div> </div>

<div>when 2093.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 8000 )</div>

<div>chat ("Gradul tau a crescut cu 8000 de puncte!")</div>

<div>notice_all ( pc.getname() , " a omorât-o pe Regina Pianjen EXTRA!" )</div>

<div>end</div>

<div> </div>

<div>when 2191.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 2000 )</div>

<div>chat ("Gradul tau a crescut cu 2000 de puncte!")</div>

<div>notice_all ( pc.getname() , " a omorât-o pe Testoasa Uriasa de Desert!" )</div>

<div>end</div>

<div> </div>

<div>when 2192.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 8000 )</div>

<div>chat ("Gradul tau a crescut cu 8000 de puncte!")</div>

<div>notice_all ( pc.getname() , " a omorât-o pre Testoasa Uriasa de Desert EXTRA!" )</div>

<div>end</div>

<div> </div>

<div>when 2491.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 8000 )</div>

<div>chat ("Gradul tau a crescut cu 8000 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Liderul Seatou Levhiatan!" )</div>

<div>end</div>

<div> </div>

<div>when 2492.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 8000 )</div>

<div>chat ("Gradul tau a crescut cu 8000 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Liderul Seatou Levhiatan 2 !" )</div>

<div>end</div>

<div> </div>

<div>when 5002.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 2000 )</div>

<div>chat ("Gradul tau a crescut cu 2000 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Hae-Tae!" )</div>

<div>end</div>

<div> </div>

<div>when 2206.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 1500 )</div>

<div>chat ("Gradul tau a crescut cu 1500 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Regele de Foc!" )</div>

<div>end</div>

<div> </div>

<div>when 2207.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 8000 )</div>

<div>chat ("Gradul tau a crescut cu 8000 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Regele de Foc 2!" )</div>

<div>end</div>

<div> </div>

<div>when 2291.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 8000 )</div>

<div>chat ("Gradul tau a crescut cu 8000 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Dragonul Rosu!" )</div>

<div>end</div>

<div> </div>

<div>when 2306.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 3000 )</div>

<div>chat ("Gradul tau a crescut cu 3000 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Copacul Gigant!" )</div>

<div>end</div>

<div> </div>

<div>when 2307.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 8000 )</div>

<div>chat ("Gradul tau a crescut cu 8000 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Copacul Batrân!" )</div>

<div>end</div>

<div> </div>

<div>when 1403.kill begin</div>

<div>if pc.is_gm() then</div>

<div>return</div>

<div>end</div>

<div>pc . change_alignment ( 300 )</div>

<div>chat ("Gradul tau a crescut cu 300 de puncte!")</div>

<div>notice_all ( pc.getname() , " l-a omorât pe Gigantul Milenar!" )</div>

<div>end</div>

<div>end</div>

<div>end</div>

<div>

</div>

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...