Package com.l2jfrozen.gameserver.model.actor.instance

Examples of com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance


  }
 
  @Override
  protected void runImpl()
  {
    L2PcInstance player = getClient().getActiveChar();
    if (player == null)
      return;
   
    if (!player.getAccessLevel().allowTransaction())
    {
      player.sendMessage("Transactions are disable for your Access Level");
      player.sendPacket(ActionFailed.STATIC_PACKET);
      return;
    }
   
    if (player.isTradeDisabled())
    {
      player.sendMessage("Trade are disable here. Try in another place.");
      player.sendPacket(new PrivateStoreManageListBuy(player));
      player.sendPacket(ActionFailed.STATIC_PACKET);
      return;
    }
   
    if (player.isCastingNow() || player.isCastingPotionNow() || player.isMovementDisabled() || player.inObserverMode() || player.getActiveEnchantItem() != null)
    {
      player.sendMessage("You cannot start store now..");
      player.sendPacket(new PrivateStoreManageListBuy(player));
      player.sendPacket(ActionFailed.STATIC_PACKET);
      return;
    }
   
    if (player.isInsideZone(L2Character.ZONE_NOSTORE))
    {
      player.sendPacket(new PrivateStoreManageListBuy(player));
      player.sendMessage("Trade are disable here. Try in another place.");
      player.sendPacket(ActionFailed.STATIC_PACKET);
      return;
    }

    TradeList tradeList = player.getBuyList();
    tradeList.clear();
   
    int cost = 0;
    for (int i = 0; i < _count; i++)
    {
      int itemId = _items[i * 4 + 0];
      int count = _items[i * 4 + 1];
      int price = _items[i * 4 + 2];
      int enchant = _items[i * 4 + 3];
     
      tradeList.addItemByItemId(itemId, count, price, enchant);
      cost += count * price;
     
      if (cost > Integer.MAX_VALUE)
      {
        player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EXCEEDED_QUANTITY_THAT_CAN_BE_INPUTTED));
        player.sendPacket(new PrivateStoreManageListBuy(player));
        return;
      }
    }
   
    if (_count <= 0)
    {
      player.setPrivateStoreType(L2PcInstance.STORE_PRIVATE_NONE);
      player.broadcastUserInfo();
      return;
    }
   
    if (player.isProcessingTransaction())
    {
      player.sendMessage("Store mode are disable while trading.");
      player.sendPacket(new PrivateStoreManageListBuy(player));
      return;
    }
   
    // Check maximum number of allowed slots for pvt shops
    if (_count > player.GetPrivateBuyStoreLimit())
    {
      player.sendPacket(new PrivateStoreManageListBuy(player));
      player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EXCEEDED_QUANTITY_THAT_CAN_BE_INPUTTED));
      return;
    }
   
    // Check for available funds
    if (Config.SELL_BY_ITEM)
    {
      if (cost > player.getItemCount(Config.SELL_ITEM, -1) || cost <= 0)
      {
        player.sendPacket(new PrivateStoreManageListBuy(player));
        player.sendPacket(new SystemMessage(SystemMessageId.THE_PURCHASE_PRICE_IS_HIGHER_THAN_MONEY));
        return;
      }
    }
    else
    {
      if (cost > player.getAdena() || cost <= 0)
      {
        player.sendPacket(new PrivateStoreManageListBuy(player));
        player.sendPacket(new SystemMessage(SystemMessageId.THE_PURCHASE_PRICE_IS_HIGHER_THAN_MONEY));
        return;
      }
    }
   
    player.sitDown();
    player.setPrivateStoreType(L2PcInstance.STORE_PRIVATE_BUY);
    player.broadcastUserInfo();
    player.broadcastPacket(new PrivateStoreMsgBuy(player));
  }
