From: Hendrik <nh...@us...> - 2006-07-17 21:24:17
|
Update of /cvsroot/arianne/stendhal/src/games/stendhal/server In directory sc8-pr-cvs11.sourceforge.net:/tmp/cvs-serv21201/src/games/stendhal/server Modified Files: StendhalRPAction.java Log Message: Replaced getWeapon with getWeapons in RPEntiry (code has been in StendhalRPAction before). Index: StendhalRPAction.java =================================================================== RCS file: /cvsroot/arianne/stendhal/src/games/stendhal/server/StendhalRPAction.java,v retrieving revision 1.113 retrieving revision 1.114 diff -C2 -d -r1.113 -r1.114 *** StendhalRPAction.java 17 Jul 2006 15:18:09 -0000 1.113 --- StendhalRPAction.java 17 Jul 2006 21:24:15 -0000 1.114 *************** *** 89,115 **** } - private static List<Item> getWeapons(RPEntity entity) { - List<Item> weapons = new ArrayList<Item>(); - Item weaponItem = entity.getWeapon(); - if (weaponItem != null) { - weapons.add(weaponItem); - - // pair weapons - if (weaponItem.getName().startsWith("l_hand_")) { - String rpclass = weaponItem.getItemClass(); - weaponItem = entity.getEquippedItemClass("rhand", rpclass); - if ((weaponItem != null) && (weaponItem.getName().startsWith("r_hand_"))) { - weapons.add(weaponItem); - } else { - weapons.clear(); - } - } else { - if (weaponItem.getName().startsWith("r_hand_")) { - weapons.clear(); - } - } - } - return weapons; - } public static int damageDone(RPEntity source, RPEntity target) { --- 89,92 ---- *************** *** 123,127 **** int defWeapon = 0; ! List<Item> weapons = getWeapons(source); for (Item weaponItem : weapons) { weapon += weaponItem.getAttack(); --- 100,104 ---- int defWeapon = 0; ! List<Item> weapons = source.getWeapons(); for (Item weaponItem : weapons) { weapon += weaponItem.getAttack(); *************** *** 148,153 **** } ! float maxAttackerComponent = 0.8f * source.getATK() * source.getATK() ! + 4.0f * source.getATK() * weapon; float attackerComponent = (Rand.roll1D100() / 100.0f) * maxAttackerComponent; --- 125,133 ---- } ! int sourceAtk = source.getATK(); ! float maxAttackerComponent = ! ( 0.8f * sourceAtk ! + 4.0f * weapon ! ) * sourceAtk; float attackerComponent = (Rand.roll1D100() / 100.0f) * maxAttackerComponent; *************** *** 180,184 **** } ! List<Item> targetWeapons = getWeapons(target); for (Item weaponItem : targetWeapons) { defWeapon += weaponItem.getDefense(); --- 160,164 ---- } ! List<Item> targetWeapons = target.getWeapons(); for (Item weaponItem : targetWeapons) { defWeapon += weaponItem.getDefense(); *************** *** 192,203 **** int targetDef = target.getDEF(); ! float maxDefenderComponent = 0.6f * target.getDEF() * target.getDEF() ! + 4.0f * targetDef * shield ! + 2.0f * targetDef * armor ! + 1.5f * targetDef * cloak ! + 1.0f * targetDef * helmet ! + 1.0f * targetDef * legs ! + 1.0f * targetDef * boots ! + 1.0f * targetDef * defWeapon; float defenderComponent = (Rand.roll1D100() / 100.0f) --- 172,185 ---- int targetDef = target.getDEF(); ! float maxDefenderComponent = ! ( 0.6f * targetDef ! + 4.0f * shield ! + 2.0f * armor ! + 1.5f * cloak ! + 1.0f * helmet ! + 1.0f * legs ! + 1.0f * boots ! + 1.0f * defWeapon) ! * targetDef; float defenderComponent = (Rand.roll1D100() / 100.0f) *************** *** 255,263 **** target.onAttack(source, true); ! Item weaponItem = source.getWeapon(); ! if (source.nextto(target, 1) ! || (weaponItem != null && weaponItem.isOfClass("ranged"))) { ! if (weaponItem != null && weaponItem.isOfClass("ranged")) { // Check Line of View to see if there is any obstacle. Vector<Point> points = Line.renderLine(source.getx(), --- 237,245 ---- target.onAttack(source, true); ! List<Item> weaponItem = source.getWeapons(); ! boolean range = (weaponItem.size() > 0 && weaponItem.get(0).isOfClass("ranged")); ! if (source.nextto(target, 1) || range) { ! if (range) { // Check Line of View to see if there is any obstacle. Vector<Point> points = Line.renderLine(source.getx(), |