コード例 #1
0
  /** Method onSendChanges. */
  @Override
  protected void onSendChanges() {
    super.onSendChanges();

    if ((_changes & BROADCAST_CHAR_INFO2) == BROADCAST_CHAR_INFO2) {
      _activeChar.broadcastCharInfo();

      for (Summon summon : _activeChar.getSummonList()) {
        summon.broadcastCharInfo();
      }
    }

    if ((_changes & BROADCAST_CHAR_INFO) == BROADCAST_CHAR_INFO) {
      _activeChar.broadcastCharInfo();
    } else if ((_changes & SEND_CHAR_INFO) == SEND_CHAR_INFO) {
      _activeChar.sendUserInfo();
    }

    if ((_changes & SEND_CUR_LOAD) == SEND_CUR_LOAD) {
      _activeChar.sendStatusUpdate(false, false, StatusUpdateField.CUR_LOAD);
    }

    if ((_changes & SEND_MAX_LOAD) == SEND_MAX_LOAD) {
      _activeChar.sendStatusUpdate(false, false, StatusUpdateField.MAX_LOAD);
    }

    if ((_changes & BROADCAST_KARMA) == BROADCAST_KARMA) {
      _activeChar.sendStatusUpdate(true, false, StatusUpdateField.KARMA);
    }

    if ((_changes & SEND_STORAGE_INFO) == SEND_STORAGE_INFO) {
      _activeChar.sendPacket(new ExStorageMaxCount(_activeChar));
    }
  }
コード例 #2
0
  /** Method refreshStats. */
  @Override
  protected void refreshStats() {
    _maxCp = set(SEND_STATUS_INFO, _maxCp, _activeChar.getMaxCp());
    super.refreshStats();
    _maxLoad = set(SEND_CHAR_INFO | SEND_MAX_LOAD, _maxLoad, _activeChar.getMaxLoad());
    _curLoad = set(SEND_CUR_LOAD, _curLoad, _activeChar.getCurrentLoad());

    for (Element e : Element.VALUES) {
      _attackElement[e.getId()] =
          set(SEND_CHAR_INFO, _attackElement[e.getId()], _activeChar.getAttack(e));
      _defenceElement[e.getId()] =
          set(SEND_CHAR_INFO, _defenceElement[e.getId()], _activeChar.getDefence(e));
    }

    _exp = set(SEND_CHAR_INFO, _exp, _activeChar.getExp());
    _sp = set(SEND_CHAR_INFO, _sp, _activeChar.getIntSp());
    _pk = set(SEND_CHAR_INFO, _pk, _activeChar.getPkKills());
    _pvp = set(SEND_CHAR_INFO, _pvp, _activeChar.getPvpKills());
    _fame = set(SEND_CHAR_INFO, _fame, _activeChar.getFame());
    _karma = set(BROADCAST_KARMA, _karma, _activeChar.getKarma());
    _inventory = set(SEND_STORAGE_INFO, _inventory, _activeChar.getInventoryLimit());
    _warehouse = set(SEND_STORAGE_INFO, _warehouse, _activeChar.getWarehouseLimit());
    _clan = set(SEND_STORAGE_INFO, _clan, Config.WAREHOUSE_SLOTS_CLAN);
    _trade = set(SEND_STORAGE_INFO, _trade, _activeChar.getTradeLimit());
    _recipeDwarven = set(SEND_STORAGE_INFO, _recipeDwarven, _activeChar.getDwarvenRecipeLimit());
    _recipeCommon = set(SEND_STORAGE_INFO, _recipeCommon, _activeChar.getCommonRecipeLimit());
    _cubicsHash =
        set(BROADCAST_CHAR_INFO, _cubicsHash, CollectionUtils.hashCode(_activeChar.getCubics()));
    _partyRoom =
        set(
            BROADCAST_CHAR_INFO,
            _partyRoom,
            (_activeChar.getMatchingRoom() != null)
                    && (_activeChar.getMatchingRoom().getType() == MatchingRoom.PARTY_MATCHING)
                    && (_activeChar.getMatchingRoom().getLeader() == _activeChar)
                ? _activeChar.getMatchingRoom().getId()
                : 0);
    _team = set(BROADCAST_CHAR_INFO2, _team, _activeChar.getTeam());
    _title = set(BROADCAST_CHAR_INFO, _title, _activeChar.getTitle());
  }