Jump to content
  • 0

Question

Posted

kalispera se olous

aftos einai enas kodikas sto l2jfrozen alla exo bali merika code parapano gia na douleboune

sto community board oste na min xriazete na pigeni kapios stin poli gia na agorasi kati

alla distixos den doulebi to multisell den ksero ti einai epsaksa 5 meres na do ti simbeni

kai gt den doulebi alla den ta katafera oso kai na alaksa ton kodika.. sto html pigenei kanonika

kai sta alla para8ira doulebi kanonika alla otan balo na agoraso den doulebi

dld gia na pas se ena alo html einai aftos o codikas bypass -h custom_doShop Chat 0

kai doulebi an balo afto bypass -h custom_doShop multisell 55370

mou anigi to para8iro dialego to item pou 8elo kai ekei den to pernei kolaei

stin consola den bgazei errors. an mporei kapios kai exei tin kalosini na me boi8isi

na telioso afto 8a anebaso ena oreo community gia l2jfrozen low rate kala protimisi

 

efxaristo!!

 

edo einai o kodikas pou exo kai ta simia me kokino einai afta pou exo addari extra

-------------------------------------------------------------------------------------------------------------------------------------------------

/*
* 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 2, 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, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*
* http://www.gnu.org/copyleft/gpl.html
*/
package com.l2jfrozen.gameserver.powerpak.gmshop;

import com.l2jfrozen.Config;
import com.l2jfrozen.gameserver.cache.HtmCache;
import com.l2jfrozen.gameserver.communitybbs.Manager.BaseBBSManager;
import com.l2jfrozen.gameserver.controllers.GameTimeController;
import com.l2jfrozen.gameserver.handler.IBBSHandler;
import com.l2jfrozen.gameserver.handler.ICustomByPassHandler;
import com.l2jfrozen.gameserver.handler.IVoicedCommandHandler;
import com.l2jfrozen.gameserver.model.L2Character;
import com.l2jfrozen.gameserver.model.actor.instance.L2NpcInstance;
import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance;
import com.l2jfrozen.gameserver.model.entity.event.CTF;
import com.l2jfrozen.gameserver.model.entity.event.DM;
import com.l2jfrozen.gameserver.model.entity.event.TvT;
import com.l2jfrozen.gameserver.model.entity.olympiad.Olympiad;
import com.l2jfrozen.gameserver.model.multisell.L2Multisell;
import com.l2jfrozen.gameserver.network.serverpackets.NpcHtmlMessage;
import com.l2jfrozen.gameserver.network.serverpackets.SetupGauge;
import com.l2jfrozen.gameserver.powerpak.PowerPakConfig;
import com.l2jfrozen.gameserver.taskmanager.AttackStanceTaskManager;
import com.l2jfrozen.gameserver.thread.ThreadPoolManager;
import com.l2jfrozen.gameserver.util.Broadcast;

/**
* @author L2JFrozen
*/
public class GMShop implements IVoicedCommandHandler, ICustomByPassHandler, IBBSHandler
{

    @Override
    public String[] getVoicedCommandList()
    {
        
        return new String[] {PowerPakConfig.GMSHOP_COMMAND};
    }

