Class: Battle::Move

Inherits:
Object show all
Includes:
Hooks
Defined in:
docs/5_Battle_10_Move.rb

Overview

Generic class describing a move

Defined Under Namespace

Modules: Mechanics Classes: AbilityChanging, AbilitySwap, Absorb, Acrobatics, Acupressure, AddThirdType, AfterYou, AlluringVoice, AllySwitch, AquaRing, Assist, Assurance, Attract, AuraWheel, Autotomize, Avalanche, BaddyBad, Basic, BasicWithSuccessfulEffect, BatonPass, BeakBlast, BeatUp, Belch, BellyDrum, Bestow, Bide, Bind, BodyPress, BrickBreak, Brine, BurnUp, BurningJealousy, Camouflage, CantSwitch, Captivate, CeaselessEdge, ChangeType, Charge, ChillyReception, ClangorousSoul, Conversion, Conversion2, CoreEnforcer, CorrosiveGas, Counter, CounterBase, CourtChange, CraftyShield, Curse, CustomStatsBased, Defog, DestinyBond, Disable, DoNothing, Doodle, DoubleIronBash, DragonCheer, DragonDarts, EchoedVoice, EerieSpell, Electrify, ElectroBall, ElectroShot, Embargo, Encore, Endeavor, Entrainment, Eruption, ExpandingForce, Facade, FakeOut, FalseSwipe, Fangs, Feint, FellStinger, FickleBeam, FilletAway, FinalGambit, FishiousRend, FixedDamages, Flail, FlameBurst, Fling, FloralHealing, FlowerShield, FlyingPress, FocusEnergy, FocusPunch, FollowMe, ForceSwitch, Foresight, FoulPlay, FreezyFrost, Frustration, FullCrit, FuryCutter, FusionBolt, FusionFlare, FutureSight, GastroAcid, GearUp, GeniesStorm, Geomancy, GigatonHammer, GlaiveRush, GlitzyGlow, GrassyGlide, GravApple, Gravity, Growth, Grudge, GuardSplit, GuardSwap, GyroBall, HPEqLevel, HappyHour, HardPress, Haze, HealBell, HealBlock, HealMove, HealWeather, HealingSacrifice, HealingWish, HeartSwap, HeavySlam, HelpingHand, Hex, HiddenPower, HighJumpKick, HitThenCureStatus, IceBall, IceSpinner, Imprison, Incinerate, InfernalParade, Ingrain, Instruct, IonDeluge, IvyCudgel, JawLock, Judgment, JungleHealing, KnockOff, LaserFocus, LashOut, LastResort, LastRespects, LeechSeed, LifeDew, LockOn, LowKick, LuckyChant, LunarDance, MagicCoat, MagicPowder, MagicRoom, MagnetRise, MagneticFlux, Magnitude, MakeItRain, MeFirst, Memento, MetalBurst, Metronome, Mimic, MindBlown, Minimize, MiracleEye, MirrorCoat, MirrorMove, Mist, MistyExplosion, MudSport, MultiAttack, MultiHit, NaturalGift, NaturePower, Nightmare, NoRetreat, OHKO, Octolock, OrderUp, PainSplit, PartingShot, PayBack, PayDay, PerishSong, PhotonGeyser, PlasmaFists, Pledge, Pluck, PollenPuff, Poltergeist, PopulationBomb, Powder, PowerSplit, PowerSwap, PowerTrick, PreAttackBase, Present, Protect, PsychUp, PsychicNoise, PsychoShift, Psywave, Purify, Pursuit, Quash, Rage, RageFist, RagingBull, RapidSpin, RecoilMove, Recycle, Reflect, ReflectType, RelicSong, Reload, Rest, Retaliate, Return, RevelationDance, Revenge, RisingVoltage, Rollout, Roost, Rototiller, Round, SacredSword, Safeguard, SaltCure, SappySeed, ScaleShot, SecretPower, SelfDestruct, SelfStat, SelfStatus, ShedTail, ShellSideArm, ShellTrap, ShoreUp, SimpleBeam, Sketch, SkyDrop, SleepTalk, SmackDown, SmellingSalts, Snatch, Snore, SolarBeam, SparklingAria, SparklySwirl, SpectralThief, SpeedSwap, Spikes, SpitUp, Spite, Splash, StatAndStageEdit, StatAndStageEditBypassAccuracy, StatusBoostedMove, StatusStat, StealthRock, SteelRoller, StickyWeb, Stockpile, Stomp, StompingTantrum, StoneAxe, StoredPower, StrengthSap, Struggle, StuffCheeks, Substitute, SuckerPunch, SuperDuperEffective, SuperFang, Swallow, Switcheroo, Synchronoise, SyrupBomb, Tailwind, TakeHeart, TarShot, Taunt, Teatime, TechnoBlast, Telekinesis, Teleport, TerrainBoosting, TerrainMove, TerrainPulse, Thief, Thrash, ThreeHit, ThroatChop, Thunder, TidyUp, TopsyTurvy, Torment, ToxicSpikes, ToxicThread, Transform, TriAttack, TrickRoom, TripleArrows, TripleKick, TrumpCard, TwoHit, TwoTurnBase, UTurn, UpRoar, UpperHand, VenomDrench, Venoshock, WakeUpSlap, WaterShuriken, WeatherBall, WeatherMove, Wish, WonderRoom, WorrySeed, WringOut, Yawn