View Full Code Here


  }

  @Override
  protected void runImpl()
  {
    L2PcInstance activeChar = getClient().getActiveChar();
    if(activeChar == null)
      return;

    // Noblesse can bestow a title to themselves
    if(activeChar.isNoble() && _target.matches(activeChar.getName()))
    {
      activeChar.setTitle(_title);
      SystemMessage sm = new SystemMessage(SystemMessageId.TITLE_CHANGED);
      activeChar.sendPacket(sm);
      activeChar.broadcastTitleInfo();
    }
    //Can the player change/give a title?
    else if((activeChar.getClanPrivileges() & L2Clan.CP_CL_GIVE_TITLE) == L2Clan.CP_CL_GIVE_TITLE)
    {
      if(activeChar.getClan().getLevel() < 3)
      {
        SystemMessage sm = new SystemMessage(SystemMessageId.CLAN_LVL_3_NEEDED_TO_ENDOWE_TITLE);
        activeChar.sendPacket(sm);
        sm = null;
        return;
      }

      L2ClanMember member1 = activeChar.getClan().getClanMember(_target);
      if(member1 != null)
      {
        L2PcInstance member = member1.getPlayerInstance();
        if(member != null)
        {
          //is target from the same clan?
          member.setTitle(_title);
          SystemMessage sm = new SystemMessage(SystemMessageId.TITLE_CHANGED);
          member.sendPacket(sm);
          member.broadcastTitleInfo();
          sm = null;
        }
        else
        {
          SystemMessage sm = new SystemMessage(SystemMessageId.S1_S2);
View Full Code Here

  }

  @Override
  protected void runImpl()
  {
    L2PcInstance activeChar = getClient().getActiveChar();
    if(activeChar == null)
      return;

    // Check if the player has a clan
    if(activeChar.getClan() == null)
      return;

    Castle castle = CastleManager.getInstance().getCastleById(_castleId);
    if(castle == null)
      return;

    // Check if leader of the clan who owns the castle?
    if(castle.getOwnerId() != activeChar.getClanId() || !activeChar.isClanLeader())
      return;

    L2Clan clan = ClanTable.getInstance().getClan(_clanId);
    if(clan == null)
      return;

    if(!castle.getSiege().getIsRegistrationOver())
    {
      if(_approved == 1)
      {
        if(castle.getSiege().checkIsDefenderWaiting(clan))
        {
          castle.getSiege().approveSiegeDefenderClan(_clanId);
        }
        else
          return;
      }
      else
      {
        if(castle.getSiege().checkIsDefenderWaiting(clan) || castle.getSiege().checkIsDefender(clan))
        {
          castle.getSiege().removeSiegeClan(_clanId);
        }
      }
    }

    //Update the defender list
    activeChar.sendPacket(new SiegeDefenderList(castle));

  }
View Full Code Here

  }

  @Override
  protected void runImpl()
  {
    L2PcInstance activeChar = getClient().getActiveChar();
    if(activeChar == null)
      return;

    if(activeChar.isInParty() && activeChar.getParty().isLeader(activeChar))
    {
      activeChar.getParty().changePartyLeader(_name);
    }
  }
View Full Code Here

  }

  @Override
  protected void runImpl()
  {
    L2PcInstance player = getClient().getActiveChar();
    L2Clan clan = player.getClan();

    if(clan != null)
    {
      RankPrivs[] privs = clan.getAllRankPrivs();
      player.sendPacket(new PledgePowerGradeList(privs));
      //_log.warning("plegdepowergradelist send, privs length: "+privs.length);
    }
  }
View Full Code Here

  }

  @Override
  protected void runImpl()
  {
    L2PcInstance player = getClient().getActiveChar();
    if(player == null)
      return;

    if(_action == 2)
    {
      if(player.getClan() != null && player.isClanLeader())
      {
        if(_rank == 9)
        {
          //The rights below cannot be bestowed upon Academy members:
          //Join a clan or be dismissed
          //Title management, crest management, master management, level management,
          //bulletin board administration
          //Clan war, right to dismiss, set functions
          //Auction, manage taxes, attack/defend registration, mercenary management
          //=> Leaves only CP_CL_VIEW_WAREHOUSE, CP_CH_OPEN_DOOR, CP_CS_OPEN_DOOR?
          _privs = (_privs & L2Clan.CP_CL_VIEW_WAREHOUSE) + (_privs & L2Clan.CP_CH_OPEN_DOOR) + (_privs & L2Clan.CP_CS_OPEN_DOOR);
        }
        player.getClan().setRankPrivs(_rank, _privs);
      }
    }
    else
    {
      ManagePledgePower mpp = new ManagePledgePower(getClient().getActiveChar().getClan(), _action, _rank);
      player.sendPacket(mpp);
    }
  }
