Ir para conteúdo
  • Cadastre-se

L2JFROZEN REV 1118 X-Trap V 1 + Site


xtrap

Posts recomendados

Sobre o patch posta ae estarei atualizando

Sobre as multsell não vir com itens enchantado "isso é um mods não achei necessário colocar na revisão na próxima quem sabe 1132 Revisão vem ai"

Sobre os power dos magos deixei meio ah meio pois Fighter e mager matem igualmente "teste local não online 'seria mais eficaz online' "

pode fazer uma amigo use essa como exemplo !

 

<list maintainEnchantment="true">
<!-- Heaven's Divider [Haste] -->
<item id="1">
<ingredient id="0000" count="15"/>
<production id="0000" count="1" enchant="16"/>
</item>
Link para o comentário
Compartilhar em outros sites


com certeza vou testa baixando aki me tirar uma duvida oque o char vip ganha em game?

como um amigo disse ae acima somente Xp mais isso é opcional vc pode colocar algo mais pra os Vip

 

 

==================================================================================>

alquem me ajuda eu crio uma conta nova mas nao deixa eu cria um char novo fala que eu ja tenho muitos e que tenho que deletar um mas nao tem nada

Cara isso cheira erro de db vc num deve ter feito algo errado na tabela character

 

SUGIRO DE DELETE SUA DB E ESTALE DE VOLTA COM CERTEZA RESOLVERA

X-Trap

Link para o comentário
Compartilhar em outros sites

 

pode fazer uma amigo use essa como exemplo !

 

<list maintainEnchantment="true">
<!-- Heaven's Divider [Haste] -->
<item id="1">
<ingredient id="0000" count="15"/>
<production id="0000" count="1" enchant="16"/>
</item>

 

as htmls ja se encontram desta forma .... é necessarioa source pra eu poder adicionar o mod de enchant'

otavio deyvison viana de lima

Link para o comentário
Compartilhar em outros sites

as htmls ja se encontram desta forma .... é necessarioa source pra eu poder adicionar o mod de enchant'

é uma pena pq perdi essa sorce num hd meu mais vou da continuidade

 

em breve aer estarei postando ah revisão 1132 limpa em um pré parecido com esse

e com site

Editado por xtrap

X-Trap

Link para o comentário
Compartilhar em outros sites

Olá amigos não sei se alguém teve o erro de quando cria uma conta nova você loga no game e pede pra criar

um personagem novo e da o erro avisando que tem que deletar o personagem antigo para criação de um

novo porem a conta esta sem nem um e da esse erro desde já obrigado pela atenção.

Quieto quase calado mais quando falo eu abro a boca kkkkk entendeu. Se não entendeu foda-se.

Link para o comentário
Compartilhar em outros sites

Olá amigos não sei se alguém teve o erro de quando cria uma conta nova você loga no game e pede pra criar

um personagem novo e da o erro avisando que tem que deletar o personagem antigo para criação de um

novo porem a conta esta sem nem um e da esse erro desde já obrigado pela atenção.

aki ta dando o msm erro vo no navicat e so tem 4 chars la eh o max q pode ser criado

Link para o comentário
Compartilhar em outros sites

cara De uma olhada no navicat na table characters pode ser que esteja lotada limpe ela ok

 

aki ta dando o msm erro vo no navicat e so tem 4 chars la eh o max q pode ser criado

pra resolver é so deletar todos os char da tabela character

vou estar corrigindo isso amanha ah tarde

X-Trap

Link para o comentário
Compartilhar em outros sites

 

 

rapaz queria saber o que esses cara tem que nao da conta de criar contas nessa rev olha ae fiz 3 cha 9NggpS3.jpg

 

 

Eu também não sei pois testei aqui deu tudo certinho criei normal

alguns discerão que quando deletaram os char que testa na rev funcionou

então acabei de deletar todos os char e itens dos backup

Editado por xtrap

X-Trap

Link para o comentário
Compartilhar em outros sites

 

 

Poderia me ajudar com o recuperar senha ??

 

aqui ele n pega de mandeira alguma....

 