    private boolean checkAllowed(L2PcInstance activeChar)
    {
        String msg = null;
        if(activeChar.isSitting())
            msg = "GMShop is not available when you sit";
        else if(PowerPakConfig.GMSHOP_EXCLUDE_ON.contains("ALL"))
            msg = "GMShop is not available in this area";
        else if(PowerPakConfig.GMSHOP_EXCLUDE_ON.contains("CURSED") && activeChar.isCursedWeaponEquiped())
            msg = "GMShop is not available with the cursed sword";
        else if(PowerPakConfig.GMSHOP_EXCLUDE_ON.contains("ATTACK") && AttackStanceTaskManager.getInstance().getAttackStanceTask(activeChar))
            msg = "GMShop is not available during the battle";
        else if(PowerPakConfig.GMSHOP_EXCLUDE_ON.contains("DUNGEON") && activeChar.isIn7sDungeon())
            msg = "GMShop is not available in the catacombs and necropolis";
        else if(PowerPakConfig.GMSHOP_EXCLUDE_ON.contains("RB") && activeChar.isInsideZone(L2Character.ZONE_NOSUMMONFRIEND))
                msg = "GMShop is not available in this area";
        else if(PowerPakConfig.GMSHOP_EXCLUDE_ON.contains("PVP") && activeChar.isInsideZone(L2Character.ZONE_PVP))
            msg = "GMShop is not available in this area";
        else if(PowerPakConfig.GMSHOP_EXCLUDE_ON.contains("PEACE") && activeChar.isInsideZone(L2Character.ZONE_PEACE))
            msg = "GMShop is not available in this area";
        else if(PowerPakConfig.GMSHOP_EXCLUDE_ON.contains("SIEGE") && activeChar.isInsideZone(L2Character.ZONE_SIEGE))
            msg = "GMShop is not available in this area";
        else if(PowerPakConfig.GMSHOP_EXCLUDE_ON.contains("OLYMPIAD") && (activeChar.isInOlympiadMode() ||
                activeChar.isInsideZone(L2Character.ZONE_OLY) || Olympiad.getInstance().isRegistered(activeChar) ||
                Olympiad.getInstance().isRegisteredInComp(activeChar)))
            msg = "GMShop is not available at Olympiad";
        else if(PowerPakConfig.GMSHOP_EXCLUDE_ON.contains("EVENT") &&
                (activeChar._inEvent))
            msg = "GMShop is not available at the opening event";
        else if(PowerPakConfig.GMSHOP_EXCLUDE_ON.contains("TVT") &&
                activeChar._inEventTvT && TvT.is_started() )
            msg = "GMShop is not available in TVT";
        else if(PowerPakConfig.GMSHOP_EXCLUDE_ON.contains("CTF") &&
                activeChar._inEventCTF && CTF.is_started() )
            msg = "GMShop is not available in CTF";
        else if(PowerPakConfig.GMSHOP_EXCLUDE_ON.contains("DM") &&
                activeChar._inEventDM && DM.is_started() )
            msg = "GMShop is not available in DM";
        
        if(msg!=null)
            activeChar.sendMessage(msg);

        return msg==null;
    }

    @Override
    public boolean useVoicedCommand(String command, L2PcInstance activeChar, String params)
    {
        if(activeChar==null)
            return false;
        if(!checkAllowed(activeChar))
            return false;
        
         if(command.compareTo(PowerPakConfig.GMSHOP_COMMAND)==0)
            {
                NpcHtmlMessage htm = new NpcHtmlMessage(activeChar.getLastQuestNpcObject());
                String text = HtmCache.getInstance().getHtm("data/html/gmshop/gmshop.htm");
                htm.setHtml(text);
                activeChar.sendPacket(htm);
            }
            
            return false;
        }


        @Override
        public String[] getByPassCommands()
        {
            // TODO Auto-generated method stub
            return new String [] {"doShop" };
        }

    
    @Override
    public void handleCommand(String command, L2PcInstance player, String parameters)
    {
        if(player==null)
            return;
         if(parameters ==null || parameters.length()==0)
             return;
         if(!checkAllowed(player))
             return;
         
         if(!PowerPakConfig.GMSHOP_USEBBS && !PowerPakConfig.GMSHOP_USECOMMAND){
            
            L2NpcInstance gmshopnpc = null;
            
            if(player.getTarget()!=null)
                if(player.getTarget() instanceof L2NpcInstance)
                {
                    gmshopnpc = (L2NpcInstance)player.getTarget();
                    if(gmshopnpc.getTemplate().getNpcId()!=PowerPakConfig.GMSHOP_NPC)
                        gmshopnpc=null;
                }
            
            //Possible fix to Buffer - 1
            if (gmshopnpc == null)
                return;

            //Possible fix to Buffer - 2
            if (!player.isInsideRadius(gmshopnpc, L2NpcInstance.INTERACTION_DISTANCE, false, false))
                return;
            
        }//else (voice and bbs)

         if(parameters.startsWith("multisell"))
         {
             try
             {
                 L2Multisell.getInstance().SeparateAndSend(Integer.parseInt(parameters.substring(9).trim()), player, false, 0);
             }
             catch(Exception e)
             {
                 if(Config.ENABLE_ALL_EXCEPTIONS)
                    e.printStackTrace();
                 
                 player.sendMessage("This list does not exist");
             }
         }
         
     String htm = "gmshop";    
     if(parameters.startsWith("Chat"))
    {
        htm = htm + "-" + parameters.substring(parameters.indexOf(" ") + 1).trim();
    }

    if(htm.contains("-0"))
        htm = "gmshop";
    String text = HtmCache.getInstance().getHtm("data/html/gmshop/" + htm + ".htm");

    if(command.startsWith("bbs"))
    {
        text = text.replace("-h custom_do", "bbs_bbs");
        BaseBBSManager.separateAndSend(text, player);
    }
    else
        player.sendPacket(new NpcHtmlMessage(5,text));
    return;
    
}


@Override
public String[] getBBSCommands()
{
    return new String [] {"bbsShop" };
}


}

