Secret Experience

Secret Experience (https://secretexperience.net/)
-   [Lineage] Java Mods (https://secretexperience.net/lineage-java-mods/)
-   -   Teleporte por commando para uma area de pvp! (https://secretexperience.net/lineage-java-mods/6557-teleporte-por-commando-para-uma-area-de-pvp.html)

darkbr 04-04-2009 07:29 AM

Teleporte por commando para uma area de pvp!
 
Bom e um commando que voce usa para se teleporta para uma localidade de pvp. O commando seria .pvp xD

Voce precisa add em uma rev que seje des-compilada! e Manualmente

Comessando :

Crie um dokumento Java com nome PvPTeleport

Adicione :
Código:

/*
 * 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 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.instance.L2PcInstance;

public class PvPTeleport implements IVoicedCommandHandler
{
        private static final String[] _voicedCommands =
        {
                "pvp",
        };
       
        public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target)
        {
                if (command.equalsIgnoreCase("pvp"))
                {
        if(activeChar.atEvent)
            {
                activeChar.sendMessage("You are an Event.");
                return false;
            }
        else if(activeChar.isInDuel())
            {
                activeChar.sendMessage("You are on Duel.");
                return false;
            }
        else if(activeChar.isInOlympiadMode())
            {
                activeChar.sendMessage("You are in Olympiad");
                return false;
            }
        else if(activeChar.isInCombat())
            {
                activeChar.sendMessage("You can't teleport in Combat Mod");
                return false;
            }
        else if(activeChar.getParty().isInDimensionalRift())
            {
                activeChar.sendMessage("You cant do this because you are in Dimensional Rift");
                return false;
            }
            else if (activeChar.isFestivalParticipant())
            {
                activeChar.sendMessage("You are in a festival.");
                return false;
            }
            else if (activeChar.isInJail())
            {
                activeChar.sendMessage("You are in Jail.");
                return false;
            }
            else if (activeChar.inObserverMode())
            {
                activeChar.sendMessage("You are in Observ Mode.");
                return false;
            }
            else if (activeChar.isDead())
            {
                activeChar.sendMessage("You Dead. Can't Teleport");
                return false;
            }
            else if (activeChar.isFakeDeath())
            {
                activeChar.sendMessage("You are Dead? week up :D");
                return false;
            }
                       
            if(activeChar.getInventory().getItemByItemId(3470) == null)
            {
                activeChar.sendMessage("You Need One Gold Bar To Use This.");
                return false;
            }
           
                        activeChar.teleToLocation(Config.PVP_X, Config.PVP_Y, Config.PVP_Z);
                        activeChar.destroyItemByItemId("Gold Bar", 3470, 1, activeChar, true);
                        activeChar.sendMessage("You have teleport in PvP Area");
                }
                               
                return true;
        }
       
        public String[] getVoicedCommandList()
        {
                return _voicedCommands;
        }
}

registre o commando :

Código:

registerVoicedCommandHandler(new PvPTeleport());
ponha Config no documento Config.java

Código:

Index: C:/Documents and Settings/Albion/workspace/Gracia Core/java/net/sf/l2j/Config.java
===================================================================
--- C:/Documents and Settings/Albion/workspace/Gracia Core/java/net/sf/l2j/Config.java        (revision 2787)
+++ C:/Documents and Settings/Albion/workspace/Gracia Core/java/net/sf/l2j/Config.java        (working copy)

@@ -559,18 +564,45 @@
    public static boolean        L2JMOD_WEDDING_SAMESEX;
    public static boolean        L2JMOD_WEDDING_FORMALWEAR;
    public static int                L2JMOD_WEDDING_DIVORCE_COSTS;
    public static boolean        L2JMOD_ENABLE_WAREHOUSESORTING_CLAN;
    public static boolean        L2JMOD_ENABLE_WAREHOUSESORTING_PRIVATE;
    public static boolean        L2JMOD_ENABLE_WAREHOUSESORTING_FREIGHT;
+    public static int                PVP_X;       
+    public static int                PVP_Y;       
+    public static int                PVP_Z;       

@@ -1776,6 +1810,25 @@
                        L2JMOD_ENABLE_WAREHOUSESORTING_PRIVATE  = Boolean.valueOf(L2JModSettings.getProperty("EnableWarehouseSortingPrivate", "False"));
                        L2JMOD_ENABLE_WAREHOUSESORTING_FREIGHT  = Boolean.valueOf(L2JModSettings.getProperty("EnableWarehouseSortingFreight", "False"));
       
+                        PVP_X = Integer.parseInt(L2JModSettings.getProperty("LocationX", "0"));
+                        PVP_Y = Integer.parseInt(L2JModSettings.getProperty("LocationY", "0"));
+                        PVP_Z = Integer.parseInt(L2JModSettings.getProperty("LocationZ", "0"));
+                       
                        CTF_EVEN_TEAMS = L2JModSettings.getProperty("CTFEvenTeams", "BALANCE");
                        CTF_ALLOW_INTERFERENCE = Boolean.parseBoolean(L2JModSettings.getProperty("CTFAllowInterference", "false"));
                        CTF_ALLOW_POTIONS = Boolean.parseBoolean(L2JModSettings.getProperty("CTFAllowPotions", "false"));
                        CTF_ALLOW_SUMMON = Boolean.parseBoolean(L2JModSettings.getProperty("CTFAllowSummon", "false"));
                        CTF_ON_START_REMOVE_ALL_EFFECTS = Boolean.parseBoolean(L2JModSettings.getProperty("CTFOnStartRemoveAllEffects", "true"));


@@ -2296,7 +2375,12 @@
        else if (pName.equalsIgnoreCase("ChampionRewardHigherLvlItemChance")) L2JMOD_CHAMPION_REWARD_HIGHER_LVL_ITEM_CHANCE = Integer.parseInt(pValue);
        else if (pName.equalsIgnoreCase("ChampionRewardItemID")) L2JMOD_CHAMPION_REWARD_ID = Integer.parseInt(pValue);
        else if (pName.equalsIgnoreCase("ChampionRewardItemQty")) L2JMOD_CHAMPION_REWARD_QTY = Integer.parseInt(pValue);
-
+       
+        //L2JMOD PvP Area (.pvp)
+        else if (pName.equalsIgnoreCase("LocationX")) PVP_X = Integer.parseInt(pValue);
+        else if (pName.equalsIgnoreCase("LocationY")) PVP_Y = Integer.parseInt(pValue);
+        else if (pName.equalsIgnoreCase("LocationZ")) PVP_Z = Integer.parseInt(pValue);
+       
        // L2JMOD Wedding System
        else if (pName.equalsIgnoreCase("AllowWedding")) L2JMOD_ALLOW_WEDDING = Boolean.parseBoolean(pValue);
        else if (pName.equalsIgnoreCase("WeddingPrice")) L2JMOD_WEDDING_PRICE = Integer.parseInt(pValue);
     
        else return false;
        return true;
    }

Va no l2jmods.properties e adicione isso:

Código:

#----------------------------------
# PvP Location -  (.pvp)
# Put your PvP Location ( x,y,z ) (
# Example (2750, 14762, -7601)
#----------------------------------
LocationX = 0
LocationY = 0
LocationZ = 0


ATENCAO SO RECOMENDO PRA PESSOAS QUE SAIBAM MEXER COM JAVA!

CREDITOS :
HeyHops

Onde Axei?

MaxCheaters

GLODOOM 04-04-2009 02:15 PM

Poderia explica um pouco mais?
nao sei nada de java sei nem onde fica estes arquivos para adiciona..poderia fala quais pastas tao? e certim como assim .pvp pra onde vai?

darkbr 04-04-2009 02:21 PM

Tipo

Aqui voce poem as coordenadas pra onde voce quer que os chars vao usando o commando no game .pvp!

#----------------------------------
# PvP Location - (.pvp)
# Put your PvP Location ( x,y,z ) (
# Example (2750, 14762, -7601)
#----------------------------------
LocationX = 0
LocationY = 0
LocationZ = 0

sobre os locais tenho que testa ainda!

GLODOOM 07-04-2009 01:21 AM

Onde ponho esses comandos?

mend3 07-04-2009 01:31 AM

Mto legal isso

Seria muito legal tambem, quem soubesse mecher com isso, fazer um video tutorial de como adicionar. ;)

Loki 10-08-2009 10:45 PM

AMIGO ADD ISSOA E NO JAVA E TAL TUDO OK BLZA
COMPILEI TUDO OK BUILD SUCESSO
SO QUE QUANDO CLICO NO GAME .PVP!
NAO VAI PARA AS COORDENADAS QUE COLOQUEI LA ALIAS NAO VAI PARA LUGAR NENHUM APENAS DAR UM ERRO NO GAMESERVER
ESSE


Código:

Client: [Character: Lorenas - Account: oneo2 - IP: 127.0.0.1] - Failed running:
[C] 38 Say2 - L2J Server Version: 27M - DP Revision: 27
java.lang.NullPointerException
        at net.sf.l2j.gameserver.handler.voicedcommandhandlers.PvPTeleport.useVo
icedCommand(PvPTeleport.java:52)
        at handlers.chathandlers.ChatAll.handleChat(Unknown Source)
        at net.sf.l2j.gameserver.network.clientpackets.Say2.runImpl(Say2.java:16
8)
        at net.sf.l2j.gameserver.network.clientpackets.L2GameClientPacket.run(L2
GameClientPacket.java:76)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source
)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)


paytaly 11-08-2009 10:51 AM

Bom, já existe um Tutorial ---> [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
Ele se aplica somente a parte da Config.java

Agora quanto as outras:
PvPTeleport.java deve ser adicionado na pasta: .../gameserver/handler/voicedcommandhandlers

Para registrar o handler é só você abrir o arquivo: VoicedCommandHandler.java
localizado na pasta: .../gameserver/handler e adicionar a linha referente ao handler, mostrada no
primeiro Post.

O outro deve ser adicionado no arquivo l2jmods.properties da pasta: GameServer/config

Caso queira mudar o Arquivo .properties que você quer adicionar o arquivo:
Código:

+                        PVP_X = Integer.parseInt(L2JModSettings.getProperty("LocationX", "0"));
+                        PVP_Y = Integer.parseInt(L2JModSettings.getProperty("LocationY", "0"));
+                        PVP_Z = Integer.parseInt(L2JModSettings.getProperty("LocationZ", "0"));

Basta mudar o destaque em verde para o nome do Arquivo ao qual você quer que
essa config seja adicionada.

Loki 11-08-2009 08:22 PM

desculpe mais tem algo de errado nesse java ae pois esta dando esse erro e eu coloquei tudo mais certo possivel posso nao corrigir issso mais sei add qualquer coisa no server via eclipse e claro sei add mais isso ae e no script uso l2jdag
to usando o pack do over12 gracia final
esse script ae e para gracia ????????????
obrigado paytali

Tarik01 26-08-2009 12:14 PM

Alguem sabe como bloquear para não da para usar o comando quando estiver flag e pk?

Vou tentar descobrir e posto aqui!

vicfelipe 27-08-2009 10:38 AM

Uma coisa que não quis postar mais que pode acontecer.
Em personagens que estão na Jail através desse comando pode sair dela, pois não vi nada ali que faça a restrição disso.


Horários baseados na GMT -3. Agora são 04:36 AM.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.0