12898347_1261497910545826_84195649402341

 

 

O brother essa party ai só funciona com site online ae vc configura ele os as informação

smtp do seu host

eu não cheguei ah testar essa party mais qualquer coisa da um alo ae que tentamos resolver

Editado por xtrap

X-Trap

Link para o comentário
Compartilhar em outros sites

ta no dc o site eu fiz uma conta no uol e to tentando arrumar mais pega de jeito nemhum!

Cara temta mudar ah porta pra 995

X-Trap

Link para o comentário
Compartilhar em outros sites

vou tentar aqui e te falo.


Deu erro aqui ainda amigo.... Erro: Mensagem não enviada.


<div id="titulo_box">
Recuperar Senha
</div>
<?php
$email = $_POST["email"];
if($email == ''){ }else{
$sql = mysql_query("SELECT nome, login FROM accounts WHERE email='$email'") or die(mysql_error());
$check = mysql_num_rows($sql);
if($check == 1){
while($rows = mysql_fetch_array($sql)){ $user_name = $rows["nome"]; $user_login = $rows["login"]; }
$CaracteresAceitos = 'abcdxywzABCDZYWZ0123456789';
$max = strlen($CaracteresAceitos)-1;
$password = null;
for($i=0; $i < 8; $i++) {
$password .= $CaracteresAceitos{mt_rand(0, $max)};
$newpass = base64_encode(pack("H*", sha1(utf8_encode($password))));
}
if($envia_email == 1){
$alterandosenha = mysql_query("UPDATE accounts SET password='$newpass' WHERE email='$email'") or die(mysql_error());
require("phpmailer/class.phpmailer.php"); // ADICIONA O SCRIPT DE ENVIO DE E-MAILS
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->Host = "smtps.bol.com.br"; //SERVIDOR DE SMTP, USE smtp.SeuDominio.com OU smtp.hostsys.com.br
$mail->SMTPAuth = true;
$mail->Username = "[email protected]"; //EMAIL PARA SMTP AUTENTICADO (pode ser qualquer conta de email do seu domínio)
$mail->Password = "Diegosales123"; //SENHA DO EMAIL PARA SMTP AUTENTICADO
$mail->From = "$email_contato"; //E-MAIL DO REMETENTE
$mail->FromName = "$nomedoservidor"; //NOME DO REMETENTE
$mail->AddAddress("$email"); //E-MAIL DO DESINATÁRIO, NOME DO DESINATÁRIO
$mail->WordWrap = 50; // ATIVAR QUEBRA DE LINHA
$mail->IsHTML(true);
$mail->CharSet = "utf-8";
$mail->Subject = "Recuperação de Senha"; //ASSUNTO DA MENSAGEM
$mail->Body = "<center><font color='#0066FF' size='5'><b>Olá <u>$user_name</u></b>!</font><br><br> Este é um e-mail gerado automaticamente pelo nosso site, para recuperação de dados.<br><br>Seu Login é: <b>$user_login</b><br>Sua nova senha é: <b>$password</b><br><br>Você pode alterar sua senha em nosso Painel do Usuario, basta você logar com seu Login e sua Nova senha.<br><br>Atenciosamente...<br><br><h3><u>Staff $nomedoservidor</u></h3></center>"; //MENSAGEM NO FORMATO HTML, PODE SER TEXTO OU IMAGEM
if(!$mail->Send()){
echo "<div align='center'>Erro: Mensagem não enviada.</div><br>";
}else{
echo"<div align='center'>Uma nova senha foi enviada para o seu E-mail!</div><br>";
}
}elseif($envia_email == 0){
error_reporting(0);
$alterandosenha = mysql_query("UPDATE accounts SET password='$newpass' WHERE email='$email'") or die(mysql_error());
require "phpmailer/class.phpmailer.php";
$mail = new PHPMailer(); //
$mail->Mailer = "smtp";
$mail->IsHTML(true); //
$mail->CharSet = "utf-8";
$mail->SMTPSecure = "tls";
$mail->Host = "smtps.bol.com.br";
$mail->Port = "995";
$mail->SMTPAuth = "true";
$mail->Username = "[email protected]"; // login do gmail
$mail->Password = "Diegosales123"; // senha do gmail
$mail->From = "$email_contato"; // email que vai aparecer para o destinatario
$mail->FromName = "$nomedoservidor"; //NOME DO REMETENTE
$mail->AddAddress("$email"); // destinatario
$mail->AddReplyTo("$email_contato", $mail->FromName); // email de resposta
$mail->Subject = "Recuperação de Senha";
$mail->Body = "<center><font color='#0066FF' size='5'><b>Olá <u>$user_name</u></b>!</font><br><br> Este é um e-mail gerado automaticamente pelo nosso site, para recuperação de dados.<br><br>Seu Login é: <b>$user_login</b><br>Sua nova senha é: <b>$password</b><br><br>Você pode alterar sua senha em nosso Painel do Usuario, basta você logar com seu Login e sua Nova senha.<br><br>Atenciosamente...<br><br><h3><u>Staff $nomedoservidor</u></h3></center>";
// Controle de erro ou sucesso no envio
if (!$mail->Send()){
echo "<div align='center'>Erro: Mensagem não enviada.</div><br>";
}else{
echo "<div align='center'>Uma nova senha foi enviada para o seu E-mail!</div><br>";
}
}
}else{
echo"<div align='center'><b>E-mail inexistente.</b></div>";
}
}
?>
<style type="text/css">
#container_formulario {
width:400px;
}
#label_formulario {
width:100px;
float:left;
}
#campo_formulario {
width:300px;
float:left;
}
#campo_button {
width:400px;
float:left;
}
</style>
<center><div align="center" style="width: 95%;">
<h1>Recuperar Senha</h1>
<div id="container_formulario">
<form action="" id="form1" name="form1" method="post">
Por favor, informe seu e-mail cadastrado:<br />
<input name="email" type="text" size="50" />
<br />
Será enviado um email com sua nova senha.
<br />
<input type="submit" name="button" id="button" value="Recuperar" class="selecionar" />
</form><br />
</div>
</div>
</center>
Link para o comentário
Compartilhar em outros sites

 

 

 

