rgss3_default_scripts 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +9 -0
- data/Gemfile +4 -0
- data/README.md +9 -0
- data/Rakefile +2 -0
- data/lib/rgss3_default_scripts.rb +109 -0
- data/lib/rgss3_default_scripts/BattleManager.rb +392 -0
- data/lib/rgss3_default_scripts/Cache.rb +134 -0
- data/lib/rgss3_default_scripts/DataManager.rb +267 -0
- data/lib/rgss3_default_scripts/Game_Action.rb +262 -0
- data/lib/rgss3_default_scripts/Game_ActionResult.rb +159 -0
- data/lib/rgss3_default_scripts/Game_Actor.rb +696 -0
- data/lib/rgss3_default_scripts/Game_Actors.rb +22 -0
- data/lib/rgss3_default_scripts/Game_BaseItem.rb +51 -0
- data/lib/rgss3_default_scripts/Game_Battler.rb +824 -0
- data/lib/rgss3_default_scripts/Game_BattlerBase.rb +731 -0
- data/lib/rgss3_default_scripts/Game_Character.rb +396 -0
- data/lib/rgss3_default_scripts/Game_CharacterBase.rb +443 -0
- data/lib/rgss3_default_scripts/Game_CommonEvent.rb +41 -0
- data/lib/rgss3_default_scripts/Game_Enemy.rb +264 -0
- data/lib/rgss3_default_scripts/Game_Event.rb +308 -0
- data/lib/rgss3_default_scripts/Game_Follower.rb +74 -0
- data/lib/rgss3_default_scripts/Game_Followers.rb +112 -0
- data/lib/rgss3_default_scripts/Game_Interpreter.rb +1413 -0
- data/lib/rgss3_default_scripts/Game_Map.rb +704 -0
- data/lib/rgss3_default_scripts/Game_Message.rb +101 -0
- data/lib/rgss3_default_scripts/Game_Party.rb +418 -0
- data/lib/rgss3_default_scripts/Game_Picture.rb +161 -0
- data/lib/rgss3_default_scripts/Game_Pictures.rb +28 -0
- data/lib/rgss3_default_scripts/Game_Player.rb +488 -0
- data/lib/rgss3_default_scripts/Game_Screen.rb +234 -0
- data/lib/rgss3_default_scripts/Game_SelfSwitches.rb +35 -0
- data/lib/rgss3_default_scripts/Game_Switches.rb +35 -0
- data/lib/rgss3_default_scripts/Game_System.rb +122 -0
- data/lib/rgss3_default_scripts/Game_Temp.rb +45 -0
- data/lib/rgss3_default_scripts/Game_Timer.rb +56 -0
- data/lib/rgss3_default_scripts/Game_Troop.rb +205 -0
- data/lib/rgss3_default_scripts/Game_Unit.rb +131 -0
- data/lib/rgss3_default_scripts/Game_Variables.rb +34 -0
- data/lib/rgss3_default_scripts/Game_Vehicle.rb +193 -0
- data/lib/rgss3_default_scripts/SceneManager.rb +94 -0
- data/lib/rgss3_default_scripts/Scene_Base.rb +132 -0
- data/lib/rgss3_default_scripts/Scene_Battle.rb +693 -0
- data/lib/rgss3_default_scripts/Scene_Debug.rb +87 -0
- data/lib/rgss3_default_scripts/Scene_End.rb +61 -0
- data/lib/rgss3_default_scripts/Scene_Equip.rb +144 -0
- data/lib/rgss3_default_scripts/Scene_File.rb +203 -0
- data/lib/rgss3_default_scripts/Scene_Gameover.rb +85 -0
- data/lib/rgss3_default_scripts/Scene_Item.rb +75 -0
- data/lib/rgss3_default_scripts/Scene_ItemBase.rb +147 -0
- data/lib/rgss3_default_scripts/Scene_Load.rb +40 -0
- data/lib/rgss3_default_scripts/Scene_Map.rb +276 -0
- data/lib/rgss3_default_scripts/Scene_Menu.rb +127 -0
- data/lib/rgss3_default_scripts/Scene_MenuBase.rb +63 -0
- data/lib/rgss3_default_scripts/Scene_Name.rb +32 -0
- data/lib/rgss3_default_scripts/Scene_Save.rb +38 -0
- data/lib/rgss3_default_scripts/Scene_Shop.rb +299 -0
- data/lib/rgss3_default_scripts/Scene_Skill.rb +108 -0
- data/lib/rgss3_default_scripts/Scene_Status.rb +25 -0
- data/lib/rgss3_default_scripts/Scene_Title.rb +137 -0
- data/lib/rgss3_default_scripts/Sound.rb +135 -0
- data/lib/rgss3_default_scripts/Sprite_Base.rb +232 -0
- data/lib/rgss3_default_scripts/Sprite_Battler.rb +231 -0
- data/lib/rgss3_default_scripts/Sprite_Character.rb +226 -0
- data/lib/rgss3_default_scripts/Sprite_Picture.rb +82 -0
- data/lib/rgss3_default_scripts/Sprite_Timer.rb +77 -0
- data/lib/rgss3_default_scripts/Spriteset_Battle.rb +389 -0
- data/lib/rgss3_default_scripts/Spriteset_Map.rb +273 -0
- data/lib/rgss3_default_scripts/Spriteset_Weather.rb +184 -0
- data/lib/rgss3_default_scripts/Vocab.rb +145 -0
- data/lib/rgss3_default_scripts/Window_ActorCommand.rb +78 -0
- data/lib/rgss3_default_scripts/Window_Base.rb +571 -0
- data/lib/rgss3_default_scripts/Window_BattleActor.rb +38 -0
- data/lib/rgss3_default_scripts/Window_BattleEnemy.rb +70 -0
- data/lib/rgss3_default_scripts/Window_BattleItem.rb +40 -0
- data/lib/rgss3_default_scripts/Window_BattleLog.rb +425 -0
- data/lib/rgss3_default_scripts/Window_BattleSkill.rb +34 -0
- data/lib/rgss3_default_scripts/Window_BattleStatus.rb +111 -0
- data/lib/rgss3_default_scripts/Window_ChoiceList.rb +88 -0
- data/lib/rgss3_default_scripts/Window_Command.rb +152 -0
- data/lib/rgss3_default_scripts/Window_DebugLeft.rb +104 -0
- data/lib/rgss3_default_scripts/Window_DebugRight.rb +119 -0
- data/lib/rgss3_default_scripts/Window_EquipCommand.rb +36 -0
- data/lib/rgss3_default_scripts/Window_EquipItem.rb +78 -0
- data/lib/rgss3_default_scripts/Window_EquipSlot.rb +111 -0
- data/lib/rgss3_default_scripts/Window_EquipStatus.rb +97 -0
- data/lib/rgss3_default_scripts/Window_GameEnd.rb +38 -0
- data/lib/rgss3_default_scripts/Window_Gold.rb +47 -0
- data/lib/rgss3_default_scripts/Window_Help.rb +43 -0
- data/lib/rgss3_default_scripts/Window_HorzCommand.rb +106 -0
- data/lib/rgss3_default_scripts/Window_ItemCategory.rb +54 -0
- data/lib/rgss3_default_scripts/Window_ItemList.rb +117 -0
- data/lib/rgss3_default_scripts/Window_KeyItem.rb +55 -0
- data/lib/rgss3_default_scripts/Window_MapName.rb +96 -0
- data/lib/rgss3_default_scripts/Window_MenuActor.rb +43 -0
- data/lib/rgss3_default_scripts/Window_MenuCommand.rb +106 -0
- data/lib/rgss3_default_scripts/Window_MenuStatus.rb +85 -0
- data/lib/rgss3_default_scripts/Window_Message.rb +397 -0
- data/lib/rgss3_default_scripts/Window_NameEdit.rb +129 -0
- data/lib/rgss3_default_scripts/Window_NameInput.rb +253 -0
- data/lib/rgss3_default_scripts/Window_NumberInput.rb +148 -0
- data/lib/rgss3_default_scripts/Window_PartyCommand.rb +47 -0
- data/lib/rgss3_default_scripts/Window_SaveFile.rb +69 -0
- data/lib/rgss3_default_scripts/Window_ScrollText.rb +90 -0
- data/lib/rgss3_default_scripts/Window_Selectable.rb +442 -0
- data/lib/rgss3_default_scripts/Window_ShopBuy.rb +115 -0
- data/lib/rgss3_default_scripts/Window_ShopCommand.rb +36 -0
- data/lib/rgss3_default_scripts/Window_ShopNumber.rb +137 -0
- data/lib/rgss3_default_scripts/Window_ShopSell.rb +27 -0
- data/lib/rgss3_default_scripts/Window_ShopStatus.rb +124 -0
- data/lib/rgss3_default_scripts/Window_SkillCommand.rb +76 -0
- data/lib/rgss3_default_scripts/Window_SkillList.rb +121 -0
- data/lib/rgss3_default_scripts/Window_SkillStatus.rb +38 -0
- data/lib/rgss3_default_scripts/Window_Status.rb +125 -0
- data/lib/rgss3_default_scripts/Window_TitleCommand.rb +45 -0
- data/rgss3_default_scripts.gemspec +23 -0
- metadata +186 -0
|
@@ -0,0 +1,731 @@
|
|
|
1
|
+
#==============================================================================
|
|
2
|
+
# ** Game_BattlerBase
|
|
3
|
+
#------------------------------------------------------------------------------
|
|
4
|
+
# This base class handles battlers. It mainly contains methods for calculating
|
|
5
|
+
# parameters. It is used as a super class of the Game_Battler class.
|
|
6
|
+
#==============================================================================
|
|
7
|
+
|
|
8
|
+
class Game_BattlerBase
|
|
9
|
+
#--------------------------------------------------------------------------
|
|
10
|
+
# * Constants (Features)
|
|
11
|
+
#--------------------------------------------------------------------------
|
|
12
|
+
FEATURE_ELEMENT_RATE = 11 # Element Rate
|
|
13
|
+
FEATURE_DEBUFF_RATE = 12 # Debuff Rate
|
|
14
|
+
FEATURE_STATE_RATE = 13 # State Rate
|
|
15
|
+
FEATURE_STATE_RESIST = 14 # State Resist
|
|
16
|
+
FEATURE_PARAM = 21 # Parameter
|
|
17
|
+
FEATURE_XPARAM = 22 # Ex-Parameter
|
|
18
|
+
FEATURE_SPARAM = 23 # Sp-Parameter
|
|
19
|
+
FEATURE_ATK_ELEMENT = 31 # Atk Element
|
|
20
|
+
FEATURE_ATK_STATE = 32 # Atk State
|
|
21
|
+
FEATURE_ATK_SPEED = 33 # Atk Speed
|
|
22
|
+
FEATURE_ATK_TIMES = 34 # Atk Times+
|
|
23
|
+
FEATURE_STYPE_ADD = 41 # Add Skill Type
|
|
24
|
+
FEATURE_STYPE_SEAL = 42 # Disable Skill Type
|
|
25
|
+
FEATURE_SKILL_ADD = 43 # Add Skill
|
|
26
|
+
FEATURE_SKILL_SEAL = 44 # Disable Skill
|
|
27
|
+
FEATURE_EQUIP_WTYPE = 51 # Equip Weapon
|
|
28
|
+
FEATURE_EQUIP_ATYPE = 52 # Equip Armor
|
|
29
|
+
FEATURE_EQUIP_FIX = 53 # Lock Equip
|
|
30
|
+
FEATURE_EQUIP_SEAL = 54 # Seal Equip
|
|
31
|
+
FEATURE_SLOT_TYPE = 55 # Slot Type
|
|
32
|
+
FEATURE_ACTION_PLUS = 61 # Action Times+
|
|
33
|
+
FEATURE_SPECIAL_FLAG = 62 # Special Flag
|
|
34
|
+
FEATURE_COLLAPSE_TYPE = 63 # Collapse Effect
|
|
35
|
+
FEATURE_PARTY_ABILITY = 64 # Party Ability
|
|
36
|
+
#--------------------------------------------------------------------------
|
|
37
|
+
# * Constants (Feature Flags)
|
|
38
|
+
#--------------------------------------------------------------------------
|
|
39
|
+
FLAG_ID_AUTO_BATTLE = 0 # auto battle
|
|
40
|
+
FLAG_ID_GUARD = 1 # guard
|
|
41
|
+
FLAG_ID_SUBSTITUTE = 2 # substitute
|
|
42
|
+
FLAG_ID_PRESERVE_TP = 3 # preserve TP
|
|
43
|
+
#--------------------------------------------------------------------------
|
|
44
|
+
# * Constants (Starting Number of Buff/Debuff Icons)
|
|
45
|
+
#--------------------------------------------------------------------------
|
|
46
|
+
ICON_BUFF_START = 64 # buff (16 icons)
|
|
47
|
+
ICON_DEBUFF_START = 80 # debuff (16 icons)
|
|
48
|
+
#--------------------------------------------------------------------------
|
|
49
|
+
# * Public Instance Variables
|
|
50
|
+
#--------------------------------------------------------------------------
|
|
51
|
+
attr_reader :hp # HP
|
|
52
|
+
attr_reader :mp # MP
|
|
53
|
+
attr_reader :tp # TP
|
|
54
|
+
#--------------------------------------------------------------------------
|
|
55
|
+
# * Access Method by Parameter Abbreviations
|
|
56
|
+
#--------------------------------------------------------------------------
|
|
57
|
+
def mhp; param(0); end # MHP Maximum Hit Points
|
|
58
|
+
def mmp; param(1); end # MMP Maximum Magic Points
|
|
59
|
+
def atk; param(2); end # ATK ATtacK power
|
|
60
|
+
def def; param(3); end # DEF DEFense power
|
|
61
|
+
def mat; param(4); end # MAT Magic ATtack power
|
|
62
|
+
def mdf; param(5); end # MDF Magic DeFense power
|
|
63
|
+
def agi; param(6); end # AGI AGIlity
|
|
64
|
+
def luk; param(7); end # LUK LUcK
|
|
65
|
+
def hit; xparam(0); end # HIT HIT rate
|
|
66
|
+
def eva; xparam(1); end # EVA EVAsion rate
|
|
67
|
+
def cri; xparam(2); end # CRI CRItical rate
|
|
68
|
+
def cev; xparam(3); end # CEV Critical EVasion rate
|
|
69
|
+
def mev; xparam(4); end # MEV Magic EVasion rate
|
|
70
|
+
def mrf; xparam(5); end # MRF Magic ReFlection rate
|
|
71
|
+
def cnt; xparam(6); end # CNT CouNTer attack rate
|
|
72
|
+
def hrg; xparam(7); end # HRG Hp ReGeneration rate
|
|
73
|
+
def mrg; xparam(8); end # MRG Mp ReGeneration rate
|
|
74
|
+
def trg; xparam(9); end # TRG Tp ReGeneration rate
|
|
75
|
+
def tgr; sparam(0); end # TGR TarGet Rate
|
|
76
|
+
def grd; sparam(1); end # GRD GuaRD effect rate
|
|
77
|
+
def rec; sparam(2); end # REC RECovery effect rate
|
|
78
|
+
def pha; sparam(3); end # PHA PHArmacology
|
|
79
|
+
def mcr; sparam(4); end # MCR Mp Cost Rate
|
|
80
|
+
def tcr; sparam(5); end # TCR Tp Charge Rate
|
|
81
|
+
def pdr; sparam(6); end # PDR Physical Damage Rate
|
|
82
|
+
def mdr; sparam(7); end # MDR Magical Damage Rate
|
|
83
|
+
def fdr; sparam(8); end # FDR Floor Damage Rate
|
|
84
|
+
def exr; sparam(9); end # EXR EXperience Rate
|
|
85
|
+
#--------------------------------------------------------------------------
|
|
86
|
+
# * Object Initialization
|
|
87
|
+
#--------------------------------------------------------------------------
|
|
88
|
+
def initialize
|
|
89
|
+
@hp = @mp = @tp = 0
|
|
90
|
+
@hidden = false
|
|
91
|
+
clear_param_plus
|
|
92
|
+
clear_states
|
|
93
|
+
clear_buffs
|
|
94
|
+
end
|
|
95
|
+
#--------------------------------------------------------------------------
|
|
96
|
+
# * Clear Values Added to Parameter
|
|
97
|
+
#--------------------------------------------------------------------------
|
|
98
|
+
def clear_param_plus
|
|
99
|
+
@param_plus = [0] * 8
|
|
100
|
+
end
|
|
101
|
+
#--------------------------------------------------------------------------
|
|
102
|
+
# * Clear State Information
|
|
103
|
+
#--------------------------------------------------------------------------
|
|
104
|
+
def clear_states
|
|
105
|
+
@states = []
|
|
106
|
+
@state_turns = {}
|
|
107
|
+
@state_steps = {}
|
|
108
|
+
end
|
|
109
|
+
#--------------------------------------------------------------------------
|
|
110
|
+
# * Erase States
|
|
111
|
+
#--------------------------------------------------------------------------
|
|
112
|
+
def erase_state(state_id)
|
|
113
|
+
@states.delete(state_id)
|
|
114
|
+
@state_turns.delete(state_id)
|
|
115
|
+
@state_steps.delete(state_id)
|
|
116
|
+
end
|
|
117
|
+
#--------------------------------------------------------------------------
|
|
118
|
+
# * Clear Buff Information
|
|
119
|
+
#--------------------------------------------------------------------------
|
|
120
|
+
def clear_buffs
|
|
121
|
+
@buffs = Array.new(8) { 0 }
|
|
122
|
+
@buff_turns = {}
|
|
123
|
+
end
|
|
124
|
+
#--------------------------------------------------------------------------
|
|
125
|
+
# * Check State
|
|
126
|
+
#--------------------------------------------------------------------------
|
|
127
|
+
def state?(state_id)
|
|
128
|
+
@states.include?(state_id)
|
|
129
|
+
end
|
|
130
|
+
#--------------------------------------------------------------------------
|
|
131
|
+
# * Check K.O. State
|
|
132
|
+
#--------------------------------------------------------------------------
|
|
133
|
+
def death_state?
|
|
134
|
+
state?(death_state_id)
|
|
135
|
+
end
|
|
136
|
+
#--------------------------------------------------------------------------
|
|
137
|
+
# * Get State ID of K.O.
|
|
138
|
+
#--------------------------------------------------------------------------
|
|
139
|
+
def death_state_id
|
|
140
|
+
return 1
|
|
141
|
+
end
|
|
142
|
+
#--------------------------------------------------------------------------
|
|
143
|
+
# * Get Current States as an Object Array
|
|
144
|
+
#--------------------------------------------------------------------------
|
|
145
|
+
def states
|
|
146
|
+
@states.collect {|id| $data_states[id] }
|
|
147
|
+
end
|
|
148
|
+
#--------------------------------------------------------------------------
|
|
149
|
+
# * Get Current States as an Array of Icon Numbers
|
|
150
|
+
#--------------------------------------------------------------------------
|
|
151
|
+
def state_icons
|
|
152
|
+
icons = states.collect {|state| state.icon_index }
|
|
153
|
+
icons.delete(0)
|
|
154
|
+
icons
|
|
155
|
+
end
|
|
156
|
+
#--------------------------------------------------------------------------
|
|
157
|
+
# * Get Current Buffs/Debuffs as an Array of Icon Numbers
|
|
158
|
+
#--------------------------------------------------------------------------
|
|
159
|
+
def buff_icons
|
|
160
|
+
icons = []
|
|
161
|
+
@buffs.each_with_index {|lv, i| icons.push(buff_icon_index(lv, i)) }
|
|
162
|
+
icons.delete(0)
|
|
163
|
+
icons
|
|
164
|
+
end
|
|
165
|
+
#--------------------------------------------------------------------------
|
|
166
|
+
# * Get Icon Number Corresponding to Buff/Debuff
|
|
167
|
+
#--------------------------------------------------------------------------
|
|
168
|
+
def buff_icon_index(buff_level, param_id)
|
|
169
|
+
if buff_level > 0
|
|
170
|
+
return ICON_BUFF_START + (buff_level - 1) * 8 + param_id
|
|
171
|
+
elsif buff_level < 0
|
|
172
|
+
return ICON_DEBUFF_START + (-buff_level - 1) * 8 + param_id
|
|
173
|
+
else
|
|
174
|
+
return 0
|
|
175
|
+
end
|
|
176
|
+
end
|
|
177
|
+
#--------------------------------------------------------------------------
|
|
178
|
+
# * Get Array of All Objects Retaining Features
|
|
179
|
+
#--------------------------------------------------------------------------
|
|
180
|
+
def feature_objects
|
|
181
|
+
states
|
|
182
|
+
end
|
|
183
|
+
#--------------------------------------------------------------------------
|
|
184
|
+
# * Get Array of All Feature Objects
|
|
185
|
+
#--------------------------------------------------------------------------
|
|
186
|
+
def all_features
|
|
187
|
+
feature_objects.inject([]) {|r, obj| r + obj.features }
|
|
188
|
+
end
|
|
189
|
+
#--------------------------------------------------------------------------
|
|
190
|
+
# * Get Feature Object Array (Feature Codes Limited)
|
|
191
|
+
#--------------------------------------------------------------------------
|
|
192
|
+
def features(code)
|
|
193
|
+
all_features.select {|ft| ft.code == code }
|
|
194
|
+
end
|
|
195
|
+
#--------------------------------------------------------------------------
|
|
196
|
+
# * Get Feature Object Array (Feature Codes and Data IDs Limited)
|
|
197
|
+
#--------------------------------------------------------------------------
|
|
198
|
+
def features_with_id(code, id)
|
|
199
|
+
all_features.select {|ft| ft.code == code && ft.data_id == id }
|
|
200
|
+
end
|
|
201
|
+
#--------------------------------------------------------------------------
|
|
202
|
+
# * Calculate Complement of Feature Values
|
|
203
|
+
#--------------------------------------------------------------------------
|
|
204
|
+
def features_pi(code, id)
|
|
205
|
+
features_with_id(code, id).inject(1.0) {|r, ft| r *= ft.value }
|
|
206
|
+
end
|
|
207
|
+
#--------------------------------------------------------------------------
|
|
208
|
+
# * Calculate Sum of Feature Values (Specify Data ID)
|
|
209
|
+
#--------------------------------------------------------------------------
|
|
210
|
+
def features_sum(code, id)
|
|
211
|
+
features_with_id(code, id).inject(0.0) {|r, ft| r += ft.value }
|
|
212
|
+
end
|
|
213
|
+
#--------------------------------------------------------------------------
|
|
214
|
+
# * Calculate Sum of Feature Values (Data ID Unspecified)
|
|
215
|
+
#--------------------------------------------------------------------------
|
|
216
|
+
def features_sum_all(code)
|
|
217
|
+
features(code).inject(0.0) {|r, ft| r += ft.value }
|
|
218
|
+
end
|
|
219
|
+
#--------------------------------------------------------------------------
|
|
220
|
+
# * Calculate Set Sum of Features
|
|
221
|
+
#--------------------------------------------------------------------------
|
|
222
|
+
def features_set(code)
|
|
223
|
+
features(code).inject([]) {|r, ft| r |= [ft.data_id] }
|
|
224
|
+
end
|
|
225
|
+
#--------------------------------------------------------------------------
|
|
226
|
+
# * Get Base Value of Parameter
|
|
227
|
+
#--------------------------------------------------------------------------
|
|
228
|
+
def param_base(param_id)
|
|
229
|
+
return 0
|
|
230
|
+
end
|
|
231
|
+
#--------------------------------------------------------------------------
|
|
232
|
+
# * Get Added Value of Parameter
|
|
233
|
+
#--------------------------------------------------------------------------
|
|
234
|
+
def param_plus(param_id)
|
|
235
|
+
@param_plus[param_id]
|
|
236
|
+
end
|
|
237
|
+
#--------------------------------------------------------------------------
|
|
238
|
+
# * Get Reduced Value of Parameter
|
|
239
|
+
#--------------------------------------------------------------------------
|
|
240
|
+
def param_min(param_id)
|
|
241
|
+
return 0 if param_id == 1 # MMP
|
|
242
|
+
return 1
|
|
243
|
+
end
|
|
244
|
+
#--------------------------------------------------------------------------
|
|
245
|
+
# * Get Maximum Value of Parameter
|
|
246
|
+
#--------------------------------------------------------------------------
|
|
247
|
+
def param_max(param_id)
|
|
248
|
+
return 999999 if param_id == 0 # MHP
|
|
249
|
+
return 9999 if param_id == 1 # MMP
|
|
250
|
+
return 999
|
|
251
|
+
end
|
|
252
|
+
#--------------------------------------------------------------------------
|
|
253
|
+
# * Get Rate of Parameter Change
|
|
254
|
+
#--------------------------------------------------------------------------
|
|
255
|
+
def param_rate(param_id)
|
|
256
|
+
features_pi(FEATURE_PARAM, param_id)
|
|
257
|
+
end
|
|
258
|
+
#--------------------------------------------------------------------------
|
|
259
|
+
# * Get Rate of Change Due to Parameter Buff/Debuff
|
|
260
|
+
#--------------------------------------------------------------------------
|
|
261
|
+
def param_buff_rate(param_id)
|
|
262
|
+
@buffs[param_id] * 0.25 + 1.0
|
|
263
|
+
end
|
|
264
|
+
#--------------------------------------------------------------------------
|
|
265
|
+
# * Get Parameter
|
|
266
|
+
#--------------------------------------------------------------------------
|
|
267
|
+
def param(param_id)
|
|
268
|
+
value = param_base(param_id) + param_plus(param_id)
|
|
269
|
+
value *= param_rate(param_id) * param_buff_rate(param_id)
|
|
270
|
+
[[value, param_max(param_id)].min, param_min(param_id)].max.to_i
|
|
271
|
+
end
|
|
272
|
+
#--------------------------------------------------------------------------
|
|
273
|
+
# * Get Ex-Parameter
|
|
274
|
+
#--------------------------------------------------------------------------
|
|
275
|
+
def xparam(xparam_id)
|
|
276
|
+
features_sum(FEATURE_XPARAM, xparam_id)
|
|
277
|
+
end
|
|
278
|
+
#--------------------------------------------------------------------------
|
|
279
|
+
# * Get Sp-Parameter
|
|
280
|
+
#--------------------------------------------------------------------------
|
|
281
|
+
def sparam(sparam_id)
|
|
282
|
+
features_pi(FEATURE_SPARAM, sparam_id)
|
|
283
|
+
end
|
|
284
|
+
#--------------------------------------------------------------------------
|
|
285
|
+
# * Get Element Rate
|
|
286
|
+
#--------------------------------------------------------------------------
|
|
287
|
+
def element_rate(element_id)
|
|
288
|
+
features_pi(FEATURE_ELEMENT_RATE, element_id)
|
|
289
|
+
end
|
|
290
|
+
#--------------------------------------------------------------------------
|
|
291
|
+
# * Get Debuff Rate
|
|
292
|
+
#--------------------------------------------------------------------------
|
|
293
|
+
def debuff_rate(param_id)
|
|
294
|
+
features_pi(FEATURE_DEBUFF_RATE, param_id)
|
|
295
|
+
end
|
|
296
|
+
#--------------------------------------------------------------------------
|
|
297
|
+
# * Get State Rate
|
|
298
|
+
#--------------------------------------------------------------------------
|
|
299
|
+
def state_rate(state_id)
|
|
300
|
+
features_pi(FEATURE_STATE_RATE, state_id)
|
|
301
|
+
end
|
|
302
|
+
#--------------------------------------------------------------------------
|
|
303
|
+
# * Get Array of States to Resist
|
|
304
|
+
#--------------------------------------------------------------------------
|
|
305
|
+
def state_resist_set
|
|
306
|
+
features_set(FEATURE_STATE_RESIST)
|
|
307
|
+
end
|
|
308
|
+
#--------------------------------------------------------------------------
|
|
309
|
+
# * Determine if State Is Resisted
|
|
310
|
+
#--------------------------------------------------------------------------
|
|
311
|
+
def state_resist?(state_id)
|
|
312
|
+
state_resist_set.include?(state_id)
|
|
313
|
+
end
|
|
314
|
+
#--------------------------------------------------------------------------
|
|
315
|
+
# * Get Attack Element
|
|
316
|
+
#--------------------------------------------------------------------------
|
|
317
|
+
def atk_elements
|
|
318
|
+
features_set(FEATURE_ATK_ELEMENT)
|
|
319
|
+
end
|
|
320
|
+
#--------------------------------------------------------------------------
|
|
321
|
+
# * Get Attack State
|
|
322
|
+
#--------------------------------------------------------------------------
|
|
323
|
+
def atk_states
|
|
324
|
+
features_set(FEATURE_ATK_STATE)
|
|
325
|
+
end
|
|
326
|
+
#--------------------------------------------------------------------------
|
|
327
|
+
# * Get Attack State Invocation Rate
|
|
328
|
+
#--------------------------------------------------------------------------
|
|
329
|
+
def atk_states_rate(state_id)
|
|
330
|
+
features_sum(FEATURE_ATK_STATE, state_id)
|
|
331
|
+
end
|
|
332
|
+
#--------------------------------------------------------------------------
|
|
333
|
+
# * Get Attack Speed
|
|
334
|
+
#--------------------------------------------------------------------------
|
|
335
|
+
def atk_speed
|
|
336
|
+
features_sum_all(FEATURE_ATK_SPEED)
|
|
337
|
+
end
|
|
338
|
+
#--------------------------------------------------------------------------
|
|
339
|
+
# * Get Additional Attack Times
|
|
340
|
+
#--------------------------------------------------------------------------
|
|
341
|
+
def atk_times_add
|
|
342
|
+
[features_sum_all(FEATURE_ATK_TIMES), 0].max
|
|
343
|
+
end
|
|
344
|
+
#--------------------------------------------------------------------------
|
|
345
|
+
# * Get Added Skill Types
|
|
346
|
+
#--------------------------------------------------------------------------
|
|
347
|
+
def added_skill_types
|
|
348
|
+
features_set(FEATURE_STYPE_ADD)
|
|
349
|
+
end
|
|
350
|
+
#--------------------------------------------------------------------------
|
|
351
|
+
# * Determine if Skill Type Is Disabled
|
|
352
|
+
#--------------------------------------------------------------------------
|
|
353
|
+
def skill_type_sealed?(stype_id)
|
|
354
|
+
features_set(FEATURE_STYPE_SEAL).include?(stype_id)
|
|
355
|
+
end
|
|
356
|
+
#--------------------------------------------------------------------------
|
|
357
|
+
# * Get Added Skills
|
|
358
|
+
#--------------------------------------------------------------------------
|
|
359
|
+
def added_skills
|
|
360
|
+
features_set(FEATURE_SKILL_ADD)
|
|
361
|
+
end
|
|
362
|
+
#--------------------------------------------------------------------------
|
|
363
|
+
# * Determine if Skill Is Disabled
|
|
364
|
+
#--------------------------------------------------------------------------
|
|
365
|
+
def skill_sealed?(skill_id)
|
|
366
|
+
features_set(FEATURE_SKILL_SEAL).include?(skill_id)
|
|
367
|
+
end
|
|
368
|
+
#--------------------------------------------------------------------------
|
|
369
|
+
# * Determine if Weapon Can Be Equipped
|
|
370
|
+
#--------------------------------------------------------------------------
|
|
371
|
+
def equip_wtype_ok?(wtype_id)
|
|
372
|
+
features_set(FEATURE_EQUIP_WTYPE).include?(wtype_id)
|
|
373
|
+
end
|
|
374
|
+
#--------------------------------------------------------------------------
|
|
375
|
+
# * Determine if Armor Can Be Equipped
|
|
376
|
+
#--------------------------------------------------------------------------
|
|
377
|
+
def equip_atype_ok?(atype_id)
|
|
378
|
+
features_set(FEATURE_EQUIP_ATYPE).include?(atype_id)
|
|
379
|
+
end
|
|
380
|
+
#--------------------------------------------------------------------------
|
|
381
|
+
# * Determine if Equipment Is Locked
|
|
382
|
+
#--------------------------------------------------------------------------
|
|
383
|
+
def equip_type_fixed?(etype_id)
|
|
384
|
+
features_set(FEATURE_EQUIP_FIX).include?(etype_id)
|
|
385
|
+
end
|
|
386
|
+
#--------------------------------------------------------------------------
|
|
387
|
+
# * Determine if Equipment Is Sealed
|
|
388
|
+
#--------------------------------------------------------------------------
|
|
389
|
+
def equip_type_sealed?(etype_id)
|
|
390
|
+
features_set(FEATURE_EQUIP_SEAL).include?(etype_id)
|
|
391
|
+
end
|
|
392
|
+
#--------------------------------------------------------------------------
|
|
393
|
+
# * Get Slot Type
|
|
394
|
+
#--------------------------------------------------------------------------
|
|
395
|
+
def slot_type
|
|
396
|
+
features_set(FEATURE_SLOT_TYPE).max || 0
|
|
397
|
+
end
|
|
398
|
+
#--------------------------------------------------------------------------
|
|
399
|
+
# * Determine if Dual Wield
|
|
400
|
+
#--------------------------------------------------------------------------
|
|
401
|
+
def dual_wield?
|
|
402
|
+
slot_type == 1
|
|
403
|
+
end
|
|
404
|
+
#--------------------------------------------------------------------------
|
|
405
|
+
# * Get Array of Additional Action Time Probabilities
|
|
406
|
+
#--------------------------------------------------------------------------
|
|
407
|
+
def action_plus_set
|
|
408
|
+
features(FEATURE_ACTION_PLUS).collect {|ft| ft.value }
|
|
409
|
+
end
|
|
410
|
+
#--------------------------------------------------------------------------
|
|
411
|
+
# * Determine if Special Flag
|
|
412
|
+
#--------------------------------------------------------------------------
|
|
413
|
+
def special_flag(flag_id)
|
|
414
|
+
features(FEATURE_SPECIAL_FLAG).any? {|ft| ft.data_id == flag_id }
|
|
415
|
+
end
|
|
416
|
+
#--------------------------------------------------------------------------
|
|
417
|
+
# * Get Collapse Effect
|
|
418
|
+
#--------------------------------------------------------------------------
|
|
419
|
+
def collapse_type
|
|
420
|
+
features_set(FEATURE_COLLAPSE_TYPE).max || 0
|
|
421
|
+
end
|
|
422
|
+
#--------------------------------------------------------------------------
|
|
423
|
+
# * Determine Party Ability
|
|
424
|
+
#--------------------------------------------------------------------------
|
|
425
|
+
def party_ability(ability_id)
|
|
426
|
+
features(FEATURE_PARTY_ABILITY).any? {|ft| ft.data_id == ability_id }
|
|
427
|
+
end
|
|
428
|
+
#--------------------------------------------------------------------------
|
|
429
|
+
# * Determine if Auto Battle
|
|
430
|
+
#--------------------------------------------------------------------------
|
|
431
|
+
def auto_battle?
|
|
432
|
+
special_flag(FLAG_ID_AUTO_BATTLE)
|
|
433
|
+
end
|
|
434
|
+
#--------------------------------------------------------------------------
|
|
435
|
+
# * Determine if Guard
|
|
436
|
+
#--------------------------------------------------------------------------
|
|
437
|
+
def guard?
|
|
438
|
+
special_flag(FLAG_ID_GUARD) && movable?
|
|
439
|
+
end
|
|
440
|
+
#--------------------------------------------------------------------------
|
|
441
|
+
# * Determine if Substitute
|
|
442
|
+
#--------------------------------------------------------------------------
|
|
443
|
+
def substitute?
|
|
444
|
+
special_flag(FLAG_ID_SUBSTITUTE) && movable?
|
|
445
|
+
end
|
|
446
|
+
#--------------------------------------------------------------------------
|
|
447
|
+
# * Determine if Preserve TP
|
|
448
|
+
#--------------------------------------------------------------------------
|
|
449
|
+
def preserve_tp?
|
|
450
|
+
special_flag(FLAG_ID_PRESERVE_TP)
|
|
451
|
+
end
|
|
452
|
+
#--------------------------------------------------------------------------
|
|
453
|
+
# * Increase Parameter
|
|
454
|
+
#--------------------------------------------------------------------------
|
|
455
|
+
def add_param(param_id, value)
|
|
456
|
+
@param_plus[param_id] += value
|
|
457
|
+
refresh
|
|
458
|
+
end
|
|
459
|
+
#--------------------------------------------------------------------------
|
|
460
|
+
# * Change HP
|
|
461
|
+
#--------------------------------------------------------------------------
|
|
462
|
+
def hp=(hp)
|
|
463
|
+
@hp = hp
|
|
464
|
+
refresh
|
|
465
|
+
end
|
|
466
|
+
#--------------------------------------------------------------------------
|
|
467
|
+
# * Change MP
|
|
468
|
+
#--------------------------------------------------------------------------
|
|
469
|
+
def mp=(mp)
|
|
470
|
+
@mp = mp
|
|
471
|
+
refresh
|
|
472
|
+
end
|
|
473
|
+
#--------------------------------------------------------------------------
|
|
474
|
+
# * Change HP (for Events)
|
|
475
|
+
# value: Amount of increase/decrease
|
|
476
|
+
# enable_death: Allow knockout
|
|
477
|
+
#--------------------------------------------------------------------------
|
|
478
|
+
def change_hp(value, enable_death)
|
|
479
|
+
if !enable_death && @hp + value <= 0
|
|
480
|
+
self.hp = 1
|
|
481
|
+
else
|
|
482
|
+
self.hp += value
|
|
483
|
+
end
|
|
484
|
+
end
|
|
485
|
+
#--------------------------------------------------------------------------
|
|
486
|
+
# * Change TP
|
|
487
|
+
#--------------------------------------------------------------------------
|
|
488
|
+
def tp=(tp)
|
|
489
|
+
@tp = [[tp, max_tp].min, 0].max
|
|
490
|
+
end
|
|
491
|
+
#--------------------------------------------------------------------------
|
|
492
|
+
# * Get Maximum Value of TP
|
|
493
|
+
#--------------------------------------------------------------------------
|
|
494
|
+
def max_tp
|
|
495
|
+
return 100
|
|
496
|
+
end
|
|
497
|
+
#--------------------------------------------------------------------------
|
|
498
|
+
# * Refresh
|
|
499
|
+
#--------------------------------------------------------------------------
|
|
500
|
+
def refresh
|
|
501
|
+
state_resist_set.each {|state_id| erase_state(state_id) }
|
|
502
|
+
@hp = [[@hp, mhp].min, 0].max
|
|
503
|
+
@mp = [[@mp, mmp].min, 0].max
|
|
504
|
+
@hp == 0 ? add_state(death_state_id) : remove_state(death_state_id)
|
|
505
|
+
end
|
|
506
|
+
#--------------------------------------------------------------------------
|
|
507
|
+
# * Recover All
|
|
508
|
+
#--------------------------------------------------------------------------
|
|
509
|
+
def recover_all
|
|
510
|
+
clear_states
|
|
511
|
+
@hp = mhp
|
|
512
|
+
@mp = mmp
|
|
513
|
+
end
|
|
514
|
+
#--------------------------------------------------------------------------
|
|
515
|
+
# * Get Percentage of HP
|
|
516
|
+
#--------------------------------------------------------------------------
|
|
517
|
+
def hp_rate
|
|
518
|
+
@hp.to_f / mhp
|
|
519
|
+
end
|
|
520
|
+
#--------------------------------------------------------------------------
|
|
521
|
+
# * Get Percentage of MP
|
|
522
|
+
#--------------------------------------------------------------------------
|
|
523
|
+
def mp_rate
|
|
524
|
+
mmp > 0 ? @mp.to_f / mmp : 0
|
|
525
|
+
end
|
|
526
|
+
#--------------------------------------------------------------------------
|
|
527
|
+
# * Get Percentage of TP
|
|
528
|
+
#--------------------------------------------------------------------------
|
|
529
|
+
def tp_rate
|
|
530
|
+
@tp.to_f / 100
|
|
531
|
+
end
|
|
532
|
+
#--------------------------------------------------------------------------
|
|
533
|
+
# * Hide
|
|
534
|
+
#--------------------------------------------------------------------------
|
|
535
|
+
def hide
|
|
536
|
+
@hidden = true
|
|
537
|
+
end
|
|
538
|
+
#--------------------------------------------------------------------------
|
|
539
|
+
# * Appear
|
|
540
|
+
#--------------------------------------------------------------------------
|
|
541
|
+
def appear
|
|
542
|
+
@hidden = false
|
|
543
|
+
end
|
|
544
|
+
#--------------------------------------------------------------------------
|
|
545
|
+
# * Get Hide State
|
|
546
|
+
#--------------------------------------------------------------------------
|
|
547
|
+
def hidden?
|
|
548
|
+
@hidden
|
|
549
|
+
end
|
|
550
|
+
#--------------------------------------------------------------------------
|
|
551
|
+
# * Determine Existence
|
|
552
|
+
#--------------------------------------------------------------------------
|
|
553
|
+
def exist?
|
|
554
|
+
!hidden?
|
|
555
|
+
end
|
|
556
|
+
#--------------------------------------------------------------------------
|
|
557
|
+
# * Determine Incapacitation
|
|
558
|
+
#--------------------------------------------------------------------------
|
|
559
|
+
def dead?
|
|
560
|
+
exist? && death_state?
|
|
561
|
+
end
|
|
562
|
+
#--------------------------------------------------------------------------
|
|
563
|
+
# * Determine Survival
|
|
564
|
+
#--------------------------------------------------------------------------
|
|
565
|
+
def alive?
|
|
566
|
+
exist? && !death_state?
|
|
567
|
+
end
|
|
568
|
+
#--------------------------------------------------------------------------
|
|
569
|
+
# * Determine Normality
|
|
570
|
+
#--------------------------------------------------------------------------
|
|
571
|
+
def normal?
|
|
572
|
+
exist? && restriction == 0
|
|
573
|
+
end
|
|
574
|
+
#--------------------------------------------------------------------------
|
|
575
|
+
# * Determine if Command is Inputable
|
|
576
|
+
#--------------------------------------------------------------------------
|
|
577
|
+
def inputable?
|
|
578
|
+
normal? && !auto_battle?
|
|
579
|
+
end
|
|
580
|
+
#--------------------------------------------------------------------------
|
|
581
|
+
# * Determine if Action is Possible
|
|
582
|
+
#--------------------------------------------------------------------------
|
|
583
|
+
def movable?
|
|
584
|
+
exist? && restriction < 4
|
|
585
|
+
end
|
|
586
|
+
#--------------------------------------------------------------------------
|
|
587
|
+
# * Determine if Character is Confused
|
|
588
|
+
#--------------------------------------------------------------------------
|
|
589
|
+
def confusion?
|
|
590
|
+
exist? && restriction >= 1 && restriction <= 3
|
|
591
|
+
end
|
|
592
|
+
#--------------------------------------------------------------------------
|
|
593
|
+
# * Get Confusion Level
|
|
594
|
+
#--------------------------------------------------------------------------
|
|
595
|
+
def confusion_level
|
|
596
|
+
confusion? ? restriction : 0
|
|
597
|
+
end
|
|
598
|
+
#--------------------------------------------------------------------------
|
|
599
|
+
# * Determine if Actor or Not
|
|
600
|
+
#--------------------------------------------------------------------------
|
|
601
|
+
def actor?
|
|
602
|
+
return false
|
|
603
|
+
end
|
|
604
|
+
#--------------------------------------------------------------------------
|
|
605
|
+
# * Determine if Enemy
|
|
606
|
+
#--------------------------------------------------------------------------
|
|
607
|
+
def enemy?
|
|
608
|
+
return false
|
|
609
|
+
end
|
|
610
|
+
#--------------------------------------------------------------------------
|
|
611
|
+
# * Sorting States
|
|
612
|
+
# Sort the content of the @states array, with higher priority states
|
|
613
|
+
# coming first.
|
|
614
|
+
#--------------------------------------------------------------------------
|
|
615
|
+
def sort_states
|
|
616
|
+
@states = @states.sort_by {|id| [-$data_states[id].priority, id] }
|
|
617
|
+
end
|
|
618
|
+
#--------------------------------------------------------------------------
|
|
619
|
+
# * Get Restriction
|
|
620
|
+
# Get the largest restriction from the currently added states.
|
|
621
|
+
#--------------------------------------------------------------------------
|
|
622
|
+
def restriction
|
|
623
|
+
states.collect {|state| state.restriction }.push(0).max
|
|
624
|
+
end
|
|
625
|
+
#--------------------------------------------------------------------------
|
|
626
|
+
# * Get Most Important State Continuation Message
|
|
627
|
+
#--------------------------------------------------------------------------
|
|
628
|
+
def most_important_state_text
|
|
629
|
+
states.each {|state| return state.message3 unless state.message3.empty? }
|
|
630
|
+
return ""
|
|
631
|
+
end
|
|
632
|
+
#--------------------------------------------------------------------------
|
|
633
|
+
# * Determine if Skill-Required Weapon Is Equipped
|
|
634
|
+
#--------------------------------------------------------------------------
|
|
635
|
+
def skill_wtype_ok?(skill)
|
|
636
|
+
return true
|
|
637
|
+
end
|
|
638
|
+
#--------------------------------------------------------------------------
|
|
639
|
+
# * Calculate Skill's MP Cost
|
|
640
|
+
#--------------------------------------------------------------------------
|
|
641
|
+
def skill_mp_cost(skill)
|
|
642
|
+
(skill.mp_cost * mcr).to_i
|
|
643
|
+
end
|
|
644
|
+
#--------------------------------------------------------------------------
|
|
645
|
+
# * Calculate Skill's TP Cost
|
|
646
|
+
#--------------------------------------------------------------------------
|
|
647
|
+
def skill_tp_cost(skill)
|
|
648
|
+
skill.tp_cost
|
|
649
|
+
end
|
|
650
|
+
#--------------------------------------------------------------------------
|
|
651
|
+
# * Determine if Cost of Using Skill Can Be Paid
|
|
652
|
+
#--------------------------------------------------------------------------
|
|
653
|
+
def skill_cost_payable?(skill)
|
|
654
|
+
tp >= skill_tp_cost(skill) && mp >= skill_mp_cost(skill)
|
|
655
|
+
end
|
|
656
|
+
#--------------------------------------------------------------------------
|
|
657
|
+
# * Pay Cost of Using Skill
|
|
658
|
+
#--------------------------------------------------------------------------
|
|
659
|
+
def pay_skill_cost(skill)
|
|
660
|
+
self.mp -= skill_mp_cost(skill)
|
|
661
|
+
self.tp -= skill_tp_cost(skill)
|
|
662
|
+
end
|
|
663
|
+
#--------------------------------------------------------------------------
|
|
664
|
+
# * Check When Skill/Item Can Be Used
|
|
665
|
+
#--------------------------------------------------------------------------
|
|
666
|
+
def occasion_ok?(item)
|
|
667
|
+
$game_party.in_battle ? item.battle_ok? : item.menu_ok?
|
|
668
|
+
end
|
|
669
|
+
#--------------------------------------------------------------------------
|
|
670
|
+
# * Check Common Usability Conditions for Skill/Item
|
|
671
|
+
#--------------------------------------------------------------------------
|
|
672
|
+
def usable_item_conditions_met?(item)
|
|
673
|
+
movable? && occasion_ok?(item)
|
|
674
|
+
end
|
|
675
|
+
#--------------------------------------------------------------------------
|
|
676
|
+
# * Check Usability Conditions for Skill
|
|
677
|
+
#--------------------------------------------------------------------------
|
|
678
|
+
def skill_conditions_met?(skill)
|
|
679
|
+
usable_item_conditions_met?(skill) &&
|
|
680
|
+
skill_wtype_ok?(skill) && skill_cost_payable?(skill) &&
|
|
681
|
+
!skill_sealed?(skill.id) && !skill_type_sealed?(skill.stype_id)
|
|
682
|
+
end
|
|
683
|
+
#--------------------------------------------------------------------------
|
|
684
|
+
# * Check Usability Conditions for Item
|
|
685
|
+
#--------------------------------------------------------------------------
|
|
686
|
+
def item_conditions_met?(item)
|
|
687
|
+
usable_item_conditions_met?(item) && $game_party.has_item?(item)
|
|
688
|
+
end
|
|
689
|
+
#--------------------------------------------------------------------------
|
|
690
|
+
# * Determine Skill/Item Usability
|
|
691
|
+
#--------------------------------------------------------------------------
|
|
692
|
+
def usable?(item)
|
|
693
|
+
return skill_conditions_met?(item) if item.is_a?(RPG::Skill)
|
|
694
|
+
return item_conditions_met?(item) if item.is_a?(RPG::Item)
|
|
695
|
+
return false
|
|
696
|
+
end
|
|
697
|
+
#--------------------------------------------------------------------------
|
|
698
|
+
# * Determine if Equippable
|
|
699
|
+
#--------------------------------------------------------------------------
|
|
700
|
+
def equippable?(item)
|
|
701
|
+
return false unless item.is_a?(RPG::EquipItem)
|
|
702
|
+
return false if equip_type_sealed?(item.etype_id)
|
|
703
|
+
return equip_wtype_ok?(item.wtype_id) if item.is_a?(RPG::Weapon)
|
|
704
|
+
return equip_atype_ok?(item.atype_id) if item.is_a?(RPG::Armor)
|
|
705
|
+
return false
|
|
706
|
+
end
|
|
707
|
+
#--------------------------------------------------------------------------
|
|
708
|
+
# * Get Skill ID of Normal Attack
|
|
709
|
+
#--------------------------------------------------------------------------
|
|
710
|
+
def attack_skill_id
|
|
711
|
+
return 1
|
|
712
|
+
end
|
|
713
|
+
#--------------------------------------------------------------------------
|
|
714
|
+
# * Get Skill ID of Guard
|
|
715
|
+
#--------------------------------------------------------------------------
|
|
716
|
+
def guard_skill_id
|
|
717
|
+
return 2
|
|
718
|
+
end
|
|
719
|
+
#--------------------------------------------------------------------------
|
|
720
|
+
# * Determine Usability of Normal Attack
|
|
721
|
+
#--------------------------------------------------------------------------
|
|
722
|
+
def attack_usable?
|
|
723
|
+
usable?($data_skills[attack_skill_id])
|
|
724
|
+
end
|
|
725
|
+
#--------------------------------------------------------------------------
|
|
726
|
+
# * Determine Usability of Guard
|
|
727
|
+
#--------------------------------------------------------------------------
|
|
728
|
+
def guard_usable?
|
|
729
|
+
usable?($data_skills[guard_skill_id])
|
|
730
|
+
end
|
|
731
|
+
end
|