|
Well... here's something useful
|
|
Topic Started: Sep 15 2007, 11:26 AM (302 Views)
|
|
DigitalCrash27
|
Sep 15 2007, 11:26 AM
Post #1
|
- Posts:
- 197
- Group:
- Members
- Member
- #15
- Joined:
- September 24, 2005
|
- Code:
-
new IntrinsicAbility("Boosteon") { public void switchIn(Pokemon p) { Pokemon[] teammates = p.getTeammates(); double AttackStat = 0; double DefenceStat = 0; double SpAttackStat = 0; double SpDefenceStat = 0; double SpeedStat = 0; int JolteonCheck = 0; int FlareonCheck = 0; int VaporeonCheck = 0; int EspeonCheck = 0; int UmbreonCheck = 0; int LeafeonCheck = 0; int GlaceonCheck = 0; for (int i = 0; i < teammates.length; ++i) { Pokemon teammate = teammates[i]; if (teammate.getSpeciesName().equals("Jolteon") && JolteonCheck < 1){ SpeedStat = SpeedStat + 0.2; ++JolteonCheck; } else if (teammate.getSpeciesName().equals("Flareon") && FlareonCheck < 1){ AttackStat = AttackStat + 0.2; ++FlareonCheck; } else if (teammate.getSpeciesName().equals("Vaporeon") && VaporeonCheck < 1){ SpDefenceStat = SpDefenceStat + 0.2; ++VaporeonCheck; } else if (teammate.getSpeciesName().equals("Espeon") && EspeonCheck < 1){ SpAttackStat = SpAttackStat + 0.2; ++EspeonCheck; } else if (teammate.getSpeciesName().equals("Umbreon") && UmbreonCheck < 1){ SpDefenceStat = SpDefenceStat + 0.2; ++UmbreonCheck; } else if (teammate.getSpeciesName().equals("Glaceon") && GlaceonCheck < 1){ SpAttackStat = SpAttackStat + 0.2; ++GlaceonCheck; } else if (teammate.getSpeciesName().equals("Leafeon") && LeafeonCheck < 1){ DefenceStat = DefenceStat + 0.2; ++LeafeonCheck; } } ++SpeedStat; ++AttackStat; ++DefenceStat; ++SpAttackStat; ++SpDefenceStat; p.getMultiplier(Pokemon.S_ATTACK).multiplyBy(AttackStat); p.getMultiplier(Pokemon.S_DEFENCE).multiplyBy(DefenceStat); p.getMultiplier(Pokemon.S_SPATTACK).multiplyBy(SpAttackStat); p.getMultiplier(Pokemon.S_SPDEFENCE).multiplyBy(SpDefenceStat); p.getMultiplier(Pokemon.S_SPEED).multiplyBy(SpeedStat); return; } };
I think that should work. :x
|
|
|
| |
|
+Undergamed
|
Sep 15 2007, 01:07 PM
Post #2
|
- Posts:
- 1,380
- Group:
- Moderators
- Member
- #149
- Joined:
- June 28, 2006
|
*mind explodes*
|
|
|
| |
|
+bearzly
|
Sep 15 2007, 01:45 PM
Post #3
|
- Posts:
- 1,968
- Group:
- Moderators
- Member
- #6
- Joined:
- September 22, 2005
|
- Code:
-
new IntrinsicAbility("Boosteon") { public void switchIn(Pokemon p) { Pokemon[] teammates = p.getTeammates(); double[] multipliers = new double[6]; Arrays.fill(multipliers, 1.0); HashSet used = new HashSet(); for (int i = 0; i < teammates.length; ++i) { String name = teammates[i].getSpeciesName(); if (used.contains(name)) continue; if (name.equals("Jolteon")) { multipliers[Pokemon.S_SPEED] += 0.2; } else if (name.equals("Flareon")) { multipliers[Pokemon.S_ATTACK] += 0.2; } else if (name.equals("Vaporeon")) { multipliers[Pokemon.S_DEFENCE] += 0.2; } else if (name.equals("Espeon")) { multipliers[Pokemon.S_SPATTACK] += 0.2; } else if (name.equals("Umbreon")) { multipliers[Pokemon.S_SPDEFENCE] += 0.2; } else if (name.equals("Glaceon")) { multipliers[Pokemon.S_SPATTACK] += 0.2; } else if (name.equals("Leafeon")) { multipliers[Pokemon.S_DEFENCE] += 0.2; } used.add(name); } for (int i = 1; i < 6; ++i) { p.getMultiplier(i).multiplyBy(multipliers[i]); } } };
I optimized it a bit. It should work unless I messed up the stat indexes somewhere.
|