vou tentar aqui e te falo.


Deu erro aqui ainda amigo.... Erro: Mensagem não enviada.


<div id="titulo_box">
Recuperar Senha
</div>
<?php
$email = $_POST["email"];
if($email == ''){ }else{
$sql = mysql_query("SELECT nome, login FROM accounts WHERE email='$email'") or die(mysql_error());
$check = mysql_num_rows($sql);
if($check == 1){
while($rows = mysql_fetch_array($sql)){ $user_name = $rows["nome"]; $user_login = $rows["login"]; }
$CaracteresAceitos = 'abcdxywzABCDZYWZ0123456789';
$max = strlen($CaracteresAceitos)-1;
$password = null;
for($i=0; $i < 8; $i++) {
$password .= $CaracteresAceitos{mt_rand(0, $max)};
$newpass = base64_encode(pack("H*", sha1(utf8_encode($password))));
}
if($envia_email == 1){
$alterandosenha = mysql_query("UPDATE accounts SET password='$newpass' WHERE email='$email'") or die(mysql_error());
require("phpmailer/class.phpmailer.php"); // ADICIONA O SCRIPT DE ENVIO DE E-MAILS
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->Host = "smtps.bol.com.br"; //SERVIDOR DE SMTP, USE smtp.SeuDominio.com OU smtp.hostsys.com.br
$mail->SMTPAuth = true;
$mail->Username = "[email protected]"; //EMAIL PARA SMTP AUTENTICADO (pode ser qualquer conta de email do seu domínio)
$mail->Password = "Diegosales123"; //SENHA DO EMAIL PARA SMTP AUTENTICADO
$mail->From = "$email_contato"; //E-MAIL DO REMETENTE
$mail->FromName = "$nomedoservidor"; //NOME DO REMETENTE
$mail->AddAddress("$email"); //E-MAIL DO DESINATÁRIO, NOME DO DESINATÁRIO
$mail->WordWrap = 50; // ATIVAR QUEBRA DE LINHA
$mail->IsHTML(true);
$mail->CharSet = "utf-8";
$mail->Subject = "Recuperação de Senha"; //ASSUNTO DA MENSAGEM
$mail->Body = "<center><font color='#0066FF' size='5'><b>Olá <u>$user_name</u></b>!</font><br><br> Este é um e-mail gerado automaticamente pelo nosso site, para recuperação de dados.<br><br>Seu Login é: <b>$user_login</b><br>Sua nova senha é: <b>$password</b><br><br>Você pode alterar sua senha em nosso Painel do Usuario, basta você logar com seu Login e sua Nova senha.<br><br>Atenciosamente...<br><br><h3><u>Staff $nomedoservidor</u></h3></center>"; //MENSAGEM NO FORMATO HTML, PODE SER TEXTO OU IMAGEM
if(!$mail->Send()){
echo "<div align='center'>Erro: Mensagem não enviada.</div><br>";
}else{
echo"<div align='center'>Uma nova senha foi enviada para o seu E-mail!</div><br>";
}
}elseif($envia_email == 0){
error_reporting(0);
$alterandosenha = mysql_query("UPDATE accounts SET password='$newpass' WHERE email='$email'") or die(mysql_error());
require "phpmailer/class.phpmailer.php";
$mail = new PHPMailer(); //
$mail->Mailer = "smtp";
$mail->IsHTML(true); //
$mail->CharSet = "utf-8";
$mail->SMTPSecure = "tls";
$mail->Host = "smtps.bol.com.br";
$mail->Port = "995";
$mail->SMTPAuth = "true";
$mail->Username = "[email protected]"; // login do gmail
$mail->Password = "Diegosales123"; // senha do gmail
$mail->From = "$email_contato"; // email que vai aparecer para o destinatario
$mail->FromName = "$nomedoservidor"; //NOME DO REMETENTE
$mail->AddAddress("$email"); // destinatario
$mail->AddReplyTo("$email_contato", $mail->FromName); // email de resposta
$mail->Subject = "Recuperação de Senha";
$mail->Body = "<center><font color='#0066FF' size='5'><b>Olá <u>$user_name</u></b>!</font><br><br> Este é um e-mail gerado automaticamente pelo nosso site, para recuperação de dados.<br><br>Seu Login é: <b>$user_login</b><br>Sua nova senha é: <b>$password</b><br><br>Você pode alterar sua senha em nosso Painel do Usuario, basta você logar com seu Login e sua Nova senha.<br><br>Atenciosamente...<br><br><h3><u>Staff $nomedoservidor</u></h3></center>";
// Controle de erro ou sucesso no envio
if (!$mail->Send()){
echo "<div align='center'>Erro: Mensagem não enviada.</div><br>";
}else{
echo "<div align='center'>Uma nova senha foi enviada para o seu E-mail!</div><br>";
}
}
}else{
echo"<div align='center'><b>E-mail inexistente.</b></div>";
}
}
?>
<style type="text/css">
#container_formulario {
width:400px;
}
#label_formulario {
width:100px;
float:left;
}
#campo_formulario {
width:300px;
float:left;
}
#campo_button {
width:400px;
float:left;
}
</style>
<center><div align="center" style="width: 95%;">
<h1>Recuperar Senha</h1>
<div id="container_formulario">
<form action="" id="form1" name="form1" method="post">
Por favor, informe seu e-mail cadastrado:<br />
<input name="email" type="text" size="50" />
<br />
Será enviado um email com sua nova senha.
<br />
<input type="submit" name="button" id="button" value="Recuperar" class="selecionar" />
</form><br />
</div>
</div>
</center>

 

 

 

 