Constant Summary collapse

REGISTERED_MOVES =

Returns list of the registered moves.

Returns:

  • (Hash{Symbol => Class})

    list of the registered moves

Hash.new(Move)
R_RANGE =

Range of the R random factor

85..100
OneTarget =

List of symbol describe a one target aim

%i[any_other_pokemon random_foe adjacent_pokemon adjacent_foe user user_or_adjacent_ally adjacent_ally]
TargetNoAsk =

List of symbol that doesn’t show any choice of target

%i[adjacent_all_foe all_foe adjacent_all_pokemon all_pokemon user all_ally all_ally_but_user random_foe]

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Hooks

#exec_hooks, #force_return, included, remove, remove_without_name

Constructor Details

#initialize(db_symbol, pp, ppmax, scene) ⇒ Move

Create a new move

Parameters:

  • db_symbol (Symbol)

    db_symbol of the move in the database

  • pp (Integer)

    number of pp the move currently has

  • ppmax (Integer)

    maximum number of pp the move currently has

  • scene (Battle::Scene)

    current battle scene



45
46
# File 'docs/5_Battle_10_Move.rb', line 45

def initialize(db_symbol, pp, ppmax, scene)
end

Instance Attribute Details

#consecutive_use_countInteger

Number of time the move was used consecutively

Returns:

  • (Integer)


21
22
23
# File 'docs/5_Battle_10_Move.rb', line 21

def consecutive_use_count
  @consecutive_use_count
end

#damage_dealtInteger

Number of damage dealt last time the move was used (to be used with move history)

Returns:

  • (Integer)


30
31
32
# File 'docs/5_Battle_10_Move.rb', line 30

def damage_dealt
  @damage_dealt
end

#effectiveness (readonly)

Get the effectiveness



285
286
287
# File 'docs/5_Battle_10_Move.rb', line 285

def effectiveness
  @effectiveness
end

#forced_next_move_decrease_ppBoolean

Tell if forced next move decreases PP

Returns:

  • (Boolean)


646
647
648
# File 'docs/5_Battle_10_Move.rb', line 646

def forced_next_move_decrease_pp
  @forced_next_move_decrease_pp
end

#idInteger (readonly)

ID of the move in the database

Returns:

  • (Integer)


9
10
11
# File 'docs/5_Battle_10_Move.rb', line 9

def id
  @id
end

#logicBattle::Logic (readonly)

Returns:



23
24
25
# File 'docs/5_Battle_10_Move.rb', line 23

def logic
  @logic
end

#originalBattle::Move

Returns:



27
28
29
# File 'docs/5_Battle_10_Move.rb', line 27

def original
  @original
end

#original_targetArray<PFM::PokemonBattler>

The original target of the move (to be used with Magic Bounce/Coat)

Returns:



33
34
35
# File 'docs/5_Battle_10_Move.rb', line 33

def original_target
  @original_target
end

#ppInteger

Number of pp the move currently has

Returns:

  • (Integer)


12
13
14
# File 'docs/5_Battle_10_Move.rb', line 12

def pp
  @pp
end

#ppmaxInteger (readonly)

Maximum number of ppg the move currently has

Returns:

  • (Integer)


15
16
17
# File 'docs/5_Battle_10_Move.rb', line 15

