rgss3_default_scripts 1.0.2
Sign up to get free protection for your applications and to get access to all the features.
- 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,38 @@
|
|
1
|
+
#==============================================================================
|
2
|
+
# ** Window_BattleActor
|
3
|
+
#------------------------------------------------------------------------------
|
4
|
+
# This window is for selecting an actor's action target on the battle screen.
|
5
|
+
#==============================================================================
|
6
|
+
|
7
|
+
class Window_BattleActor < Window_BattleStatus
|
8
|
+
#--------------------------------------------------------------------------
|
9
|
+
# * Object Initialization
|
10
|
+
# info_viewport : Viewport for displaying information
|
11
|
+
#--------------------------------------------------------------------------
|
12
|
+
def initialize(info_viewport)
|
13
|
+
super()
|
14
|
+
self.y = info_viewport.rect.y
|
15
|
+
self.visible = false
|
16
|
+
self.openness = 255
|
17
|
+
@info_viewport = info_viewport
|
18
|
+
end
|
19
|
+
#--------------------------------------------------------------------------
|
20
|
+
# * Show Window
|
21
|
+
#--------------------------------------------------------------------------
|
22
|
+
def show
|
23
|
+
if @info_viewport
|
24
|
+
width_remain = Graphics.width - width
|
25
|
+
self.x = width_remain
|
26
|
+
@info_viewport.rect.width = width_remain
|
27
|
+
select(0)
|
28
|
+
end
|
29
|
+
super
|
30
|
+
end
|
31
|
+
#--------------------------------------------------------------------------
|
32
|
+
# * Hide Window
|
33
|
+
#--------------------------------------------------------------------------
|
34
|
+
def hide
|
35
|
+
@info_viewport.rect.width = Graphics.width if @info_viewport
|
36
|
+
super
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,70 @@
|
|
1
|
+
#==============================================================================
|
2
|
+
# ** Window_BattleEnemy
|
3
|
+
#------------------------------------------------------------------------------
|
4
|
+
# Window for selecting the enemy who is the action target on the battle
|
5
|
+
# screen.
|
6
|
+
#==============================================================================
|
7
|
+
|
8
|
+
class Window_BattleEnemy < Window_Selectable
|
9
|
+
#--------------------------------------------------------------------------
|
10
|
+
# * Object Initialization
|
11
|
+
# info_viewport : Viewport for displaying information
|
12
|
+
#--------------------------------------------------------------------------
|
13
|
+
def initialize(info_viewport)
|
14
|
+
super(0, info_viewport.rect.y, window_width, fitting_height(4))
|
15
|
+
refresh
|
16
|
+
self.visible = false
|
17
|
+
@info_viewport = info_viewport
|
18
|
+
end
|
19
|
+
#--------------------------------------------------------------------------
|
20
|
+
# * Get Window Width
|
21
|
+
#--------------------------------------------------------------------------
|
22
|
+
def window_width
|
23
|
+
Graphics.width - 128
|
24
|
+
end
|
25
|
+
#--------------------------------------------------------------------------
|
26
|
+
# * Get Digit Count
|
27
|
+
#--------------------------------------------------------------------------
|
28
|
+
def col_max
|
29
|
+
return 2
|
30
|
+
end
|
31
|
+
#--------------------------------------------------------------------------
|
32
|
+
# * Get Number of Items
|
33
|
+
#--------------------------------------------------------------------------
|
34
|
+
def item_max
|
35
|
+
$game_troop.alive_members.size
|
36
|
+
end
|
37
|
+
#--------------------------------------------------------------------------
|
38
|
+
# * Get Enemy Object
|
39
|
+
#--------------------------------------------------------------------------
|
40
|
+
def enemy
|
41
|
+
$game_troop.alive_members[@index]
|
42
|
+
end
|
43
|
+
#--------------------------------------------------------------------------
|
44
|
+
# * Draw Item
|
45
|
+
#--------------------------------------------------------------------------
|
46
|
+
def draw_item(index)
|
47
|
+
change_color(normal_color)
|
48
|
+
name = $game_troop.alive_members[index].name
|
49
|
+
draw_text(item_rect_for_text(index), name)
|
50
|
+
end
|
51
|
+
#--------------------------------------------------------------------------
|
52
|
+
# * Show Window
|
53
|
+
#--------------------------------------------------------------------------
|
54
|
+
def show
|
55
|
+
if @info_viewport
|
56
|
+
width_remain = Graphics.width - width
|
57
|
+
self.x = width_remain
|
58
|
+
@info_viewport.rect.width = width_remain
|
59
|
+
select(0)
|
60
|
+
end
|
61
|
+
super
|
62
|
+
end
|
63
|
+
#--------------------------------------------------------------------------
|
64
|
+
# * Hide Window
|
65
|
+
#--------------------------------------------------------------------------
|
66
|
+
def hide
|
67
|
+
@info_viewport.rect.width = Graphics.width if @info_viewport
|
68
|
+
super
|
69
|
+
end
|
70
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
#==============================================================================
|
2
|
+
# ** Window_BattleItem
|
3
|
+
#------------------------------------------------------------------------------
|
4
|
+
# This window is for selecting items to use in the battle window.
|
5
|
+
#==============================================================================
|
6
|
+
|
7
|
+
class Window_BattleItem < Window_ItemList
|
8
|
+
#--------------------------------------------------------------------------
|
9
|
+
# * Object Initialization
|
10
|
+
# info_viewport : Viewport for displaying information
|
11
|
+
#--------------------------------------------------------------------------
|
12
|
+
def initialize(help_window, info_viewport)
|
13
|
+
y = help_window.height
|
14
|
+
super(0, y, Graphics.width, info_viewport.rect.y - y)
|
15
|
+
self.visible = false
|
16
|
+
@help_window = help_window
|
17
|
+
@info_viewport = info_viewport
|
18
|
+
end
|
19
|
+
#--------------------------------------------------------------------------
|
20
|
+
# * Include in Item List?
|
21
|
+
#--------------------------------------------------------------------------
|
22
|
+
def include?(item)
|
23
|
+
$game_party.usable?(item)
|
24
|
+
end
|
25
|
+
#--------------------------------------------------------------------------
|
26
|
+
# * Show Window
|
27
|
+
#--------------------------------------------------------------------------
|
28
|
+
def show
|
29
|
+
select_last
|
30
|
+
@help_window.show
|
31
|
+
super
|
32
|
+
end
|
33
|
+
#--------------------------------------------------------------------------
|
34
|
+
# * Hide Window
|
35
|
+
#--------------------------------------------------------------------------
|
36
|
+
def hide
|
37
|
+
@help_window.hide
|
38
|
+
super
|
39
|
+
end
|
40
|
+
end
|
@@ -0,0 +1,425 @@
|
|
1
|
+
#==============================================================================
|
2
|
+
# ** Window_BattleLog
|
3
|
+
#------------------------------------------------------------------------------
|
4
|
+
# This window is for displaying battle progress. No frame is displayed, but it
|
5
|
+
# is handled as a window for convenience.
|
6
|
+
#==============================================================================
|
7
|
+
|
8
|
+
class Window_BattleLog < Window_Selectable
|
9
|
+
#--------------------------------------------------------------------------
|
10
|
+
# * Object Initialization
|
11
|
+
#--------------------------------------------------------------------------
|
12
|
+
def initialize
|
13
|
+
super(0, 0, window_width, window_height)
|
14
|
+
self.z = 200
|
15
|
+
self.opacity = 0
|
16
|
+
@lines = []
|
17
|
+
@num_wait = 0
|
18
|
+
create_back_bitmap
|
19
|
+
create_back_sprite
|
20
|
+
refresh
|
21
|
+
end
|
22
|
+
#--------------------------------------------------------------------------
|
23
|
+
# * Free
|
24
|
+
#--------------------------------------------------------------------------
|
25
|
+
def dispose
|
26
|
+
super
|
27
|
+
dispose_back_bitmap
|
28
|
+
dispose_back_sprite
|
29
|
+
end
|
30
|
+
#--------------------------------------------------------------------------
|
31
|
+
# * Get Window Width
|
32
|
+
#--------------------------------------------------------------------------
|
33
|
+
def window_width
|
34
|
+
Graphics.width
|
35
|
+
end
|
36
|
+
#--------------------------------------------------------------------------
|
37
|
+
# * Get Window Height
|
38
|
+
#--------------------------------------------------------------------------
|
39
|
+
def window_height
|
40
|
+
fitting_height(max_line_number)
|
41
|
+
end
|
42
|
+
#--------------------------------------------------------------------------
|
43
|
+
# * Get Maximum Number of Lines
|
44
|
+
#--------------------------------------------------------------------------
|
45
|
+
def max_line_number
|
46
|
+
return 6
|
47
|
+
end
|
48
|
+
#--------------------------------------------------------------------------
|
49
|
+
# * Create Background Bitmap
|
50
|
+
#--------------------------------------------------------------------------
|
51
|
+
def create_back_bitmap
|
52
|
+
@back_bitmap = Bitmap.new(width, height)
|
53
|
+
end
|
54
|
+
#--------------------------------------------------------------------------
|
55
|
+
# * Create Background Sprite
|
56
|
+
#--------------------------------------------------------------------------
|
57
|
+
def create_back_sprite
|
58
|
+
@back_sprite = Sprite.new
|
59
|
+
@back_sprite.bitmap = @back_bitmap
|
60
|
+
@back_sprite.y = y
|
61
|
+
@back_sprite.z = z - 1
|
62
|
+
end
|
63
|
+
#--------------------------------------------------------------------------
|
64
|
+
# * Free Background Bitmap
|
65
|
+
#--------------------------------------------------------------------------
|
66
|
+
def dispose_back_bitmap
|
67
|
+
@back_bitmap.dispose
|
68
|
+
end
|
69
|
+
#--------------------------------------------------------------------------
|
70
|
+
# * Free Background Sprite
|
71
|
+
#--------------------------------------------------------------------------
|
72
|
+
def dispose_back_sprite
|
73
|
+
@back_sprite.dispose
|
74
|
+
end
|
75
|
+
#--------------------------------------------------------------------------
|
76
|
+
# * Clear
|
77
|
+
#--------------------------------------------------------------------------
|
78
|
+
def clear
|
79
|
+
@num_wait = 0
|
80
|
+
@lines.clear
|
81
|
+
refresh
|
82
|
+
end
|
83
|
+
#--------------------------------------------------------------------------
|
84
|
+
# * Get Number of Data Lines
|
85
|
+
#--------------------------------------------------------------------------
|
86
|
+
def line_number
|
87
|
+
@lines.size
|
88
|
+
end
|
89
|
+
#--------------------------------------------------------------------------
|
90
|
+
# * Go Back One Line
|
91
|
+
#--------------------------------------------------------------------------
|
92
|
+
def back_one
|
93
|
+
@lines.pop
|
94
|
+
refresh
|
95
|
+
end
|
96
|
+
#--------------------------------------------------------------------------
|
97
|
+
# * Return to Designated Line
|
98
|
+
#--------------------------------------------------------------------------
|
99
|
+
def back_to(line_number)
|
100
|
+
@lines.pop while @lines.size > line_number
|
101
|
+
refresh
|
102
|
+
end
|
103
|
+
#--------------------------------------------------------------------------
|
104
|
+
# * Add Text
|
105
|
+
#--------------------------------------------------------------------------
|
106
|
+
def add_text(text)
|
107
|
+
@lines.push(text)
|
108
|
+
refresh
|
109
|
+
end
|
110
|
+
#--------------------------------------------------------------------------
|
111
|
+
# * Replace Text
|
112
|
+
# Replaces the last line with different text.
|
113
|
+
#--------------------------------------------------------------------------
|
114
|
+
def replace_text(text)
|
115
|
+
@lines.pop
|
116
|
+
@lines.push(text)
|
117
|
+
refresh
|
118
|
+
end
|
119
|
+
#--------------------------------------------------------------------------
|
120
|
+
# * Get Text From Last Line
|
121
|
+
#--------------------------------------------------------------------------
|
122
|
+
def last_text
|
123
|
+
@lines[-1]
|
124
|
+
end
|
125
|
+
#--------------------------------------------------------------------------
|
126
|
+
# * Refresh
|
127
|
+
#--------------------------------------------------------------------------
|
128
|
+
def refresh
|
129
|
+
draw_background
|
130
|
+
contents.clear
|
131
|
+
@lines.size.times {|i| draw_line(i) }
|
132
|
+
end
|
133
|
+
#--------------------------------------------------------------------------
|
134
|
+
# * Draw Background
|
135
|
+
#--------------------------------------------------------------------------
|
136
|
+
def draw_background
|
137
|
+
@back_bitmap.clear
|
138
|
+
@back_bitmap.fill_rect(back_rect, back_color)
|
139
|
+
end
|
140
|
+
#--------------------------------------------------------------------------
|
141
|
+
# * Get Background Rectangle
|
142
|
+
#--------------------------------------------------------------------------
|
143
|
+
def back_rect
|
144
|
+
Rect.new(0, padding, width, line_number * line_height)
|
145
|
+
end
|
146
|
+
#--------------------------------------------------------------------------
|
147
|
+
# * Get Background Color
|
148
|
+
#--------------------------------------------------------------------------
|
149
|
+
def back_color
|
150
|
+
Color.new(0, 0, 0, back_opacity)
|
151
|
+
end
|
152
|
+
#--------------------------------------------------------------------------
|
153
|
+
# * Get Background Opacity
|
154
|
+
#--------------------------------------------------------------------------
|
155
|
+
def back_opacity
|
156
|
+
return 64
|
157
|
+
end
|
158
|
+
#--------------------------------------------------------------------------
|
159
|
+
# * Draw Line
|
160
|
+
#--------------------------------------------------------------------------
|
161
|
+
def draw_line(line_number)
|
162
|
+
rect = item_rect_for_text(line_number)
|
163
|
+
contents.clear_rect(rect)
|
164
|
+
draw_text_ex(rect.x, rect.y, @lines[line_number])
|
165
|
+
end
|
166
|
+
#--------------------------------------------------------------------------
|
167
|
+
# * Set Wait Method
|
168
|
+
#--------------------------------------------------------------------------
|
169
|
+
def method_wait=(method)
|
170
|
+
@method_wait = method
|
171
|
+
end
|
172
|
+
#--------------------------------------------------------------------------
|
173
|
+
# * Set Wait Method for Effect Execution
|
174
|
+
#--------------------------------------------------------------------------
|
175
|
+
def method_wait_for_effect=(method)
|
176
|
+
@method_wait_for_effect = method
|
177
|
+
end
|
178
|
+
#--------------------------------------------------------------------------
|
179
|
+
# * Wait
|
180
|
+
#--------------------------------------------------------------------------
|
181
|
+
def wait
|
182
|
+
@num_wait += 1
|
183
|
+
@method_wait.call(message_speed) if @method_wait
|
184
|
+
end
|
185
|
+
#--------------------------------------------------------------------------
|
186
|
+
# * Wait Until Effect Execution Ends
|
187
|
+
#--------------------------------------------------------------------------
|
188
|
+
def wait_for_effect
|
189
|
+
@method_wait_for_effect.call if @method_wait_for_effect
|
190
|
+
end
|
191
|
+
#--------------------------------------------------------------------------
|
192
|
+
# * Get Message Speed
|
193
|
+
#--------------------------------------------------------------------------
|
194
|
+
def message_speed
|
195
|
+
return 20
|
196
|
+
end
|
197
|
+
#--------------------------------------------------------------------------
|
198
|
+
# * Wait and Clear
|
199
|
+
# Clear after inputing minimum necessary wait for the message to be read.
|
200
|
+
#--------------------------------------------------------------------------
|
201
|
+
def wait_and_clear
|
202
|
+
wait while @num_wait < 2 if line_number > 0
|
203
|
+
clear
|
204
|
+
end
|
205
|
+
#--------------------------------------------------------------------------
|
206
|
+
# * Display Current State
|
207
|
+
#--------------------------------------------------------------------------
|
208
|
+
def display_current_state(subject)
|
209
|
+
unless subject.most_important_state_text.empty?
|
210
|
+
add_text(subject.name + subject.most_important_state_text)
|
211
|
+
wait
|
212
|
+
end
|
213
|
+
end
|
214
|
+
#--------------------------------------------------------------------------
|
215
|
+
# * Display Skill/Item Use
|
216
|
+
#--------------------------------------------------------------------------
|
217
|
+
def display_use_item(subject, item)
|
218
|
+
if item.is_a?(RPG::Skill)
|
219
|
+
add_text(subject.name + item.message1)
|
220
|
+
unless item.message2.empty?
|
221
|
+
wait
|
222
|
+
add_text(item.message2)
|
223
|
+
end
|
224
|
+
else
|
225
|
+
add_text(sprintf(Vocab::UseItem, subject.name, item.name))
|
226
|
+
end
|
227
|
+
end
|
228
|
+
#--------------------------------------------------------------------------
|
229
|
+
# * Display Counterattack
|
230
|
+
#--------------------------------------------------------------------------
|
231
|
+
def display_counter(target, item)
|
232
|
+
Sound.play_evasion
|
233
|
+
add_text(sprintf(Vocab::CounterAttack, target.name))
|
234
|
+
wait
|
235
|
+
back_one
|
236
|
+
end
|
237
|
+
#--------------------------------------------------------------------------
|
238
|
+
# * Display Reflection
|
239
|
+
#--------------------------------------------------------------------------
|
240
|
+
def display_reflection(target, item)
|
241
|
+
Sound.play_reflection
|
242
|
+
add_text(sprintf(Vocab::MagicReflection, target.name))
|
243
|
+
wait
|
244
|
+
back_one
|
245
|
+
end
|
246
|
+
#--------------------------------------------------------------------------
|
247
|
+
# * Display Substitute
|
248
|
+
#--------------------------------------------------------------------------
|
249
|
+
def display_substitute(substitute, target)
|
250
|
+
add_text(sprintf(Vocab::Substitute, substitute.name, target.name))
|
251
|
+
wait
|
252
|
+
back_one
|
253
|
+
end
|
254
|
+
#--------------------------------------------------------------------------
|
255
|
+
# * Display Action Results
|
256
|
+
#--------------------------------------------------------------------------
|
257
|
+
def display_action_results(target, item)
|
258
|
+
if target.result.used
|
259
|
+
last_line_number = line_number
|
260
|
+
display_critical(target, item)
|
261
|
+
display_damage(target, item)
|
262
|
+
display_affected_status(target, item)
|
263
|
+
display_failure(target, item)
|
264
|
+
wait if line_number > last_line_number
|
265
|
+
back_to(last_line_number)
|
266
|
+
end
|
267
|
+
end
|
268
|
+
#--------------------------------------------------------------------------
|
269
|
+
# * Display Failure
|
270
|
+
#--------------------------------------------------------------------------
|
271
|
+
def display_failure(target, item)
|
272
|
+
if target.result.hit? && !target.result.success
|
273
|
+
add_text(sprintf(Vocab::ActionFailure, target.name))
|
274
|
+
wait
|
275
|
+
end
|
276
|
+
end
|
277
|
+
#--------------------------------------------------------------------------
|
278
|
+
# * Display Critical Hit
|
279
|
+
#--------------------------------------------------------------------------
|
280
|
+
def display_critical(target, item)
|
281
|
+
if target.result.critical
|
282
|
+
text = target.actor? ? Vocab::CriticalToActor : Vocab::CriticalToEnemy
|
283
|
+
add_text(text)
|
284
|
+
wait
|
285
|
+
end
|
286
|
+
end
|
287
|
+
#--------------------------------------------------------------------------
|
288
|
+
# * Display Damage
|
289
|
+
#--------------------------------------------------------------------------
|
290
|
+
def display_damage(target, item)
|
291
|
+
if target.result.missed
|
292
|
+
display_miss(target, item)
|
293
|
+
elsif target.result.evaded
|
294
|
+
display_evasion(target, item)
|
295
|
+
else
|
296
|
+
display_hp_damage(target, item)
|
297
|
+
display_mp_damage(target, item)
|
298
|
+
display_tp_damage(target, item)
|
299
|
+
end
|
300
|
+
end
|
301
|
+
#--------------------------------------------------------------------------
|
302
|
+
# * Display Miss
|
303
|
+
#--------------------------------------------------------------------------
|
304
|
+
def display_miss(target, item)
|
305
|
+
if !item || item.physical?
|
306
|
+
fmt = target.actor? ? Vocab::ActorNoHit : Vocab::EnemyNoHit
|
307
|
+
Sound.play_miss
|
308
|
+
else
|
309
|
+
fmt = Vocab::ActionFailure
|
310
|
+
end
|
311
|
+
add_text(sprintf(fmt, target.name))
|
312
|
+
wait
|
313
|
+
end
|
314
|
+
#--------------------------------------------------------------------------
|
315
|
+
# * Display Evasion
|
316
|
+
#--------------------------------------------------------------------------
|
317
|
+
def display_evasion(target, item)
|
318
|
+
if !item || item.physical?
|
319
|
+
fmt = Vocab::Evasion
|
320
|
+
Sound.play_evasion
|
321
|
+
else
|
322
|
+
fmt = Vocab::MagicEvasion
|
323
|
+
Sound.play_magic_evasion
|
324
|
+
end
|
325
|
+
add_text(sprintf(fmt, target.name))
|
326
|
+
wait
|
327
|
+
end
|
328
|
+
#--------------------------------------------------------------------------
|
329
|
+
# * Display HP Damage
|
330
|
+
#--------------------------------------------------------------------------
|
331
|
+
def display_hp_damage(target, item)
|
332
|
+
return if target.result.hp_damage == 0 && item && !item.damage.to_hp?
|
333
|
+
if target.result.hp_damage > 0 && target.result.hp_drain == 0
|
334
|
+
target.perform_damage_effect
|
335
|
+
end
|
336
|
+
Sound.play_recovery if target.result.hp_damage < 0
|
337
|
+
add_text(target.result.hp_damage_text)
|
338
|
+
wait
|
339
|
+
end
|
340
|
+
#--------------------------------------------------------------------------
|
341
|
+
# * Display MP Damage
|
342
|
+
#--------------------------------------------------------------------------
|
343
|
+
def display_mp_damage(target, item)
|
344
|
+
return if target.dead? || target.result.mp_damage == 0
|
345
|
+
Sound.play_recovery if target.result.mp_damage < 0
|
346
|
+
add_text(target.result.mp_damage_text)
|
347
|
+
wait
|
348
|
+
end
|
349
|
+
#--------------------------------------------------------------------------
|
350
|
+
# * Display TP Damage
|
351
|
+
#--------------------------------------------------------------------------
|
352
|
+
def display_tp_damage(target, item)
|
353
|
+
return if target.dead? || target.result.tp_damage == 0
|
354
|
+
Sound.play_recovery if target.result.tp_damage < 0
|
355
|
+
add_text(target.result.tp_damage_text)
|
356
|
+
wait
|
357
|
+
end
|
358
|
+
#--------------------------------------------------------------------------
|
359
|
+
# * Display Affected Status
|
360
|
+
#--------------------------------------------------------------------------
|
361
|
+
def display_affected_status(target, item)
|
362
|
+
if target.result.status_affected?
|
363
|
+
add_text("") if line_number < max_line_number
|
364
|
+
display_changed_states(target)
|
365
|
+
display_changed_buffs(target)
|
366
|
+
back_one if last_text.empty?
|
367
|
+
end
|
368
|
+
end
|
369
|
+
#--------------------------------------------------------------------------
|
370
|
+
# * Display Automatically Affected Status
|
371
|
+
#--------------------------------------------------------------------------
|
372
|
+
def display_auto_affected_status(target)
|
373
|
+
if target.result.status_affected?
|
374
|
+
display_affected_status(target, nil)
|
375
|
+
wait if line_number > 0
|
376
|
+
end
|
377
|
+
end
|
378
|
+
#--------------------------------------------------------------------------
|
379
|
+
# * Display Added/Removed State
|
380
|
+
#--------------------------------------------------------------------------
|
381
|
+
def display_changed_states(target)
|
382
|
+
display_added_states(target)
|
383
|
+
display_removed_states(target)
|
384
|
+
end
|
385
|
+
#--------------------------------------------------------------------------
|
386
|
+
# * Display Added State
|
387
|
+
#--------------------------------------------------------------------------
|
388
|
+
def display_added_states(target)
|
389
|
+
target.result.added_state_objects.each do |state|
|
390
|
+
state_msg = target.actor? ? state.message1 : state.message2
|
391
|
+
target.perform_collapse_effect if state.id == target.death_state_id
|
392
|
+
next if state_msg.empty?
|
393
|
+
replace_text(target.name + state_msg)
|
394
|
+
wait
|
395
|
+
wait_for_effect
|
396
|
+
end
|
397
|
+
end
|
398
|
+
#--------------------------------------------------------------------------
|
399
|
+
# * Display Removed State
|
400
|
+
#--------------------------------------------------------------------------
|
401
|
+
def display_removed_states(target)
|
402
|
+
target.result.removed_state_objects.each do |state|
|
403
|
+
next if state.message4.empty?
|
404
|
+
replace_text(target.name + state.message4)
|
405
|
+
wait
|
406
|
+
end
|
407
|
+
end
|
408
|
+
#--------------------------------------------------------------------------
|
409
|
+
# * Display Buff/Debuff
|
410
|
+
#--------------------------------------------------------------------------
|
411
|
+
def display_changed_buffs(target)
|
412
|
+
display_buffs(target, target.result.added_buffs, Vocab::BuffAdd)
|
413
|
+
display_buffs(target, target.result.added_debuffs, Vocab::DebuffAdd)
|
414
|
+
display_buffs(target, target.result.removed_buffs, Vocab::BuffRemove)
|
415
|
+
end
|
416
|
+
#--------------------------------------------------------------------------
|
417
|
+
# * Display Buff/Debuff (Individual)
|
418
|
+
#--------------------------------------------------------------------------
|
419
|
+
def display_buffs(target, buffs, fmt)
|
420
|
+
buffs.each do |param_id|
|
421
|
+
replace_text(sprintf(fmt, target.name, Vocab::param(param_id)))
|
422
|
+
wait
|
423
|
+
end
|
424
|
+
end
|
425
|
+
end
|