1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- /*
- * 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 net.sf.l2j.gameserver.clientpackets;
- import java.util.List;
- import javolution.util.FastList;
- import net.sf.l2j.gameserver.instancemanager.CursedWeaponsManager;
- import net.sf.l2j.gameserver.model.CursedWeapon;
- import net.sf.l2j.gameserver.model.L2Character;
- import net.sf.l2j.gameserver.serverpackets.ExCursedWeaponLocation;
- import net.sf.l2j.gameserver.serverpackets.ExCursedWeaponLocation.CursedWeaponInfo;
- import net.sf.l2j.util.Point3D;
- /**
- * Format: (ch)
- * @author -Wooden-
- */
- public final class RequestCursedWeaponLocation extends L2GameClientPacket
- {
- private static final String _C__D0_23_REQUESTCURSEDWEAPONLOCATION = "[C] D0:23 RequestCursedWeaponLocation";
- @Override
- protected void readImpl()
- {
- //nothing to read it's just a trigger
- }
- /**
- * @see net.sf.l2j.gameserver.clientpackets.ClientBasePacket#runImpl()
- */
- @Override
- protected
- void runImpl()
- {
- L2Character activeChar = getClient().getActiveChar();
- if (activeChar == null)
- return;
- List<CursedWeaponInfo> list = new FastList<CursedWeaponInfo>();
- for (CursedWeapon cw : CursedWeaponsManager.getInstance().getCursedWeapons())
- {
- if (!cw.isActive()) continue;
- Point3D pos = cw.getWorldPosition();
- if (pos != null)
- list.add(new CursedWeaponInfo(pos, cw.getItemId(), cw.isActivated() ? 1 : 0));
- }
- //send the ExCursedWeaponLocation
- if (!list.isEmpty())
- {
- activeChar.sendPacket(new ExCursedWeaponLocation(list));
- }
- }
- /**
- * @see net.sf.l2j.gameserver.BasePacket#getType()
- */
- @Override
- public String getType()
- {
- return _C__D0_23_REQUESTCURSEDWEAPONLOCATION;
- }
- }
|