v2.5.0: fixed upgrade window ring stats not accounting for curses
This commit is contained in:
committed by
Evan Debenham
parent
e4085fe445
commit
f232a5d1e8
+1
@@ -47,6 +47,7 @@ public class RingOfAccuracy extends Ring {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String upgradeStat1(int level){
|
public String upgradeStat1(int level){
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.3f, level+1)-1f)) + "%";
|
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.3f, level+1)-1f)) + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
@@ -47,6 +47,7 @@ public class RingOfArcana extends Ring {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String upgradeStat1(int level){
|
public String upgradeStat1(int level){
|
||||||
|
if (cursed) level = Math.min(-1, level-3);
|
||||||
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.175f, level+1)-1f)) + "%";
|
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.175f, level+1)-1f)) + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
@@ -59,6 +59,7 @@ public class RingOfElements extends Ring {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String upgradeStat1(int level){
|
public String upgradeStat1(int level){
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
return Messages.decimalFormat("#.##", 100f * (1f - Math.pow(0.825f, level+1))) + "%";
|
return Messages.decimalFormat("#.##", 100f * (1f - Math.pow(0.825f, level+1))) + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
@@ -51,6 +51,7 @@ public class RingOfEnergy extends Ring {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String upgradeStat1(int level){
|
public String upgradeStat1(int level){
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.15f, level+1)-1f)) + "%";
|
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.15f, level+1)-1f)) + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
@@ -47,6 +47,7 @@ public class RingOfEvasion extends Ring {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String upgradeStat1(int level){
|
public String upgradeStat1(int level){
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.125f, level+1)-1f)) + "%";
|
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.125f, level+1)-1f)) + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+3
@@ -133,17 +133,20 @@ public class RingOfForce extends Ring {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String upgradeStat1(int level) {
|
public String upgradeStat1(int level) {
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
float tier = tier(Dungeon.hero != null ? Dungeon.hero.STR() : 10);
|
float tier = tier(Dungeon.hero != null ? Dungeon.hero.STR() : 10);
|
||||||
return min(level+1, tier) + "-" + max(level+1, tier);
|
return min(level+1, tier) + "-" + max(level+1, tier);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String upgradeStat2(int level) {
|
public String upgradeStat2(int level) {
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
return Integer.toString(level+1);
|
return Integer.toString(level+1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String upgradeStat3(int level) {
|
public String upgradeStat3(int level) {
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
if (Dungeon.hero != null && Dungeon.hero.heroClass == HeroClass.DUELIST){
|
if (Dungeon.hero != null && Dungeon.hero.heroClass == HeroClass.DUELIST){
|
||||||
float tier = tier(Dungeon.hero != null ? Dungeon.hero.STR() : 10);
|
float tier = tier(Dungeon.hero != null ? Dungeon.hero.STR() : 10);
|
||||||
int bonus = Math.round(1+tier+((level+1)*((3+tier)/8f)));
|
int bonus = Math.round(1+tier+((level+1)*((3+tier)/8f)));
|
||||||
|
|||||||
+1
@@ -47,6 +47,7 @@ public class RingOfFuror extends Ring {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String upgradeStat1(int level){
|
public String upgradeStat1(int level){
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.09051f, level+1)-1f)) + "%";
|
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.09051f, level+1)-1f)) + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
@@ -47,6 +47,7 @@ public class RingOfHaste extends Ring {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String upgradeStat1(int level){
|
public String upgradeStat1(int level){
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.2f, level+1)-1f)) + "%";
|
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.2f, level+1)-1f)) + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+2
@@ -90,11 +90,13 @@ public class RingOfMight extends Ring {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String upgradeStat1(int level) {
|
public String upgradeStat1(int level) {
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
return Integer.toString(level+1);
|
return Integer.toString(level+1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String upgradeStat2(int level) {
|
public String upgradeStat2(int level) {
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.035, level+1)-1f)) + "%";
|
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.035, level+1)-1f)) + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+2
@@ -48,11 +48,13 @@ public class RingOfSharpshooting extends Ring {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String upgradeStat1(int level) {
|
public String upgradeStat1(int level) {
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
return Integer.toString(level+1);
|
return Integer.toString(level+1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String upgradeStat2(int level) {
|
public String upgradeStat2(int level) {
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.2, level+1)-1f)) + "%";
|
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.2, level+1)-1f)) + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
@@ -47,6 +47,7 @@ public class RingOfTenacity extends Ring {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String upgradeStat1(int level){
|
public String upgradeStat1(int level){
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
return Messages.decimalFormat("#.##", 100f * (1f - Math.pow(0.85f, level+1))) + "%";
|
return Messages.decimalFormat("#.##", 100f * (1f - Math.pow(0.85f, level+1))) + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
@@ -76,6 +76,7 @@ public class RingOfWealth extends Ring {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String upgradeStat1(int level){
|
public String upgradeStat1(int level){
|
||||||
|
if (cursed && cursedKnown) level = Math.min(-1, level-3);
|
||||||
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.2f, level+1)-1f)) + "%";
|
return Messages.decimalFormat("#.##", 100f * (Math.pow(1.2f, level+1)-1f)) + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -103,6 +103,7 @@ public class WndUpgrade extends Window {
|
|||||||
|
|
||||||
// *** Sprites, showing item at current level and with +1 ***
|
// *** Sprites, showing item at current level and with +1 ***
|
||||||
|
|
||||||
|
//TODO add a background here too, to better communicate things like ID state and curse state?
|
||||||
ItemSprite i1 = new ItemSprite();
|
ItemSprite i1 = new ItemSprite();
|
||||||
add(i1);
|
add(i1);
|
||||||
i1.view(toUpgrade);
|
i1.view(toUpgrade);
|
||||||
@@ -254,7 +255,6 @@ public class WndUpgrade extends Window {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//Various ring stats (varies by ring)
|
//Various ring stats (varies by ring)
|
||||||
//TODO cursed ring stats?
|
|
||||||
if (toUpgrade instanceof Ring){
|
if (toUpgrade instanceof Ring){
|
||||||
if (((Ring) toUpgrade).upgradeStat1(levelFrom) != null){
|
if (((Ring) toUpgrade).upgradeStat1(levelFrom) != null){
|
||||||
bottom = fillFields(Messages.get(toUpgrade, "upgrade_stat_name_1"),
|
bottom = fillFields(Messages.get(toUpgrade, "upgrade_stat_name_1"),
|
||||||
|
|||||||
Reference in New Issue
Block a user