Package l2p.gameserver.model

Examples of l2p.gameserver.model.L2Clan


    replyMSG.append("</tr></table>");
    replyMSG.append("<center>");
    replyMSG.append("<br><br><br>ClanHall: " + clanhall.getName() + "<br>");
    replyMSG.append("Location: " + clanhall.getLocation() + "<br>");
    replyMSG.append("ClanHall Owner: ");
    L2Clan owner = clanhall.getOwnerId() == 0 ? null : ClanTable.getInstance().getClan(clanhall.getOwnerId());
    if(owner == null)
    {
      replyMSG.append("none");
    }
    else
    {
      replyMSG.append(owner.getName());
    }
    replyMSG.append("<br><br><br>");
    replyMSG.append("<table>");
    replyMSG.append("<tr><td><button value=\"Open Doors\" action=\"bypass -h admin_clanhallopendoors " + clanhall.getId() + "\" width=80 height=15 back=\"L2UI_CT1.Button_DF_Down\" fore=\"L2UI_CT1.Button_DF\"></td>");
    replyMSG.append("<td><button value=\"Close Doors\" action=\"bypass -h admin_clanhallclosedoors " + clanhall.getId() + "\" width=80 height=15 back=\"L2UI_CT1.Button_DF_Down\" fore=\"L2UI_CT1.Button_DF\"></td></tr>");
