123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 |
- /*
- * 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.templates.chars;
- import java.util.List;
- import javolution.util.FastList;
- import com.l2jserver.gameserver.model.base.ClassId;
- import com.l2jserver.gameserver.model.base.Race;
- import com.l2jserver.gameserver.templates.StatsSet;
- /**
- * @author mkizub
- */
- public class L2PcTemplate extends L2CharTemplate
- {
- /** The Class object of the L2PcInstance */
- public final ClassId classId;
-
- public final Race race;
- public final String className;
-
- public final int spawnX;
- public final int spawnY;
- public final int spawnZ;
-
- public final int classBaseLevel;
- public final float lvlHpAdd;
- public final float lvlHpMod;
- public final float lvlCpAdd;
- public final float lvlCpMod;
- public final float lvlMpAdd;
- public final float lvlMpMod;
-
- public final double fCollisionHeight_female;
- public final double fCollisionRadius_female;
-
- private List<PcTemplateItem> _items = new FastList<PcTemplateItem>();
-
- public L2PcTemplate(StatsSet set)
- {
- super(set);
- classId = ClassId.values()[set.getInteger("classId")];
- race = Race.values()[set.getInteger("raceId")];
- className = set.getString("className");
-
- spawnX = set.getInteger("spawnX");
- spawnY = set.getInteger("spawnY");
- spawnZ = set.getInteger("spawnZ");
-
- classBaseLevel = set.getInteger("classBaseLevel");
- lvlHpAdd = set.getFloat("lvlHpAdd");
- lvlHpMod = set.getFloat("lvlHpMod");
- lvlCpAdd = set.getFloat("lvlCpAdd");
- lvlCpMod = set.getFloat("lvlCpMod");
- lvlMpAdd = set.getFloat("lvlMpAdd");
- lvlMpMod = set.getFloat("lvlMpMod");
-
- fCollisionRadius_female = set.getDouble("collision_radius_female");
- fCollisionHeight_female = set.getDouble("collision_height_female");
- }
-
- /**
- * Adds starter equipment.
- * @param itemId
- * @param amount
- * @param equipped
- */
- public void addItem(int itemId, int amount, boolean equipped)
- {
- _items.add(new PcTemplateItem(itemId, amount, equipped));
- }
-
- /**
- *
- * @return itemIds of all the starter equipment
- */
- public List<PcTemplateItem> getItems()
- {
- return _items;
- }
-
- public static final class PcTemplateItem
- {
- private final int _itemId;
- private final int _amount;
- private final boolean _equipped;
-
- /**
- * @param amount
- * @param itemId
- * @param equipped
- */
- public PcTemplateItem(int itemId, int amount, boolean equipped)
- {
- _itemId = itemId;
- _amount = amount;
- _equipped = equipped;
- }
-
- /**
- * @return Returns the itemId.
- */
- public int getItemId()
- {
- return _itemId;
- }
-
- /**
- * @return Returns the amount.
- */
- public int getAmount()
- {
- return _amount;
- }
-
- /**
- * @return Returns the if the item should be equipped after char creation.
- */
- public boolean isEquipped()
- {
- return _equipped;
- }
- }
-
- public final int getFallHeight()
- {
- return 333; // TODO: unhardcode it
- }
- }
|