rmxp_extractor 1.8 → 1.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CODE_OF_CONDUCT.md +74 -74
- data/Gemfile +13 -13
- data/Gemfile.lock +1 -1
- data/LICENSE.txt +21 -21
- data/README.md +35 -35
- data/Rakefile +6 -6
- data/bin/rmxp_extractor +13 -13
- data/bin/setup +8 -8
- data/diff_check.rb +13 -13
- data/lib/rmxp_extractor/classnames.rb +227 -245
- data/lib/rmxp_extractor/data_export.rb +80 -82
- data/lib/rmxp_extractor/data_import.rb +74 -69
- data/lib/rmxp_extractor/ron.rb +144 -144
- data/lib/rmxp_extractor/script_handler.rb +85 -85
- data/lib/rmxp_extractor/version.rb +3 -3
- data/lib/rmxp_extractor.rb +46 -46
- data/rmxp_extractor.gemspec +30 -30
- data/spec/spec_helper.rb +100 -100
- metadata +2 -393
- data/Data/Actors.rxdata +0 -0
- data/Data/Animations.rxdata +0 -0
- data/Data/Armors.rxdata +0 -0
- data/Data/Classes.rxdata +0 -0
- data/Data/CommonEvents.rxdata +0 -0
- data/Data/Enemies.rxdata +0 -0
- data/Data/Items.rxdata +0 -0
- data/Data/Map001.rxdata +0 -0
- data/Data/Map002.rxdata +0 -0
- data/Data/Map003.rxdata +0 -0
- data/Data/Map004.rxdata +0 -0
- data/Data/Map005.rxdata +0 -0
- data/Data/Map006.rxdata +0 -0
- data/Data/Map007.rxdata +0 -0
- data/Data/Map008.rxdata +0 -0
- data/Data/Map009.rxdata +0 -0
- data/Data/Map010.rxdata +0 -0
- data/Data/Map011.rxdata +0 -0
- data/Data/Map012.rxdata +0 -0
- data/Data/Map013.rxdata +0 -0
- data/Data/Map014.rxdata +0 -0
- data/Data/Map015.rxdata +0 -0
- data/Data/Map016.rxdata +0 -0
- data/Data/Map017.rxdata +0 -0
- data/Data/Map018.rxdata +0 -0
- data/Data/Map019.rxdata +0 -0
- data/Data/Map020.rxdata +0 -0
- data/Data/Map021.rxdata +0 -0
- data/Data/Map022.rxdata +0 -0
- data/Data/Map023.rxdata +0 -0
- data/Data/Map024.rxdata +0 -0
- data/Data/Map025.rxdata +0 -0
- data/Data/Map026.rxdata +0 -0
- data/Data/Map027.rxdata +0 -0
- data/Data/Map028.rxdata +0 -0
- data/Data/Map029.rxdata +0 -0
- data/Data/Map030.rxdata +0 -0
- data/Data/Map031.rxdata +0 -0
- data/Data/Map032.rxdata +0 -0
- data/Data/Map033.rxdata +0 -0
- data/Data/Map034.rxdata +0 -0
- data/Data/Map035.rxdata +0 -0
- data/Data/Map036.rxdata +0 -0
- data/Data/Map037.rxdata +0 -0
- data/Data/Map038.rxdata +0 -0
- data/Data/Map039.rxdata +0 -0
- data/Data/Map040.rxdata +0 -0
- data/Data/Map041.rxdata +0 -0
- data/Data/Map042.rxdata +0 -0
- data/Data/Map043.rxdata +0 -0
- data/Data/Map044.rxdata +0 -0
- data/Data/Map045.rxdata +0 -0
- data/Data/Map046.rxdata +0 -0
- data/Data/Map047.rxdata +0 -0
- data/Data/Map048.rxdata +0 -0
- data/Data/Map049.rxdata +0 -0
- data/Data/Map050.rxdata +0 -0
- data/Data/Map051.rxdata +0 -0
- data/Data/Map052.rxdata +0 -0
- data/Data/Map053.rxdata +0 -0
- data/Data/Map054.rxdata +0 -0
- data/Data/Map055.rxdata +0 -0
- data/Data/Map056.rxdata +0 -0
- data/Data/Map057.rxdata +0 -0
- data/Data/Map058.rxdata +0 -0
- data/Data/Map059.rxdata +0 -0
- data/Data/Map060.rxdata +0 -0
- data/Data/Map061.rxdata +0 -0
- data/Data/Map062.rxdata +0 -0
- data/Data/Map063.rxdata +0 -0
- data/Data/Map064.rxdata +0 -0
- data/Data/Map065.rxdata +0 -0
- data/Data/Map066.rxdata +0 -0
- data/Data/Map067.rxdata +0 -0
- data/Data/Map068.rxdata +0 -0
- data/Data/Map069.rxdata +0 -0
- data/Data/Map070.rxdata +0 -0
- data/Data/Map071.rxdata +0 -0
- data/Data/Map072.rxdata +0 -0
- data/Data/Map073.rxdata +0 -0
- data/Data/Map074.rxdata +0 -0
- data/Data/Map075.rxdata +0 -0
- data/Data/Map076.rxdata +0 -0
- data/Data/Map077.rxdata +0 -0
- data/Data/Map078.rxdata +0 -0
- data/Data/Map079.rxdata +0 -0
- data/Data/Map080.rxdata +0 -0
- data/Data/Map081.rxdata +0 -0
- data/Data/Map082.rxdata +0 -0
- data/Data/Map083.rxdata +0 -0
- data/Data/Map084.rxdata +0 -0
- data/Data/Map085.rxdata +0 -0
- data/Data/Map086.rxdata +0 -0
- data/Data/Map087.rxdata +0 -0
- data/Data/Map088.rxdata +0 -0
- data/Data/Map089.rxdata +0 -0
- data/Data/Map090.rxdata +0 -0
- data/Data/Map091.rxdata +0 -0
- data/Data/Map092.rxdata +0 -0
- data/Data/Map093.rxdata +0 -0
- data/Data/Map094.rxdata +0 -0
- data/Data/Map095.rxdata +0 -0
- data/Data/Map096.rxdata +0 -0
- data/Data/Map097.rxdata +0 -0
- data/Data/Map098.rxdata +0 -0
- data/Data/Map099.rxdata +0 -0
- data/Data/Map100.rxdata +0 -0
- data/Data/Map101.rxdata +0 -0
- data/Data/Map102.rxdata +0 -0
- data/Data/Map103.rxdata +0 -0
- data/Data/Map104.rxdata +0 -0
- data/Data/Map105.rxdata +0 -0
- data/Data/Map106.rxdata +0 -0
- data/Data/Map107.rxdata +0 -0
- data/Data/Map108.rxdata +0 -0
- data/Data/Map109.rxdata +0 -0
- data/Data/Map110.rxdata +0 -0
- data/Data/Map111.rxdata +0 -0
- data/Data/Map112.rxdata +0 -0
- data/Data/Map113.rxdata +0 -0
- data/Data/Map114.rxdata +0 -0
- data/Data/Map115.rxdata +0 -0
- data/Data/Map116.rxdata +0 -0
- data/Data/Map117.rxdata +0 -0
- data/Data/Map118.rxdata +0 -0
- data/Data/Map119.rxdata +0 -0
- data/Data/Map120.rxdata +0 -0
- data/Data/Map121.rxdata +0 -0
- data/Data/Map122.rxdata +0 -0
- data/Data/Map123.rxdata +0 -0
- data/Data/Map124.rxdata +0 -0
- data/Data/Map125.rxdata +0 -0
- data/Data/Map126.rxdata +0 -0
- data/Data/Map127.rxdata +0 -0
- data/Data/Map128.rxdata +0 -0
- data/Data/Map129.rxdata +0 -0
- data/Data/Map130.rxdata +0 -0
- data/Data/Map131.rxdata +0 -0
- data/Data/Map132.rxdata +0 -0
- data/Data/Map133.rxdata +0 -0
- data/Data/Map134.rxdata +0 -0
- data/Data/Map135.rxdata +0 -0
- data/Data/Map136.rxdata +0 -0
- data/Data/Map137.rxdata +0 -0
- data/Data/Map138.rxdata +0 -0
- data/Data/Map139.rxdata +0 -0
- data/Data/Map140.rxdata +0 -0
- data/Data/Map141.rxdata +0 -0
- data/Data/Map142.rxdata +0 -0
- data/Data/Map143.rxdata +0 -0
- data/Data/Map144.rxdata +0 -0
- data/Data/Map145.rxdata +0 -0
- data/Data/Map146.rxdata +0 -0
- data/Data/Map147.rxdata +0 -0
- data/Data/Map148.rxdata +0 -0
- data/Data/Map149.rxdata +0 -0
- data/Data/Map150.rxdata +0 -0
- data/Data/Map151.rxdata +0 -0
- data/Data/Map152.rxdata +0 -0
- data/Data/Map153.rxdata +0 -0
- data/Data/Map154.rxdata +0 -0
- data/Data/Map155.rxdata +0 -0
- data/Data/Map156.rxdata +0 -0
- data/Data/Map157.rxdata +0 -0
- data/Data/Map158.rxdata +0 -0
- data/Data/Map159.rxdata +0 -0
- data/Data/Map160.rxdata +0 -0
- data/Data/Map161.rxdata +0 -0
- data/Data/Map162.rxdata +0 -0
- data/Data/Map163.rxdata +0 -0
- data/Data/Map164.rxdata +0 -0
- data/Data/Map165.rxdata +0 -0
- data/Data/Map166.rxdata +0 -0
- data/Data/Map167.rxdata +0 -0
- data/Data/Map168.rxdata +0 -0
- data/Data/Map169.rxdata +0 -0
- data/Data/Map170.rxdata +0 -0
- data/Data/Map171.rxdata +0 -0
- data/Data/Map172.rxdata +0 -0
- data/Data/Map173.rxdata +0 -0
- data/Data/Map174.rxdata +0 -0
- data/Data/Map175.rxdata +0 -0
- data/Data/Map176.rxdata +0 -0
- data/Data/Map177.rxdata +0 -0
- data/Data/Map178.rxdata +0 -0
- data/Data/Map179.rxdata +0 -0
- data/Data/Map180.rxdata +0 -0
- data/Data/Map181.rxdata +0 -0
- data/Data/Map182.rxdata +0 -0
- data/Data/Map183.rxdata +0 -0
- data/Data/Map184.rxdata +0 -0
- data/Data/Map185.rxdata +0 -0
- data/Data/Map186.rxdata +0 -0
- data/Data/Map187.rxdata +0 -0
- data/Data/Map188.rxdata +0 -0
- data/Data/Map189.rxdata +0 -0
- data/Data/Map190.rxdata +0 -0
- data/Data/Map191.rxdata +0 -0
- data/Data/Map192.rxdata +0 -0
- data/Data/Map193.rxdata +0 -0
- data/Data/Map194.rxdata +0 -0
- data/Data/Map195.rxdata +0 -0
- data/Data/Map196.rxdata +0 -0
- data/Data/Map197.rxdata +0 -0
- data/Data/Map198.rxdata +0 -0
- data/Data/Map199.rxdata +0 -0
- data/Data/Map200.rxdata +0 -0
- data/Data/Map201.rxdata +0 -0
- data/Data/Map202.rxdata +0 -0
- data/Data/Map203.rxdata +0 -0
- data/Data/Map204.rxdata +0 -0
- data/Data/Map205.rxdata +0 -0
- data/Data/Map206.rxdata +0 -0
- data/Data/Map207.rxdata +0 -0
- data/Data/Map208.rxdata +0 -0
- data/Data/Map209.rxdata +0 -0
- data/Data/Map210.rxdata +0 -0
- data/Data/Map211.rxdata +0 -0
- data/Data/Map212.rxdata +0 -0
- data/Data/Map213.rxdata +0 -0
- data/Data/Map214.rxdata +0 -0
- data/Data/Map215.rxdata +0 -0
- data/Data/Map216.rxdata +0 -0
- data/Data/Map217.rxdata +0 -0
- data/Data/Map218.rxdata +0 -0
- data/Data/Map219.rxdata +0 -0
- data/Data/Map220.rxdata +0 -0
- data/Data/Map221.rxdata +0 -0
- data/Data/Map222.rxdata +0 -0
- data/Data/Map223.rxdata +0 -0
- data/Data/Map224.rxdata +0 -0
- data/Data/Map225.rxdata +0 -0
- data/Data/Map226.rxdata +0 -0
- data/Data/Map227.rxdata +0 -0
- data/Data/Map228.rxdata +0 -0
- data/Data/Map229.rxdata +0 -0
- data/Data/Map230.rxdata +0 -0
- data/Data/Map231.rxdata +0 -0
- data/Data/Map232.rxdata +0 -0
- data/Data/Map233.rxdata +0 -0
- data/Data/Map234.rxdata +0 -0
- data/Data/Map235.rxdata +0 -0
- data/Data/Map236.rxdata +0 -0
- data/Data/Map237.rxdata +0 -0
- data/Data/Map238.rxdata +0 -0
- data/Data/Map239.rxdata +0 -0
- data/Data/Map240.rxdata +0 -0
- data/Data/Map241.rxdata +0 -0
- data/Data/Map242.rxdata +0 -0
- data/Data/Map243.rxdata +0 -0
- data/Data/Map244.rxdata +0 -0
- data/Data/Map245.rxdata +0 -0
- data/Data/Map246.rxdata +0 -0
- data/Data/Map247.rxdata +0 -0
- data/Data/Map248.rxdata +0 -0
- data/Data/Map249.rxdata +0 -0
- data/Data/Map250.rxdata +0 -0
- data/Data/Map251.rxdata +0 -0
- data/Data/Map252.rxdata +0 -0
- data/Data/Map253.rxdata +0 -0
- data/Data/Map254.rxdata +0 -0
- data/Data/Map255.rxdata +0 -0
- data/Data/Map256.rxdata +0 -0
- data/Data/Map257.rxdata +0 -0
- data/Data/Map258.rxdata +0 -0
- data/Data/Map259.rxdata +0 -0
- data/Data/Map260.rxdata +0 -0
- data/Data/Map261.rxdata +0 -0
- data/Data/Map262.rxdata +0 -0
- data/Data/Map263.rxdata +0 -0
- data/Data/MapInfos.rxdata +0 -0
- data/Data/Scripts.rxdata +0 -0
- data/Data/Skills.rxdata +0 -0
- data/Data/States.rxdata +0 -0
- data/Data/System.rxdata +0 -0
- data/Data/Tilesets.rxdata +0 -0
- data/Data/Troops.rxdata +0 -0
- data/Data/Weapons.rxdata +0 -0
- data/Data/xScripts.rxdata +0 -0
- data/Scripts/Credits_Message.rb +0 -259
- data/Scripts/Data_FastTravel.rb +0 -50
- data/Scripts/Data_Footsteps.rb +0 -77
- data/Scripts/Data_Item.rb +0 -50
- data/Scripts/Data_SpecialEventData.rb +0 -60
- data/Scripts/Demo.rb +0 -7
- data/Scripts/Desktop_Message.rb +0 -210
- data/Scripts/Doc_Message.rb +0 -273
- data/Scripts/EdText.rb +0 -50
- data/Scripts/Ed_Message.rb +0 -234
- data/Scripts/FastTravel.rb +0 -175
- data/Scripts/Game_Actor.rb +0 -156
- data/Scripts/Game_Actors.rb +0 -28
- data/Scripts/Game_BattleAction.rb +0 -145
- data/Scripts/Game_Battler 1.rb +0 -307
- data/Scripts/Game_Battler 2.rb +0 -294
- data/Scripts/Game_Battler 3.rb +0 -354
- data/Scripts/Game_Character 1.rb +0 -291
- data/Scripts/Game_Character 2.rb +0 -355
- data/Scripts/Game_Character 3.rb +0 -505
- data/Scripts/Game_CommonEvent.rb +0 -70
- data/Scripts/Game_Enemy.rb +0 -317
- data/Scripts/Game_Event.rb +0 -264
- data/Scripts/Game_FastTravel.rb +0 -40
- data/Scripts/Game_Follower.rb +0 -76
- data/Scripts/Game_Light.rb +0 -13
- data/Scripts/Game_Map.rb +0 -551
- data/Scripts/Game_Oneshot.rb +0 -83
- data/Scripts/Game_Party.rb +0 -380
- data/Scripts/Game_Picture.rb +0 -164
- data/Scripts/Game_Player.rb +0 -298
- data/Scripts/Game_Screen.rb +0 -148
- data/Scripts/Game_SelfSwitches.rb +0 -30
- data/Scripts/Game_Switches.rb +0 -45
- data/Scripts/Game_System.rb +0 -210
- data/Scripts/Game_Temp.rb +0 -145
- data/Scripts/Game_Variables.rb +0 -36
- data/Scripts/Interpreter 1.rb +0 -320
- data/Scripts/Interpreter 2.rb +0 -286
- data/Scripts/Interpreter 3.rb +0 -474
- data/Scripts/Interpreter 4.rb +0 -327
- data/Scripts/Interpreter 5.rb +0 -448
- data/Scripts/Interpreter 6.rb +0 -307
- data/Scripts/Interpreter 7.rb +0 -282
- data/Scripts/Main.rb +0 -50
- data/Scripts/Particles.rb +0 -141
- data/Scripts/Persistent.rb +0 -71
- data/Scripts/Puzzle_Film.rb +0 -14
- data/Scripts/Puzzle_Pixel.rb +0 -210
- data/Scripts/Puzzle_Safe.rb +0 -152
- data/Scripts/Puzzle_Sokoban.rb +0 -14
- data/Scripts/RPG.rb +0 -55
- data/Scripts/SaveLoad.rb +0 -275
- data/Scripts/Scene_Debug.rb +0 -190
- data/Scripts/Scene_End.rb +0 -108
- data/Scripts/Scene_Equip.rb +0 -222
- data/Scripts/Scene_File.rb +0 -111
- data/Scripts/Scene_Item.rb +0 -205
- data/Scripts/Scene_Load.rb +0 -106
- data/Scripts/Scene_Map.rb +0 -540
- data/Scripts/Scene_Menu.rb +0 -213
- data/Scripts/Scene_Name.rb +0 -113
- data/Scripts/Scene_Save.rb +0 -88
- data/Scripts/Scene_Skill.rb +0 -232
- data/Scripts/Scene_Status.rb +0 -78
- data/Scripts/Scene_Title.rb +0 -237
- data/Scripts/Script.rb +0 -780
- data/Scripts/Sprite_Battler.rb +0 -131
- data/Scripts/Sprite_Character.rb +0 -192
- data/Scripts/Sprite_Footprint.rb +0 -35
- data/Scripts/Sprite_Footsplash.rb +0 -54
- data/Scripts/Sprite_Light.rb +0 -18
- data/Scripts/Sprite_MapText.rb +0 -63
- data/Scripts/Sprite_Picture.rb +0 -72
- data/Scripts/Sprite_Timer.rb +0 -52
- data/Scripts/Spriteset_Map.rb +0 -370
- data/Scripts/Window_Base.rb +0 -327
- data/Scripts/Window_BattleResult.rb +0 -51
- data/Scripts/Window_BattleStatus.rb +0 -62
- data/Scripts/Window_Command.rb +0 -49
- data/Scripts/Window_DebugLeft.rb +0 -57
- data/Scripts/Window_DebugRight.rb +0 -69
- data/Scripts/Window_EquipItem.rb +0 -94
- data/Scripts/Window_EquipLeft.rb +0 -61
- data/Scripts/Window_EquipRight.rb +0 -56
- data/Scripts/Window_Gold.rb +0 -27
- data/Scripts/Window_Help.rb +0 -33
- data/Scripts/Window_InputNumber.rb +0 -111
- data/Scripts/Window_Item.rb +0 -229
- data/Scripts/Window_MainMenu.rb +0 -150
- data/Scripts/Window_MenuStatus.rb +0 -48
- data/Scripts/Window_Message.rb +0 -459
- data/Scripts/Window_NameEdit.rb +0 -108
- data/Scripts/Window_NameInput.rb +0 -262
- data/Scripts/Window_PartyCommand.rb +0 -42
- data/Scripts/Window_PlayTime.rb +0 -40
- data/Scripts/Window_SaveFile.rb +0 -91
- data/Scripts/Window_Selectable.rb +0 -203
- data/Scripts/Window_Settings.rb +0 -469
- data/Scripts/Window_ShopBuy.rb +0 -93
- data/Scripts/Window_ShopCommand.rb +0 -37
- data/Scripts/Window_ShopNumber.rb +0 -87
- data/Scripts/Window_ShopSell.rb +0 -94
- data/Scripts/Window_ShopStatus.rb +0 -107
- data/Scripts/Window_Skill.rb +0 -83
- data/Scripts/Window_SkillStatus.rb +0 -28
- data/Scripts/Window_Status.rb +0 -64
- data/Scripts/Window_Steps.rb +0 -26
- data/Scripts/Window_Target.rb +0 -49
- data/Scripts/_scripts.txt +0 -111
- data/Scripts/i18n_English.rb +0 -59
- data/Scripts/i18n_Language.rb +0 -130
data/Scripts/Game_Battler 2.rb
DELETED
@@ -1,294 +0,0 @@
|
|
1
|
-
#==============================================================================
|
2
|
-
# ** Game_Battler (part 2)
|
3
|
-
#------------------------------------------------------------------------------
|
4
|
-
# This class deals with battlers. It's used as a superclass for the Game_Actor
|
5
|
-
# and Game_Enemy classes.
|
6
|
-
#==============================================================================
|
7
|
-
|
8
|
-
class Game_Battler
|
9
|
-
#--------------------------------------------------------------------------
|
10
|
-
# * Check State
|
11
|
-
# state_id : state ID
|
12
|
-
#--------------------------------------------------------------------------
|
13
|
-
def state?(state_id)
|
14
|
-
# Return true if the applicable state is added.
|
15
|
-
return @states.include?(state_id)
|
16
|
-
end
|
17
|
-
#--------------------------------------------------------------------------
|
18
|
-
# * Determine if a state is full or not.
|
19
|
-
# state_id : state ID
|
20
|
-
#--------------------------------------------------------------------------
|
21
|
-
def state_full?(state_id)
|
22
|
-
# Return false if the applicable state is not added.
|
23
|
-
unless self.state?(state_id)
|
24
|
-
return false
|
25
|
-
end
|
26
|
-
# Return true if the number of maintenance turns is -1 (auto state).
|
27
|
-
if @states_turn[state_id] == -1
|
28
|
-
return true
|
29
|
-
end
|
30
|
-
# Return true if the number of maintenance turns is equal to the
|
31
|
-
# lowest number of natural removal turns.
|
32
|
-
return @states_turn[state_id] == $data_states[state_id].hold_turn
|
33
|
-
end
|
34
|
-
#--------------------------------------------------------------------------
|
35
|
-
# * Add State
|
36
|
-
# state_id : state ID
|
37
|
-
# force : forcefully added flag (used to deal with auto state)
|
38
|
-
#--------------------------------------------------------------------------
|
39
|
-
def add_state(state_id, force = false)
|
40
|
-
# For an ineffective state
|
41
|
-
if $data_states[state_id] == nil
|
42
|
-
# End Method
|
43
|
-
return
|
44
|
-
end
|
45
|
-
# If not forcefully added
|
46
|
-
unless force
|
47
|
-
# A state loop already in existance
|
48
|
-
for i in @states
|
49
|
-
# If a new state is included in the state change (-) of an existing
|
50
|
-
# state, and that state is not included in the state change (-) of
|
51
|
-
# a new state (example: an attempt to add poison during dead)
|
52
|
-
if $data_states[i].minus_state_set.include?(state_id) and
|
53
|
-
not $data_states[state_id].minus_state_set.include?(i)
|
54
|
-
# End Method
|
55
|
-
return
|
56
|
-
end
|
57
|
-
end
|
58
|
-
end
|
59
|
-
# If this state is not added
|
60
|
-
unless state?(state_id)
|
61
|
-
# Add state ID to @states array
|
62
|
-
@states.push(state_id)
|
63
|
-
# If option [regarded as HP 0]is effective
|
64
|
-
if $data_states[state_id].zero_hp
|
65
|
-
# Change HP to 0
|
66
|
-
@hp = 0
|
67
|
-
end
|
68
|
-
# All state loops
|
69
|
-
for i in 1...$data_states.size
|
70
|
-
# Dealing with a state change (+)
|
71
|
-
if $data_states[state_id].plus_state_set.include?(i)
|
72
|
-
add_state(i)
|
73
|
-
end
|
74
|
-
# Dealing with a state change (-)
|
75
|
-
if $data_states[state_id].minus_state_set.include?(i)
|
76
|
-
remove_state(i)
|
77
|
-
end
|
78
|
-
end
|
79
|
-
# line change to a large rating order (if value is the same, then a
|
80
|
-
# strong restriction order)
|
81
|
-
@states.sort! do |a, b|
|
82
|
-
state_a = $data_states[a]
|
83
|
-
state_b = $data_states[b]
|
84
|
-
if state_a.rating > state_b.rating
|
85
|
-
-1
|
86
|
-
elsif state_a.rating < state_b.rating
|
87
|
-
+1
|
88
|
-
elsif state_a.restriction > state_b.restriction
|
89
|
-
-1
|
90
|
-
elsif state_a.restriction < state_b.restriction
|
91
|
-
+1
|
92
|
-
else
|
93
|
-
a <=> b
|
94
|
-
end
|
95
|
-
end
|
96
|
-
end
|
97
|
-
# If added forcefully
|
98
|
-
if force
|
99
|
-
# Set the natural removal's lowest number of turns to -1
|
100
|
-
@states_turn[state_id] = -1
|
101
|
-
end
|
102
|
-
# If not added forcefully
|
103
|
-
unless @states_turn[state_id] == -1
|
104
|
-
# Set the natural removal's lowest number of turns
|
105
|
-
@states_turn[state_id] = $data_states[state_id].hold_turn
|
106
|
-
end
|
107
|
-
# If unable to move
|
108
|
-
unless movable?
|
109
|
-
# Clear action
|
110
|
-
@current_action.clear
|
111
|
-
end
|
112
|
-
# Check the maximum value of HP and SP
|
113
|
-
@hp = [@hp, self.maxhp].min
|
114
|
-
@sp = [@sp, self.maxsp].min
|
115
|
-
end
|
116
|
-
#--------------------------------------------------------------------------
|
117
|
-
# * Remove State
|
118
|
-
# state_id : state ID
|
119
|
-
# force : forcefully removed flag (used to deal with auto state)
|
120
|
-
#--------------------------------------------------------------------------
|
121
|
-
def remove_state(state_id, force = false)
|
122
|
-
# If this state is added
|
123
|
-
if state?(state_id)
|
124
|
-
# If a forcefully added state is not forcefully removed
|
125
|
-
if @states_turn[state_id] == -1 and not force
|
126
|
-
# End Method
|
127
|
-
return
|
128
|
-
end
|
129
|
-
# If current HP is at 0 and options are effective [regarded as HP 0]
|
130
|
-
if @hp == 0 and $data_states[state_id].zero_hp
|
131
|
-
# Determine if there's another state [regarded as HP 0] or not
|
132
|
-
zero_hp = false
|
133
|
-
for i in @states
|
134
|
-
if i != state_id and $data_states[i].zero_hp
|
135
|
-
zero_hp = true
|
136
|
-
end
|
137
|
-
end
|
138
|
-
# Change HP to 1 if OK to remove incapacitation.
|
139
|
-
if zero_hp == false
|
140
|
-
@hp = 1
|
141
|
-
end
|
142
|
-
end
|
143
|
-
# Delete state ID from @states and @states_turn hash array
|
144
|
-
@states.delete(state_id)
|
145
|
-
@states_turn.delete(state_id)
|
146
|
-
end
|
147
|
-
# Check maximum value for HP and SP
|
148
|
-
@hp = [@hp, self.maxhp].min
|
149
|
-
@sp = [@sp, self.maxsp].min
|
150
|
-
end
|
151
|
-
#--------------------------------------------------------------------------
|
152
|
-
# * Get State Animation ID
|
153
|
-
#--------------------------------------------------------------------------
|
154
|
-
def state_animation_id
|
155
|
-
# If no states are added
|
156
|
-
if @states.size == 0
|
157
|
-
return 0
|
158
|
-
end
|
159
|
-
# Return state animation ID with maximum rating
|
160
|
-
return $data_states[@states[0]].animation_id
|
161
|
-
end
|
162
|
-
#--------------------------------------------------------------------------
|
163
|
-
# * Get Restriction
|
164
|
-
#--------------------------------------------------------------------------
|
165
|
-
def restriction
|
166
|
-
restriction_max = 0
|
167
|
-
# Get maximum restriction from currently added states
|
168
|
-
for i in @states
|
169
|
-
if $data_states[i].restriction >= restriction_max
|
170
|
-
restriction_max = $data_states[i].restriction
|
171
|
-
end
|
172
|
-
end
|
173
|
-
return restriction_max
|
174
|
-
end
|
175
|
-
#--------------------------------------------------------------------------
|
176
|
-
# * Determine [Can't Get EXP] States
|
177
|
-
#--------------------------------------------------------------------------
|
178
|
-
def cant_get_exp?
|
179
|
-
for i in @states
|
180
|
-
if $data_states[i].cant_get_exp
|
181
|
-
return true
|
182
|
-
end
|
183
|
-
end
|
184
|
-
return false
|
185
|
-
end
|
186
|
-
#--------------------------------------------------------------------------
|
187
|
-
# * Determine [Can't Evade] States
|
188
|
-
#--------------------------------------------------------------------------
|
189
|
-
def cant_evade?
|
190
|
-
for i in @states
|
191
|
-
if $data_states[i].cant_evade
|
192
|
-
return true
|
193
|
-
end
|
194
|
-
end
|
195
|
-
return false
|
196
|
-
end
|
197
|
-
#--------------------------------------------------------------------------
|
198
|
-
# * Determine [Slip Damage] States
|
199
|
-
#--------------------------------------------------------------------------
|
200
|
-
def slip_damage?
|
201
|
-
for i in @states
|
202
|
-
if $data_states[i].slip_damage
|
203
|
-
return true
|
204
|
-
end
|
205
|
-
end
|
206
|
-
return false
|
207
|
-
end
|
208
|
-
#--------------------------------------------------------------------------
|
209
|
-
# * Remove Battle States (called up during end of battle)
|
210
|
-
#--------------------------------------------------------------------------
|
211
|
-
def remove_states_battle
|
212
|
-
for i in @states.clone
|
213
|
-
if $data_states[i].battle_only
|
214
|
-
remove_state(i)
|
215
|
-
end
|
216
|
-
end
|
217
|
-
end
|
218
|
-
#--------------------------------------------------------------------------
|
219
|
-
# * Natural Removal of States (called up each turn)
|
220
|
-
#--------------------------------------------------------------------------
|
221
|
-
def remove_states_auto
|
222
|
-
for i in @states_turn.keys.clone
|
223
|
-
if @states_turn[i] > 0
|
224
|
-
@states_turn[i] -= 1
|
225
|
-
elsif rand(100) < $data_states[i].auto_release_prob
|
226
|
-
remove_state(i)
|
227
|
-
end
|
228
|
-
end
|
229
|
-
end
|
230
|
-
#--------------------------------------------------------------------------
|
231
|
-
# * State Removed by Shock (called up each time physical damage occurs)
|
232
|
-
#--------------------------------------------------------------------------
|
233
|
-
def remove_states_shock
|
234
|
-
for i in @states.clone
|
235
|
-
if rand(100) < $data_states[i].shock_release_prob
|
236
|
-
remove_state(i)
|
237
|
-
end
|
238
|
-
end
|
239
|
-
end
|
240
|
-
#--------------------------------------------------------------------------
|
241
|
-
# * State Change (+) Application
|
242
|
-
# plus_state_set : State Change (+)
|
243
|
-
#--------------------------------------------------------------------------
|
244
|
-
def states_plus(plus_state_set)
|
245
|
-
# Clear effective flag
|
246
|
-
effective = false
|
247
|
-
# Loop (added state)
|
248
|
-
for i in plus_state_set
|
249
|
-
# If this state is not guarded
|
250
|
-
unless self.state_guard?(i)
|
251
|
-
# Set effective flag if this state is not full
|
252
|
-
effective |= self.state_full?(i) == false
|
253
|
-
# If states offer [no resistance]
|
254
|
-
if $data_states[i].nonresistance
|
255
|
-
# Set state change flag
|
256
|
-
@state_changed = true
|
257
|
-
# Add a state
|
258
|
-
add_state(i)
|
259
|
-
# If this state is not full
|
260
|
-
elsif self.state_full?(i) == false
|
261
|
-
# Convert state effectiveness to probability,
|
262
|
-
# compare to random numbers
|
263
|
-
if rand(100) < [0,100,80,60,40,20,0][self.state_ranks[i]]
|
264
|
-
# Set state change flag
|
265
|
-
@state_changed = true
|
266
|
-
# Add a state
|
267
|
-
add_state(i)
|
268
|
-
end
|
269
|
-
end
|
270
|
-
end
|
271
|
-
end
|
272
|
-
# End Method
|
273
|
-
return effective
|
274
|
-
end
|
275
|
-
#--------------------------------------------------------------------------
|
276
|
-
# * Apply State Change (-)
|
277
|
-
# minus_state_set : state change (-)
|
278
|
-
#--------------------------------------------------------------------------
|
279
|
-
def states_minus(minus_state_set)
|
280
|
-
# Clear effective flag
|
281
|
-
effective = false
|
282
|
-
# Loop (state to be removed)
|
283
|
-
for i in minus_state_set
|
284
|
-
# Set effective flag if this state is added
|
285
|
-
effective |= self.state?(i)
|
286
|
-
# Set a state change flag
|
287
|
-
@state_changed = true
|
288
|
-
# Remove state
|
289
|
-
remove_state(i)
|
290
|
-
end
|
291
|
-
# End Method
|
292
|
-
return effective
|
293
|
-
end
|
294
|
-
end
|
data/Scripts/Game_Battler 3.rb
DELETED
@@ -1,354 +0,0 @@
|
|
1
|
-
#==============================================================================
|
2
|
-
# ** Game_Battler (part 3)
|
3
|
-
#------------------------------------------------------------------------------
|
4
|
-
# This class deals with battlers. It's used as a superclass for the Game_Actor
|
5
|
-
# and Game_Enemy classes.
|
6
|
-
#==============================================================================
|
7
|
-
|
8
|
-
class Game_Battler
|
9
|
-
#--------------------------------------------------------------------------
|
10
|
-
# * Determine Usable Skills
|
11
|
-
# skill_id : skill ID
|
12
|
-
#--------------------------------------------------------------------------
|
13
|
-
def skill_can_use?(skill_id)
|
14
|
-
# If there's not enough SP, the skill cannot be used.
|
15
|
-
if $data_skills[skill_id].sp_cost > self.sp
|
16
|
-
return false
|
17
|
-
end
|
18
|
-
# Unusable if incapacitated
|
19
|
-
if dead?
|
20
|
-
return false
|
21
|
-
end
|
22
|
-
# If silent, only physical skills can be used
|
23
|
-
if $data_skills[skill_id].atk_f == 0 and self.restriction == 1
|
24
|
-
return false
|
25
|
-
end
|
26
|
-
# Get usable time
|
27
|
-
occasion = $data_skills[skill_id].occasion
|
28
|
-
# If in battle
|
29
|
-
if $game_temp.in_battle
|
30
|
-
# Usable with [Normal] and [Only Battle]
|
31
|
-
return (occasion == 0 or occasion == 1)
|
32
|
-
# If not in battle
|
33
|
-
else
|
34
|
-
# Usable with [Normal] and [Only Menu]
|
35
|
-
return (occasion == 0 or occasion == 2)
|
36
|
-
end
|
37
|
-
end
|
38
|
-
#--------------------------------------------------------------------------
|
39
|
-
# * Applying Normal Attack Effects
|
40
|
-
# attacker : battler
|
41
|
-
#--------------------------------------------------------------------------
|
42
|
-
def attack_effect(attacker)
|
43
|
-
# Clear critical flag
|
44
|
-
self.critical = false
|
45
|
-
# First hit detection
|
46
|
-
hit_result = (rand(100) < attacker.hit)
|
47
|
-
# If hit occurs
|
48
|
-
if hit_result == true
|
49
|
-
# Calculate basic damage
|
50
|
-
atk = [attacker.atk - self.pdef / 2, 0].max
|
51
|
-
self.damage = atk * (20 + attacker.str) / 20
|
52
|
-
# Element correction
|
53
|
-
self.damage *= elements_correct(attacker.element_set)
|
54
|
-
self.damage /= 100
|
55
|
-
# If damage value is strictly positive
|
56
|
-
if self.damage > 0
|
57
|
-
# Critical correction
|
58
|
-
if rand(100) < 4 * attacker.dex / self.agi
|
59
|
-
self.damage *= 2
|
60
|
-
self.critical = true
|
61
|
-
end
|
62
|
-
# Guard correction
|
63
|
-
if self.guarding?
|
64
|
-
self.damage /= 2
|
65
|
-
end
|
66
|
-
end
|
67
|
-
# Dispersion
|
68
|
-
if self.damage.abs > 0
|
69
|
-
amp = [self.damage.abs * 15 / 100, 1].max
|
70
|
-
self.damage += rand(amp+1) + rand(amp+1) - amp
|
71
|
-
end
|
72
|
-
# Second hit detection
|
73
|
-
eva = 8 * self.agi / attacker.dex + self.eva
|
74
|
-
hit = self.damage < 0 ? 100 : 100 - eva
|
75
|
-
hit = self.cant_evade? ? 100 : hit
|
76
|
-
hit_result = (rand(100) < hit)
|
77
|
-
end
|
78
|
-
# If hit occurs
|
79
|
-
if hit_result == true
|
80
|
-
# State Removed by Shock
|
81
|
-
remove_states_shock
|
82
|
-
# Substract damage from HP
|
83
|
-
self.hp -= self.damage
|
84
|
-
# State change
|
85
|
-
@state_changed = false
|
86
|
-
states_plus(attacker.plus_state_set)
|
87
|
-
states_minus(attacker.minus_state_set)
|
88
|
-
# When missing
|
89
|
-
else
|
90
|
-
# Set damage to "Miss"
|
91
|
-
self.damage = "Miss"
|
92
|
-
# Clear critical flag
|
93
|
-
self.critical = false
|
94
|
-
end
|
95
|
-
# End Method
|
96
|
-
return true
|
97
|
-
end
|
98
|
-
#--------------------------------------------------------------------------
|
99
|
-
# * Apply Skill Effects
|
100
|
-
# user : the one using skills (battler)
|
101
|
-
# skill : skill
|
102
|
-
#--------------------------------------------------------------------------
|
103
|
-
def skill_effect(user, skill)
|
104
|
-
# Clear critical flag
|
105
|
-
self.critical = false
|
106
|
-
# If skill scope is for ally with 1 or more HP, and your own HP = 0,
|
107
|
-
# or skill scope is for ally with 0, and your own HP = 1 or more
|
108
|
-
if ((skill.scope == 3 or skill.scope == 4) and self.hp == 0) or
|
109
|
-
((skill.scope == 5 or skill.scope == 6) and self.hp >= 1)
|
110
|
-
# End Method
|
111
|
-
return false
|
112
|
-
end
|
113
|
-
# Clear effective flag
|
114
|
-
effective = false
|
115
|
-
# Set effective flag if common ID is effective
|
116
|
-
effective |= skill.common_event_id > 0
|
117
|
-
# First hit detection
|
118
|
-
hit = skill.hit
|
119
|
-
if skill.atk_f > 0
|
120
|
-
hit *= user.hit / 100
|
121
|
-
end
|
122
|
-
hit_result = (rand(100) < hit)
|
123
|
-
# Set effective flag if skill is uncertain
|
124
|
-
effective |= hit < 100
|
125
|
-
# If hit occurs
|
126
|
-
if hit_result == true
|
127
|
-
# Calculate power
|
128
|
-
power = skill.power + user.atk * skill.atk_f / 100
|
129
|
-
if power > 0
|
130
|
-
power -= self.pdef * skill.pdef_f / 200
|
131
|
-
power -= self.mdef * skill.mdef_f / 200
|
132
|
-
power = [power, 0].max
|
133
|
-
end
|
134
|
-
# Calculate rate
|
135
|
-
rate = 20
|
136
|
-
rate += (user.str * skill.str_f / 100)
|
137
|
-
rate += (user.dex * skill.dex_f / 100)
|
138
|
-
rate += (user.agi * skill.agi_f / 100)
|
139
|
-
rate += (user.int * skill.int_f / 100)
|
140
|
-
# Calculate basic damage
|
141
|
-
self.damage = power * rate / 20
|
142
|
-
# Element correction
|
143
|
-
self.damage *= elements_correct(skill.element_set)
|
144
|
-
self.damage /= 100
|
145
|
-
# If damage value is strictly positive
|
146
|
-
if self.damage > 0
|
147
|
-
# Guard correction
|
148
|
-
if self.guarding?
|
149
|
-
self.damage /= 2
|
150
|
-
end
|
151
|
-
end
|
152
|
-
# Dispersion
|
153
|
-
if skill.variance > 0 and self.damage.abs > 0
|
154
|
-
amp = [self.damage.abs * skill.variance / 100, 1].max
|
155
|
-
self.damage += rand(amp+1) + rand(amp+1) - amp
|
156
|
-
end
|
157
|
-
# Second hit detection
|
158
|
-
eva = 8 * self.agi / user.dex + self.eva
|
159
|
-
hit = self.damage < 0 ? 100 : 100 - eva * skill.eva_f / 100
|
160
|
-
hit = self.cant_evade? ? 100 : hit
|
161
|
-
hit_result = (rand(100) < hit)
|
162
|
-
# Set effective flag if skill is uncertain
|
163
|
-
effective |= hit < 100
|
164
|
-
end
|
165
|
-
# If hit occurs
|
166
|
-
if hit_result == true
|
167
|
-
# If physical attack has power other than 0
|
168
|
-
if skill.power != 0 and skill.atk_f > 0
|
169
|
-
# State Removed by Shock
|
170
|
-
remove_states_shock
|
171
|
-
# Set to effective flag
|
172
|
-
effective = true
|
173
|
-
end
|
174
|
-
# Substract damage from HP
|
175
|
-
last_hp = self.hp
|
176
|
-
self.hp -= self.damage
|
177
|
-
effective |= self.hp != last_hp
|
178
|
-
# State change
|
179
|
-
@state_changed = false
|
180
|
-
effective |= states_plus(skill.plus_state_set)
|
181
|
-
effective |= states_minus(skill.minus_state_set)
|
182
|
-
# If power is 0
|
183
|
-
if skill.power == 0
|
184
|
-
# Set damage to an empty string
|
185
|
-
self.damage = ""
|
186
|
-
# If state is unchanged
|
187
|
-
unless @state_changed
|
188
|
-
# Set damage to "Miss"
|
189
|
-
self.damage = "Miss"
|
190
|
-
end
|
191
|
-
end
|
192
|
-
# If miss occurs
|
193
|
-
else
|
194
|
-
# Set damage to "Miss"
|
195
|
-
self.damage = "Miss"
|
196
|
-
end
|
197
|
-
# If not in battle
|
198
|
-
unless $game_temp.in_battle
|
199
|
-
# Set damage to nil
|
200
|
-
self.damage = nil
|
201
|
-
end
|
202
|
-
# End Method
|
203
|
-
return effective
|
204
|
-
end
|
205
|
-
#--------------------------------------------------------------------------
|
206
|
-
# * Application of Item Effects
|
207
|
-
# item : item
|
208
|
-
#--------------------------------------------------------------------------
|
209
|
-
def item_effect(item)
|
210
|
-
# Clear critical flag
|
211
|
-
self.critical = false
|
212
|
-
# If item scope is for ally with 1 or more HP, and your own HP = 0,
|
213
|
-
# or item scope is for ally with 0 HP, and your own HP = 1 or more
|
214
|
-
if ((item.scope == 3 or item.scope == 4) and self.hp == 0) or
|
215
|
-
((item.scope == 5 or item.scope == 6) and self.hp >= 1)
|
216
|
-
# End Method
|
217
|
-
return false
|
218
|
-
end
|
219
|
-
# Clear effective flag
|
220
|
-
effective = false
|
221
|
-
# Set effective flag if common ID is effective
|
222
|
-
effective |= item.common_event_id > 0
|
223
|
-
# Determine hit
|
224
|
-
hit_result = (rand(100) < item.hit)
|
225
|
-
# Set effective flag is skill is uncertain
|
226
|
-
effective |= item.hit < 100
|
227
|
-
# If hit occurs
|
228
|
-
if hit_result == true
|
229
|
-
# Calculate amount of recovery
|
230
|
-
recover_hp = maxhp * item.recover_hp_rate / 100 + item.recover_hp
|
231
|
-
recover_sp = maxsp * item.recover_sp_rate / 100 + item.recover_sp
|
232
|
-
if recover_hp < 0
|
233
|
-
recover_hp += self.pdef * item.pdef_f / 20
|
234
|
-
recover_hp += self.mdef * item.mdef_f / 20
|
235
|
-
recover_hp = [recover_hp, 0].min
|
236
|
-
end
|
237
|
-
# Element correction
|
238
|
-
recover_hp *= elements_correct(item.element_set)
|
239
|
-
recover_hp /= 100
|
240
|
-
recover_sp *= elements_correct(item.element_set)
|
241
|
-
recover_sp /= 100
|
242
|
-
# Dispersion
|
243
|
-
if item.variance > 0 and recover_hp.abs > 0
|
244
|
-
amp = [recover_hp.abs * item.variance / 100, 1].max
|
245
|
-
recover_hp += rand(amp+1) + rand(amp+1) - amp
|
246
|
-
end
|
247
|
-
if item.variance > 0 and recover_sp.abs > 0
|
248
|
-
amp = [recover_sp.abs * item.variance / 100, 1].max
|
249
|
-
recover_sp += rand(amp+1) + rand(amp+1) - amp
|
250
|
-
end
|
251
|
-
# If recovery code is negative
|
252
|
-
if recover_hp < 0
|
253
|
-
# Guard correction
|
254
|
-
if self.guarding?
|
255
|
-
recover_hp /= 2
|
256
|
-
end
|
257
|
-
end
|
258
|
-
# Set damage value and reverse HP recovery amount
|
259
|
-
self.damage = -recover_hp
|
260
|
-
# HP and SP recovery
|
261
|
-
last_hp = self.hp
|
262
|
-
last_sp = self.sp
|
263
|
-
self.hp += recover_hp
|
264
|
-
self.sp += recover_sp
|
265
|
-
effective |= self.hp != last_hp
|
266
|
-
effective |= self.sp != last_sp
|
267
|
-
# State change
|
268
|
-
@state_changed = false
|
269
|
-
effective |= states_plus(item.plus_state_set)
|
270
|
-
effective |= states_minus(item.minus_state_set)
|
271
|
-
# If parameter value increase is effective
|
272
|
-
if item.parameter_type > 0 and item.parameter_points != 0
|
273
|
-
# Branch by parameter
|
274
|
-
case item.parameter_type
|
275
|
-
when 1 # Max HP
|
276
|
-
@maxhp_plus += item.parameter_points
|
277
|
-
when 2 # Max SP
|
278
|
-
@maxsp_plus += item.parameter_points
|
279
|
-
when 3 # Strength
|
280
|
-
@str_plus += item.parameter_points
|
281
|
-
when 4 # Dexterity
|
282
|
-
@dex_plus += item.parameter_points
|
283
|
-
when 5 # Agility
|
284
|
-
@agi_plus += item.parameter_points
|
285
|
-
when 6 # Intelligence
|
286
|
-
@int_plus += item.parameter_points
|
287
|
-
end
|
288
|
-
# Set to effective flag
|
289
|
-
effective = true
|
290
|
-
end
|
291
|
-
# If HP recovery rate and recovery amount are 0
|
292
|
-
if item.recover_hp_rate == 0 and item.recover_hp == 0
|
293
|
-
# Set damage to empty string
|
294
|
-
self.damage = ""
|
295
|
-
# If SP recovery rate / recovery amount are 0, and parameter increase
|
296
|
-
# value is ineffective.
|
297
|
-
if item.recover_sp_rate == 0 and item.recover_sp == 0 and
|
298
|
-
(item.parameter_type == 0 or item.parameter_points == 0)
|
299
|
-
# If state is unchanged
|
300
|
-
unless @state_changed
|
301
|
-
# Set damage to "Miss"
|
302
|
-
self.damage = "Miss"
|
303
|
-
end
|
304
|
-
end
|
305
|
-
end
|
306
|
-
# If miss occurs
|
307
|
-
else
|
308
|
-
# Set damage to "Miss"
|
309
|
-
self.damage = "Miss"
|
310
|
-
end
|
311
|
-
# If not in battle
|
312
|
-
unless $game_temp.in_battle
|
313
|
-
# Set damage to nil
|
314
|
-
self.damage = nil
|
315
|
-
end
|
316
|
-
# End Method
|
317
|
-
return effective
|
318
|
-
end
|
319
|
-
#--------------------------------------------------------------------------
|
320
|
-
# * Application of Slip Damage Effects
|
321
|
-
#--------------------------------------------------------------------------
|
322
|
-
def slip_damage_effect
|
323
|
-
# Set damage
|
324
|
-
self.damage = self.maxhp / 10
|
325
|
-
# Dispersion
|
326
|
-
if self.damage.abs > 0
|
327
|
-
amp = [self.damage.abs * 15 / 100, 1].max
|
328
|
-
self.damage += rand(amp+1) + rand(amp+1) - amp
|
329
|
-
end
|
330
|
-
# Subtract damage from HP
|
331
|
-
self.hp -= self.damage
|
332
|
-
# End Method
|
333
|
-
return true
|
334
|
-
end
|
335
|
-
#--------------------------------------------------------------------------
|
336
|
-
# * Calculating Element Correction
|
337
|
-
# element_set : element
|
338
|
-
#--------------------------------------------------------------------------
|
339
|
-
def elements_correct(element_set)
|
340
|
-
# If not an element
|
341
|
-
if element_set == []
|
342
|
-
# Return 100
|
343
|
-
return 100
|
344
|
-
end
|
345
|
-
# Return the weakest object among the elements given
|
346
|
-
# * "element_rate" method is defined by Game_Actor and Game_Enemy classes,
|
347
|
-
# which inherit from this class.
|
348
|
-
weakest = -100
|
349
|
-
for i in element_set
|
350
|
-
weakest = [weakest, self.element_rate(i)].max
|
351
|
-
end
|
352
|
-
return weakest
|
353
|
-
end
|
354
|
-
end
|