/* * This file is part of aion-unique <aion-unique.com>. * * aion-unique 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. * * aion-unique 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 aion-unique. If not, see <http://www.gnu.org/licenses/>. */ package com.aionemu.gameserver.model.templates.stats; import com.aionemu.gameserver.model.PlayerClass; import com.aionemu.gameserver.utils.stats.ClassStats; /** * @author ATracer * */ public class CalculatedPlayerStatsTemplate extends PlayerStatsTemplate { private PlayerClass playerClass; public CalculatedPlayerStatsTemplate(PlayerClass playerClass) { this.playerClass = playerClass; } @Override public int getAccuracy() { return ClassStats.getAccuracyFor(playerClass); } @Override public int getAgility() { return ClassStats.getAgilityFor(playerClass); } @Override public int getHealth() { return ClassStats.getHealthFor(playerClass); } @Override public int getKnowledge() { return ClassStats.getKnowledgeFor(playerClass); } @Override public int getPower() { return ClassStats.getPowerFor(playerClass); } @Override public int getWill() { return ClassStats.getWillFor(playerClass); } @Override public float getAttackSpeed() { return ClassStats.getAttackSpeedFor(playerClass) / 1000f; } @Override public int getBlock() { return ClassStats.getBlockFor(playerClass); } @Override public int getEvasion() { return ClassStats.getEvasionFor(playerClass); } @Override public float getFlySpeed() { // TODO Auto-generated method stub return ClassStats.getFlySpeedFor(playerClass); } @Override public int getMagicAccuracy() { return ClassStats.getMagicAccuracyFor(playerClass); } @Override public int getMainHandAccuracy() { return ClassStats.getMainHandAccuracyFor(playerClass); } @Override public int getMainHandAttack() { return ClassStats.getMainHandAttackFor(playerClass); } @Override public int getMainHandCritRate() { return ClassStats.getMainHandCritRateFor(playerClass); } @Override public int getMaxHp() { return ClassStats.getMaxHpFor(playerClass, 10); // level is hardcoded } @Override public int getMaxMp() { return 1000; } @Override public int getParry() { return ClassStats.getParryFor(playerClass); } @Override public float getRunSpeed() { return ClassStats.getSpeedFor(playerClass); } @Override public float getWalkSpeed() { return 1.5f; } }