Ir para conteúdo
  • Cadastre-se
  • 0
Kallisto

[JAVA Adaptação] .status .inventory .skills

Pergunta

Alguém poderia adaptar esse mod para jfrozen?
troquei os imports porem é preciso alterar alguns caminhos que não sei.

 
gameserver/handler/VoicedCommandHandler.java

		registerHandler(new Status());
		registerHandler(new Inventory());
		registerHandler(new Skills());
gameserver/handler/voicedcommandhandlers/Status.java

package net.sf.l2j.gameserver.handler.voicedcommandhandlers;

import net.sf.l2j.Config;
import net.sf.l2j.gameserver.handler.IVoicedCommandHandler;
import net.sf.l2j.gameserver.model.actor.Creature;
import net.sf.l2j.gameserver.model.actor.instance.Player;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.network.serverpackets.GMViewCharacterInfo;
import net.sf.l2j.gameserver.network.serverpackets.GMViewHennaInfo;

public class Status implements IVoicedCommandHandler
{
	private static final String[] VOICED_COMMANDS =
	{
		"status"
	
	};
	
	@Override
	public boolean useVoicedCommand(String command, Player activeChar, String target)
	{
		if (command.startsWith("status") && Config.STATUS_CMD)
		{
			if (activeChar.getTarget() == null)
			{
				activeChar.sendPacket(SystemMessageId.INCORRECT_TARGET);
				return false;
			}
			if (!(activeChar.getTarget() instanceof Player))
			{
				activeChar.sendPacket(SystemMessageId.INCORRECT_TARGET);
				return false;
			}
			
			Creature targetCharacter = (Creature) activeChar.getTarget();
			Player targetPlayer = targetCharacter.getActingPlayer();
			
			activeChar.sendPacket(new GMViewCharacterInfo(targetPlayer));
			activeChar.sendPacket(new GMViewHennaInfo(targetPlayer));
			return true;
		}
		return false;
	}
	
	@Override
	public String[] getVoicedCommandList()
	{
		return VOICED_COMMANDS;
	}
}

 

gameserver/handler/voicedcommandhandlers/Inventory.java

package net.sf.l2j.gameserver.handler.voicedcommandhandlers;

import net.sf.l2j.Config;
import net.sf.l2j.gameserver.handler.IVoicedCommandHandler;
import net.sf.l2j.gameserver.model.actor.Creature;
import net.sf.l2j.gameserver.model.actor.instance.Player;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.network.serverpackets.GMViewItemList;

public class Inventory implements IVoicedCommandHandler
{

	private static final String[] VOICED_COMMANDS =
	{

		"inventory"
	
	};
	
	@Override
	public boolean useVoicedCommand(String command, Player activeChar, String target)
	{
		
		if (command.startsWith("inventory") && Config.STATUS_CMD)
		{
			if (activeChar.getTarget() == null)
			{
				activeChar.sendPacket(SystemMessageId.INCORRECT_TARGET);
				return false;
			}
			if (!(activeChar.getTarget() instanceof Player))
			{
				activeChar.sendPacket(SystemMessageId.INCORRECT_TARGET);
				return false;
			}
			
			Creature targetCharacter = (Creature) activeChar.getTarget();
			Player targetPlayer = targetCharacter.getActingPlayer();
			
			activeChar.sendPacket(new GMViewItemList(targetPlayer));
			return true;
		}
		return false;
	}
	
	@Override
	public String[] getVoicedCommandList()
	{
		return VOICED_COMMANDS;
	}
}
gameserver/handler/voicedcommandhandlers/Skills.java


package net.sf.l2j.gameserver.handler.voicedcommandhandlers;

import net.sf.l2j.Config;
import net.sf.l2j.gameserver.handler.IVoicedCommandHandler;
import net.sf.l2j.gameserver.model.actor.Creature;
import net.sf.l2j.gameserver.model.actor.instance.Player;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.network.serverpackets.GMViewSkillInfo;

public class Skills implements IVoicedCommandHandler
{
	
	private static final String[] VOICED_COMMANDS =
	{

		"skills"
	
	};
	