View Full Code Here

  }
 
  @Override
  protected void runImpl()
  {
    L2PcInstance activeChar = getClient().getActiveChar();
    L2ItemInstance targetItem = (L2ItemInstance) L2World.getInstance().findObject(_targetItemObjId);
    L2ItemInstance refinerItem = (L2ItemInstance) L2World.getInstance().findObject(_refinerItemObjId);
   
    if (targetItem == null || refinerItem == null)
      return;
   
    int itemGrade = targetItem.getItem().getItemGrade();
    int refinerItemId = refinerItem.getItem().getItemId();
   
    // is the item a life stone?
    if (refinerItemId < 8723 || refinerItemId > 8762)
    {
      activeChar.sendPacket(new SystemMessage(SystemMessageId.THIS_IS_NOT_A_SUITABLE_ITEM));
      return;
    }
   
    int gemstoneCount = 0;
    int gemstoneItemId = 0;
    @SuppressWarnings("unused")
    int lifeStoneLevel = getLifeStoneLevel(refinerItemId);
    SystemMessage sm = new SystemMessage(SystemMessageId.REQUIRES_S1_S2);
   
    switch (itemGrade)
    {
      case L2Item.CRYSTAL_C:
         gemstoneCount = 20;
        gemstoneItemId = GEMSTONE_C;
         sm.addNumber(gemstoneCount);
        sm.addString("Gemstone C");
         break;
       case L2Item.CRYSTAL_B:
         gemstoneCount = 30;
        gemstoneItemId = GEMSTONE_B;
         sm.addNumber(gemstoneCount);
        sm.addString("Gemstone B");
         break;
       case L2Item.CRYSTAL_A:
         gemstoneCount = 20;
        gemstoneItemId = GEMSTONE_A;
         sm.addNumber(gemstoneCount);
        sm.addString("Gemstone A");
         break;
       case L2Item.CRYSTAL_S:
         gemstoneCount = 25;
        gemstoneItemId = GEMSTONE_S;
         sm.addNumber(gemstoneCount);
        sm.addString("Gemstone S");
         break;
    }
   
    activeChar.sendPacket(new ExConfirmVariationRefiner(_refinerItemObjId, refinerItemId, gemstoneItemId, gemstoneCount));
    activeChar.sendPacket(sm);
  }
View Full Code Here

  protected void runImpl()
  {
    if (_clanName == null)
      return;

    L2PcInstance player = getClient().getActiveChar();

    if (player == null)
      return;

    if (player.getClan() == null)
    {
      player.sendPacket(new SystemMessage(SystemMessageId.YOU_ARE_NOT_A_CLAN_MEMBER));
      return;
    }

    L2Clan leaderClan = player.getClan();

    if (leaderClan.getAllyId() == 0)
    {
      player.sendPacket(new SystemMessage(SystemMessageId.NO_CURRENT_ALLIANCES));
      return;
    }

    if (!player.isClanLeader() || leaderClan.getClanId() != leaderClan.getAllyId())
    {
      player.sendPacket(new SystemMessage(SystemMessageId.FEATURE_ONLY_FOR_ALLIANCE_LEADER));
      return;
    }

    L2Clan clan = ClanTable.getInstance().getClanByName(_clanName);

    if (clan == null)
    {
      player.sendPacket(new SystemMessage(SystemMessageId.CLAN_DOESNT_EXISTS));
      return;
    }

    if (clan.getClanId() == leaderClan.getClanId())
    {
      player.sendPacket(new SystemMessage(SystemMessageId.ALLIANCE_LEADER_CANT_WITHDRAW));
      return;
    }

    if (clan.getAllyId() != leaderClan.getAllyId())
    {
      player.sendPacket(new SystemMessage(SystemMessageId.DIFFERANT_ALLIANCE));
      return;
    }

    long currentTime = System.currentTimeMillis();

    leaderClan.setAllyPenaltyExpiryTime(currentTime + Config.ALT_ACCEPT_CLAN_DAYS_WHEN_DISMISSED * 86400000L, L2Clan.PENALTY_TYPE_DISMISS_CLAN); //24*60*60*1000 = 86400000

    leaderClan.updateClanInDB();

    clan.setAllyId(0);
    clan.setAllyName(null);
    clan.setAllyPenaltyExpiryTime(currentTime + Config.ALT_ALLY_JOIN_DAYS_WHEN_DISMISSED * 86400000L, L2Clan.PENALTY_TYPE_CLAN_DISMISSED); //24*60*60*1000 = 86400000
    clan.setAllyCrest(0);
    clan.updateClanInDB();

    player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EXPELED_A_CLAN));
  }
