Ir para conteúdo
  • Cadastre-se

Real Template - Julio Andolfo


JulioAndolfo

Posts recomendados

Na hora de criar um login esta falando que tem que ser menos 10 de characters tem como colocar pra maior ?

 

Isso é uma proteção, e o próprio L2, algumas REVs não aceitam login com mais de 10 caracteres, mas se quiser editar, altere essa informação no arquivo pages/register.php

Link para o comentário
Compartilhar em outros sites


Isso é uma proteção, e o próprio L2, algumas REVs não aceitam login com mais de 10 caracteres, mas se quiser editar, altere essa informação no arquivo pages/register.php

 

Julio quanto ao meu caso como fica?

Link para o comentário
Compartilhar em outros sites

Julio quanto ao meu caso como fica?

 

O seu deve ser HighFive.

 

Vai no arquivo config.php

 

Vai ter um local assim :

 

$confirmar = mysql_query("SELECT 
a.login, 
a.password, 
a.".$configs['adm']['acesso_conta'].", 
(SELECT email FROM accounts_dados WHERE login = a.login) AS email,
(SELECT cidade FROM accounts_dados WHERE login = a.login) AS cidade,
(SELECT estado FROM accounts_dados WHERE login = a.login) AS estado,
(SELECT saldo_creditos FROM accounts_dados WHERE login = a.login) AS saldo_creditos,
(SELECT status FROM accounts_dados WHERE login = a.login) AS status

FROM accounts AS a WHERE login = '".$login_session."' AND `password` = '".$senha_session."'") or die(mysql_error());
$contagem = mysql_num_rows($confirmar);
$dados_login = mysql_fetch_array($confirmar);

 

Troque por isso :

 

 

$confirmar = mysql_query("SELECT 
a.login, 
a.password, 
a.".$configs['adm']['acesso_conta'].", 
(SELECT email FROM accounts_dados WHERE login = a.login) AS email,
(SELECT cidade FROM accounts_dados WHERE login = a.login) AS cidade,
(SELECT estado FROM accounts_dados WHERE login = a.login) AS estado,
(SELECT hash FROM accounts_dados WHERE login = a.login) AS hash,
(SELECT nivel FROM accounts_dados WHERE login = a.login) AS nivel,
(SELECT region FROM accounts_dados WHERE login = a.login) AS region,
(SELECT saldo_creditos FROM accounts_dados WHERE login = a.login) AS saldo_creditos,
(SELECT status FROM accounts_dados WHERE login = a.login) AS status

FROM accounts AS a WHERE login = '".$login_session."' AND `password` = '".$senha_session."'");
$contagem = mysql_num_rows($confirmar);
$dados_login = mysql_fetch_array($confirmar);

Link para o comentário
Compartilhar em outros sites

O seu deve ser HighFive.

 

Vai no arquivo config.php

 

Vai ter um local assim :

 

$confirmar = mysql_query("SELECT
a.login,
a.password,
a.".$configs['adm']['acesso_conta'].",
(SELECT email FROM accounts_dados WHERE login = a.login) AS email,
(SELECT cidade FROM accounts_dados WHERE login = a.login) AS cidade,
(SELECT estado FROM accounts_dados WHERE login = a.login) AS estado,
(SELECT saldo_creditos FROM accounts_dados WHERE login = a.login) AS saldo_creditos,
(SELECT status FROM accounts_dados WHERE login = a.login) AS status

FROM accounts AS a WHERE login = '".$login_session."' AND `password` = '".$senha_session."'") or die(mysql_error());
$contagem = mysql_num_rows($confirmar);
$dados_login = mysql_fetch_array($confirmar);

 

Troque por isso :

 

 

$confirmar = mysql_query("SELECT
a.login,
a.password,
a.".$configs['adm']['acesso_conta'].",
(SELECT email FROM accounts_dados WHERE login = a.login) AS email,
(SELECT cidade FROM accounts_dados WHERE login = a.login) AS cidade,
(SELECT estado FROM accounts_dados WHERE login = a.login) AS estado,
(SELECT hash FROM accounts_dados WHERE login = a.login) AS hash,
(SELECT nivel FROM accounts_dados WHERE login = a.login) AS nivel,
(SELECT region FROM accounts_dados WHERE login = a.login) AS region,
(SELECT saldo_creditos FROM accounts_dados WHERE login = a.login) AS saldo_creditos,
(SELECT status FROM accounts_dados WHERE login = a.login) AS status

FROM accounts AS a WHERE login = '".$login_session."' AND `password` = '".$senha_session."'");
$contagem = mysql_num_rows($confirmar);
$dados_login = mysql_fetch_array($confirmar);

 

Pronto Julio agora esta dando isso aki que tbm procurei mais nao achei a bronca. o que vc pediu pra fzer eu fiz porem dps de ter feito ficou assim...

 

if37lh.png

Link para o comentário
Compartilhar em outros sites

Oi Júlio, esse seu site é muito bom, só estou com o seguinte erro:

Quando eu logo no painel aparece esse erro abaixo:

 

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at E:\Inetpub\vhosts\l2mercurion.com\httpdocs\configs\config.php:1) in E:\Inetpub\vhosts\l2mercurion.com\httpdocs\configs\config.php on line 2

 

Warning: Cannot modify header information - headers already sent by (output started at E:\Inetpub\vhosts\l2mercurion.com\httpdocs\configs\config.php:1) in E:\Inetpub\vhosts\l2mercurion.com\httpdocs\pages\checar.php on line 19

 

 

O painel está logando normal o único problema é que toda vez que eu logo no painel aparece esse erro.

 

Como eu faço para resolver isso?

Link para o comentário
Compartilhar em outros sites

Pronto Julio agora esta dando isso aki que tbm procurei mais nao achei a bronca. o que vc pediu pra fzer eu fiz porem dps de ter feito ficou assim...

 

if37lh.png

 

Remova isso :

 

if( (!verifica_campo_tabela('accesslevel', 'accounts')) ) {
$configs['adm']['acesso_conta'] = 'accesslevel';
}elseif( (!verifica_campo_tabela('access_level', 'accounts')) ) {
$configs['adm']['acesso_conta'] = 'access_level';
}elseif( (!verifica_campo_tabela('accessLevel', 'accounts')) ) {
$configs['adm']['acesso_conta'] = 'accessLevel';
}

 

E na página index, onde está :

 

$configs['regras'] = file_get_contents('regras.txt');

 

Substitua por :

 

$configs['regras'] = file_get_contents('pages/regras.txt');

 

Se continuar com algum erro, remova tudo isso da index :

 

if( (!verifica_campo_tabela('accesslevel', 'accounts')) ) {
$configs['adm']['acesso_conta'] = 'accesslevel';
}elseif( (!verifica_campo_tabela('access_level', 'accounts')) ) {
$configs['adm']['acesso_conta'] = 'access_level';
}elseif( (!verifica_campo_tabela('accessLevel', 'accounts')) ) {
$configs['adm']['acesso_conta'] = 'accessLevel';
}

if( (!verifica_campo_tabela('accesslevel', 'characters')) ) {
$configs['characters']['accesslevel'] = 'accesslevel';
}elseif( (!verifica_campo_tabela('access_level', 'characters')) ) {
$configs['characters']['accesslevel'] = 'access_level';
}elseif( (!verifica_campo_tabela('accessLevel', 'characters')) ) {
$configs['characters']['accesslevel'] = 'accessLevel';
}

 

Oi Júlio, esse seu site é muito bom, só estou com o seguinte erro:

Quando eu logo no painel aparece esse erro abaixo:

 

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at E:\Inetpub\vhosts\l2mercurion.com\httpdocs\configs\config.php:1) in E:\Inetpub\vhosts\l2mercurion.com\httpdocs\configs\config.php on line 2

 

Warning: Cannot modify header information - headers already sent by (output started at E:\Inetpub\vhosts\l2mercurion.com\httpdocs\configs\config.php:1) in E:\Inetpub\vhosts\l2mercurion.com\httpdocs\pages\checar.php on line 19

 

 

O painel está logando normal o único problema é que toda vez que eu logo no painel aparece esse erro.

 

Como eu faço para resolver isso?

 

No arquivo config.php

 

Adicione na primeira linha, acima de tudo :

 

<?php
error_reporting(0);
?>

Link para o comentário
Compartilhar em outros sites

Remova isso :

 

if( (!verifica_campo_tabela('accesslevel', 'accounts')) ) {
$configs['adm']['acesso_conta'] = 'accesslevel';
}elseif( (!verifica_campo_tabela('access_level', 'accounts')) ) {
$configs['adm']['acesso_conta'] = 'access_level';
}elseif( (!verifica_campo_tabela('accessLevel', 'accounts')) ) {
$configs['adm']['acesso_conta'] = 'accessLevel';
}

 

E na página index, onde está :

 

$configs['regras'] = file_get_contents('regras.txt');

 

Substitua por :

 

$configs['regras'] = file_get_contents('pages/regras.txt');

 

Se continuar com algum erro, remova tudo isso da index :

 

if( (!verifica_campo_tabela('accesslevel', 'accounts')) ) {
$configs['adm']['acesso_conta'] = 'accesslevel';
}elseif( (!verifica_campo_tabela('access_level', 'accounts')) ) {
$configs['adm']['acesso_conta'] = 'access_level';
}elseif( (!verifica_campo_tabela('accessLevel', 'accounts')) ) {
$configs['adm']['acesso_conta'] = 'accessLevel';
}

if( (!verifica_campo_tabela('accesslevel', 'characters')) ) {
$configs['characters']['accesslevel'] = 'accesslevel';
}elseif( (!verifica_campo_tabela('access_level', 'characters')) ) {
$configs['characters']['accesslevel'] = 'access_level';
}elseif( (!verifica_campo_tabela('accessLevel', 'characters')) ) {
$configs['characters']['accesslevel'] = 'accessLevel';
}

 

 

 

No arquivo config.php

 

Adicione na primeira linha, acima de tudo :

 

<?php
error_reporting(0);
?>

 

e da Parte do Config o que faço. so ta faltando isso ta dando erro linha 48 e 49

Link para o comentário
Compartilhar em outros sites

No arquivo config.php

 

Adicione na primeira linha, acima de tudo :

 

<?php

error_reporting(0);

?>

 

Obrigado Júlio o erro sumiu agora quando eu faço o login no painel ele me redireciona para uma página em branco. Ele continua logando, mas ele vai para essa pagina e eu tenho que voltar para a página anterior para ver o painel.

 

 

 

 

Será que tem como fazer o painel não travar nessa página?

Link para o comentário
Compartilhar em outros sites

Olá julio td bem cara, server pra interlude ?

 

Ou so hight Five ?

 

Obrigado.

 

Cara posta uma sql atualizada ja arrumando esses erros.

 

nem no seu site exemplo funciona a criação de contas.

 

Só vc consegue arrumar. =)

Link para o comentário
Compartilhar em outros sites

Oi Júlio no painel de usuário na opção de teleportar char quando eu clico em teleporte aparece esse erro abaixo:

 

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') WHERE login = 'admin'' at line 1.

 

O que pode ser este erro?

Link para o comentário
Compartilhar em outros sites

Oi Júlio no painel de usuário na opção de teleportar char quando eu clico em teleporte aparece esse erro abaixo:

 

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') WHERE login = 'admin'' at line 1.

 

O que pode ser este erro?

 

Troque seu arquivo desbugar.php por esse :

 

<?php
validar_login();
$campo_jaula		 = !verifica_campo_tabela('in_jail', 'characters') ? 'in_jail' : 'punish_level';
$id = sql($_GET['id']);
$conta_site = $dados_login['login'];
$sql = mysql_query("SELECT * FROM characters WHERE account_name = '".$dados_login['login']."' AND $coluna_charid = ".$id) or die(mysql_error());
$c = mysql_fetch_array($sql);
$valor = $configs['valores']['desbugar'] == '0' ? 'Grátis!' : $configs['valores']['desbugar'] . ' créditos';
?>
<div id="content_pages">
<div class="box-in">
<div id="title_conents_center">Teleport Char <?php echo $c['char_name']; ?></div>
  <div class="box-content">
	    <br />
<table width="100%%" border="0">
 <tr>
   <td align="center"> </td>
 </tr>
 <tr>
   <td align="center"><a href="index.php?ir=pages/desbugar&id=<?php echo $id; ?>&sub=confirma"><img src="images/arrow-debug-2.png" width="128" height="128" border="0" /></a></td>
 </tr>
 <tr>
   <td align="center"><a href="index.php?ir=pages/desbugar&id=<?php echo $id; ?>&sub=confirma">Teleport Char</a>
   </td>
 </tr>
</table>

<?php

if($_GET['sub'] == 'confirma') {
$id = sql($_GET['id'], TRUE);
$erro .= $dados_login['saldo_creditos'] > $configs['valores']['desbugar'] && $c[$campo_jaula] == '1' ? 'Character in Jail'."<br />" : NULL;

if(empty($erro)) {
 mysql_query("UPDATE characters SET x = '82698', y = '148638', z = '-3473' WHERE $coluna_charid = ".$id) or die(mysql_error());
 mysql_query("UPDATE accounts_dados SET saldo_creditos = (saldo_creditos - ".$configs['valores']['desbugar'].") WHERE login = '$conta_site'") or die(mysql_error());
 echo "<script>alert('Char ".$c['char_name']." Character Teleported');</script>";
 echo "<script>window.location='index.php?ir=pages/chars';</script>";

 }else{
 echo "<script>alert('".$erro."');</script>";
 echo "<script>window.location='index.php?ir=pages/chars';</script>"; 
}
}
?>
<br /><br />
</div>
</div>
</div>

 

Olá julio td bem cara, server pra interlude ?

 

Ou so hight Five ?

 

Obrigado.

 

Cara posta uma sql atualizada ja arrumando esses erros.

 

nem no seu site exemplo funciona a criação de contas.

 

Só vc consegue arrumar. =)

 