def ppmax
  @ppmax
end

#sceneBattle::Scene (readonly)

Returns:



25
26
27
# File 'docs/5_Battle_10_Move.rb', line 25

def scene
  @scene
end

#thrown_item_effectBattle::Effects::Item? (readonly)

Get the item effect of the thrown item (to be used with Fling)

Returns:



39
40
41
# File 'docs/5_Battle_10_Move.rb', line 39

def thrown_item_effect
  @thrown_item_effect
end

#usedBoolean

if the move has been used

Returns:

  • (Boolean)


18
19
20
# File 'docs/5_Battle_10_Move.rb', line 18

def used
  @used
end

#userPFM::PokemonBattler? (readonly)

Get the user of the move

Returns:



36
37
38
# File 'docs/5_Battle_10_Move.rb', line 36

def user
  @user
end

Class Method Details

.[](symbol) ⇒ Class<Battle::Move>

Retrieve a registered move

Parameters:

  • symbol (Symbol)

    be_method of the move

Returns:



290
291
# File 'docs/5_Battle_10_Move.rb', line 290

def [](symbol)
end

.register(symbol, klass)

Register a move

Parameters:

  • symbol (Symbol)

    be_method of the move

  • klass (Class)

    class of the move



295
296
# File 'docs/5_Battle_10_Move.rb', line 295

def register(symbol, klass)
end

.register_move_disabled_check_hook(reason) {|user, move| ... }

Function that registers a move_disabled_check hook

Parameters:

  • reason (String)

    reason of the move_disabled_check registration

Yield Parameters:

Yield Returns:

  • (Proc, nil)

    the code to execute if the move is disabled



894
895
# File 'docs/5_Battle_10_Move.rb', line 894

def register_move_disabled_check_hook(reason)
end

.register_move_prevention_target_hook(reason) {|user, target, move| ... }

Function that registers a move_prevention_target hook

Parameters:

  • reason (String)

    reason of the move_prevention_target registration

Yield Parameters:

Yield Returns:

  • (Boolean)

    if the target is evading the move



902
903
# File 'docs/5_Battle_10_Move.rb', line 902

def register_move_prevention_target_hook(reason)
end

.register_move_prevention_user_hook(reason) {|user, targets, move| ... }

Function that registers a move_prevention_user hook

Parameters:

  • reason (String)

    reason of the move_prevention_user registration

Yield Parameters:

Yield Returns:

  • (:prevent, nil)

    :prevent if the move cannot continue



887
888
# File 'docs/5_Battle_10_Move.rb', line 887

def register_move_prevention_user_hook(reason)
end

.register_move_type_change_hook(reason) {|user, target, move, type| ... }

Function that registers a move_type_change hook

Parameters:

  • reason (String)

    reason of the move_type_change registration

Yield Parameters:

Yield Returns:

  • (Integer, nil)

    new move type



540
541
# File 'docs/5_Battle_10_Move.rb', line 540

def register_move_type_change_hook(reason)
end

.register_single_type_multiplier_overwrite_hook(reason) {|target, target_type, type, move| ... }

Function that registers a single_type_multiplier_overwrite hook

Parameters:

  • reason (String)

    reason of the single_type_multiplier_overwrite registration

Yield Parameters:

Yield Returns:

  • (Float, nil)

    overwritten



549
550
# File 'docs/5_Battle_10_Move.rb', line 549

def register_single_type_multiplier_overwrite_hook(reason)
end

Instance Method Details

#accuracyInteger

Return the current accuracy of the move

Returns:

  • (Integer)


90
91
# File 'docs/5_Battle_10_Move.rb', line 90

def accuracy
end

#accuracy_mod(user) ⇒ Float

Return the accuracy modifier of the user

Parameters:

Returns:

  • (Float)


608
609
# File 'docs/5_Battle_10_Move.rb', line 608

def accuracy_mod(user)
end

#accuracy_textString

Return the accuracy text of the skill (for the UI)

Returns:



94
95
# File 'docs/5_Battle_10_Move.rb', line 94

def accuracy_text
end

#atk_classInteger

Return the class of the skill (used by the UI)

Returns:

  • (Integer)

    1, 2, 3



202
203
# File 'docs/5_Battle_10_Move.rb', line 202

def atk_class
end

#authentic?Boolean

Tell if the move is a move that can bypass Substitute