1 answer to this question

Recommended Posts

Guest
This topic is now closed to further replies.


  • Posts

    • Hello it seems you can't receive PMs, it won't let me, do you use discord?
    • Hello after returning to lineage 2, I was wanting to start some local server development for a few friends and me to play around with but for some reason I'm having trouble after so many years to find a stable high five client. The clients I have found either have crash issue, many errors in the client log files or freeze after only a day or two of playing (autofarming for a day for example, you'll go to teleport after a farm session and the client freezes).   I've played a few High Five servers and it seems a lot of them have been able to optimize it to avoid these problems.  We are running multiple clients per PC so this does sound essential.   I've heard one major feature that is helping client stability is the ability to clear cache/memory without restarting the game or something along those lines.   So I'm wondering if anyone can point me in the direction of obtaining a High Five client that is clean, optimized and decrypted to be able to add customs items etc. for a fair price.  
    • Sometimes you can understand his intentions from the words he uses and the way he says it to you.  
    • Price List tgsession+js and tdata Premium Countries  • +7 🇷🇺 Russia: $0.80  • +55 🇧🇷 Brazil: $0.80  • +31 🇳🇱 Netherlands: $0.80  • +34 🇪🇸 Spain: $0.80  • +39 🇮🇹 Italy: $0.80  • +49 🇩🇪 Germany: $0.80 Standard Countries  • +33 🇫🇷 France: $0.70  • +351 🇵🇹 Portugal: $0.70  • +380 🇺🇦 Ukraine: $0.75 Economy Countries  • +52 🇲🇽 Mexico: $0.65  • +358 🇫🇮 Finland: $0.65  • +965 🇰🇼 Kuwait: $0.60 Popular Choices (Only $0.55 each):  • +48 🇵🇱 Poland  • +91 🇮🇳 India  • +385 🇭🇷 Croatia  • +964 🇮🇶 Iraq  • +43 🇦🇹 Austria  • +972 🇮🇱 Israel  • +44 🇬🇧 UK  • +46 🇸🇪 Sweden  • +90 🇹🇷 Turkey  • +502 🇬🇹 Guatemala Special Prices  • +371 🇱🇻 Latvia: $0.45  • +60 🇲🇾 Malaysia: $0.50  • +54 🇦🇷 Argentina: $0.50  • +505 🇭🇳 Nicaragua: $0.50  • +992 🇹🇯 Tajikistan: $0.50  • +998 🇺🇿 Uzbekistan: $0.50  • +58 🇻🇪 Venezuela: $0.50  • +1441 🇧🇲 Bermuda: $0.45  • +20 🇪🇬 Egypt: $0.45 Most Affordable  • +51 🇵🇪 Peru: $0.50  • +263 🇿🇼 Zimbabwe: $0.50  • +57 🇨🇴 Colombia: $0.50  • +880 🇧🇩 Bangladesh: $0.30  • +95 🇲🇲 Myanmar: $0.30  • +62 🇮🇩 Indonesia / +63 🇵🇭 Philippines: $0.3   TG: providerwstg
  • Topics

×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and 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..