se vc entende um pouco de programação destaquei em vermelho onde vc fara teste pra ver se ele esta puxando os dados certinho

teste manualmente vc coloca um email e por ai mais tem mais maneira de testar o script

Editado por xtrap

X-Trap

Link para o comentário
Compartilhar em outros sites

isso ai é pra colocar o meu imail la da bol? eu te mandei convite e falei com você no facebook se poder aceitar la pra tirar essa minha duvida te agradeço!

blz

X-Trap

Link para o comentário
Compartilhar em outros sites

Acabei de baixar o servidor para testes... Logo de cara deu esse error aqui que particularmente nunca vi..

 

#Error

 

4AATV2L.png

 

 

==============================================Aconselho você a olha isso================================================

 

# Parameters Databases - MYSQL
Driver = com.mysql.jdbc.Driver
URL = jdbc:mysql://localhost/db
# Login - Mysql's user
Login = root
# Password - Mysql's Password
Password =
confere vê se ta tudo certo
se não for isso é seu java!
mais se vc dar uma olhada bem vc vê escrito q o java não ta suportando algo assim
atualiza ele pro java 8 qualquer coisa posta ae entra em contato comigo
Editado por xtrap

X-Trap

Link para o comentário
Compartilhar em outros sites

  • 2 months later...

Erro no chars aqui tbm, segunda vez ja cmg apago as caracteres volta a funcionar mais tipo n posso apagar agr pq meu Server ta on, o meu tem mais de 100 personagens criados, e tipo da erro de uma hr pra outra