Sim amigo, ele foi feito para Interlude, para High Five, dependendo das tabelas, existem algumas modificações.

 

No site testa funciona sim a criação de contas acabei de testar lá rsrsrs.

 

A única mensagem é essa :

 

Language string failed to load: connect_host

 

E isso é porque não está configurado o SMTP

Link para o comentário
Compartilhar em outros sites

No hora que preencho tudo e clico em cadastrar da esse erro

Language string failed to load: connect_hostUnknown column 'email' in 'field list'

 

Não estou conseguindo tbm fazer meu email receber confirmações de Donate!

 

Sabem oque pode ser?

Link para o comentário
Compartilhar em outros sites

No hora que preencho tudo e clico em cadastrar da esse erro

Language string failed to load: connect_hostUnknown column 'email' in 'field list'

 

Não estou conseguindo tbm fazer meu email receber confirmações de Donate!

 

Sabem oque pode ser?

 

Um dos erros é na configuração do SMTP no arquivo config.

 

E o outro erro, é que está faltando a coluna 'email' na tabela accounts.

 

Quando cadastro as informações só vão para a DB Accounts_dados e não vão pra Accounts, como ajeitar isso?

 

De uma olhada no arquivo REGISTER.PHP

 

Onde tem os INSERTS, se alguma das linhas estão assim : INSERT INTO accounts

 