|
| |
|
DigitalCrash27
|
Sep 16 2007, 12:36 AM
Post #4
|
- Posts:
- 197
- Group:
- Members
- Member
- #15
- Joined:
- September 24, 2005
|
- Code:
-
new IntrinsicAbility("Boosteon") { public void switchIn(Pokemon p) { Pokemon[] teammates = p.getTeammates(); double[] multipliers = new double[6]; Arrays.fill(multipliers, 1.0); HashSet used = new HashSet(); for (int i = 0; i < teammates.length; ++i) { Pokemon teammate = teammate[i]; String name = teammates[i].getSpeciesName(); if (used.contains(name)) continue; if (name.equals("Jolteon") && !teammate.isFainted()) { multipliers[Pokemon.S_SPEED] += 0.2; } else if (name.equals("Flareon") && !teammate.isFainted()) { multipliers[Pokemon.S_ATTACK] += 0.2; } else if (name.equals("Vaporeon") && !teammate.isFainted()) { multipliers[Pokemon.S_DEFENCE] += 0.2; } else if (name.equals("Espeon") && !teammate.isFainted()) { multipliers[Pokemon.S_SPATTACK] += 0.2; } else if (name.equals("Umbreon") && !teammate.isFainted()) { multipliers[Pokemon.S_SPDEFENCE] += 0.2; } else if (name.equals("Glaceon") && !teammate.isFainted()) { multipliers[Pokemon.S_SPATTACK] += 0.2; } else if (name.equals("Leafeon") && !teammate.isFainted()) { multipliers[Pokemon.S_DEFENCE] += 0.2; } used.add(name); } for (int i = 1; i < 6; ++i) { p.getMultiplier(i).multiplyBy(multipliers[i]); } } };
Checks to see whether the pokemon is fainted or not. Just like you asked.
|
|
|
| |
|
+bearzly
|
Sep 16 2007, 01:55 AM
Post #5
|
- Posts:
- 1,968
- Group:
- Moderators
- Member
- #6
- Joined:
- September 22, 2005
|
- Code:
-
new IntrinsicAbility("Boosteon") { public void switchIn(Pokemon p) { Pokemon[] teammates = p.getTeammates(); double[] multipliers = new double[6]; Arrays.fill(multipliers, 1.0); HashSet used = new HashSet(); for (int i = 0; i < teammates.length; ++i) { Pokemon teammate = teammate[i]; String name = teammate.getSpeciesName(); if (used.contains(name) || teammate.isFainted()) continue; if (name.equals("Jolteon")) { multipliers[Pokemon.S_SPEED] += 0.2; } else if (name.equals("Flareon")) { multipliers[Pokemon.S_ATTACK] += 0.2; } else if (name.equals("Vaporeon")) { multipliers[Pokemon.S_DEFENCE] += 0.2; } else if (name.equals("Espeon")) { multipliers[Pokemon.S_SPATTACK] += 0.2; } else if (name.equals("Umbreon")) { multipliers[Pokemon.S_SPDEFENCE] += 0.2; } else if (name.equals("Glaceon")) { multipliers[Pokemon.S_SPATTACK] += 0.2; } else if (name.equals("Leafeon")) { multipliers[Pokemon.S_DEFENCE] += 0.2; } used.add(name); } for (int i = 1; i < 6; ++i) { p.getMultiplier(i).multiplyBy(multipliers[i]); } } };
tidies that up.
|

|
| |
|
Colin
|
Sep 22 2007, 07:04 PM
Post #6
|
- Posts:
- 4
- Group:
- AAMS Member
- Member
- #327
- Joined:
- July 11, 2007
|
Note that the StatMultipliers are not reset when switching.
I presume Boosteon is meant to go away when you switch out the pokemon.
|
|
|
| |
| 1 user reading this topic (1 Guest and 0 Anonymous)
|