View Full Code Here


      if(action.equals("create"))
      {
        try
        {
          String pledgeName = st.nextToken();
          L2Clan clan = ClanTable.getInstance().createClan(target, pledgeName);
          if(clan != null)
          {
            target.sendPacket(new PledgeShowInfoUpdate(clan));
            target.sendUserInfo(true);
            target.sendPacket(Msg.CLAN_HAS_BEEN_CREATED);
            return true;
          }
        }
        catch(Exception e)
        {
        }
      }
      else if(action.equals("dismiss"))
      {
        if(target.getClan() == null)
        {
          activeChar.sendPacket(Msg.INVALID_TARGET);
          return false;
        }
        SiegeManager.removeSiegeSkills(target);
        for(L2Player clanMember : target.getClan().getOnlineMembers(0))
        {
          clanMember.setClan(null);
          clanMember.setTitle(null);
          clanMember.sendPacket(Msg.CLAN_HAS_DISPERSED);
          clanMember.broadcastUserInfo(true);
        }
        ThreadConnection con = null;
        FiltredPreparedStatement statement = null;
        try
        {
          con = L2DatabaseFactory.getInstance().getConnection();
          statement = con.prepareStatement("UPDATE characters SET clanid = 0 WHERE clanid=?");
          statement.setInt(1, target.getClanId());
          statement.execute();
          DatabaseUtils.closeStatement(statement);
          statement = con.prepareStatement("DELETE FROM clan_data WHERE clan_id=?");
          statement.setInt(1, target.getClanId());
          statement.execute();
          DatabaseUtils.closeStatement(statement);
          statement = null;
          target.sendPacket(Msg.CLAN_HAS_DISPERSED);
          target.broadcastUserInfo(true);
        }
        catch(Exception e)
        {
        }
        finally
        {
          DatabaseUtils.closeDatabaseCS(con, statement);
        }
        return true;
      }
      else if(action.equals("setlevel"))
      {
        if(target.getClan() == null)
        {
          activeChar.sendPacket(Msg.INVALID_TARGET);
          return false;
        }
        try
        {
          byte level = Byte.parseByte(st.nextToken());
          L2Clan clan = target.getClan();
          activeChar.sendMessage("You set level " + level + " for clan " + clan.getName());
          clan.setLevel(level);
          clan.updateClanInDB();
          if(level < CastleSiegeManager.getSiegeClanMinLevel())
          {
            SiegeManager.removeSiegeSkills(target);
          }
          else
          {
            SiegeManager.addSiegeSkills(target);
          }
          if(level == 5)
          {
            target.sendPacket(Msg.NOW_THAT_YOUR_CLAN_LEVEL_IS_ABOVE_LEVEL_5_IT_CAN_ACCUMULATE_CLAN_REPUTATION_POINTS);
          }
          PledgeShowInfoUpdate pu = new PledgeShowInfoUpdate(clan);
          PledgeStatusChanged ps = new PledgeStatusChanged(clan);
          for(L2Player member : clan.getOnlineMembers(0))
          {
            member.updatePledgeClass();
            member.sendPacket(Msg.CLANS_SKILL_LEVEL_HAS_INCREASED, pu, ps);
            member.broadcastUserInfo(true);
          }
          return true;
        }
        catch(Exception e)
        {
        }
      }
      else if(action.equals("resetcreate"))
      {
        if(target.getClan() == null)
        {
          activeChar.sendPacket(Msg.INVALID_TARGET);
          return false;
        }
        target.getClan().setExpelledMemberTime(0);
        activeChar.sendMessage("The penalty for creating a clan has been lifted for" + target.getName());
      }
      else if(action.equals("resetwait"))
      {
        target.setLeaveClanTime(0);
        activeChar.sendMessage("The penalty for leaving a clan has been lifted for " + target.getName());
      }
      else if(action.equals("addrep"))
      {
        try
        {
          int rep = Integer.parseInt(st.nextToken());
          if(target.getClan() == null || target.getClan().getLevel() < 5)
          {
            activeChar.sendPacket(Msg.INVALID_TARGET);
            return false;
          }
          target.getClan().incReputation(rep, false, "admin_manual");
          activeChar.sendMessage("Added " + rep + " clan points to clan " + target.getClan().getName() + ".");
        }
        catch(NumberFormatException nfe)
        {
          activeChar.sendMessage("Please specify a number of clan points to add.");
        }
      }
      else if(action.equals("setleader"))
      {
        L2Clan clan = target.getClan();
        if(target.getClan() == null)
        {
          activeChar.sendPacket(Msg.INVALID_TARGET);
          return false;
        }
        String newLeaderName;
        if(st.hasMoreTokens())
        {
          newLeaderName = st.nextToken();
        }
        else
        {
          newLeaderName = target.getName();
        }
        L2ClanMember newLeader = clan.getClanMember(newLeaderName);
        if(newLeader == null)
        {
          activeChar.sendPacket(Msg.INVALID_TARGET);
          return false;
        }
View Full Code Here

        String siegeDate = "";
        Castle c = CastleManager.getInstance().getCastleByIndex(rs.getInt("id"));
        if(c != null)
        {
          siegeDate = dateFormat.format(c.getSiege().getSiegeDate().getTime());
          L2Clan o = c.getOwner();
          if(o != null)
          {
            owner = o.getName();
          }
        }
        sb.append("<tr>");
        sb.append("<td width=150>").append(name).append("</td>");
        sb.append("<td width=150>").append(taxPercent).append("</td>");
View Full Code Here

  private SystemMessage checkConditions(L2ItemInstance item)
  {
    L2Player owner = getOwner().getPlayer();
    int itemId = item.getItemId();
    int targetSlot = item.getItem().getBodyPart();
    L2Clan ownersClan = owner.getClan();
    // Hero items
    if((item.isHeroWeapon() || item.getItemId() == 6842) && !owner.isHero())
    {
      return Msg.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM;
    }
    // камаэли и хеви/робы/щиты/сигилы
    if(owner.getRace() == Race.kamael && (item.getItemType() == ArmorType.HEAVY || item.getItemType() == ArmorType.MAGIC || item.getItemType() == ArmorType.SIGIL || item.getItemType() == WeaponType.NONE && !item.getItem().isCombatFlag()))
    {
      return Msg.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM;
    }
    // не камаэли и рапиры/арбалеты/древние мечи
    if(owner.getRace() != Race.kamael && (item.getItemType() == WeaponType.CROSSBOW || item.getItemType() == WeaponType.RAPIER || item.getItemType() == WeaponType.ANCIENTSWORD))
    {
      return Msg.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM;
    }
    if(itemId >= 7850 && itemId <= 7859 && owner.getLvlJoinedAcademy() == 0) // Clan Oath Armor
    {
      return Msg.THIS_ITEM_CAN_ONLY_BE_WORN_BY_A_MEMBER_OF_THE_CLAN_ACADEMY;
    }
    if(item.isClanApellaItem() && owner.getPledgeClass() < L2Player.RANK_WISEMAN)
    {
      return Msg.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM;
    }
    if(item.getItemType() == WeaponType.DUALDAGGER && !PlayerClass.values()[owner.getActiveClassId()].isOfType(ClassType.DaggerMaster))
    {
      return Msg.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM;
    }
    if(item.getItem() instanceof L2Armor && ((L2Armor) item.getItem()).getClassType() != null && !PlayerClass.values()[owner.getActiveClassId()].isOfType(((L2Armor) item.getItem()).getClassType()))
    {
      return Msg.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM;
    }
    // Замковые короны, доступные для всех членов клана
    if(Arrays.asList(_castleCirclets).contains(itemId) && (ownersClan == null || itemId != _castleCirclets[ownersClan.getHasCastle()]))
    {
      return new SystemMessage(new CustomMessage("l2p.gameserver.model.Inventory.CircletWorn", owner).addString(CastleManager.getInstance().getCastleByIndex(Arrays.asList(_castleCirclets).indexOf(itemId)).getName()));
    }
    // Корона лидера клана, владеющего замком
    if(itemId == 6841 && (ownersClan == null || !owner.isClanLeader() || ownersClan.getHasCastle() == 0))
    {
      return Msg.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM;
    }
    // Нельзя одевать оружие, если уже одето проклятое оружие. Проверка двумя способами, для надежности.
    if(targetSlot == L2Item.SLOT_LR_HAND || targetSlot == L2Item.SLOT_L_HAND || targetSlot == L2Item.SLOT_R_HAND)
    {
      if(itemId != getPaperdollItemId(PAPERDOLL_RHAND) && CursedWeaponsManager.getInstance().isCursed(getPaperdollItemId(PAPERDOLL_RHAND)))
      {
        return Msg.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM;
      }
      if(owner.isCursedWeaponEquipped() && itemId != owner.getCursedWeaponEquippedId())
      {
        return Msg.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM;
      }
    }
    // Плащи
    if(item.getItem().isCloak())
    {
      // Can be worn by Knights or higher ranks who own castle
      if(item.getName().contains("Knight") && (owner.getPledgeClass() < L2Player.RANK_KNIGHT || owner.getCastle() == null))
      {
        return Msg.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM;
      }
      // Плащи для камаэлей
      if(item.getName().contains("Kamael") && owner.getRace() != Race.kamael)
      {
        return Msg.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM;
      }
      // Плащи можно носить только с S80 или S84 сетом
      boolean cloack_usable = false;
      for(int skill : L2Skill.SKILLS_S80_AND_S84_SETS)
      {
        if(owner.getSkillLevel(skill) > 0)
        {
          cloack_usable = true;
        }
      }
      if(!cloack_usable)
      {
        return Msg.THE_CLOAK_CANNOT_BE_EQUIPPED_BECAUSE_A_NECESSARY_ITEM_IS_NOT_EQUIPPED;
      }
    }
    if(targetSlot == L2Item.SLOT_R_BRACELET)
    {
      // Agathion Seal Bracelet - %Castle%
      if(itemId >= 9607 && itemId <= 9615 && (ownersClan == null || itemId - 9606 != ownersClan.getHasCastle()))
      {
        return Msg.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM;
      }
      // Agathion Seal Bracelet - Fortress
      if(itemId == 10018 && (ownersClan == null || ownersClan.getHasFortress() == 0))
      {
        return Msg.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM;
      }
      //TODO: Agathion Seal Bracelet - Rudolph
      //if((itemId == 10606 || itemId == 10607) && !Chrismas:))
View Full Code Here

    return null;
  }

  public boolean updateFunctions(int type, int level)
  {
    L2Clan clan = getOwner();
    if(clan == null)
    {
      return false;
    }
    long count = clan.getAdenaCount();
    ResidenceFunction function = getFunction(type);
    if(function == null)
    {
      return false;
    }
    if(function.isActive() && function.getLevel() == level)
    {
      return true;
    }
    int lease = level == 0 ? 0 : getFunction(type).getLease(level);
    ThreadConnection con = null;
    FiltredPreparedStatement statement = null;
    try
    {
      con = L2DatabaseFactory.getInstance().getConnection();
      if(!function.isActive())
      {
        if(count >= lease)
        {
          clan.getWarehouse().destroyItem(57, lease);
        }
        else
        {
          return false;
        }
        long time = Calendar.getInstance().getTimeInMillis() + 86400000;
        statement = con.prepareStatement("REPLACE residence_functions SET id=?, type=?, lvl=?, endTime=?");
        statement.setInt(1, getId());
        statement.setInt(2, type);
        statement.setInt(3, level);
        statement.setInt(4, (int) (time / 1000));
        statement.execute();
        function.setLvl(level);
        function.setEndTimeInMillis(time);
        function.setActive(true);
        StartAutoTaskForFunction(function);
      }
      else
      {
        if(count >= lease - getFunction(type).getLease())
        {
          if(lease > getFunction(type).getLease())
          {
            clan.getWarehouse().destroyItem(57, lease - getFunction(type).getLease());
          }
        }
        else
        {
          return false;
View Full Code Here

  {
    if(getOwnerId() != 0)
    {
      try
      {
        L2Clan clan = getOwner();
        if(clan == null)
        {
          _log.warning("SiegeUnit[485]: clan == null for residence " + getId());
          return;
        }
        if(function.getEndTimeInMillis() > System.currentTimeMillis())
        {
          ThreadPoolManager.getInstance().scheduleGeneral(new AutoTaskForFunctions(function), function.getEndTimeInMillis() - System.currentTimeMillis());
        }
        else if(function.isInDebt() && clan.getAdenaCount() >= function.getLease()) // if player didn't pay before add extra fee
        {
          clan.getWarehouse().destroyItem(57, function.getLease());
          function.updateRentTime(false);
          ThreadPoolManager.getInstance().scheduleGeneral(new AutoTaskForFunctions(function), function.getEndTimeInMillis() - System.currentTimeMillis());
          Log.add("deducted " + function.getLease() + " adena from " + getName() + " owner's residence for function type " + function.getType(), "residence");
        }
        else if(!function.isInDebt())
View Full Code Here

      return;
    }
    int _castleId = MercTicketManager.getInstance().getTicketCastleId(_itemId);
    if(_castleId > 0)
    {
      L2Clan clan = player.getClan();
      // mercenary tickets can only be picked up by the castle owner.
      if(clan != null && clan.getHasCastle() == _castleId && (player.getClanPrivileges() & L2Clan.CP_CS_MERCENARIES) == L2Clan.CP_CS_MERCENARIES || player.isGM())
      {
        if(player.isInParty())
        {
          player.sendMessage(new CustomMessage("l2p.gameserver.model.items.L2ItemInstance.NoMercInParty", player));
        }
View Full Code Here

                Castle castle = getCastle(player);
                if (castle != null && castle.getId() > 0) {
                    html.replace("%castlename%", castle.getName());
                    html.replace("%taxpercent%", String.valueOf(castle.getTaxPercent()));
                    if (castle.getOwnerId() > 0) {
                        L2Clan clan = ClanTable.getInstance().getClan(castle.getOwnerId());
                        if (clan != null) {
                            html.replace("%clanname%", clan.getName());
                            html.replace("%clanleadername%", clan.getLeaderName());
                        } else {
                            html.replace("%clanname%", "unexistant clan");
                            html.replace("%clanleadername%", "None");
                        }
                    } else {
View Full Code Here

  protected void onEvtAttacked(L2Character attacker, int damage)
  {
    L2SiegeGuardInstance actor = getActor();
    if(actor != null && attacker != null && attacker.getPlayer() != null)
    {
      L2Clan clan = attacker.getPlayer().getClan();
      if(clan != null && SiegeManager.getSiege(actor, true) == clan.getSiege() && clan.isDefender())
      {
        return;
      }
    }
    super.onEvtAttacked(attacker, damage);
View Full Code Here

  {
    L2SiegeGuardInstance actor = getActor();
    if(actor != null && target != null && target.getPlayer() != null)
    {
      L2Player player = target.getPlayer();
      L2Clan clan = player.getClan();
      if(clan != null && SiegeManager.getSiege(actor, true) == clan.getSiege() && clan.isDefender())
      {
        return;
      }
      Castle castle = actor.getCastle();
      if(player.getTerritorySiege() > -1 && castle != null && player.getTerritorySiege() == castle.getId())
View Full Code Here

TOP

Related Classes of l2p.gameserver.model.L2Clan

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.