	@Override
	public boolean useVoicedCommand(String command, Player activeChar, String target)
	{
		
		if (command.startsWith("skills") && Config.STATUS_CMD)
		{
			if (activeChar.getTarget() == null)
			{
				activeChar.sendPacket(SystemMessageId.INCORRECT_TARGET);
				return false;
			}
			if (!(activeChar.getTarget() instanceof Player))
			{
				activeChar.sendPacket(SystemMessageId.INCORRECT_TARGET);
				return false;
			}
			
			Creature targetCharacter = (Creature) activeChar.getTarget();
			Player targetPlayer = targetCharacter.getActingPlayer();
			
			activeChar.sendPacket(new GMViewSkillInfo(targetPlayer));
			return true;
		}
		return true;
	}
	
	@Override
	public String[] getVoicedCommandList()
	{
		return VOICED_COMMANDS;
	}
}

 

 

Editado por Kallisto

Compartilhar este post


Link para o post
Compartilhar em outros sites

5 respostass a esta questão

Posts recomendados

  • 0
import com.l2jfrozen.gameserver.model.actor.Creature;
import com.l2jfrozen.gameserver.model.actor.instance.Player;
import com.l2jfrozen.gameserver.network.serverpackets.GMViewHennaInfo;

esses caminhos são diferentes na jfrozen, por isso ta dando erro!

erroff2.png?1548519686

Compartilhar este post


Link para o post
Compartilhar em outros sites

Precisando de Dedicado ou VPS?

Conheça a L2JCenter
  • 0

Adaptação consiste em buscas, ver as mudanças, depois que você as decora, é fácil.

Player irá virar L2PCInstance, as outras não recordo, mas buscando pelos métodos da para achar facilmente.

 

  • Gostei 1
  • Triste 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0
 

Adaptação consiste em buscas, ver as mudanças, depois que você as decora, é fácil.

Player irá virar L2PCInstance, as outras não recordo, mas buscando pelos métodos da para achar facilmente.

 

sou amador demais pra isso.
é por isso que criei o tópico aqui na area de pedidos , pra alguma alma boa fazer a adaptação ou passar os imports corretos..
se puder passar os outros além do L2PCInstance fico agradecido!

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0
 

sou amador demais pra isso.
é por isso que criei o tópico aqui na area de pedidos , pra alguma alma boa fazer a adaptação ou passar os imports corretos..
se puder passar os outros além do L2PCInstance fico agradecido!

https://acis.i-live.eu/index.php?topic=30.255

Changeset 367 tem algumas coisas, todas as infos tem navegando pelos commits, basta usar cntr +f.

A gm view henna, abre a package e olha dentro qual nome correto, package no caso são os diretórios, é facinho brother.

