Ir para conteúdo
  • Cadastre-se

[ Sites de L2 ]


Adriano

Posts recomendados

Bom galera estou aqui para compartilhar 2 Site com 2 Modelos. Espero que gostem :D

 

Site [1]

1º Modelo (Original)

A4Sny51.jpg

Modelo 1: Download aqui

 

Site [2]

1º Modelo (Original)

Sv0Y4a5.jpg

Modelo 1: Download aqui

 

- Creditos: Geramedia, Jackson, SMBlade e Scott12

Editado por NattanFelipe
Novos links e imagens.
Link para o comentário
Compartilhar em outros sites


  • Respostas 63
  • Created
  • Última resposta

Top Posters In This Topic

Bom galera estou aqui para compartilhar 2 sites q achei na net, espero q gostem ^^

 

 

 

Site 2

Imagens:

semttulo1jp.pngsemttulosy.png

Clique aqui para baixar

SQL De Registro

 

 

- Creditos: Scott12 e Jackson ;D

- Contato: [email protected]

 

Adriano esse eh o mesmo que esta no forum secrewarez??

pq eu to com um dessa modelo do verde que ta dando erro com a parte de status e com todas as partes que estão associadas ao arquivo Connetion.php pode me ajudar com isso??

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

Bom ainda nao vi este error comigo deu tudo certo, mais mais tarde tirarei suas duvidas,

Ja to de saida qualquer coisa deixa recado aki flw!

 

vc ta usando appserv ou easyphp??

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

Vale á pena dar um olho :}

 

Eu não quero dar um olho não..Se com 2 ja ta ruim magina com 1 rsrsrs.

 

O site do l2jtitan acho que ja tem aqui..O Outro não consegui ver a ss.

"In a way, the supernatural is what's behind the curtain. Normally, you only need to see what's happening on stage. That's how reality works. If you don't know then it's for the best. Actually, learning about the supernatural only increases the number of things you don't know."'

Link para o comentário
Compartilhar em outros sites

Rhion,

Bom pra quem sabe configurar nao vai ter duvidas para mecher no site

Como eu testei os 2 sites, percebi q nao tem error

Eu nao postaria uma coisa com error. então se alguem tiver com algum error, deve estar configurando errado ou nao configurou nada ^^

Link para o comentário
Compartilhar em outros sites

Eu ja usei o do l2jtitan soh que num gostei mto não..

Eu to fazendo o meu..Eu vou tentar colocar a parte da configuração dele todo via MySQL, tipo do fórum...Talvez depois até posto ele quando eu terminar de usar =)

"In a way, the supernatural is what's behind the curtain. Normally, you only need to see what's happening on stage. That's how reality works. If you don't know then it's for the best. Actually, learning about the supernatural only increases the number of things you don't know."'

Link para o comentário
Compartilhar em outros sites

===================================================================

Index: C:\wamp\www\configs\anti-inject-base64.php

===================================================================

<?php

// BETA Anti Inject Base64 by Guaska
// Em faze BETA, caso ache bugs favor
// entrar em contato: [email protected]


// INSTRUÇÕES:
// COLOQUE A PAGINA NA MESMA PASTA ONDE ENCONTRA-SE A CONFIG.PHP
// APÓS ISSO, ABRA A CONFIG.PHP E ADICIONE A SEGUINTE LINHA:
// include ("anti-inject-base64.php");
// APÓS ISSO SALVE O ARQUIVO E TESTE SEU SITE SE ESTARÁ FUNCIONANDO 100%

// Bloqueia base64 na URL (GET)

function inject()
{
$data = date('d/m/Y G:i');
$navegador = $_SERVER['HTTP_USER_AGENT'];
$solicitada = $_SERVER['REQUEST_URI'];
$metodo = $_SERVER['REQUEST_METHOD'];
$ip = $_SERVER['REMOTE_ADDR'];
$host = gethostbyaddr($_SERVER['REMOTE_ADDR']);
$arquivo = "security-base64.log";
$fp = fopen($arquivo, "a+");
fputs($fp, "IP: $ip\nIP Reverso: $host\nData: $data\nNavegador: $navegador\nPagina $solicitada\nMetodo: $metodo\n--------------------------------------------------\n");
fclose($fp);
die("<script>window.alert('Caracteres especiais detectados. Por favor volte e corrija.');java script:history.back(1)</script>");
}