Returns:

  • (Boolean)


254
255
# File 'docs/5_Battle_10_Move.rb', line 254

def authentic?
end

#ballistics?Boolean

Tell if the move is a ballistic move

Returns:

  • (Boolean)


226
227
# File 'docs/5_Battle_10_Move.rb', line 226

def ballistics?
end

#battle_stage_modArray<Studio::Move::BattleStageMod>

Return the stat stage modifier the skill can apply

Returns:



126
127
# File 'docs/5_Battle_10_Move.rb', line 126

def battle_stage_mod
end

#battler_targets(pokemon, logic) ⇒ Array<PFM::PokemonBattler>

Note:

use one_target? to select the target inside the possible result

List the targets of this move

Parameters:

Returns:



641
642
# File 'docs/5_Battle_10_Move.rb', line 641

def battler_targets(pokemon, logic)
end

#be_methodSymbol Also known as: symbol

Return the battle engine method of the move

Returns:

  • (Symbol)


68
69
# File 'docs/5_Battle_10_Move.rb', line 68

def be_method
end

#bite?Boolean

Tell if the move is biting move

Returns:

  • (Boolean)


230
231
# File 'docs/5_Battle_10_Move.rb', line 230

def bite?
end

#blocable?Boolean

Is the skill blocable by Protect and skill like that ?

Returns:

  • (Boolean)


142
143
# File 'docs/5_Battle_10_Move.rb', line 142

def blocable?
end

#blocked_by?(target, symbol) ⇒ Boolean

Detect if the move is protected by another move on target

Parameters:

Returns:

  • (Boolean)


878
879
# File 'docs/5_Battle_10_Move.rb', line 878

def blocked_by?(target, symbol)
end

#bypass_chance_of_hit?(user, target) ⇒ Boolean

Check if the move bypass chance of hit and cannot fail

Parameters:

Returns:

  • (Boolean)


603
604
# File 'docs/5_Battle_10_Move.rb', line 603

def bypass_chance_of_hit?(user, target)
end

#calc_stab(user, types) ⇒ Numeric

STAB calculation

Parameters:

  • user (PFM::PokemonBattler)

    user of the move

  • types (Array<Integer>)

    list of definitive types of the move

Returns:

  • (Numeric)


509
510
# File 'docs/5_Battle_10_Move.rb', line 509

def calc_stab(user, types)
end

#chance_of_hit(user, target) ⇒ Float

Return the chance of hit of the move

Parameters:

Returns:

  • (Float)


597
598
# File 'docs/5_Battle_10_Move.rb', line 597

def chance_of_hit(user, target)
end

#check_specific_procedure(user, targets) ⇒ Symbol?

Check if an Effects imposes a specific proceed_internal

Parameters:

Returns:

  • (Symbol, nil)

    the symbol of the proceed_internal to call, nil if no specific procedure



828
829
# File 'docs/5_Battle_10_Move.rb', line 828

def check_specific_procedure(user, targets)
end

#clone

Clone the move and give a reference to the original one



53
54
# File 'docs/5_Battle_10_Move.rb', line 53

def clone
end

#critical_hit?Boolean

Was the move a critical hit

Returns:

  • (Boolean)


214
215
# File 'docs/5_Battle_10_Move.rb', line 214

def critical_hit?
end

#critical_rateInteger

Return the critical rate index of the skill

Returns:

  • (Integer)


118
119
# File 'docs/5_Battle_10_Move.rb', line 118

def critical_rate
end

#damages(user, target) ⇒ Integer

Note:

: I used the 4th Gen formula : www.smogon.com/dp/articles/damage_formula

Note:

The formula is the following: (((((((Level * 2 / 5) + 2) * BasePower * [Sp]Atk / 50) / [Sp]Def) * Mod1) + 2) *

CH * Mod2 * R / 100) * STAB * Type1 * Type2 * Mod3)

Method calculating the damages done by the actual move

Parameters:

Returns:

  • (Integer)


308
309
# File 'docs/5_Battle_10_Move.rb', line 308

def damages(user, target)
end

#dance?Boolean

Tell if the move is a dance move

Returns:

  • (Boolean)


234
235
# File 'docs/5_Battle_10_Move.rb', line 234

def dance?
end

#dataStudio::Move

Return the data of the skill

Returns:



57
58
# File 'docs/5_Battle_10_Move.rb', line 57