View Full Code Here

  }

  @Override
  protected void runImpl()
  {
    L2PcInstance activeChar = getClient().getActiveChar();
    if(activeChar == null)
      return;

    Quest qe = null;
    if(!Config.ALT_DEV_NO_QUESTS)
      qe = QuestManager.getInstance().getQuest(_questId);
   
    if(qe != null)
    {
      QuestState qs = activeChar.getQuestState(qe.getName());
      if(qs != null)
      {
        qs.exitQuest(true);
        SystemMessage sm = new SystemMessage(SystemMessageId.S1_S2);
        sm.addString("Quest aborted.");
        activeChar.sendPacket(sm);
        sm = null;
        QuestList ql = new QuestList();
        activeChar.sendPacket(ql);
      }
      else
      {
        if(Config.DEBUG)
        {
          _log.info("Player '" + activeChar.getName() + "' try to abort quest " + qe.getName() + " but he didn't have it started.");
        }
      }
    }
    else
    {
View Full Code Here

  }
 
  @Override
  protected void runImpl()
  {
    L2PcInstance player = getClient().getActiveChar();
    if (player == null)
      return;
   
    if (!player.getAccessLevel().allowTransaction())
    {
      player.sendMessage("Transactions are disable for your Access Level");
      player.sendPacket(ActionFailed.STATIC_PACKET);
      return;
    }
   
    if (player.isTradeDisabled())
    {
      player.sendMessage("Trade are disable here. Try in another place.");
      player.sendPacket(new PrivateStoreManageListSell(player));
      player.sendPacket(ActionFailed.STATIC_PACKET);
      return;
    }
   
    if (player.isCastingNow() || player.isCastingPotionNow() || player.isMovementDisabled() || player.inObserverMode() || player.getActiveEnchantItem() != null)
    {
      player.sendMessage("You cannot start store now..");
      player.sendPacket(new PrivateStoreManageListSell(player));
      player.sendPacket(ActionFailed.STATIC_PACKET);
      return;
    }
   
    if (player.isInsideZone(L2Character.ZONE_NOSTORE))
    {
      player.sendPacket(new PrivateStoreManageListSell(player));
      player.sendMessage("Trade are disable here. Try in another place.");
      player.sendPacket(ActionFailed.STATIC_PACKET);
      return;
    }

    TradeList tradeList = player.getSellList();
    tradeList.clear();
    tradeList.setPackaged(_packageSale);
   
    long totalCost = player.getAdena();
    for (int i = 0; i < _count; i++)
    {
      int objectId = _items[i * 3 + 0];
      int count = _items[i * 3 + 1];
      int price = _items[i * 3 + 2];
     
      if (price <= 0)
      {
        String msgErr = "[SetPrivateStoreListSell] player " + getClient().getActiveChar().getName() + " tried an overflow exploit (use PHX), ban this player!";
        Util.handleIllegalPlayerAction(getClient().getActiveChar(), msgErr, Config.DEFAULT_PUNISH);
        _count = 0;
        _items = null;
        return;
      }
     
      totalCost += price;
      if (totalCost > Integer.MAX_VALUE)
      {
        player.sendPacket(new PrivateStoreManageListSell(player));
        player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EXCEEDED_QUANTITY_THAT_CAN_BE_INPUTTED));
        return;
      }
     
      tradeList.addItem(objectId, count, price);
    }
   
    if (_count <= 0)
    {
      player.setPrivateStoreType(L2PcInstance.STORE_PRIVATE_NONE);
      player.broadcastUserInfo();
      return;
    }
   
    if (player.isProcessingTransaction())
    {
      player.sendPacket(new PrivateStoreManageListSell(player));
      player.sendMessage("Store mode are disable while trading.");
      return;
    }
   
    // Check maximum number of allowed slots for pvt shops
    if (_count > player.GetPrivateSellStoreLimit())
    {
      player.sendPacket(new PrivateStoreManageListSell(player));
      player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EXCEEDED_QUANTITY_THAT_CAN_BE_INPUTTED));
      return;
    }
   
    player.sitDown();
    if (_packageSale)
    {
      player.setPrivateStoreType(L2PcInstance.STORE_PRIVATE_PACKAGE_SELL);
    }
    else
    {
      player.setPrivateStoreType(L2PcInstance.STORE_PRIVATE_SELL);
    }
    player.broadcastUserInfo();
    player.broadcastPacket(new PrivateStoreMsgSell(player));
  }
View Full Code Here

TOP

Related Classes of com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.