Link para o comentário
Compartilhar em outros sites

  • Registre-se

    Faça parte da maior e  mais antigas comunidades sobre Lineage2 da América Latina.






  • Patrocinadores

  • Quem Está Navegando

    • Nenhum usuário registrado visualizando esta página.
  • Posts

    • Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?    
    • muchas gracias muy lindos NPC 🙂
    • relaxa jovem gafanhoto, testa as quests. e posTa os erros indesejaveis.  
    • Se alguém pudesse me ensinar como codificar as missões, eu ficaria feliz em fazer isso sozinho ou pelo menos ajudar. Eu realmente quero jogar em um servidor onde todas as quests funcionem bem e melhor ainda se você puder fazer quests customizadas!
    • mas no interlude, nem todas as quests de class,  vai mostrar onde tem que ir, ate o reborn nao mostrava quando era interlude, só mostrou depois que eles colocaram client classic pra rodar, e ficou melhor ainda quando virou hellbound em diante, mas ha sim alguma chance de modificar isso direto no script para fazer igualmente, só basta te um pouco de paciencia e persistencia exato
    • 408_PathToElvenwizard dá Orion eu tive que mexer tbm, até modifiquei e consegui deixar ela igual do Classic, com a seta e a marcação no mapa. (não retail IL) Dá pra importar py de várias revs, o foda é que não da regular as quest py através do debug em tempo real, pelo menos eu não consegui rsrs
    • Hasta el momento todas las QUESTS son completables si te guias con un tutorial de youtube. El problema es que tienen bugs de locacion y de subquests que no avanzan o no te marcan correctamente a donde ir en el mapa, cosa que en Retail si se ve como corresponde.
    • estranho, mas pelo menos a galera nunca reclamo das quests quando tinha aberto 5x, geral fez class primeira e segunda job, poucos que compraram a class
    • en RUSaCis-3.5 data pack, las Quests estan en formato .java y son diferentes a como estan redactadas en jOrion y jFrozen 1.5 (ProyectX) package net.sf.l2j.gameserver.scripting.quest; import net.sf.l2j.commons.random.Rnd; import net.sf.l2j.gameserver.enums.Paperdoll; import net.sf.l2j.gameserver.enums.QuestStatus; import net.sf.l2j.gameserver.enums.actors.ClassId; import net.sf.l2j.gameserver.model.actor.Creature; import net.sf.l2j.gameserver.model.actor.Npc; import net.sf.l2j.gameserver.model.actor.Player; import net.sf.l2j.gameserver.network.serverpackets.SocialAction; import net.sf.l2j.gameserver.scripting.QuestState; public class Q224_TestOfSagittarius extends SecondClassQuest { private static final String QUEST_NAME = "Q224_TestOfSagittarius"; // Items private static final int BERNARD_INTRODUCTION = 3294; private static final int HAMIL_LETTER_1 = 3295; private static final int HAMIL_LETTER_2 = 3296; private static final int HAMIL_LETTER_3 = 3297; private static final int HUNTER_RUNE_1 = 3298; private static final int HUNTER_RUNE_2 = 3299; private static final int TALISMAN_OF_KADESH = 3300; private static final int TALISMAN_OF_SNAKE = 3301; private static final int MITHRIL_CLIP = 3302; private static final int STAKATO_CHITIN = 3303; private static final int REINFORCED_BOWSTRING = 3304; private static final int MANASHEN_HORN = 3305; private static final int BLOOD_OF_LIZARDMAN = 3306; private static final int CRESCENT_MOON_BOW = 3028; private static final int WOODEN_ARROW = 17; // Rewards private static final int MARK_OF_SAGITTARIUS = 3293; // NPCs private static final int BERNARD = 30702; private static final int HAMIL = 30626; private static final int SIR_ARON_TANFORD = 30653; private static final int VOKIAN = 30514; private static final int GAUEN = 30717; // Monsters private static final int ANT = 20079; private static final int ANT_CAPTAIN = 20080; private static final int ANT_OVERSEER = 20081; private static final int ANT_RECRUIT = 20082; private static final int ANT_PATROL = 20084; private static final int ANT_GUARD = 20086; private static final int NOBLE_ANT = 20089; private static final int NOBLE_ANT_LEADER = 20090; private static final int BREKA_ORC_SHAMAN = 20269; private static final int BREKA_ORC_OVERLORD = 20270; private static final int MARSH_STAKATO_WORKER = 20230; private static final int MARSH_STAKATO_SOLDIER = 20232; private static final int MARSH_STAKATO_DRONE = 20234; private static final int MARSH_SPIDER = 20233; private static final int ROAD_SCAVENGER = 20551; private static final int MANASHEN_GARGOYLE = 20563; private static final int LETO_LIZARDMAN = 20577; private static final int LETO_LIZARDMAN_ARCHER = 20578; private static final int LETO_LIZARDMAN_SOLDIER = 20579; private static final int LETO_LIZARDMAN_WARRIOR = 20580; private static final int LETO_LIZARDMAN_SHAMAN = 20581; private static final int LETO_LIZARDMAN_OVERLORD = 20582; private static final int SERPENT_DEMON_KADESH = 27090; public Q224_TestOfSagittarius() { super(224, "Test Of Sagittarius"); setItemsIds(BERNARD_INTRODUCTION, HAMIL_LETTER_1, HAMIL_LETTER_2, HAMIL_LETTER_3, HUNTER_RUNE_1, HUNTER_RUNE_2, TALISMAN_OF_KADESH, TALISMAN_OF_SNAKE, MITHRIL_CLIP, STAKATO_CHITIN, REINFORCED_BOWSTRING, MANASHEN_HORN, BLOOD_OF_LIZARDMAN, CRESCENT_MOON_BOW); addQuestStart(BERNARD); addTalkId(BERNARD, HAMIL, SIR_ARON_TANFORD, VOKIAN, GAUEN); addMyDying(ANT, ANT_CAPTAIN, ANT_OVERSEER, ANT_RECRUIT, ANT_PATROL, ANT_GUARD, NOBLE_ANT, NOBLE_ANT_LEADER, BREKA_ORC_SHAMAN, BREKA_ORC_OVERLORD, MARSH_STAKATO_WORKER, MARSH_STAKATO_SOLDIER, MARSH_STAKATO_DRONE, MARSH_SPIDER, ROAD_SCAVENGER, MANASHEN_GARGOYLE, LETO_LIZARDMAN, LETO_LIZARDMAN_ARCHER, LETO_LIZARDMAN_SOLDIER, LETO_LIZARDMAN_WARRIOR, LETO_LIZARDMAN_SHAMAN, LETO_LIZARDMAN_OVERLORD, SERPENT_DEMON_KADESH); } @Override public String onAdvEvent(String event, Npc npc, Player player) { String htmltext = event; QuestState st = player.getQuestList().getQuestState(QUEST_NAME); if (st == null) return htmltext; // BERNARD if (event.equalsIgnoreCase("30702-04.htm")) { st.setState(QuestStatus.STARTED); st.setCond(1); playSound(player, SOUND_ACCEPT); giveItems(player, BERNARD_INTRODUCTION, 1); if (giveDimensionalDiamonds39(player)) htmltext = "30702-04a.htm"; } // HAMIL else if (event.equalsIgnoreCase("30626-03.htm")) { st.setCond(2); playSound(player, SOUND_MIDDLE); takeItems(player, BERNARD_INTRODUCTION, 1); giveItems(player, HAMIL_LETTER_1, 1); } else if (event.equalsIgnoreCase("30626-07.htm")) { st.setCond(5); playSound(player, SOUND_MIDDLE); takeItems(player, HUNTER_RUNE_1, 10); giveItems(player, HAMIL_LETTER_2, 1); } // SIR_ARON_TANFORD else if (event.equalsIgnoreCase("30653-02.htm")) { st.setCond(3); playSound(player, SOUND_MIDDLE); takeItems(player, HAMIL_LETTER_1, 1); } // VOKIAN else if (event.equalsIgnoreCase("30514-02.htm")) { st.setCond(6); playSound(player, SOUND_MIDDLE); takeItems(player, HAMIL_LETTER_2, 1); } return htmltext; } @Override public String onTalk(Npc npc, Player player) { String htmltext = getNoQuestMsg(); QuestState st = player.getQuestList().getQuestState(QUEST_NAME); if (st == null) return htmltext; switch (st.getState()) { case CREATED: if (player.getClassId() != ClassId.ROGUE && player.getClassId() != ClassId.ELVEN_SCOUT && player.getClassId() != ClassId.ASSASSIN) htmltext = "30702-02.htm"; else if (player.getStatus().getLevel() < 39) htmltext = "30702-01.htm"; else htmltext = "30702-03.htm"; break; case STARTED: int cond = st.getCond(); switch (npc.getNpcId()) { case BERNARD: htmltext = "30702-05.htm"; break; case HAMIL: if (cond == 1) htmltext = "30626-01.htm"; else if (cond == 2 || cond == 3) htmltext = "30626-04.htm"; else if (cond == 4) htmltext = "30626-05.htm"; else if (cond > 4 && cond < 8) htmltext = "30626-08.htm"; else if (cond == 8) { htmltext = "30626-09.htm"; st.setCond(9); playSound(player, SOUND_MIDDLE); takeItems(player, HUNTER_RUNE_2, 10); giveItems(player, HAMIL_LETTER_3, 1); } else if (cond > 8 && cond < 12) htmltext = "30626-10.htm"; else if (cond == 12) { htmltext = "30626-11.htm"; st.setCond(13); playSound(player, SOUND_MIDDLE); } else if (cond == 13) htmltext = "30626-12.htm"; else if (cond == 14) { htmltext = "30626-13.htm"; takeItems(player, BLOOD_OF_LIZARDMAN, -1); takeItems(player, CRESCENT_MOON_BOW, 1); takeItems(player, TALISMAN_OF_KADESH, 1); giveItems(player, MARK_OF_SAGITTARIUS, 1); rewardExpAndSp(player, 54726, 20250); player.broadcastPacket(new SocialAction(player, 3)); playSound(player, SOUND_FINISH); st.exitQuest(false); } break; case SIR_ARON_TANFORD: if (cond == 2) htmltext = "30653-01.htm"; else if (cond > 2) htmltext = "30653-03.htm"; break; case VOKIAN: if (cond == 5) htmltext = "30514-01.htm"; else if (cond == 6) htmltext = "30514-03.htm"; else if (cond == 7) { htmltext = "30514-04.htm"; st.setCond(8); playSound(player, SOUND_MIDDLE); takeItems(player, TALISMAN_OF_SNAKE, 1); } else if (cond > 7) htmltext = "30514-05.htm"; break; case GAUEN: if (cond == 9) { htmltext = "30717-01.htm"; st.setCond(10); playSound(player, SOUND_MIDDLE); takeItems(player, HAMIL_LETTER_3, 1); } else if (cond == 10) htmltext = "30717-03.htm"; else if (cond == 11) { htmltext = "30717-02.htm"; st.setCond(12); playSound(player, SOUND_MIDDLE); takeItems(player, MANASHEN_HORN, 1); takeItems(player, MITHRIL_CLIP, 1); takeItems(player, REINFORCED_BOWSTRING, 1); takeItems(player, STAKATO_CHITIN, 1); giveItems(player, CRESCENT_MOON_BOW, 1); giveItems(player, WOODEN_ARROW, 10); } else if (cond > 11) htmltext = "30717-04.htm"; break; } break; case COMPLETED: htmltext = getAlreadyCompletedMsg(); break; } return htmltext; } @Override public void onMyDying(Npc npc, Creature killer) { final Player player = killer.getActingPlayer(); final QuestState st = checkPlayerState(player, npc, QuestStatus.STARTED); if (st == null) return; switch (npc.getNpcId()) { case ANT: case ANT_CAPTAIN: case ANT_OVERSEER: case ANT_RECRUIT: case ANT_PATROL: case ANT_GUARD: case NOBLE_ANT: case NOBLE_ANT_LEADER: if (st.getCond() == 3 && dropItems(player, HUNTER_RUNE_1, 1, 10, 500000)) st.setCond(4); break; case BREKA_ORC_SHAMAN: case BREKA_ORC_OVERLORD: if (st.getCond() == 6 && dropItems(player, HUNTER_RUNE_2, 1, 10, 500000)) { st.setCond(7); giveItems(player, TALISMAN_OF_SNAKE, 1); } break; case MARSH_STAKATO_WORKER: case MARSH_STAKATO_SOLDIER: case MARSH_STAKATO_DRONE: if (st.getCond() == 10 && dropItems(player, STAKATO_CHITIN, 1, 1, 100000) && player.getInventory().hasItems(MANASHEN_HORN, MITHRIL_CLIP, REINFORCED_BOWSTRING)) st.setCond(11); break; case MARSH_SPIDER: if (st.getCond() == 10 && dropItems(player, REINFORCED_BOWSTRING, 1, 1, 100000) && player.getInventory().hasItems(MANASHEN_HORN, MITHRIL_CLIP, STAKATO_CHITIN)) st.setCond(11); break; case ROAD_SCAVENGER: if (st.getCond() == 10 && dropItems(player, MITHRIL_CLIP, 1, 1, 100000) && player.getInventory().hasItems(MANASHEN_HORN, REINFORCED_BOWSTRING, STAKATO_CHITIN)) st.setCond(11); break; case MANASHEN_GARGOYLE: if (st.getCond() == 10 && dropItems(player, MANASHEN_HORN, 1, 1, 100000) && player.getInventory().hasItems(REINFORCED_BOWSTRING, MITHRIL_CLIP, STAKATO_CHITIN)) st.setCond(11); break; case LETO_LIZARDMAN: case LETO_LIZARDMAN_ARCHER: case LETO_LIZARDMAN_SOLDIER: case LETO_LIZARDMAN_WARRIOR: case LETO_LIZARDMAN_SHAMAN: case LETO_LIZARDMAN_OVERLORD: if (st.getCond() == 13) { if (((player.getInventory().getItemCount(BLOOD_OF_LIZARDMAN) - 120) * 5) > Rnd.get(100)) { playSound(player, SOUND_BEFORE_BATTLE); takeItems(player, BLOOD_OF_LIZARDMAN, -1); addSpawn(SERPENT_DEMON_KADESH, player, false, 300000, true); } else dropItemsAlways(player, BLOOD_OF_LIZARDMAN, 1, 0); } break; case SERPENT_DEMON_KADESH: if (st.getCond() == 13) { if (player.getInventory().getItemIdFrom(Paperdoll.RHAND) == CRESCENT_MOON_BOW) { st.setCond(14); playSound(player, SOUND_MIDDLE); giveItems(player, TALISMAN_OF_KADESH, 1); } else addSpawn(SERPENT_DEMON_KADESH, player, false, 300000, true); } break; } } }  
×
×
  • Criar Novo...

Important Information

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.