Editado por Escanor

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Mudanças no Login

    Preste atenção às mudanças no método de login.

    Com a migração para nomes de usuário IPB4 não existe mais.

    Você deve usar seu nome de exibição ou email em vez de nome de usuário.




     



  • Quem Está Navegando

    Nenhum usuário registrado visualizando esta página.

  • Posts

    • Alexandre, se a gente "só dizer não", vão dizer que somos intolerantes, blablabla, mimimi. Se a gente tenta explicar, temos argumentos "sei lá". Cara, é complicado, viu?!!   Vocês não tem noção da gravidade disso e parece que não conhecem o país no qual vivem. Vamos aos fatos, mais uma vez... https://projudi.tjgo.jus.br/BuscaProcessoPublica Número do processo: 5229297.46 Réu: BOM NEGÓCIO ATIVIDADES DE INTERNET LTDA (OLX) Prejuízo: R$ 83.000,00   FATO: A OLX, mesmo com uma carambaiada de documentos e termos onde declaram que NÃO SÃO RESPONSÁVEIS PELOS ANÚNCIOS NO SITE, foi condenada a pagar 83 mil simplesmente por que veiculou um anúncio de um meliante que caloteou um usuário.   PREVISÃO: A L2JBRASIL, mesmo com uma carambaiada de documentos e termos onde declaram que NÃO SÃO RESPONSÁVEIS PELOS ANÚNCIOS NO SITE, foi condenada a pagar 5 mil ali, 10 ali, 20 ali, simplesmente por que veiculou anúncios de pack l2j bugada para servidor que mal durou 1 semana e depois o admin "honesto" quis reaver seu dinheiro, já que teve preju. Aí o cara pede 10 mil de danos morais + a micharia que pagou e um excelentíssimo juiz dá causa ganha! Brasil sil sil...   Vocês tem dinheiro pra arcar com isso? Eu não tenho. Se tiver, senta aqui, vamos conversar.   Obrigado galera! Tópico fechado.
    • Não é assim que funciona, o Leonan e o Ramon estão bem por dentro do assunto, e o Kelvin não sei se vocês sabem é graduado em advocacia. Nós já debatemos isso tem mais de 2 anos, é um assunto que sempre volta atona, então ajudem com ideias uteis, não com criticas sem nexo.
    • É só dizer não, os argumentos usados ta meio sei la, acredito que só aqui não tem essa área por 2 paginas de problemas que pode causar, a l2jbrasil tem nada a ver com as negociações, cada um vai procurar recomendações de cada vendedor como acontece nos demais.
    • Lineage 2 Europa Classic Thunder x7 Grand opening : Friday ,1,March 2019 More information: 
      Webiste: l2europa.com
      Facebook: https://www.facebook.com/l2europaclassic/


      Concept: Arena 

      Information about the version and updates 

      Our advantages: Best realization of chronicles, constant development 100% own development and communication with creators You can play all the characters with 1 account at a time! Premium free every Saturday Special Arena for PvP-events
      Start: Premium free every Saturday! Daily tasks
      Security Login-server is protected from account brute The site is protected from burglary You can bind all the characters of the account to your computer (you can list the computers) .lock
                                          Exp / Sp - x7 Exp / Sp RaidBoss - x0.5 Adena - x7 Drops of the drop rate - x1 Spoil has given a chance - x2 Rate quest Exp / Sp - x7 Aden quest races - x7
      purchase for Adena
      Exp / SP + 50% Adena x1.2 Drop chance x1.2, count of x1 Spoil chance x1.2, count x1 Drop with RB chance x1.2, count x1 Drop from Epic chance x1.2, count x1 Fishing +4 window with 1 computer (4 without PA) Quest Adena x1.2 Quest Expp / SP x1.2   The cost of the Premium account (Alt + B in the game) 1 day - $0.5 1 week - $1.5 1 month - $4.5
      Restriction on windows - 5 windows from 1 computer Fishing - limit 5 windows from the computer
      Castle Sieges on Sundays 20:00 in 1 week Side selection Light / Darkness at the end of the siege for the winner Siege Gludio 3 per week (Wednesday, Friday, Sunday)
      The period of the Olympiad is 15 days Days of the Olympics Wednesday-Saturday, 4 days a week Starting level 75+ Starting Points 10 The battle limit for the week is 120 Enchant Limit +10
      Alt + B: Information (server, raiting, description), Base of Drop, nickname, sex, nickname, title color, premium account Alt + B: Buy professions Alt + B: Buffer Alt + B: Teleport to cities Alt + B: Shop. Scrolls of the exp, rune exps, SSX, raincoats, additional items to simplify the game .my: a menu with various functions Queen Ant 24 +/- 4 hours Core 36 +/- 4 hours Orfen 36 +/- 4 hours Zaken 3 days Baium 5 days +/- 10 hours Antharas 5 days +/- 10 hours     Concept ARENA Official Lineage 2 Arena for pvp events Tvt and Deathmatch (special) Siege of Gludio Wednesday, Friday, Sunday Fullbaff Items other than armor / weapons Farm Shilen all RB, locations: Cave of Giants, Devil's Island, TvT, Deathmatch Farm Battle Sign: TvT, Deathmatch Teleportation to Towns Teleportation to hunting areas from scrolls Rune of Experience + 50% working up to level 85 No drop at death from mob Item "Clan Reputation Score - 10 1-day" give 100k CRP           The chance of a drop of epic jewelry 100%       Lineage 2 Europa Classic Thunder x7 Grand opening : Friday ,1, March 2019 More information: 
      Webiste: l2europa.com
      Facebook: https://www.facebook.com/l2europaclassic/
    • Mercado Livre atua como intermediário em todas as frentes, inclusive na questão financeira, coisa que infelizmente não temos condições (R$) para atuar. Neste caso, conseguem ter um maior controle. A OLX seria o exemplo mais coerente. Por favor, veja isso aqui. Esse é o problema. Mesmo com toda documentação existente, foram condenados a pagar 83 mil.
×