def data
end

#db_symbolSymbol

Return the symbol of the move in the database

Returns:

  • (Symbol)


206
207
# File 'docs/5_Battle_10_Move.rb', line 206

def db_symbol
end

#deal_effect_sheer_force(user, actual_targets)

Function that deals the effect to the pokemon

Parameters:



843
844
# File 'docs/5_Battle_10_Move.rb', line 843

def deal_effect_sheer_force(user, actual_targets)
end

#definitive_types(user, target) ⇒ Array<Integer>

Get the types of the move with 1st type being affected by effects

Parameters:

Returns:

  • (Array<Integer>)

    list of types of the move



515
516
# File 'docs/5_Battle_10_Move.rb', line 515

def definitive_types(user, target)
end

#descriptionString

Return the skill description

Returns:



64
65
# File 'docs/5_Battle_10_Move.rb', line 64

def description
end

#direct?Boolean

Is the skill direct ?

Returns:

  • (Boolean)


130
131
# File 'docs/5_Battle_10_Move.rb', line 130

def direct?
end

#disable_reason(user) ⇒ #call

Get the reason why the move is disabled

Parameters:

Returns:

  • (#call)

    Block that should be called when the move is disabled



866
867
# File 'docs/5_Battle_10_Move.rb', line 866

def disable_reason(user)
end

#disabled?(user) ⇒ Boolean

Function that tells if the move is disabled

Parameters:

Returns:

  • (Boolean)


861
862
# File 'docs/5_Battle_10_Move.rb', line 861

def disabled?(user)
end

#drain_factorInteger

Returns the drain factor

Returns:

  • (Integer)


154
155
# File 'docs/5_Battle_10_Move.rb', line 154

def drain_factor
end

#effect_chanceInteger

Return the chance of effect of the skill

Returns:

  • (Integer)


106
107
# File 'docs/5_Battle_10_Move.rb', line 106

def effect_chance
end

#efficent_message(effectiveness, target)

Show the effectiveness message

Parameters:



650
651
# File 'docs/5_Battle_10_Move.rb', line 650

def efficent_message(effectiveness, target)
end

#evasion_mod(target) ⇒ Float

Return the evasion modifier of the target

Parameters:

Returns:

  • (Float)


613
614
# File 'docs/5_Battle_10_Move.rb', line 613

def evasion_mod(target)
end

#force_switch?Boolean

Tell if the move is a move that forces target switch

Returns:

  • (Boolean)


270
271
# File 'docs/5_Battle_10_Move.rb', line 270

def force_switch?
end

#gravity_affected?Boolean

Is the skill affected by gravity

Returns:

  • (Boolean)


122
123
# File 'docs/5_Battle_10_Move.rb', line 122

def gravity_affected?
end

#heal?Boolean

Tell if the move is a heal move

Returns:

  • (Boolean)


242
243
# File 'docs/5_Battle_10_Move.rb', line 242

def heal?
end

#magic_coat_affected?Boolean

Is the skill affected by magic coat ?

Returns:

  • (Boolean)


186
187
# File 'docs/5_Battle_10_Move.rb', line 186

def magic_coat_affected?
end

#mental?Boolean

Tell if the move is a mental move

Returns:

  • (Boolean)


134
135
# File 'docs/5_Battle_10_Move.rb', line 134

def mental?
end

#mirror_move_affected?Boolean

Is the skill affected by Mirror Move

Returns:

  • (Boolean)


138
139
# File 'docs/5_Battle_10_Move.rb', line 138

def mirror_move_affected?
end

#move_blocked_by_target?(user, target) ⇒ Boolean

Note:

Thing that prevents the move from being used should be defined by :move_prevention_target Hook.

Function that tests if the targets blocks the move

Parameters:

Returns:

  • (Boolean)

    if the target evade the move (and is not selected)



873
874
# File 'docs/5_Battle_10_Move.rb', line 873

def move_blocked_by_target?(user, target)
end

#move_usable_by_user(user, targets) ⇒ Boolean

Note:

Thing that prevents the move from being used should be defined by :move_prevention_user Hook

Function that tests if the user is able to use the move

Parameters:

Returns:

  • (Boolean)

    if the procedure can continue



856
857
# File 'docs/5_Battle_10_Move.rb', line 856

def move_usable_by_user(user, targets)
end

#multi_hit?Boolean

Tells if the move hits multiple times

Returns:

  • (Boolean)


278
279
# File 'docs/5_Battle_10_Move.rb', line 278

def multi_hit?
end

#multi_turn?Boolean

Tell if the move will take two or more turns

Returns:

  • (Boolean)


282
283
# File 'docs/5_Battle_10_Move.rb', line 282

def multi_turn?
end

#name

Return the name of the skill



60
61
# File 'docs/5_Battle_10_Move.rb', line 60

def name
end

#no_choice_skill?Boolean Also known as: is_no_choice_skill?

Does the skill doesn’t show a target choice

Returns:

  • (Boolean)


632
633
# File 'docs/5_Battle_10_Move.rb', line 632

def no_choice_skill?
end

#not_very_effective?Boolean

Was the move not very effective ?

Returns:

  • (Boolean)


222
223
# File 'docs/5_Battle_10_Move.rb', line 222

def not_very_effective?
end

#ohko?Boolean

Tell if the move is an OHKO move

Returns:

  • (Boolean)


262
263
# File 'docs/5_Battle_10_Move.rb', line 262

def ohko?
end

#one_target?Boolean Also known as: is_one_target?

Does the skill aim only one Pokemon

Returns:

  • (Boolean)


622
623
# File 'docs/5_Battle_10_Move.rb', line 622

def one_target?
end

#one_target_from_zone_attack(user) ⇒ Boolean

Check if an attack that targets multiple people is targeting only one

Parameters:

Returns:

  • (Boolean)


628
629
# File 'docs/5_Battle_10_Move.rb', line 628

def one_target_from_zone_attack(user)
end

#physical?Boolean

Is the skill physical ?

Returns:

  • (Boolean)


190
191
# File 'docs/5_Battle_10_Move.rb', line 190

def physical?
end

#powder?Boolean

Tell if the move is a powder move

Returns:

  • (Boolean)


250
251
# File 'docs/5_Battle_10_Move.rb', line 250

def powder?
end

#powerInteger Also known as: base_power

Return the actual base power of the move

Returns:

  • (Integer)


77
78
# File 'docs/5_Battle_10_Move.rb', line 77

def power
end

#power_textString

Return the text of the power of the skill (for the UI)

Returns:



82
83
# File 'docs/5_Battle_10_Move.rb', line 82

def power_text
end

#pp_textString

Return the text of the PP of the skill

Returns:



73
74
# File 'docs/5_Battle_10_Move.rb', line 73

def pp_text
end

#pre_attack?Boolean

Is the move doing something before any other moves ?

Returns:

  • (Boolean)


274
275
# File 'docs/5_Battle_10_Move.rb', line 274

def pre_attack?
end

#priority(user = nil) ⇒ Integer

Return the priority of the skill

Parameters:

Returns:

  • (Integer)


99
100
# File 'docs/5_Battle_10_Move.rb', line 99

def priority(user = nil)
end

#proceed(user, target_bank, target_position)

Function starting the move procedure

Parameters:

  • user (PFM::PokemonBattler)

    user of the move

  • target_bank (Integer)

    bank of the target

  • target_position (Integer)


660
661
# File 'docs/5_Battle_10_Move.rb', line 660

def proceed(user, target_bank, target_position)
end

#proceed_internal_dancer(user, targets)

Internal procedure of the move

Parameters:



848
849
# File 'docs/5_Battle_10_Move.rb', line 848

def proceed_internal_dancer(user, targets)
end

#proceed_internal_parental_bond(user, targets)

Internal procedure of the move for Parental Bond Ability

Parameters:



833
834
# File 'docs/5_Battle_10_Move.rb', line 833

def proceed_internal_parental_bond(user, targets)
end

#proceed_internal_sheer_force(user, targets)

Internal procedure of the move for Sheer Force Ability

Parameters:



838
839
# File 'docs/5_Battle_10_Move.rb', line 838

def proceed_internal_sheer_force(user, targets)
end

#proceed_pre_attack(user)

Proceed the procedure before any other attack.

Parameters:



664
665
# File 'docs/5_Battle_10_Move.rb', line 664

def proceed_pre_attack(user)
end

#pulse?Boolean

Tell if the move is a pulse move

Returns:

  • (Boolean)


238
239
# File 'docs/5_Battle_10_Move.rb', line 238

def pulse?
end

#punching?Boolean

Is the skill a punching move ?

Returns:

  • (Boolean)


158
159
# File 'docs/5_Battle_10_Move.rb', line 158

def punching?
end

#real_base_power(user, target) ⇒ Integer

Get the real base power of the move (taking in account all parameter)

Parameters:

Returns:

  • (Integer)


314
315
# File 'docs/5_Battle_10_Move.rb', line 314

def real_base_power(user, target)
end

#recharge?Boolean

Tell if the move is a move is a recharge move

Returns:

  • (Boolean)


258
259
# File 'docs/5_Battle_10_Move.rb', line 258

def recharge?
end

#recoil?Boolean

Does the skill has recoil ?

Returns:

  • (Boolean)


146
147
# File 'docs/5_Battle_10_Move.rb', line 146

def recoil?
end

#recoil_factorInteger

Returns the recoil factor

Returns:

  • (Integer)


150
151
# File 'docs/5_Battle_10_Move.rb', line 150

def recoil_factor
end

#relative_priority

Move priority



102
103
# File 'docs/5_Battle_10_Move.rb', line 102

def relative_priority
end

#self_user_switch?Boolean

Tell if the move is a move that switch the user if that hit

Returns:

  • (Boolean)


266
267
# File 'docs/5_Battle_10_Move.rb', line 266

def self_user_switch?
end

#show_usage_failure(user)

Show the usage failure when move is not usable by user

Parameters:



654
655
# File 'docs/5_Battle_10_Move.rb', line 654

def show_usage_failure(user)
end

#slicing_attack?Boolean

Is the skill a slicing attack ?

Returns:

  • (Boolean)


166
167
# File 'docs/5_Battle_10_Move.rb', line 166

def slicing_attack?
end

#snatchable?Boolean

Is the skill snatchable ?

Returns:

  • (Boolean)


182
183
# File 'docs/5_Battle_10_Move.rb', line 182

def snatchable?
end

#sound_attack?Boolean

Is the skill a sound attack ?

Returns:

  • (Boolean)


162
163
# File 'docs/5_Battle_10_Move.rb', line 162

def sound_attack?
end

#special?Boolean

Is the skill special ?

Returns:

  • (Boolean)


194
195
# File 'docs/5_Battle_10_Move.rb', line 194

def special?
end

#status?Boolean

Is the skill status ?

Returns:

  • (Boolean)


198
199
# File 'docs/5_Battle_10_Move.rb', line 198

def status?
end

#status_effectsArray<Studio::Move::MoveStatus>

Get all the status effect of a move

Returns:



110
111
# File 'docs/5_Battle_10_Move.rb', line 110

def status_effects
end

#super_effective?Boolean

Was the move super effective ?

Returns:

  • (Boolean)


218
219
# File 'docs/5_Battle_10_Move.rb', line 218

def super_effective?
end

#targetSymbol

Return the target symbol the skill can aim

Returns:

  • (Symbol)


114
115
# File 'docs/5_Battle_10_Move.rb', line 114

def target
end

#to_sString Also known as: inspect

Format move for logging purpose

Returns:



49
50
# File 'docs/5_Battle_10_Move.rb', line 49

def to_s
end

#trigger_king_rock?Boolean

Does the skill trigger the king rock

Returns:

  • (Boolean)


178
179
# File 'docs/5_Battle_10_Move.rb', line 178

def trigger_king_rock?
end

#two_turn?Boolean

Tell if the move is a two turn move

Returns:

  • (Boolean)


246
247
# File 'docs/5_Battle_10_Move.rb', line 246

def two_turn?
end

#typeInteger

Return the current type of the move

Returns:

  • (Integer)


86
87
# File 'docs/5_Battle_10_Move.rb', line 86

def type
end

#type?(type_id) ⇒ Boolean

Is the skill a specific type ?

Parameters:

  • type_id (Integer)

    ID of the type

Returns:

  • (Boolean)


404
405
# File 'docs/5_Battle_10_Move.rb', line 404

def type?(type_id)
end

#type_dark?Boolean Also known as: type_tenebre?

Is the skill type dark ?

Returns:

  • (Boolean)


490
491
# File 'docs/5_Battle_10_Move.rb', line 490

def type_dark?
end

#type_dragon?Boolean

Is the skill type dragon ?

Returns:

  • (Boolean)


481
482
# File 'docs/5_Battle_10_Move.rb', line 481

def type_dragon?
end

#type_electric?Boolean Also known as: type_electrique?

Is the skill type electric ?

Returns:

  • (Boolean)


426
427
# File 'docs/5_Battle_10_Move.rb', line 426

def type_electric?
end

#type_fairy?Boolean Also known as: type_fee?

Is the skill type fairy ?

Returns:

  • (Boolean)


495
496
# File 'docs/5_Battle_10_Move.rb', line 495

def type_fairy?
end

#type_fighting?Boolean Also known as: type_combat?

Is the skill type fighting ?

Returns:

  • (Boolean)


441
442
# File 'docs/5_Battle_10_Move.rb', line 441

def type_fighting?
end

#type_fire?Boolean Also known as: type_feu?

Is the skill type fire ?

Returns:

  • (Boolean)


416
417
# File 'docs/5_Battle_10_Move.rb', line 416

def type_fire?
end

#type_flying?Boolean Also known as: type_vol?, type_fly?

Is the skill type fly ?

Returns:

  • (Boolean)


455
456
# File 'docs/5_Battle_10_Move.rb', line 455

def type_flying?
end

#type_ghost?Boolean Also known as: type_spectre?

Is the skill type ghost ?

Returns:

  • (Boolean)


476
477
# File 'docs/5_Battle_10_Move.rb', line 476

def type_ghost?
end

#type_grass?Boolean Also known as: type_plante?

Is the skill type grass ?

Returns:

  • (Boolean)


431
432
# File 'docs/5_Battle_10_Move.rb', line 431

def type_grass?
end

#type_ground?Boolean Also known as: type_sol?

Is the skill type ground ?

Returns:

  • (Boolean)


450
451
# File 'docs/5_Battle_10_Move.rb', line 450

def type_ground?
end

#type_ice?Boolean Also known as: type_glace?

Is the skill type ice ?

Returns:

  • (Boolean)


436
437
# File 'docs/5_Battle_10_Move.rb', line 436

def type_ice?
end

#type_insect?Boolean Also known as: type_bug?

Is the skill type insect/bug ?

Returns:

  • (Boolean)


466
467
# File 'docs/5_Battle_10_Move.rb', line 466

def type_insect?
end

#type_modifier(user, target) ⇒ Float

Function that calculate the type modifier (for specific uses)

Parameters:

Returns:

  • (Float)


503
504
# File 'docs/5_Battle_10_Move.rb', line 503

def type_modifier(user, target)
end

#type_normal?Boolean

Is the skill type normal ?

Returns:

  • (Boolean)


412
413
# File 'docs/5_Battle_10_Move.rb', line 412

def type_normal?
end

#type_poison?Boolean

Is the skill type poison ?

Returns:

  • (Boolean)


446
447
# File 'docs/5_Battle_10_Move.rb', line 446

def type_poison?
end

#type_psychic?Boolean Also known as: type_psy?

Is the skill type psy ?

Returns:

  • (Boolean)


461
462
# File 'docs/5_Battle_10_Move.rb', line 461

def type_psychic?
end

#type_rock?Boolean Also known as: type_roche?

Is the skill type rock ?

Returns:

  • (Boolean)


471
472
# File 'docs/5_Battle_10_Move.rb', line 471

def type_rock?
end

#type_steel?Boolean Also known as: type_acier?

Is the skill type steel ?

Returns:

  • (Boolean)


485
486
# File 'docs/5_Battle_10_Move.rb', line 485

def type_steel?
end

#type_water?Boolean Also known as: type_eau?

Is the skill type water ?

Returns:

  • (Boolean)


421
422
# File 'docs/5_Battle_10_Move.rb', line 421

def type_water?
end

#typeless?Boolean

Is the skill typeless ?

Returns:

  • (Boolean)


408
409
# File 'docs/5_Battle_10_Move.rb', line 408

def typeless?
end

#unfreeze?Boolean

Does the skill unfreeze

Returns:

  • (Boolean)


170
171
# File 'docs/5_Battle_10_Move.rb', line 170

def unfreeze?
end

#wind_attack?Boolean

Is the skill a wind attack ?

Returns:

  • (Boolean)


174
175
# File 'docs/5_Battle_10_Move.rb', line 174

def wind_attack?
end