Melosx 27 Posted March 4, 2012 (edited) STR33g1_Battle Status 0.5 VXAce Version Original VX Version Author: Star (website) Introduction I've converted this script for VXAce and added the TP info. Features  ・Different HP/MP/TP Gauge Flavor  ・"Rolling" Numbers  ・State Icon Cycle Screenshots How to Use Copy the script under Materials and above Main... You need some images in Graphics/System folder that are in the attached rar. RAR Script #============================================================================== # ★RGSS2 # STR33g1_Battle Status 0.5 08/03/20 # VXAce Version by Melosx 12/03/04 # # ・STR11e has the same specifications. # ★STR11eã®å¾Œä»˜ã‚²ãƒ¼ã‚¸ãƒ—ラグインを利用ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ #  ã“ã®ã‚¹ã‚¯ãƒªãƒ—トより下ã«å°Žå…¥ã—ã¦ãã ã•ã„。 # # â—‡Features # ・Different HP/MP/TP Gauge Flavor # ・"Rolling" Numbers # ・State Icon Cycle # # â—‡Materials # This script requires several image skins. # Skin images are placed in the .Graphics\System folder. # # ・Main Skin #  HP/MP Back Gauge Skin #  No size limit. # ・HP/MP Gauge #  Normally two gauges #   Width = Unlimited #  Height = Gauge Height(Optional) * 2 #  一列目ã«é€šå¸¸ã‚²ãƒ¼ã‚¸ã€äºŒåˆ—ç›®ã«è¿½å°¾ã‚²ãƒ¼ã‚¸ã‚’é…ç½®ã—ã¾ã™ã€‚ # ・Numbers #  0123456789 is the order of number arrays #   Width = One Frame Width(Any Size) * 10 #  Height = Unlimited # ・State Skin #  State Icon Main Skin #  ãªã«ã‚‚ã‚¹ãƒ†ãƒ¼ãƒˆãŒæŽ›ã‹ã£ã¦ã„ãªã„時ã¯éžè¡¨ç¤ºã«ãªã‚‹ä»•様ã®ç‚ºã€ #  Main skin is separate. #  No size limit. # #============================================================================== # â– Window_BattleStatus #============================================================================== class Window_BattleStatus < Window_Selectable # Skin File name BTSKIN_00 = "Btskin_main" # Main Skin BTSKIN_01 = "Btskin_hp" # HP(Gauge) BTSKIN_02 = "Btskin_mp" # MP(Gauge) BTSKIN_07 = "Btskin_tp" # TP(gauge) BTSKIN_04 = "Btskin_n00" # HP(Numbers) BTSKIN_05 = "Btskin_n01" # MP(Numbers) BTSKIN_08 = "Btskin_n02" # TP(Numbers) BTSKIN_03 = "Btskin_state" # State # Skin coordinates[ x, y] BTSKIN_B_XY = [ -5, 3] # Standard Coordinates BTSKIN_00XY = [ 0, 0] # Main Skin BTSKIN_01XY = [157, 14] # HP(Gauge) BTSKIN_02XY = [243, 14] # MP(Gauge) BTSKIN_07XY = [328, 14] # TP(Gauge) BTSKIN_04XY = [175, 0] # HP(Numbers) BTSKIN_05XY = [260, 0] # MP(Numbers) BTSKIN_08XY = [349, 0] # TP(Numbers) BTSKIN_03XY = [100, -10] # State Skin BTSKIN_06XY = [100, 0] # State # Various Settings BTSKIN_01GS = 2 # HP Gauge Speed (Low values are fast) BTSKIN_02GS = 4 # MP Gauge Speed(Low values are fast) BTSKIN_07GS = 4 # TP Gauge Speed(Low values are fast) BTSKIN_04SS = 8 # HP Rolling Numbers Speed(Low values are fast) BTSKIN_05SS = 2 # MP Rolling Numbers Speed(Low values are fast) BTSKIN_08SS = 4 #TP Rolling Numbers Speed(Low values are fast) BTSKIN_04NS = 4 # HP Maximum Digits BTSKIN_05NS = 4 # MP Maximum Digits BTSKIN_08NS = 3 # TP Maximum Digits BTSKIN_06WH = [24,24] # [state Width, Height] BTSKIN_06SC = 2 # State Icon Scroll Speed # (Values close to 1 are fast) # ãƒãƒˆãƒ«ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹åº§æ¨™ def set_xy @x = [] @y = [] for i in 0...$game_party.battle_members.size x = 0 y = (i * 24) @x[i] = x + 16#+ STRRGSS2::ST_SX @y[i] = y + 16#+ STRRGSS2::ST_SY end end # è¨å®šç®‡æ‰€ã“ã“ã¾ã§ @@f = false #-------------------------------------------------------------------------- # ★ エイリアス #-------------------------------------------------------------------------- alias initialize_str33 initialize def initialize(f = false) initialize_str33 unless @@f @f = @@f = true else @f = false end set_xy @s_sprite = [] @s_party = [] @s_lv = [] @opacity = 0 self.contents.dispose self.create_contents self.back_opacity = 0 self.opacity = 0 #@column_max = $game_party.actors.size @viewport = Viewport.new(0, 416-128, 416, 128) @hpgw = (Cache.system(BTSKIN_01)).width @mpgw = (Cache.system(BTSKIN_02)).width @tpgw = (Cache.system(BTSKIN_07)).width @viewport.z = self.z - 1 @state_opacity = [] @item_max = $game_party.battle_members.size return unless @f for i in 0...@item_max draw_item(i) end update end #-------------------------------------------------------------------------- # ◠リフレッシュ潰㗠#-------------------------------------------------------------------------- def refresh # :-) end #-------------------------------------------------------------------------- # â— ã‚¹ãƒ†ãƒ¼ãƒˆã®æç”» #-------------------------------------------------------------------------- def draw_actor_state(actor) icon = Cache.system("Iconset") w = actor.states.size * 24 w = 24 if w < 1 bitmap = Bitmap.new(w, BTSKIN_06WH[1]) count = 0 for state in actor.states icon_index = state.icon_index x = 24 * count rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24) bitmap.blt(x, 0, icon, rect) count += 1 end return bitmap end #-------------------------------------------------------------------------- # â— åå‰ä½œæˆ #-------------------------------------------------------------------------- def name_bitmap(actor) bitmap = Bitmap.new(100, 24) bitmap.font.size = 16 bitmap.draw_text(0, 0, 100, 24, actor.name) return bitmap end #-------------------------------------------------------------------------- # ◠ステート数å–å¾— #-------------------------------------------------------------------------- def state_size(actor) return actor.states.size end #-------------------------------------------------------------------------- # â— ã‚¢ã‚¤ãƒ†ãƒ ä½œæˆ #-------------------------------------------------------------------------- def draw_item(index) return unless @f actor = $game_party.battle_members[index] # @s_sprite[index] = [] s = @s_sprite[index] # メインスã‚ン s[0] = Sprite.new(@viewport) s[0].bitmap = Cache.system(BTSKIN_00) s[0].x = @x[index] + BTSKIN_B_XY[0] + BTSKIN_00XY[0] s[0].y = @y[index] + BTSKIN_B_XY[1] + BTSKIN_00XY[1] s[0].z = 0 # HP s[1] = Sprite.new(@viewport) s[1].bitmap = Cache.system(BTSKIN_01) s[1].x = @x[index] + BTSKIN_B_XY[0] + BTSKIN_01XY[0] s[1].y = @y[index] + BTSKIN_B_XY[1] + BTSKIN_01XY[1] s[1].z = 4 w = s[1].bitmap.width h = s[1].bitmap.height / 2 s[1].src_rect.set(0, 0, w, h) s[2] = Sprite.new(@viewport) s[2].bitmap = Cache.system(BTSKIN_01) s[2].x = @x[index] + BTSKIN_B_XY[0] + BTSKIN_01XY[0] s[2].y = @y[index] + BTSKIN_B_XY[1] + BTSKIN_01XY[1] s[2].z = 3 s[2].src_rect.set(0, h, w, h) s[11] = 96 s[6] = Sprite_strNumbers.new(@viewport, BTSKIN_04, BTSKIN_04NS) s[6].x = @x[index] + BTSKIN_B_XY[0] + BTSKIN_04XY[0] s[6].y = @y[index] + BTSKIN_B_XY[1] + BTSKIN_04XY[1] s[6].z = 5 s[13] = actor.hp s[6].update(s[13]) # MP s[3] = Sprite.new(@viewport) s[3].bitmap = Cache.system(BTSKIN_02) s[3].x = @x[index] + BTSKIN_B_XY[0] + BTSKIN_02XY[0] s[3].y = @y[index] + BTSKIN_B_XY[1] + BTSKIN_02XY[1] s[3].z = 4 w = s[3].bitmap.width h = s[3].bitmap.height / 2 s[3].src_rect.set(0, 0, w, h) s[4] = Sprite.new(@viewport) s[4].bitmap = Cache.system(BTSKIN_02) s[4].x = @x[index] + BTSKIN_B_XY[0] + BTSKIN_02XY[0] s[4].y = @y[index] + BTSKIN_B_XY[1] + BTSKIN_02XY[1] s[4].z = 3 s[4].src_rect.set(0, h, w, h) s[12] = 56 s[7] = Sprite_strNumbers.new(@viewport, BTSKIN_05, BTSKIN_05NS) s[7].x = @x[index] + BTSKIN_B_XY[0] + BTSKIN_05XY[0] s[7].y = @y[index] + BTSKIN_B_XY[1] + BTSKIN_05XY[1] s[7].z = 5 s[14] = actor.mp s[7].update(s[14]) #TP s[16] = Sprite.new(@viewport) s[16].bitmap = Cache.system(BTSKIN_07) s[16].x = @x[index] + BTSKIN_B_XY[0] + BTSKIN_07XY[0] s[16].y = @y[index] + BTSKIN_B_XY[1] + BTSKIN_07XY[1] s[16].z = 4 w = s[16].bitmap.width h = s[16].bitmap.height / 2 s[16].src_rect.set(0, 0, w, h) s[17] = Sprite.new(@viewport) s[17].bitmap = Cache.system(BTSKIN_07) s[17].x = @x[index] + BTSKIN_B_XY[0] + BTSKIN_07XY[0] s[17].y = @y[index] + BTSKIN_B_XY[1] + BTSKIN_07XY[1] s[17].z = 3 s[17].src_rect.set(0, h, w, h) s[20] = 56 s[18] = Sprite_strNumbers.new(@viewport, BTSKIN_08, BTSKIN_08NS) s[18].x = @x[index] + BTSKIN_B_XY[0] + BTSKIN_08XY[0] s[18].y = @y[index] + BTSKIN_B_XY[1] + BTSKIN_08XY[1] s[18].z = 5 s[19] = (actor.tp).to_i s[18].update(s[19]) # ステート s[5] = Viewport.new(0, 0, BTSKIN_06WH[0], BTSKIN_06WH[1]) s[5].rect.x = @x[index] + BTSKIN_B_XY[0] + BTSKIN_06XY[0] + @viewport.rect.x s[5].rect.y = @y[index] + BTSKIN_B_XY[1] + BTSKIN_06XY[1] + @viewport.rect.y s[5].z = @viewport.z + 1 s[8] = Sprite.new(@viewport) s[8].bitmap = Cache.system(BTSKIN_03) s[8].x = @x[index] + BTSKIN_B_XY[0] + BTSKIN_03XY[0] s[8].y = @y[index] + BTSKIN_B_XY[1] + BTSKIN_03XY[1] s[8].z = -2 s[9] = Plane.new(s[5]) s[9].bitmap = draw_actor_state(actor) s[10] = state_size(actor) # ç¾åœ¨ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã« s[11] = ((@hpgw * (actor.hp / (actor.mhp * 1.0))) + 1).truncate if actor.mmp != 0 s[12] = ((@mpgw * (actor.mp / (actor.mmp * 1.0))) + 1).truncate else s[12] = 0 end s[20] = ((@tpgw * (actor.tp / (actor.max_tp* 1.0))) + 1).truncate s[15] = Sprite.new(@viewport) s[15].bitmap = name_bitmap(actor) s[15].x = @x[index] + 4 s[15].y = @y[index] + 2 s[15].z = 0 s[1].src_rect.width = s[11] s[2].src_rect.width = s[11] s[3].src_rect.width = s[12] s[4].src_rect.width = s[12] s[16].src_rect.width = s[20] s[17].src_rect.width = s[20] s[6].update(s[13]) s[7].update(s[14]) s[18].update(s[19]) # ä¸å¯è¦–ã« for l in [0,1,2,3,4,8,9,15,16,17] s[l].opacity = 0 end for l in [6,7,18] s[l].o = 0 end # æƒ…å ±è¨˜æ†¶ @s_lv[index] = actor.level @s_party[index] = [actor.name, actor.hp, actor.mhp, actor.mp, actor.mmp, actor.states, actor.tp] # end #-------------------------------------------------------------------------- # ◠オブジェクト開放 #-------------------------------------------------------------------------- def dispose super return unless @f for i in 0...@s_sprite.size for l in [0,1,2,3,4,8,9,15,16,17] @s_sprite[i][l].bitmap.dispose @s_sprite[i][l].dispose end for l in [5,6,7,18] @s_sprite[i][l].dispose end end @@f = false end #-------------------------------------------------------------------------- # ◠フレーム更新 #-------------------------------------------------------------------------- def update super return unless @f for i in 0...@s_sprite.size s = @s_sprite[i] a = $game_party.battle_members[i] m = @s_party[i] @state_opacity[i] = 0 if @state_opacity[i] == nil # ä¸é€æ˜Žåº¦ã‚¢ãƒƒãƒ— @state_opacity[i] += 8 if @opacity < 272 @opacity += 8 for l in [0,1,2,3,4,15,16,17] s[l].opacity = @opacity end for l in [6,7,18] s[l].o = @opacity end end # å剿›´æ–° if a.name != m[0] s[15].bitmap.dispose s[15].bitmap = name_bitmap(a) m[0] = a.name end # HP/MP/TPæ›´æ–° update_hp(s,a,m) update_mp(s,a,m) update_tp(s,a,m) # ステート更新 if s[10] > BTSKIN_06WH[0] / 24 and (Graphics.frame_count % BTSKIN_06SC) == 0 s[9].ox += 1 end if s[10] > 0 and @state_opacity[i] < 272 for l in [8,9] s[l].opacity = @state_opacity[i] end end if a.states != m[5] m[5] = a.states s[9].ox = 0 s[9].bitmap.dispose s[9].bitmap = draw_actor_state($game_party.battle_members[i]) s[10] = state_size($game_party.battle_members[i]) @state_opacity[i] = 0 for l in [8,9] s[l].opacity = @state_opacity[i] end end end end #-------------------------------------------------------------------------- # ◠フレーム更新 (HP) #-------------------------------------------------------------------------- def update_hp(s,a,m) # HPãã‚‹ãã‚‹ if a.hp != s[13] c = 0; c = 1 if a.hp < a.mhp / 4; c = 2 if a.hp == 0 if s[13] > a.hp s[13] -= BTSKIN_04SS s[13] = a.hp if s[13] < a.hp else s[13] += BTSKIN_04SS s[13] = a.hp if s[13] > a.hp end s[6].update(s[13], c) end # HP if a.hp != m[1] s[11] = ((@hpgw * (a.hp / (a.mhp * 1.0))) + 1).truncate m[1] = a.hp end sr = s[1].src_rect if sr.width != s[11] sp = BTSKIN_01GS sr.width = (s[11] + (s[1].src_rect.width * (sp - 1))) / sp sr.width = 2 if sr.width <= 1 and a.hp > 0 end sr = s[2].src_rect sp = 2 if sr.width != s[1].src_rect.width and (Graphics.frame_count % sp) == 0 if sr.width < s[1].src_rect.width sr.width += 1 else sr.width -= 1 end end sr.width = 2 if sr.width <= 1 and a.hp > 0 end #-------------------------------------------------------------------------- # ◠フレーム更新 (MP) #-------------------------------------------------------------------------- def update_mp(s,a,m) # MPãã‚‹ãã‚‹ if a.mp != s[14] c = 0; c = 1 if a.mp < a.mmp / 4 if s[14] > a.mp s[14] -= BTSKIN_05SS s[14] = a.mp if s[14] < a.mp else s[14] += BTSKIN_05SS s[14] = a.mp if s[14] > a.mp end s[7].update(s[14], c) end # MP if a.mp != m[3] if a.mmp != 0 s[12] = ((@mpgw * (a.mp / (a.mmp * 1.0))) + 1).truncate else s[12] = 0 end m[3] = a.mp end sr = s[3].src_rect if sr.width != s[12] sp = BTSKIN_02GS sr.width = (s[12] + (s[3].src_rect.width * (sp - 1))) / sp sr.width = 2 if sr.width <= 1 and a.mp > 0 end sr = s[4].src_rect sp = 2 if sr.width != s[3].src_rect.width and (Graphics.frame_count % sp) == 0 if sr.width < s[3].src_rect.width sr.width += 1 else sr.width -= 1 end end sr.width = 2 if sr.width <= 1 and a.mp > 0 end def update_tp(s,a,m) # TPãã‚‹ãã‚‹ if a.tp != s[19] c = 0; c = 1 if a.tp < 100 if s[19] > a.tp s[19] -= BTSKIN_08SS s[19] = a.tp if s[19] < a.tp else s[19] += BTSKIN_08SS s[19] = a.tp if s[19] > a.tp end s[18].update(s[19].to_i, c) end # TP if a.tp != m[6] if a.tp != 0 s[20] = ((@tpgw * (a.tp / (a.max_tp * 1.0))) + 1).truncate else s[20] = 0 end m[6] = a.tp end sr = s[16].src_rect if sr.width != s[20] sp = BTSKIN_07GS sr.width = (s[20] + (s[16].src_rect.width * (sp - 1))) / sp sr.width = 2 if sr.width <= 1 and a.tp > 0 end sr = s[17].src_rect sp = 2 if sr.width != s[16].src_rect.width and (Graphics.frame_count % sp) == 0 if sr.width < s[16].src_rect.width sr.width += 1 else sr.width -= 1 end end sr.width = 2 if sr.width <= 1 and a.tp > 0 end end #============================================================================== # â– Sprite_strNumber #============================================================================== class Sprite_strNumber < Sprite #-------------------------------------------------------------------------- # â— ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆåˆæœŸåŒ– #-------------------------------------------------------------------------- def initialize(v, gra, n = 0) @n = n super(v) self.bitmap = Cache.system(gra) @w = self.bitmap.width/10 @h = self.bitmap.height/3 self.src_rect = Rect.new(@n*@w, 0, @w, @h) end #-------------------------------------------------------------------------- # ◠フレーム更新 #-------------------------------------------------------------------------- def update(n = -1, c = 0) @n = n self.src_rect.x = @n*@w self.src_rect.y = c*@h end end #============================================================================== # â– Sprite_strNumbers #============================================================================== class Sprite_strNumbers attr_accessor :x attr_accessor :y attr_accessor :z attr_accessor #-------------------------------------------------------------------------- # â— ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆåˆæœŸåŒ– #-------------------------------------------------------------------------- def initialize(v, gra, n = 4, s = 0) @n = n.to_i # æ¡æ•° @x = 0 @y = 0 @z = 0 @o = 255 @sprite = [] # å—é–“è¨å®š b = Cache.system(gra) @s = b.width / 10 - s # ã‚¹ãƒ—ãƒ©ã‚¤ãƒˆä½œæˆ for i in 0...n @sprite[i] = Sprite_strNumber.new(v, gra) end update end #-------------------------------------------------------------------------- # ◠フレーム更新 #-------------------------------------------------------------------------- def update(v = 0, c = 0) val = [] # 数値をé…åˆ—ã«æ ¼ç´ for i in 0...@n if (10 ** (i)) == 0 val[i] = v % 10 else val[i] = v / (10 ** (i)) % 10 end end val = val.reverse # å…ˆé ã®0ã‚’å–り除ã for i in 0...@n if val[i] == 0 and @n != i + 1 val[i] = -1 else break end end # スプライト更新 for i in 0...@n @sprite[i].update(val[i], c) @sprite[i].x = @x + (i * @s) @sprite[i].y = @y @sprite[i].z = @z @sprite[i].opacity = @o end end #-------------------------------------------------------------------------- # â— ä¸é€æ˜Žåº¦ã®é©ç”¨ #-------------------------------------------------------------------------- def o=(val) @o = val for i in 0...@n @sprite[i].opacity = @o end end #-------------------------------------------------------------------------- # ◠オブジェクト開放 #-------------------------------------------------------------------------- def dispose for i in 0...@sprite.size @sprite[i].bitmap.dispose @sprite[i].dispose end end end #============================================================================== # â– Scene_Battle #============================================================================== class Scene_Battle def update_info_viewport return 0 end def create_status_window @status_window = Window_BattleStatus.new @status_window.x = 0 end def create_info_viewport @info_viewport = Viewport.new @info_viewport.rect.y = Graphics.height - @status_window.height @info_viewport.rect.height = @status_window.height @info_viewport.z = 100 @info_viewport.ox = 0 @status_window.viewport = @info_viewport end def create_actor_command_window @actor_command_window = Window_ActorCommand.new @actor_command_window.viewport = @info_viewport @actor_command_window.set_handler(:attack, method(:command_attack)) @actor_command_window.set_handler(:skill, method(:command_skill)) @actor_command_window.set_handler(:guard, method(:command_guard)) @actor_command_window.set_handler(:item, method(:command_item)) @actor_command_window.set_handler(:cancel, method(:prior_command)) @actor_command_window.x = 416 end def create_party_command_window @party_command_window = Window_PartyCommand.new @party_command_window.viewport = @info_viewport @party_command_window.x = 416 @party_command_window.set_handler(:fight, method(:command_fight)) @party_command_window.set_handler(:escape, method(:command_escape)) @party_command_window.unselect end end Compatibility Patch - Formar0153's Customisable ATB/Stamina Based Battle System Script Images(Graphics/System) Instructions Place the script in this order: - Formar0153's Customisable ATB/Stami Based Battle System Script - STR33g1_BattleStatus 0.5 VXAce Version - Patch Replace the skin file with the new. If you use default name, rename the gauge file in "Btskin_atb". Script #============================================================================= # Compatibility Patch # STR33g1_Battle Status + Customisable ATB/Stamina Based Battle System Script #============================================================================== # Author: Melosx # Version: 1.2 # Release Date: 06/03/2012 => v1.0 # 07/03/2012 => v1.1 # 09/03/2012 => v1.2 # # Update 1.1 => Fixed graphic bug. # Update 1.2 => Fixed bug with window. # Fixed bug when there are more than 4 member in the party. #============================================================================== class Window_BattleStatus < Window_Selectable BTSKIN_09 = "Btskin_atb" BTSKIN_09XY = [403, 14] alias msx_initialize initialize def initialize(f = false) @atbgw = (Cache.system(BTSKIN_09)).width msx_initialize(f) end alias msx_draw_item draw_item def draw_item(index) @viewport = Viewport.new(0, 416-128, 544, 128) return unless @f actor = $game_party.battle_members[index] msx_draw_item(index) s = @s_sprite[index] s[21] = Sprite.new(@viewport) s[21].bitmap = Cache.system(BTSKIN_09) s[21].x = @x[index] + BTSKIN_B_XY[0] + BTSKIN_09XY[0] s[21].y = @y[index] + BTSKIN_B_XY[1] + BTSKIN_09XY[1] s[21].z = 4 w = s[21].bitmap.width h = s[21].bitmap.height / 2 s[21].src_rect.set(0, 0, w, h) s[23] = ((@atbgw * actor.stamina_rate) + 1).truncate s[21].src_rect.width = s[23] for l in [21] s[l].opacity = 0 end @s_party[10] = actor.stamina end alias msx_dispose dispose def dispose msx_dispose for i in 0...@s_sprite.size for l in [21] @s_sprite[i][l].bitmap.dispose @s_sprite[i][l].dispose end end end alias msx_update update def update msx_update return unless @f for i in 0...@s_sprite.size s = @s_sprite[i] if @opacity < 272 for l in [21] s[l].opacity = @opacity end end update_atb(s,$game_party.battle_members[i],@s_party[i]) end end def update_atb(s,a,m) sr = s[21].src_rect gauge = a.stamina if gauge != m[10] s[23] = ((@atbgw * a.stamina_rate) + 1).truncate m[10] = gauge s[21].src_rect.width = s[23] end end end class Scene_Battle def create_status_window @status_window = Window_BattleStatus.new @status_window.x = 0 @status_window.width = 544 end def create_actor_command_window @actor_command_window = Window_ActorCommand.new @actor_command_window.viewport = @info_viewport @actor_command_window.set_handler(:attack, method(:command_attack)) @actor_command_window.set_handler(:skill, method(:command_skill)) @actor_command_window.set_handler(:guard, method(:command_guard)) @actor_command_window.set_handler(:item, method(:command_item)) @actor_command_window.set_handler(:cancel, method(:prior_command)) @actor_command_window.x = 416 @actor_command_window.z = 20 end end class Window_BattleSkill < Window_SkillList def initialize(help_window, info_viewport) y = help_window.height super(0, y, Graphics.width, info_viewport.rect.y - y) self.visible = false @help_window = help_window @info_viewport = info_viewport end end class Window_BattleActor < Window_BattleStatus def initialize(info_viewport) super() self.y = info_viewport.rect.y self.visible = false self.openness = 255 @info_viewport = info_viewport end end class Window_BattleEnemy < Window_Selectable def initialize(info_viewport) super(0, info_viewport.rect.y, window_width, fitting_height(4)) refresh self.visible = false @info_viewport = info_viewport end end class Window_BattleItem < Window_ItemList def initialize(help_window, info_viewport) y = help_window.height super(0, y, Graphics.width, info_viewport.rect.y - y) self.visible = false @help_window = help_window @info_viewport = info_viewport end end Edited March 9, 2012 by Melosx 7 Sughayyer, Xaiyeon, Ruka and 4 others reacted to this Share this post Link to post Share on other sites
Mr. Bubble 116 Posted March 4, 2012 Please read these rules: http://www.rpgmakervxace.net/index.php?/topic/1048-guidelines-and-template-for-complete-script-submissions/page__view__findpost__p__12705 Find out the required information soon or I will have to close this topic. Share this post Link to post Share on other sites
Melosx 27 Posted March 4, 2012 (edited) I've read that post ... all the info are already contained in the script ... Edited March 4, 2012 by Melosx 1 Zoren reacted to this Share this post Link to post Share on other sites
Mr. Bubble 116 Posted March 4, 2012 I've read that post ... all the info are already contained in the script ... I've converted this script for VXAce and added the TP info... I don't know the original author... if anyone knows can tell me please??? Share this post Link to post Share on other sites
Melosx 27 Posted March 4, 2012 Ok I search the author of the original VX script... Share this post Link to post Share on other sites
Melosx 27 Posted March 4, 2012 (edited) I've searched on google and in other forum but i've not found the name of the author... I'm sorry... Edit: At the end i've found it... I've update the first post Edited March 4, 2012 by Melosx Share this post Link to post Share on other sites
Michael 8 Posted March 5, 2012 (edited) tried it, appears to work, and looks pretty nice too ~ cool thing., aint gonna use it, but i think it'll be useful for others. (Edit: i dont know if this is important, but it seems to work with simple Sideview Scripts! ) Edited March 5, 2012 by Crystallish Share this post Link to post Share on other sites
Melosx 27 Posted March 5, 2012 the vx version work with lots of bs... I think is the same for the VXAce version... I've tested the script and work with Sideview BS Tankentai v0.85 Share this post Link to post Share on other sites
WesdrasLink 2 Posted March 5, 2012 I tested this script with Sideview Battle System Tankentai with no problems, now i will use this HUD, it's preety! Thanks Melosx! Share this post Link to post Share on other sites
Michael 8 Posted March 6, 2012 *Sneaks back into this topic* may it be possible to combine this script with an ATB Gauge somehow? i think that would be sick. Oo! 1 John Smith reacted to this Share this post Link to post Share on other sites
Lionheart 2 Posted March 6, 2012 *Sneaks back into this topic* may it be possible to combine this script with an ATB Gauge somehow? i think that would be sick. Oo! Yes...it will be wonderful have an atb gauge, compatible with this hud and tanketai bs! Share this post Link to post Share on other sites
Melosx 27 Posted March 6, 2012 I think I can covert the Star's ATB script for VXAce... Share this post Link to post Share on other sites
Shadow 6 Posted March 6, 2012 (edited) This script works on takentai, but dont know how to add a ATB bar =( EDIT: Sorry, the tankentai have no ATB, the ATB is from Formar0153, and the battle system is from tankentai, sorry Edited March 6, 2012 by Shadow Share this post Link to post Share on other sites
Lionheart 2 Posted March 6, 2012 I think I can covert the Star's ATB script for VXAce... would be nice! Also could you make this atb compatible with the tanketai? Share this post Link to post Share on other sites
Melosx 27 Posted March 6, 2012 it's difficult to convert the Star's ATB script... You need three script for the ATB and my skills are not so high... BUT!!!!... I've updated the first post with a patch for the Formar0153 ATB and with the new grapics file... Share this post Link to post Share on other sites
Lionheart 2 Posted March 6, 2012 it's difficult to convert the Star's ATB script... You need three script for the ATB and my skills are not so high... BUT!!!!... I've updated the first post with a patch for the Formar0153 ATB and with the new grapics file... I've tried now to put the script of HUD and the patch together the bs tanketai but does not work. This is the error that gives me. Do you work? http://i44.tinypic.com/2mi51ex.png could you fix it? Share this post Link to post Share on other sites
Melosx 27 Posted March 6, 2012 it work correctly but whit a little graphic problem... place the script in this order tankentai atb hud patch Now I fix the graphic problem... Share this post Link to post Share on other sites
Lionheart 2 Posted March 6, 2012 it work correctly but whit a little graphic problem... place the script in this order tankentai atb hud patch Now I fix the graphic problem... Thanks,now works, in fact need to fix the graphics. I can alert you to another small bug? (not sure if it only happens to me) Just starting the battle, the numbers of tp go crazy and start to flow endlessly. Share this post Link to post Share on other sites
Melosx 27 Posted March 6, 2012 O.O... Sure? I've not this bug with the tp,,, Share this post Link to post Share on other sites
Lionheart 2 Posted March 6, 2012 O.O... Sure? I've not this bug with the tp,,, I don't know why it happens ... will be the version of the tanketai? I've tested with version 0.96. Leaving the standard script without making any changes. (I added just the hud and atb) Share this post Link to post Share on other sites
Melosx 27 Posted March 6, 2012 Graphic bug fixed. Fixed also a bug with the Window_BattleEnemy y coordinates(strange bug because the window is not touched by the script)... o.o 0,96?? I've old version 0.85... Download the new version and see if I have the bug... Share this post Link to post Share on other sites
Lionheart 2 Posted March 6, 2012 Graphic bug fixed. Fixed also a bug with the Window_BattleEnemy y coordinates(strange bug because the window is not touched by the script)... o.o 0,96?? I've old version 0.85... Download the new version and see if I have the bug... ok ... Let me know if you reported the same bug! Share this post Link to post Share on other sites
Michael 8 Posted March 6, 2012 You - are - awesome. The compatibility Patch for Fomar's Script is brilliant! 2 things though 1. (regarding the TP issue of Lionheart) .. my TP work fine, they stay in place until they are beeing increased the way they should be. 2. the image looks kinda cut. o: Share this post Link to post Share on other sites
Melosx 27 Posted March 6, 2012 Yes... I've the problem also in the last version 0.97... I fix it... Share this post Link to post Share on other sites
Michael 8 Posted March 6, 2012 Oh, didnt see you resolve the problem i stated with the graphics while i wrote, everything working fine now. Again, thanks, will definetly use it now. Share this post Link to post Share on other sites