I was wondering how you could go about blinking text in battle. For instance, in battle when a character's turn is up, the actor's battler blinks. I was wondering how I could trigger text to blink the actor's status.
Thanks!
I think Sprite has that method built in.
So, make your text a sprite and then you can flash it with the method like:
@sprite.flash (colour, number of frames)
I'm not sure about that though. Check the help file.
Alright. Sorry to switch things up. But I was thinking of rather scrolling the status.
RMXP is wierd in that it only displays one status that an actor has. I've messed around with RGSS and configured a script that displays every status that an actor has and scrolls through it so that all can be visible.
I've implemented it into my battle system so that upon the actor command window prompting, a window scrolls up (displaying all of the actor's statuses). However, my trouble is that I need it to only display in the area that's designated to the status display (the scrolling window simply scrolls from -50 to the top of the screen). What I need to do is somehow block it from showing everywhere else other than the status window or get it to draw the text only when it is in that designated area.
Any ideas on how to do/fix this?
Here's what it looks like (It's pretty big and btw I have 3 different scripts for each party member but I'm only posting one b/c the rest are more or less verbatum):
[Spoiler="Scrolling Status"]#=====================================================
# * Scrolling Status v 1.0
#=====================================================
#===============================================================================
#===============================================================================
# Actor 0
#===============================================================================
#===============================================================================
class Scrolling_Status0 < Window_Base
def initialize
super(186,350,120,512)
if self.x == 186
actor = $game_party.actors[0]
end
self.z = 9999 + 10
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Arial"
self.contents.font.bold = true
self.contents.font.size = 14
states_total = 0
@text_ready = {100 => 'Ready'} if not actor.states.include?(1)
@text1 = {101 => $data_states[2].name} if actor.states.include?(2)
@text2 = {102 => $data_states[3].name}if actor.states.include?(3)
@text3 = {103 => $data_states[4].name}if actor.states.include?(4)
@text4 = {104 => $data_states[5].name}if actor.states.include?(5)
@text5 = {105 => $data_states[6].name}if actor.states.include?(6)
@text6 = {106 => $data_states[7].name}if actor.states.include?(7)
@text7 = {107 => $data_states[8].name}if actor.states.include?(8)
@text8 = {108 => $data_states[9].name}if actor.states.include?(9)
@text9 = {109 => $data_states[10].name}if actor.states.include?(10)
@text10 = {110 => $data_states[11].name}if actor.states.include?(11)
@text11 = {111 => $data_states[12].name}if actor.states.include?(12)
@text12 = {112 => $data_states[13].name}if actor.states.include?(13)
@text13 = {113 => $data_states[14].name}if actor.states.include?(14)
@text14 = {114 => $data_states[15].name}if actor.states.include?(15)
@text15 = {115 => $data_states[16].name}if actor.states.include?(16)
@text16 = {116 => $data_states[17].name}if actor.states.include?(17)
@text17 = {117 => $data_states[18].name}if actor.states.include?(18)
@text18 = {118 => $data_states[19].name}if actor.states.include?(19)
@text19 = {119 => $data_states[20].name}if actor.states.include?(20)
@text20 = {120 => $data_states[21].name}if actor.states.include?(21)
@text21 = {121 => $data_states[22].name}if actor.states.include?(22)
@text22 = {122 => $data_states[23].name}if actor.states.include?(23)
@text23 = {123 => $data_states[24].name}if actor.states.include?(24)
@text24 = {124 => $data_states[25].name}if actor.states.include?(25)
@text25 = {125 => $data_states[26].name}if actor.states.include?(26)
@text26 = {126 => $data_states[27].name}if actor.states.include?(27)
@text27 = {127 => $data_states[28].name}if actor.states.include?(28)
@text28 = {128 => $data_states[29].name}if actor.states.include?(29)
@text29 = {129 => $data_states[30].name}if actor.states.include?(30)
@text30 = {130 => $data_states[31].name}if actor.states.include?(31)
@text31 = {131 => $data_states[32].name}if actor.states.include?(32)
@text32 = {132 => $data_states[33].name}if actor.states.include?(33)
@text33 = {133 => $data_states[34].name}if actor.states.include?(34)
#
y = -24
#
if not actor.states.include?(1)
@text_ready.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(2)
@text1.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(3)
@text2.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(4)
@text3.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(5)
@text4.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(6)
@text5.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(7)
@text6.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(8)
@text7.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(9)
@text8.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(10)
@text9.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(11)
@text10.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(12)
@text11.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(13)
@text12.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(14)
@text13.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(15)
@text14.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(16)
@text15.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(17)
@text16.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(18)
@text17.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(19)
@text18.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(20)
@text19.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(21)
@text20.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(22)
@text21.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(23)
@text22.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(24)
@text23.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(25)
@text24.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(26)
@text25.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(27)
@text26.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(28)
@text27.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(29)
@text28.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(30)
@text29.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(31)
@text30.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(32)
@text31.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(33)
@text32.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
if actor.states.include?(34)
@text33.sort.each do |keys, values|
y += 24
self.contents.draw_text(0,y,488,24, values)
end
states_total += 1
end
self.opacity = 255
self.height = (states_total * 24) + 24
refresh
end
def refresh
self.y -= 1 if self.y > -(self.height)
end
end
#===============================================================================
#===============================================================================
# Actor 0
#===============================================================================
#===============================================================================
This will scroll the text(Although I don't think it'll help fix my problem & it's not how I use it in battle)
[/Spoiler]
[Spoiler="Scroll Status"]class Scroll_Status
def main
#@sprite = Sprite.new
#@sprite.bitmap = RPG::Cache.picture('scrollingtext')
@scroll_window = Scrolling_Status0.new(@actor)
@scroll_window.y = 480
@scroll_repeat = 0
# Execute transition
Graphics.transition
# Main loop
loop do
# Update game screen
Graphics.update
# Update input information
Input.update
# Frame update
update
# Abort loop if screen is changed
if $scene != self
break
end
end
# Prepare for transition
Graphics.freeze
# Dispose of windows
@scroll_window.dispose
#@sprite.dispose
#@sprite.bitmap.dispose
end
def update
# Update windows
@scroll_window.refresh
# if actor != actor
if (@scroll_window.y == -600) and (@scroll_repeat == 2)#512
$scene = Scene_Map.new
elsif (@scroll_window.y == -600)
@scroll_window.y = 480
@scroll_repeat += 1
end
# end
end
end[/spoiler]