|
Você não é registrado, por favor registre-se para ter acesso ao conteúdo completo. Caso seja registrado, efetue login. Esqueceu sua senha? Clique aqui Recomendamos o uso do Mozilla Firefox para uma melhor visualização. |
|
| Início | Postados Hoje | Marcar Fóruns Como Lidos | Álbums | Banidos | SE Team | Medalhas |
|
|||||||
| Registrar | Loteria VIP | Staff SE | Regras do fórum | Comunidade | Arcade | Postados Hoje | Pesquisar | Experience |
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
![]() |
|
|
LinkBack | Ferramentas do Tópico | Modos de Exibição |
|
|
#1 (permalink) |
|
Banido
![]() Registrado em: Nov 2009
Localização: Fortaleza-ce
Posts: 325
Agradeceu: 125
Agradecido 203 Vezes em 82 Posts
Nome Real: Allan Alcântara de Alencar
|
Tá ai em java o evento para fazer com tesouro..
Deverá pegar as LOC do game e adicionar ai , e o sistema irá pegar de forma aleatorio as coordenadas.. Sistema era de Evento de Boss porém a um tempo atrás fiz modificações para que seje de matar um certo Mob, porém no caso aqui você pode por uma baú ou qualquer coisa que seje para suprir suas necessidades. Só muda os Dizeres.. ( OVER12) Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
/*
* This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU General Public License as published by the Free Software
* Foundation, either version 3 of the License, or (at your option) any later
* version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
* details.
*
* You should have received a copy of the GNU General Public License along with
* this program. If not, see <http://www.gnu.org/licenses/>.
*/
package events.TesouroPerdido;
import java.util.List;
import java.util.Map;
import javolution.util.FastList;
import javolution.util.FastMap;
import com.l2jserver.gameserver.Announcements;
import com.l2jserver.gameserver.model.actor.L2Npc;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.model.quest.Quest;
import com.l2jserver.util.Rnd;
/**
* @author TheOne
* @version Over12 - Configurado , e Fixados erros.
*/
public class TesouroPerdido extends Quest
{
private static final String qn = "TesouroPerdido";
private static final int _eventInterval = 4 * 60 * 60 * 1000; // Intervalo do Evento em 4 em 4 horas.
private static final int _firstStart = 10 * 60 * 1000; //Apos religar o servidor inicia o evento automaticamente 10 minuto.
private static final int _mobInterval = 1 * 60 * 60 * 1000;//1 Hora ate matar o Mob.
private static L2Npc RbSpawn = null;
private static final String[][] Mobs = {
{ "Tesouro Perdido", "60001" }, //Npc para usar
};
private static final String[][] RbCoords = { // Valores aleatorios.
{ "Primeval Isle", "10724,-23729,-3650" }, // Coordenadas de onde pode aparecer o mob ou tesouro , pegar Coordenadas no game e adicionar.
{ "Primeval Isle", "10724,-23729,-3650" },
};
private static final int MOUNT = 5;
private static final int[][] REWARD = {//id,amount,chance
{ 9546, Rnd.get(1, MOUNT), 90 },//Fire Stone
{ 9552, Rnd.get(1, MOUNT), 7 },//Fire crystal
{ 9558, Rnd.get(1, MOUNT), 1 },//Fire jewel
{ 9547, Rnd.get(1, MOUNT), 90 },//Water Stone
{ 9553, Rnd.get(1, MOUNT), 7 },//Water crystal
{ 9559, Rnd.get(1, MOUNT), 1 },//Water jewel
{ 9548, Rnd.get(1, MOUNT), 90 },//Earth Stone
{ 9554, Rnd.get(1, MOUNT), 7 },//Earth crystal
{ 9560, Rnd.get(1, MOUNT), 1 },//Earth jewel
{ 9549, Rnd.get(1, MOUNT), 90 },//Wind Stone
{ 9555, Rnd.get(1, MOUNT), 7 },//Wind crystal
{ 9561, Rnd.get(1, MOUNT), 1 },//Wind jewel
{ 9550, Rnd.get(1, MOUNT), 90 },//Dark Stone
{ 9556, Rnd.get(1, MOUNT), 7 },//Dark crystal
{ 9562, Rnd.get(1, MOUNT), 1 },//Wind jewel
{ 9551, Rnd.get(1, MOUNT), 90 },//Divine Stone
{ 9557, Rnd.get(1, MOUNT), 7 },//Divine crystal
{ 9563, Rnd.get(1, MOUNT), 1 },//Divine jewel
{ 6393, Rnd.get(10, MOUNT), 90 },
{ 60020, Rnd.get(1, MOUNT), 90 },
{ 60021, Rnd.get(1, MOUNT), 40 },//Festival Adena
{ 14169, 1, 33 },//Top-Grade Life Stone - level 84
};
private static Map<Integer, String> Mobs_ = new FastMap<Integer, String>();
private static List<Integer> MobsId = new FastList<Integer>();
private static List<String> MobsLocName = new FastList<String>();
private static List<Integer> MobsX = new FastList<Integer>();
private static List<Integer> MobsY = new FastList<Integer>();
private static List<Integer> MobsZ = new FastList<Integer>();
static
{
for (String[] monster : Mobs)
{
Mobs_.put(Integer.valueOf(monster[1]), monster[0]);
MobsId.add(Integer.valueOf(monster[1]));
}
for (String[] mobCoords : RbCoords)
{
String[] coords = mobCoords[1].split(",");
MobsLocName.add(mobCoords[0]);
MobsX.add(Integer.valueOf(coords[0]));
MobsY.add(Integer.valueOf(coords[1]));
MobsZ.add(Integer.valueOf(coords[2]));
}
}
public TesouroPerdido(int questId, String name, String descr)
{
super(questId, name, descr);
for (int mobsid : MobsId)
{
addKillId(mobsid);
}
this.startQuestTimer("raidSpawn", _firstStart, null, null);
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
if (event.equalsIgnoreCase("raidSpawn"))
{
int rbId = Rnd.get(MobsId.size());//id
int rbLoc = Rnd.get(RbCoords.length);//loc
String mob = Mobs_.get(MobsId.get(rbId));
String location = MobsLocName.get(rbLoc);
Announcements.getInstance().announceToAll("Mob Apareceu: " + mob + " em : " + location + ", Corra para mata-lo , em 1 hora ele sumira");
System.out.println("# Mob Evento Iniciado (" + mob + ")!");
RbSpawn = this.addSpawn(MobsId.get(rbId), MobsX.get(rbLoc), MobsY.get(rbLoc), MobsZ.get(rbLoc), 0, false, 0);
this.startQuestTimer("RbDespawn", _mobInterval, null, null);
}
if (event.equalsIgnoreCase("RbDespawn"))
{
this.startQuestTimer("raidSpawn", _eventInterval, null, null);
RbSpawn.deleteMe();
Announcements.getInstance().announceToAll("Ninguem derrotou o Mob.");
System.out.println("# Evento desapareu.!");
}
return null;
}
@Override
public String onKill(L2Npc npc, L2PcInstance player, boolean isPet)
{
if (npc == RbSpawn)
{
if (npc.getObjectId() == RbSpawn.getObjectId())
{
for (L2PcInstance p : npc.getKnownList().getKnownPlayersInRadius(1300))
{
if (!p.isDead())
{
p.sendMessage("Recompensa por ter Vencido!");
for (int[] item : REWARD)
String name = player.getName();
Announcements.getInstance().announceToAll("Parabens derrotaram o Mob! " + name + " .");
{
switch (item[0])
{
default:
{
if (Rnd.get(100) <= item[2])
p.addItem(qn, item[0], item[1], player, true);
}
break;
}
}
}
}
}
}
this.startQuestTimer("raidSpawn", _eventInterval, null, null);
this.cancelQuestTimer("RbDespawn", null, null);
Announcements.getInstance().announceToAll("Parabens derrotaram o Mob!");
System.out.println("# Mob Morto !!");
return null;
}
public static void main(String[] args)
{
new TesouroPerdido(-1, qn, "events");
System.out.println(qn + " - ON");
}
}
Cria uma Npc Custom( Aparencia de Bau ) pega o ID dessa npc e adicione nessa linha: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
{ "Tesouro Perdido", "60001" }
Se voce quiser adicionar várias areas.. para turma procurar , deverá ir no Game e digitar loc dos locais ( Principais ) e adicionar nessa linha: Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
{ "Primeval Isle", "10724,-23729,-3650" },
Aqui você configura o que o seu Bau pode dar de item.. Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
private static final int[][] REWARD = {//id,amount,chance
{ 9546, Rnd.get(1, MOUNT), 90 },//Fire Stone
Já ta meio explicando como que é ..
Código:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
l("Mob Apareceu: " + mob + " em : " + location + ", Corra para mata-lo , em 1 hora ele sumira");
Modifica apenas entre " " Creio que deu pra entender.. ;) [Adaptado Para Frozen diff] [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar] [ INSTALAÇÃO DA DIFF] Bom para colocalo no Frozen voce terar que ir em 1- C:\L2jFrozen 720\gameserver\data\scripts 2- Dentro desta pasta voce ira criar uma pasta chamada de "events" 3- Dentro da pasta "events" voce ira criar uma outra chamada "TesouroPerdido" 4,1- Dentro da pasta "TesouroPerdido" voce ira criar um arquivo com o bloco de notas Chamado "TesouroPerdido.java" 4,2- Como crio este arquivo facil Dentro da pasta voce irar "clicar com o botao direito do mouse" Depois "Novo > Documento de Texto" ira aparecer o arquivo neste arquivo nao de nome a ele ainda Agora copie o codigo e cole dentro deste arquivo agora voce ira ir no topo do Programa Bloco de Notas e va em Arquivo > Salvar como > TesouroPerdido.java ... pronto 5- volte a pasta "C:\L2jFrozen 720\gameserver\data" abra o arquivo scripts.cfg e add assim #java MOD events/TesouroPerdido/TesouroPerdido.java SS: Do Evento Funcionando. : [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar] credits by TheOne Correcoes by over12 adaptação para outra Pack: L2Meteoro |
|
|
| Links Patrocinados |
|
|
#2 (permalink) |
|
Membro - Capitão
![]() Registrado em: Jan 2009
Posts: 113
Agradeceu: 177
Agradecido 62 Vezes em 41 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
|
Para adiantar para galera
Vou deixar o Codigo pronto para Frozen [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar] |
|
|
|
|
|
#3 (permalink) |
|
Membro - General
![]() Registrado em: Mar 2009
Localização: Buteco.
Posts: 226
Agradeceu: 134
Agradecido 234 Vezes em 96 Posts
Nome Real: Danilo F.
|
@l2meteoro
Eu testei no Frozen e não funcionou. |
|
|
|
| Os Seguintes 2 Usuários disseram Obrigado(a) para L2 DF por gostarem deste post : |
allanalcantara (04-05-2011), gatesofnaia (07-07-2011) |
|
|
#4 (permalink) |
|
Banido
![]() Registrado em: Nov 2009
Localização: Fortaleza-ce
Posts: 325
Agradeceu: 125
Agradecido 203 Vezes em 82 Posts
Nome Real: Allan Alcântara de Alencar
|
faço a mesma pergunta que o DF fez:
Certeza que isso funciona pra frozen? vou testa-lo aqui ... e se dê pra add vou add mais codes, ai esterei postando pravocês. mas tenho que ter um tempo livre. |
|
|
|
|
|
#5 (permalink) |
|
Membro - Capitão
![]() Registrado em: Jan 2009
Posts: 113
Agradeceu: 177
Agradecido 62 Vezes em 41 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
|
SS funciona
Ja Coloquei a Nova Rev dele 737 com o Mod nao compilado pra fazerem as Configs la esta explicando Breve irei colocar uma OP pra add nas configs para facilitar ainda mais |
|
|
|
|
|
#7 (permalink) |
|
Membro - Capitão
![]() Registrado em: Jan 2009
Posts: 113
Agradeceu: 177
Agradecido 62 Vezes em 41 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
|
Ta ai a SS que vc tanto queria
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar] [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar] |
|
|
|
| O seguinte membro ao lado disse Obrigado(a) a : l2meteoro por gostar deste Post : |
allanalcantara (05-05-2011) |
|
|
#8 (permalink) |
|
Banido
![]() Registrado em: Nov 2009
Localização: Fortaleza-ce
Posts: 325
Agradeceu: 125
Agradecido 203 Vezes em 82 Posts
Nome Real: Allan Alcântara de Alencar
|
hmm vou da uma testada aqui no meu projeto
vo da umas configs nele pra vê se funfa. se funfar aviso, ai eu aproveito e do uma SUPER MODIFICADA pra deixar ele como : //treasurebox ai pra iniciar e pararo evento e etc. :]' vou tentar aqui qualquer coisa estamos ae mais valeu por compartilhar! |
|
|
|
|
|
#9 (permalink) |
|
Membro - Capitão
![]() Registrado em: Jan 2009
Posts: 113
Agradeceu: 177
Agradecido 62 Vezes em 41 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
|
Opa Manin Rev ta facil pra mim
Qual Rev vc esta usando pq tou com este evento para Teon, Free, Dot"Wars", Frozen,Mack ETC quase todos da Atualidade E so falar |
|
|
|
|
|
#10 (permalink) |
|
Banido
![]() Registrado em: Nov 2009
Localização: Fortaleza-ce
Posts: 325
Agradeceu: 125
Agradecido 203 Vezes em 82 Posts
Nome Real: Allan Alcântara de Alencar
|
qual rev eu uso , a minha privada. aeuauehae.
mas é do mesmo estilo ? data/scrypt/treaseu... pois eu vou fazer um mod tipo tvt mas só que como o evento. |
|
|
|
![]() |
|
|