Ir para conteúdo
  • Cadastre-se

[Tutorial] Como montar um site de lineage 2


Grundor

Posts recomendados

[Estava testando aki e deu o seguinte erro quando fui abilitar o shor open thag do PHP.....

 

"Coud not execute menu open item (internal error)

[Exeption]Coud not perfom service action:

O serviço nao foi iniciado"

 

 

Eu ja tenho o MySQL no PC.....

 

Oq estou fazendo errado??

 

 

eu finalizei e abrir dinovo + continua com o mesmo problema oq eu to fazendo de errado...

Alguem Pliz ajuda... Urgente.. so falta meu sait pra ta completo...

Link para o comentário
Compartilhar em outros sites


  • L2JBr ADM

Reinicie o Wamp quando esse erro ocorrer.(geralmente ocorre quando vc efetua muitas configs nele)

Se nao tiver funcionando procure o PHP.ini e edite a linha que habilita o Shot open tag.

 

short_open_tag = Off

 

e altere ela para:

short_open_tag = On

EJoOSOj.gif

Sua pergunta foi respondida? Certifique-se de marcar a resposta como a solução aceita.
Se existe mais de uma resposta, utilize o "vote up" para destacá-la.
Se você achar uma resposta útil, diga obrigado clicando no botão "Gostei".

Link para o comentário
Compartilhar em outros sites

Reinicie o Wamp quando esse erro ocorrer.(geralmente ocorre quando vc efetua muitas configs nele)

Se nao tiver funcionando procure o PHP.ini e edite a linha que habilita o Shot open tag.

 

 

hum consigui vlw..

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

[size="3"]Agora deu tudo serto tentei abrir o sait na net e ta dando issu ..

 

Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'localhost' (10061) in C:\Arquivos de programas\EasyPHP 2.0b1\www\config\_config_procs.php on line 2

Couldn't connect to MySQL

Ta serto + eu vo mexe no _config_procs.php e nao entendi nada que tenho que fazer la sobre esse Erro oq tenho que fazer la...?

Alguem pode ajuda...[/size]

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

  • 3 weeks later...
  • 1 month later...
  • 3 weeks later...

mano to precisando de ajuda em 3 coisas

 

1: preciso q me ajude a trocar a imagem de cima do site, pq meu server é high five

2: preciso saber qual o arquivo para mim editar a winget status do servidor pq eu quero fazer um site em ingles,

3: preciso saber qual o arquivo para mim editar a winget de apoio pelas duas primeiras razoes,preciso do sitem em ingles,e as fotos do kamael,hellbound nao sao high five

 

ahh meu template é kamael2

 

ahhh meu site é: http://l2hitman.zapto.org/index.php?id=start

Editado por ercan

Logoercan.png

 

L2Hitman Em Breve

Link para o comentário
Compartilhar em outros sites

  • 2 months later...

Cara e naum to Entendendo NADA Depois Q vc Confugura o PHP, Cria as pasta la no WWW, pois aqui naum Criou NADA :S

Esŧudαηŧє dє "Publicidade e Propaganda"

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...

Ja to fikando nervoso de tanto tenta coloca esse site on eu uso o EASYPHP minha portasdo meu modem esta aberta mas como eu vou sabe que eu abri as portas domeu modem .. esto usanod o no-ip mas nada .. por favor vc que sabe como coloca esse site online mim add no msn [email protected]

Assinatura removida pela administração.

Link para o comentário
Compartilhar em outros sites

  • 5 years later...
  • 4 months later...
  • 3 months later...

 

Tutorial de como montar um site de lineage 2

com scripts pré-configurados.

•Arquivos/Programas necessários:

Easy php escolha um link:

Easy php link 1

 

Easy php link 2

 

Pasta www com os scripts e skins NOVO!

 

Aqui a galeria das skins que eu add... http://grundor.is-the-boss.com/galery/index.php

 

DDNS

 

◘Opcionais:

Photoshop CS3(TRIAL)

Adobe Macromedia Dreamweaver(TRIAL)

 

 

•Tutoriais necessários:

 

DDNS como instalar configura

Tutorial de wamp server para sites de lineage2 <---- Caso seja usado a partir desse ir para a parte: " ◘O Site "

 

◘Obs: Também pode ser usado o no-ip

 

 

•Css, HTML, XML, normas w3c, tabelas, PHP etc:

http://www.maujor.com/index.php

http://br.php.net/tut.php

http://www.icmc.usp.br/ensino/material/html/

http://tutoriaisphotoshop.blogspot.com/

http://www.designteen.net/

 

 

 

♠Iniciando

 

 

-Após a instalação do Easy PHP é necessário configurá-lo:

 

Se o Easy PHP n estiver sendo executado vá em: Iniciar >> Todos os Programas >> EasyPHP 2.0b1 (ou outra versão que você instalou)>>Easy PHP

 

Ele irá ser executado minimizado ao lado do relógio provavelmente dará erro não clique em nada nesse momento.

 

78831012uu0.jpg

 

1-Clique com o direito do mause sobre o ícone do EasyPHP.

2-Vá em configurações.

 

 

3-Apache:

 

 

 

Abrirá um arquivo txt chamado httpd, nele proucure a linha:

 

# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, instead of the default. See also the <VirtualHost>
# directive.
#
# Change this to Listen on specific IP addresses as shown below to 
# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
#
#Listen 12.34.56.78:80
Listen SEUDOMINIDINAMICOAQUI.ddns.com.br:80(CASO VC USE MODEN TERÁ Q UTILIZAR 8080 ou 8090.)
4-MySQL:

 

Abrirá um arquivo chamado my.txt

Configure desta maneira:

 

# The following options will be passed to all MySQL clients
[client]
#password	= 
port		= 3306   <<<  aqui pode deixar essa porta mesmo.
socket		= /tmp/mysql.sock

# Here follows entries for some specific programs

# The MySQL server
[mysqld]
datadir = ${path}/mysql/data
basedir = ${path}/mysql
bind-address = 127.0.0.1
#Uncomment for use on USB key
#skip-innodb
port		= 3307   <<<  Aqui mude para não dar conflito com a do seu server.
socket		= /tmp/mysql.sock
Pronto o EasyPHP ja está configurado.

 

 

◘O Site

 

 

Após a configuração e instalação foi criado um diretório em: C:\Arquivos de programas\EasyPHP 2.0b1\www

Nessa pasta WWW coloque os arquivos de www-por_grundor.rar, mas cuidado para não criar assim C://..././WWW/WWW se não não vai dar certo.

 

♠Configurando:

Vá em: C:\Arquivos de programas\EasyPHP 2.0b1\www\config

 

Abra primero o arquivo config.php (pode ser aberto no bloco de notas ou pelo dreanweaver:

Basicamente adicione os dados do seu Server q ele está pedindo ao lado depois de //

 

 

♠Primeira parte:

 

 

$L2JBS_config["mysql_host"]="localhost";	// IP ou o host tipo no-ip ou ddns["localhost"]
$L2JBS_config["mysql_port"]="3306";		// Porta			  ["3306"]
$L2JBS_config["mysql_db"]="l2hell";		// Banco de Dados 		["l2jdb"]
$L2JBS_config["mysql_login"]="root";		// Login 			["root"]	
$L2JBS_config["mysql_password"]="";		// Senha( APENAS "" se não tiver uma senha)["root"]
$htitle="Site Por grundor";				// Titulo do site
♠Segunda Parte:

$top="50";					// Numero de players no TOP que aparece no index.php
$hserver="lokopakas.ddns.com.br";			// IP ou host
$portgame="7777";				// Porta do jogo
$portlogin="2106";				// Porta do login
♠Terceira Parte:

 

$shat="c:/Server/gameserver/log/chat.log";	// Caminho do arquivo log de chat.

///////////// Rates do server ////////////////

$exp="15";
$sp="20";
$adena="55";
$items="12";
$spoil="12";
Obs: Há algumas coisas com “Não mexa aqui” se você não souber pra que servem realmente não mexam.

 

♠Quarta Parte- Mudando a Skin

 

C:\Arquivos de programas\EasyPHP 2.0b1\www\config\config_syte\config_templates.php

 

<?php
////////////// Mude o nome da skin ////////////////////
$skin="nome da skin";		//- O nome da skin
///////////////////////////////////////////////////////
?>
Eu coloquei junto com a pasta WWW as skins traduzidas: blazing e report e m7, shock-word e napas sendo q a napas tem mudar o menu .php q está dentro da pasta WWW

 

 

♠Configurando o registro de acc pelo site:

 

Vá em C:\Arquivos de programas\EasyPHP 2.0b1\www\module

Changepassword.php changepassword2.php e reg_true.php abra os arquivos e edite a conexão com o banco de dados:

// configs
$hostname = "localhost"; // your database location
$database = "l2hell"; // your l2j database
$user = "root"; // your database user
$pass = ""; // your database password
♠Configurando o índex.html

 

Dentro das diversas pastas tem um índex.html, ele serve pra caso algum engraçadinho queira roubar informações suas não conseguir.

Por ex: se alguém digitar SEUDOMINIDINAMICOAQUI.ddns.com.br/config/config.php poderá visualizar suas configurações com a senha do seu banco de dados etc..

o principal está em C:\Arquivos de programas\EasyPHP 2.0b1\www depois de editá-lo poderar apenas copiar e colocar para as pastas.

 

 

Configure dessa maneira:

 

 

 

<HTML>
  <HTML>
  <HEAD>
	<META HTTP-EQUIV="REFRESH" CONTENT="1; URL=index.php">
  </HEAD>
  <BODY>
  </BODY>
</HTML>
Depois disso Copie e cole subistituindo nas diversas pástas q tem em WWW.

Pronto depois disso seu site já pode ser acessado de qualquer lugar por:

 

 

http://SEUDOMINIDINAMICOAQUI.ddns.com.br

 

>>>>Atenção<<<<

♠Caso você tenha um moden...

Seu moden tá blokiando o no-ip libere a porta do no-ip: 3072, 3389, 8245

liberar no moden tbm as portas 81, 8080 ou 8090

talvez as dos mysql 3306 e 3307...

e as mesmas portas no firewall veja aqui: http://www.no-ip.com/support/guides/router...p_firewall.html

esperimenta com o ddns com ele apenas com a porta 80 liberada ja funciona..

 

E: Verifique isso

ipfixorb5vd0.jpg

mais detalhes http://www.xpzone.net/forum/f90/tutorial-deixando-ip-fixo-servidor-5768.html

 

Você deverá digitar no executar(iniciar,>> executar ) cmd e depois ip config para você descobrir seu internal ip:

ipinternonf1.jpg

 

 

Se o ip que eu marquei no seu aparecer 192...... ele não vai servir... então vc vai no site... www.meuip.com.br e pega aquele ip que aparecer lá... mas ai vc térá um problema, se não tiver um ip fixo.. vc terá que mudar essa config sempre....pq esse ip vai mudar...

 

achado seu ip por um desses processos vc vai em

 

C:\Arquivos de programas\EasyPHP\apache\conf\httpd.config

 

e modifique de acordo com o tutorial ao invés de utilizar um direcionador de ip vc usa seu ip interno...

 

 

mas ai seu site só será acessado pelo seu ip ou se você utilizar um redirecionardor de páginas... tipo o vai.lá (www.vai.lá) registração bem simples.recomendo esse apesar dos spams que ele vai colocar no seu site...

 

 

 

Add new e mensagens a home do seu site.

 

 

Digite em seu navegador.

 

http://SeuDominioDinamicoAqui.ddns.com.br/news/index.php

 

aparecerá isso:

imagemxm8.jpg

 

já logado irá aparecer esse painel(sem as marcações em vermelho blink.png )

 

imagem2hr0.jpg

 

 

 

Notas:

 

 

♣Você pode modificar as imagens em: C:\Arquivos de programas\EasyPHP 2.0b1\www\skins

♣Dentro de Cada pasta do estilo de skin. Se você souber mexer em HTML, XML e CSS vai poder modificar o tamanho e tipo das tabelas, fontes e tamanhos de letras

♣Existem arquivos de atalhos dos arquivos necessários para configurar que não estejam na pasta config em: C:\Arquivos de programas\EasyPHP 2.0b1\www

♣Existem arquivos para trocar caso seu servidor seja kamael ou superior em: C:\Arquivos de programas\EasyPHP 2.0b1\www\module\Backup\Mudar

Bom é isso ai, espero ter ajudado quem tava com dificuldades em criar o seu site.E como o desaparecido Lucio Leal disse e eu repito:

“Iventem, criem, tentem, errem... mas não esqueçam do Backup! Tenha sempre uma cópia de segurança dos arquivos do seu site para não se dar mal no final.”

Além de dúvidas aqui, post também o seu site se deu certo, ou novas skins ou até mesmo skins de autoria própria

 

Créditos: Lúcio Leal

EU Leonan-Grundor

 

 

 

 

 

Proibida a reprodução mesmo que em partes desse tutorial sem a publicação dos devidos créditos de criação

 

Garantido pela Constituição da República Federativa do Brasil, de 05 de outubro de 1988

Portaria MCT n° 88, de 23/04/98

Propriedade Intelectual

 

poderia arruma alguns links ?? estão off

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.