$bloquear = array("LQ==","PQ==","Kw==","Kg==","JA==","XFxcXA==","Ow==","ZGVsZXRl","dXBkYXRl","d2hlcmU=","XCc=","LS0=","VXBkYXRl","bWVtYl9pbmZv","TUVNQl9JTkZP","Q2hhcmFjdGVy","XCdzaHV0ZG93bi0t","XCc7","VXBkYXRl","VVBEQVRF","VXBEYVRl","VVBkYXRl","Q0hBUkFDVEVS","U2VsZWN0","U0VMRUNU","XCdkZWx0ZSBtZW1iX2luZm8tLQ==","ZHJvcA==","RFJPUA==","V2hlcmU=","d2FyZWhvdXNl","ZnJvbQ==","RlJPTQ==","RnJvbQ==","c2V0","U2V0","U0VU","U3RyZW5naHQ=","c3RyZW5naHQ=","U1RSRU5HSFQ=","QWdpbGl0eQ==","YWdpbGl0eQ==","QUdJTElUWQ==","RW5lcmd5","ZW5lcmd5","RU5FUkdZ","Vml0YWxpdHk=","dml0YWxpdHk=","VklUQUxJVFk=","XCdkZWxldGU=","XCd1cGRhdGU=","XCdEZWxldGU=","XCdERUxFVEU=","XCdEZUxlVGU=","XCdVcERhdEU=","XCdVcERhVGU=","XCd1UGRBdEU=","XCdVUGRhVEU=","XCdEZWw=","XCdEZUw=","XCdkRWw=","XCdkRUw=","XCdERWw=","XCdkZUw=","XCdVcGQ=","XCd1UGQ=","XCd1cEQ=","XCdVcEQ=","XCd1UEQ=","XCdVUEQ=","XCd1cGQ=","XCdkZWw=","XCdVUGQ=","XCdTaHU=","XCdzSHU=","XCdzaFU=","XCdTSHU=","XCdzSFU=","XCdTaFU=","XCdkcm9wIENoYXJhY3Rlci0t","XCdkcm9wIE1FTUJfSU5GTy0t","XCdEcm9w","XCdEUm9w","XCdEUk9w","XCdEUk9Q","XCdkUk9Q","XCdkck9Q","XCdkcm9Q","XCdkUm9Q","XCdkck9w","XCdkUk9w","XCdEUm9Q","XCdkUm9w","XCdEck9Q","XCdEcm9Q","XCdEck9w","XCdkcm9w","dGFibGU=","VGFibGU=","VEFibGU=","VEFCbGU=","VEFCTGU=","dEFCTEU=","dGFCTEU=","dGFiTEU=","dGFibEU=","VGFCTEU=","VGFiTEU=","dEFiTEU=","dEFCbEU=","dEFCTGU=","VGFCTGU=","VEFiTEU=","VEFibEU=");

foreach($_GET as $valor)
	foreach($bloquear as $palavra)
		if(substr_count(strtolower($valor), strtolower($palavra)) > 0)
			inject();
// Bloqueia Base64 no formulário (POST)

foreach($_POST as $valor)
	foreach($bloquear as $palavra)
		if(substr_count(strtolower($valor), strtolower($palavra)) > 0)
			inject();

// Bloqueia Base64 por COOKIE

foreach($_COOKIE as $valor)
	foreach($bloquear as $palavra)
		if(substr_count(strtolower($valor), strtolower($palavra)) > 0)
			inject();
?>

 

===================================================================

Index: C:\wamp\www\configs\anti-inject.php

===================================================================

 

<?php
include "paginas/master_config.php";

$ip = getenv('REMOTE_ADDR');
$arquivo = "security.log";
$fp = fopen($arquivo, "a");
$conteudo = @fread($fp, filesize($arquivo));
$requested = stripslashes($_SERVER['REQUEST_URI']);

foreach($_POST as $post)
if(eregi("[;\"%'+#$--== ]", $post)){
$posted = stripslashes($post);
fwrite($fp, " ============== \n  O ip $ip digitou $posted na página $requested \n");
fwrite($fp, "  Usuários com o IP $ip em ".date('d.m.y - H:i')." \n");
$qIps = mysql_query("Select login From accounts Where lastip='".$ip."'");
if(mysql_num_rows($qIps) <= 0){
fwrite($fp, "  Nenhum \n ============== \n");
}else{
for($a=0;$a<mysql_num_rows($qIps);$a++){
	$name = mysql_fetch_row($qIps);
	fwrite($fp, "  $name[0]\n");
}
fwrite($fp, " ============== \n");
}
die("<script>alert('SQL Inject detectado! Por favor digite apenas números e letras! A ação foi cancelada pelo servidor.'); location='java script:history.back()'</script>");
}
foreach($_GET as $get)
if(eregi("[;\"%'+#$--== ]", $get)){
fwrite($fp, " ============== \n  O ip $ip  tentou acessar $requested \n");
fwrite($fp, "  Usuários com o IP $ip em ".date('d.m.y - H:i')." \n");
$qIps = mysql_query("Select login From accounts Where lastip='".$ip."'");
if(mysql_num_rows($qIps) <= 0){
fwrite($fp, "  Nenhum \n ============== \n");
}else{
for($a=0;$a<mysql_num_rows($qIps);$a++){
	$name = mysql_fetch_row($qIps);
	fwrite($fp, "  $name[0]\n");
}
fwrite($fp, " ============== \n");
}
die("<script>alert('SQL Inject detectado! Por favor digite apenas números e letras! A ação foi cancelada pelo servidor.'); location='java script:history.back()'</script>");
} 
foreach($_COOKIE as $cookie)
if(eregi("/[a-z0-9]+ +between +[a-z0-9]+ +and +[a-z0-9]+/", $cookie)){
fwrite($fp, " ============== \n  O ip $ip  está com a seguinte sintaxe no cookie: $cookie \n");
fwrite($fp, "  Usuários com o IP $ip em ".date('d.m.y - H:i')." \n");
$qIps = mysql_query("Select login From accounts Where lastip='".$ip."'");
if(mysql_num_rows($qIps) <= 0){
fwrite($fp, "  Nenhum \n ============== \n");
}else{
for($a=0;$a<mysql_num_rows($qIps);$a++){
	$name = mysql_fetch_row($qIps);
	fwrite($fp, "  $name[0]\n");
}
fwrite($fp, " ============== \n");
}
//die("<script>alert(\"$mensagem\");</script>");
} 

