public final class Effect
extends java.lang.Object
Класс, представляющий собой эффект, воздействующий на покемона.
Содержит массив целых чисел, соответствующих основным характеристикам (Stat
).
В нем хранятся модификаторы характеристик покемона. Для всех характеристик, кроме очков здоровья (HP),
модификатор может быть от -6 до +6. Он показывает, на сколько ступеней (stages) изменяется характеристика.
Ноль соответствует обычному значению (не измененному), положительное число - увеличенному значению характеристики,
отрицательное - пониженному.
Для постоянного изменения одной характеристики удобнее использовать метод Pokemon.setMod(Stat, int)
}
Если на покемона действует одновременно несколько эффектов, то модификаторы складываются, но суммарное значение не должно выходить за диапазон от -6 до 6.
Кроме модификаторов, эффект также содержит:
Status
)
Для задания нескольких параметров эффекта методы можно вызывать цепочкой. Например, следующий код создает новый эффект, который в течение 3 ходов с вероятностью 50% будет снижать атаку покемона на 1 ступень.
Effect e = new Effect().chance(0.5).turns(3).stat(Stat.ATTACK, -1);
Constructor and Description |
---|
Effect()
Конструктор без параметров
|
Modifier and Type | Method and Description |
---|---|
double |
attack()
Возвращает вероятность атаки покемона во время действия эффекта.
|
Effect |
attack(double chance)
устанавливает вероятность срабатывания атаки покемона во время действия эффекта.
|
static void |
burn(Pokemon p)
статический метод наложения на покемона эффекта воспламенения.
|
Effect |
chance(double chance)
устанавливает вероятность срабатывания эффекта
|
void |
clear()
очищает модификаторы эффекта.
|
Status |
condition()
возвращает состояние покемона
|
Effect |
condition(Status condition)
устанавливает состояние покемона.
|
static void |
confuse(Pokemon p)
Вызывает у покемона растерянность (confusion).
|
static void |
flinch(Pokemon p)
Вызывает у покемона страх (flinch).
|
static void |
freeze(Pokemon p)
статический метод наложения на покемона эффекта заморозки.
|
boolean |
immediate()
проверка на однократность
|
static void |
paralyze(Pokemon p)
статический метод наложения на покемона эффекта парализации.
|
static void |
poison(Pokemon p)
статический метод наложения на покемона эффекта отравления.
|
static void |
sleep(Pokemon p)
статический метод наложения на покемона эффекта сна.
|
int |
stat(Stat stat)
возвращает модификатор заданной характеристики
|
Effect |
stat(Stat stat,
int value)
устанавливает значение характеристики
|
boolean |
success()
проверка на срабатывание эффекта
|
boolean |
turn()
вызывается в конце очередного хода
|
Effect |
turns(int turns)
устанавливает продолжительность эффекта в ходах
|
public final Effect turns(int turns)
turns
- количество ходов, в течение которых эффект будет действовать:
public final Effect chance(double chance)
chance
- вероятность, есди 1 - то эффект будет всегда срабатывать.public final Effect attack(double chance)
chance
- вероятность, 0 - покемон не будет атаковать, пока действует эффектpublic final double attack()
public final Effect condition(Status condition)
condition
- состояние (Status
)public final void clear()
public final Status condition()
public final int stat(Stat stat)
stat
- характеристика (перечисление Stat)public final Effect stat(Stat stat, int value)
stat
- характеристика (перечисление Stat)value
- значение характеристикиpublic final boolean success()
public final boolean immediate()
public final boolean turn()
public static void burn(Pokemon p)
p
- покемон, на которого будет наложен эффектpublic static void paralyze(Pokemon p)
p
- покемон, на которого будет наложен эффектpublic static void freeze(Pokemon p)
p
- покемон, на которого будет наложен эффектpublic static void poison(Pokemon p)
p
- покемон, на которого будет наложен эффектpublic static void sleep(Pokemon p)
p
- покемон, на которого будет наложен эффектpublic static void flinch(Pokemon p)
p
- покемон, на которого будет наложен эффектpublic static void confuse(Pokemon p)
p
- покемон, на которого будет наложен эффект