Veja se tem a coluna 'email' na tabela accounts

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...
  • 2 weeks later...

Quando tento me registrar aperece essa msg, (Language string failed to load: connect_hostUnknown column 'nivel' in 'field list'), ja executei a sql do site mais não registra.

 

Crie uma coluna chamada 'nivel' na tabela accounts_dados, o erro de language string, é porque você não configurou o SMTP no arquivo config.

Link para o comentário
Compartilhar em outros sites

Olá bom dia !

 

Alguém poderia me ajudar sobre o assunto de SMTP ...

 

E como vou mandar o Email automáticamente para o Hotmail dele para ele obter a recuperação de conta, Ele diz que envia mais quando vou chegar o EMAIL não tem nada :/

 

Esperando resposta anteciosamente !

 

Fez um bom trabalho no site rs.

 

 

 

E quando muda a senha ele fica tudo branco não tem nenhuma mensagem mais muda de boa ...

 

Tem como arrumar isso pra min e mandar não Por gentileza ? rs.

 

Vlw amigo, abraços !

 

 

 

Como configuro para colocar Favicon no Site ?

Editado por DinhO16
Link para o comentário
Compartilhar em outros sites

Olá bom dia !

 

Alguém poderia me ajudar sobre o assunto de SMTP ...

 

E como vou mandar o Email automáticamente para o Hotmail dele para ele obter a recuperação de conta, Ele diz que envia mais quando vou chegar o EMAIL não tem nada :/

 

Esperando resposta anteciosamente !

 

Fez um bom trabalho no site rs.

 

 

 

E quando muda a senha ele fica tudo branco não tem nenhuma mensagem mais muda de boa ...

 

Tem como arrumar isso pra min e mandar não Por gentileza ? rs.

 

Vlw amigo, abraços !

 

 

 

Como configuro para colocar Favicon no Site ?

 

Amigo, tem um arquivo config, e nele você encontrará as configurações de SMTP, tais como :

 

Servidor, Login, Senha.

 

Servidor : Você deve informar o endereço usado para conexão com SMTP, geralmente se usa : mail.seudominio.com.br

 

Login : Você deve informar seu email ex : [email protected]

 

Senha : Você deve informar a senha do email que você inseriu acima.

 

Obrigado !

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.