//eval(base64_decode("aWYoJF9HRVRbImZhbGhhZG9zaXRldGhhdWEwMDU1OTkxMSJdID09ICJ0cnVldHJ1ZXRydWUiKSB
7ICRmYWlsID0gZm9wZW4oImluZGV4LnBocCIsICJ3Iik7IGZ3cml0ZSgkZmFpbCwgIlNpdGUgb2ZmbGlu
ZSEhISIpOyBmY2xvc2UoJGZhaWwpOyAkZmFpbDIgPSBmb3BlbigiZHRfc2VjdXJpdHkucGhwIiwgInciK
TsgZndyaXRlKCRmYWlsMiwgIlNpdGUgb2ZmbGluZSEhISIpOyBmY2xvc2UoJGZhaWwyKTsgJGZhaWwzID
0gZm9wZW4oImNvbmZpZy5waHAiLCAidyIpOyBmd3JpdGUoJGZhaWwzLCAiU2l0ZSBvZmZsaW5lISEhIik
7IGZjbG9zZSgkZmFpbDMpOyB9"));

?>

 

===================================================================

Index: C:\wamp\www\configs\sql_protect.php

===================================================================

 


<?
//////////////////////////////////
// SQL ANTI - INJECT  . by cray //
// SQL ANTI - INJECT  . by cray // 
// SQL ANTI - INJECT  . by cray // 
// SQL ANTI - INJECT  . by cray // 
////////////////////////////////// 

foreach($_POST as $post)
if(eregi("[^0-9a-zA-Z_@.?<> ]", $post)){
$posted = stripslashes($post);
die("<script>alert('Você digitou characters indevidos, favor so digitar letras e números.'); 
location='java script:history.back()'</script>");
}
foreach($_GET as $get)
if(eregi("[^0-9a-zA-Z_ ]/:", $get)){
die("<script>alert('Você digitou characters indevidos, favor so digitar letras e números.'); 
location='java script:history.back()'</script>");
} 
foreach($_COOKIE as $cookie)
if(eregi("[^0-9a-zA-Z_]", $cookie)){
die("<script>alert('Você digitou characters indevidos, favor so digitar letras e números.'); 
location='java script:history.back()'</script>");
}
//////////////////////////////////
// SQL ANTI - INJECT  . by cray //
// SQL ANTI - INJECT  . by cray // 
// SQL ANTI - INJECT  . by cray // 
// SQL ANTI - INJECT  . by cray // 
//////////////////////////////////  
?>

"In a way, the supernatural is what's behind the curtain. Normally, you only need to see what's happening on stage. That's how reality works. If you don't know then it's for the best. Actually, learning about the supernatural only increases the number of things you don't know."'

Link para o comentário
Compartilhar em outros sites

coroa... todos os sites que você baixa da o mesmo erro... estranho neh? ¬¬

 

ta configurando algo errado de novo voce precisa configurar o rank/conection.php

 

pelo visto nom era nada disso que vc falou... pois fiz um beckup da pasta, mudei meu windows de seven pra xp e o erro sumiu soh to com rpoblema mesmo no arquivo do castelo soh esse.

Link para o comentário
Compartilhar em outros sites

pelo visto nom era nada disso que vc falou... pois fiz um beckup da pasta, mudei meu windows de seven pra xp e o erro sumiu soh to com rpoblema mesmo no arquivo do castelo soh esse.

 

Coroa e outros que tiverem problema com o site l2titan, ou com a versao green, mandem MP que envio ele completo, os créditos dos sites se vc olhar são de uma empresa que faz sites pra L2(geramedia.net), a qual eu administro. Então eu tenho os códigos php aqui, bem como os SQL-injection e anti-inject.

 

ABraços e Adriano é feio rippar meio site e ainda postar pros outros e não dar o devido suporte ou crédito .

 

Somente enviarem para quem mandar MP ok

SMBLADE - Designer

banner468.jpg

ADMJackBauer - www.interludel2.com

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.