1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- /*
- * 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 com.l2jserver.gameserver.network.serverpackets;
- import com.l2jserver.gameserver.model.actor.instance.L2DoorInstance;
- import com.l2jserver.gameserver.model.actor.instance.L2StaticObjectInstance;
- /**
- *
- *
- * @author KenM
- */
- public class StaticObject extends L2GameServerPacket
- {
- private final int _staticObjectId;
- private final int _objectId;
- private final int _type;
- private final boolean _isTargetable;
- private final int _meshIndex;
- private final boolean _isClosed;
- private final boolean _isEnemy;
- private final int _maxHp;
- private final int _currentHp;
- private final boolean _showHp;
- private final int _damageGrade;
-
- public StaticObject(L2StaticObjectInstance staticObject)
- {
- _staticObjectId = staticObject.getStaticObjectId();
- _objectId = staticObject.getObjectId();
- _type = 0;
- _isTargetable = true;
- _meshIndex = staticObject.getMeshIndex();
- _isClosed = false;
- _isEnemy = false;
- _maxHp = 0;
- _currentHp = 0;
- _showHp = false;
- _damageGrade = 0;
- }
-
- public StaticObject(L2DoorInstance door, boolean showHp)
- {
- _staticObjectId = door.getDoorId();
- _objectId = door.getObjectId();
- _type = 1;
- _isTargetable = true;
- _meshIndex = 1;
- _isClosed = !door.getOpen();
- _isEnemy = door.isEnemy();
- _maxHp = door.getMaxVisibleHp();
- _currentHp = (int) door.getCurrentHp();
- _showHp = door.getIsShowHp() || showHp;
- _damageGrade = door.getDamage();
- }
-
- @Override
- protected final void writeImpl()
- {
- writeC(0x9f);
- writeD(_staticObjectId);
- writeD(_objectId);
- writeD(_type);
- writeD(_isTargetable ? 1 : 0);
- writeD(_meshIndex);
- writeD(_isClosed ? 1 : 0);
- writeD(_isEnemy ? 1 : 0);
- writeD(_currentHp);
- writeD(_maxHp);
- writeD(_showHp ? 1 : 0);
- writeD(_damageGrade);
- }
-
-
- /* (non-Javadoc)
- * @see com.l2jserver.gameserver.serverpackets.ServerBasePacket#getType()
- */
- @Override
- public String getType()
- {
- return "[S] 9f StaticObject";
- }
- }
|