/* * 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 silentium.gameserver.network.serverpackets; import silentium.gameserver.model.actor.instance.L2PcInstance; import silentium.gameserver.model.olympiad.Participant; /** * @author godson */ public class ExOlympiadUserInfo extends L2GameServerPacket { private final L2PcInstance _player; private Participant _par = null; private int _curHp; private int _maxHp; private int _curCp; private int _maxCp; public ExOlympiadUserInfo(L2PcInstance player) { _player = player; if (_player != null) { _curHp = (int) _player.getCurrentHp(); _maxHp = _player.getMaxHp(); _curCp = (int) _player.getCurrentCp(); _maxCp = _player.getMaxCp(); } else { _curHp = 0; _maxHp = 100; _curCp = 0; _maxCp = 100; } } public ExOlympiadUserInfo(Participant par) { _par = par; _player = par.player; if (_player != null) { _curHp = (int) _player.getCurrentHp(); _maxHp = _player.getMaxHp(); _curCp = (int) _player.getCurrentCp(); _maxCp = _player.getMaxCp(); } else { _curHp = 0; _maxHp = 100; _curCp = 0; _maxCp = 100; } } @Override protected final void writeImpl() { writeC(0xfe); writeH(0x29); if (_player != null) { writeC(_player.getOlympiadSide()); writeD(_player.getObjectId()); writeS(_player.getName()); writeD(_player.getClassId().getId()); } else { writeC(_par.side); writeD(_par.objectId); writeS(_par.name); writeD(_par.baseClass); } writeD(_curHp); writeD(_maxHp); writeD(_curCp); writeD(_maxCp); } }