public static float accuracyMultiplier( Char target ){ return (float)Math.pow(1.3f, getBonus(target, Accuracy.class)); }
public String statsInfo() { if (isIdentified()){ return Messages.get(this, "stats", new DecimalFormat("#.##").format(100f * (Math.pow(1.3f, soloBonus()) - 1f))); } else { return Messages.get(this, "typical_stats", new DecimalFormat("#.##").format(30f)); } }
@Override public int attackSkill( Char target ) { KindOfWeapon wep = belongings.weapon; float accuracy = 1; accuracy *= RingOfAccuracy.accuracyMultiplier( this ); if (wep instanceof MissileWeapon){ if (Dungeon.level.adjacent( pos, target.pos )) { accuracy *= 0.5f; } else { accuracy *= 1.5f; } } if (wep != null) { return (int)(attackSkill * accuracy * wep.accuracyFactor( this )); } else { return (int)(attackSkill * accuracy); } }
@Override public int attackSkill( Char target ) { KindOfWeapon wep = belongings.weapon; float accuracy = 1; accuracy *= RingOfAccuracy.accuracyMultiplier( this ); if (wep instanceof MissileWeapon){ if (Dungeon.level.adjacent( pos, target.pos )) { accuracy *= 0.5f; } else { accuracy *= 1.5f; } } if (wep != null) { return (int)(attackSkill * accuracy * wep.accuracyFactor( this )); } else { return (int)(attackSkill * accuracy); } }
public String statsInfo() { if (isIdentified()){ return Messages.get(this, "stats", new DecimalFormat("#.##").format(100f * (Math.pow(1.3f, soloBonus()) - 1f))); } else { return Messages.get(this, "typical_stats", new DecimalFormat("#.##").format(30f)); } }
public static float accuracyMultiplier( Char target ){ return (float)Math.pow(1.3f, getBonus(target, Accuracy.class)); }