赞 | 0 |
VIP | 0 |
好人卡 | 2 |
积分 | 4 |
经验 | 31761 |
最后登录 | 2025-6-30 |
在线时间 | 1780 小时 |
- 梦石
- 0
- 星屑
- 425
- 在线时间
- 1780 小时
- 注册时间
- 2009-7-12
- 帖子
- 443
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
這是我將官網的S_HUD修該而成的怪物血條% }- y; V1 b; s: s
會在每隻事件怪物的腳下顯示
" l G# m! B3 k. `1 H! I問題是不知道為什麼& T% ?! r7 p# D- a I- C: l+ w& {
有時打怪打一打會跳出
- F6 \6 M0 o S* k: P8 B' L---------------------------
& T0 r1 X/ K; n+ Q; }XAS4 C1 g' W# h0 `' U
---------------------------; Q' E1 \2 u0 Y( u% I
脚本 'MOG - S HUD' 的 203 行 发生了 RGSSError。8 x# l- ]# C# d3 _$ S1 T
) Q# J% Q5 X- i9 |4 `' H
disposed bitmap. q, I& x- _! O+ E9 F9 z% L. q
---------------------------( |0 b T- j: C" j
確定
# @6 F2 B. q6 ` Y: q0 V% Z3 N+ J" x---------------------------
4 u# e9 y7 v& q; x% `0 l5 w1 f" Z6 o# ]0 d# o7 A! H
這是腳本
0 A5 G" L# L+ H& o9 u$ g5 n
# e. J. k9 s* c# s1 _. Z- #===============================================================================
3 V6 ~1 ?: M6 X - # MOG - s Hud 1.0 + z1 _9 \: p. I& x
- #===============================================================================! b/ a& m3 }; ^1 p0 Z$ ?1 B( K% e
- # By Moghunter ! S& D. C0 G7 A' l, ^
- # http://www.atelier-rgss.com, k' t7 L0 [9 i: b0 k1 |5 y4 G& h v
- #===============================================================================8 L4 y- h2 O" h4 z/ ?
- # Translated by Calvin624 1 D* C2 q: Y) C( x$ g
- # http://www.xasabs.wordpress.com
$ B& S( \: \' M0 u2 K( ]( G - #===============================================================================
4 t7 V( @% k7 E& p- L - ###############################-DESCRIPTION-####################################" e& U* R+ @3 |6 X' N
- #===============================================================================
9 [* p' t% [- i8 ^ - # Personal HUD – displays the HP and SP below the hero.) \3 K0 l: a6 j6 Q
- #===============================================================================' Q6 d& m/ q# O$ X r, d4 Q
- #
- o1 y s/ o6 n4 X- } - # Graphics required:7 j |" X4 j! ]/ F* z
- # 6 O6 y" L" z# D
- # S_Border_HP_Meter.png
; J- Z4 G$ A' T3 B6 S d' a - # S_Border_SP_Meter.png
. X1 ~! E3 C6 F - # S_HP_Meter.png
/ K6 C* T6 \$ t" u1 J- K; P' U - # S_SP_Meter.png
$ A, L- Q0 A$ }( \: b - #
9 p5 \: a7 Y! }$ y, `7 h7 Q, G - # All images must be in the Windowskin folder.
4 B4 p$ v! E c. {+ @ - #
5 u" q/ S' r2 I8 Y/ h# h7 A - #===============================================================================
$ J2 ^. \8 }' r9 T; l1 M& {& S \ - module MOG: T8 W# |) ~# B
- VISIBLE_DEF = false
" q+ D5 Z7 {/ d R& J - # Show HP meter?- y. c7 T% {7 J
- HP_HUD = true
* L3 b4 C8 ?/ u& g - # Position of the HP border
' ?& c" g1 S% O0 A* l+ K - S_BORDER_HP_METER_X = -2! G1 U! P( w' Q
- S_BORDER_HP_METER_Y = -2 " _3 m0 w0 q q; _# _7 R; K: g( N
- # Position of the HP meter
( F) i% \6 j3 f& _9 E$ x - S_HP_METER_X = 0
& `2 L+ `7 P" A& G4 R - S_HP_METER_Y = 0
& S7 k" Z$ @! S5 t' | - # Show SP meter?) h+ ?3 _( A( j$ B$ Z
- SP_HUD = true
% O7 L A* p. |2 J) ^, v - # Position of the SP border, c; }8 o2 J. Z4 R) M
- S_BORDER_SP_METER_X = 0
- B( V& y: c1 `' V7 T - S_BORDER_SP_METER_Y = 10
/ w3 g% ?: H8 m: U" I% N - # Position of the SP meter
- A- T- K$ @& a- X- h2 J; S F - S_SP_METER_X = 0
; l d' |. @1 c+ X - S_SP_METER_Y = 10# X7 d% C; n2 @: K
- # Switch to disable the HUD
$ B! U2 F: ?. n+ q0 ^8 G# x& Y - DISABLE_SHUD_SWITCH = 5' N" u" T7 }7 U
- RANGE = 204 Q9 S2 S2 {7 ]$ o; V
- end
1 o5 M2 F* @. T) r" d7 X - #===============================================================================# k t2 c# X$ }& e) }- @
- # S Hud
0 d. w/ l Y' m1 H0 j0 T - #===============================================================================7 J0 W7 {% K9 r7 \% ]- y, x
- class S_Hud < RPG::Sprite
5 `5 G7 S5 p1 K9 ? - include MOG
- F4 u1 T- i( i# F5 x+ ` - #--------------------------------------------------------------------------
7 i; p* |( O: u - # * Initialize
3 W0 N1 j- @- k' C. M+ N - #--------------------------------------------------------------------------" W3 ?, `$ h- I! s
- def initialize(enemy,viewport)
% b" f2 Z3 T+ G- l. ] - super(viewport)
/ Y- O- c# m' p8 M5 ]4 v7 [, y. q9 A - @enemy = enemy
4 W) P: h* E8 v7 Y1 V+ I - @battler = @enemy.battler
4 Y1 [: p# I! r. W! a - @old_hp = 0! \6 E+ ~9 I+ Z1 L/ n
- @old_sp = 0
" e% S/ E5 E7 x, W - @old_vis = false/ k& T- g) `. R# B' _% \
- self.bitmap = Bitmap.new(100, 100)6 ~7 N) D+ q. j* n/ B$ s
- self.visible = (VISIBLE_DEF)#false
4 h# g. F# \3 ~8 Y5 g' S! U" {) z - self.z = 100! r8 H) ` Y! P7 D6 ~
- #HP Border -------------------------------------------------------------------" w0 Y; n* G: r; ]4 j. `
- @layout_image = RPG::Cache.windowskin("S_Border_HP_Meter")% v) L) W9 z5 M5 T# _
- @layout_bitmap = Bitmap.new(@layout_image.width,@layout_image.height). ?9 I- f% q2 J9 t
- @layout_sprite = Sprite.new* L! [/ ]! y8 v5 Y/ C% U
- @layout_sprite.bitmap = @layout_bitmap
! P* w5 b& Q$ D i - @layout_src_rect_back = Rect.new(0, 0,@layout_image.width, @layout_image.height)
2 A8 B: i/ O/ T - @layout_bitmap.blt(0,0, @layout_image, @layout_src_rect_back)
3 o) P: L& M+ B6 g1 }% t - @layout_sprite.z = 5001
0 j1 R w% m, q4 u% {" k) k1 s - #HP Meter ---------------------------------------------------0 p, Q5 q+ u: N! E$ p
- @hp_flow = 00 N& M" R' [, i* }: L7 h
- @hp_damage_flow = 0
6 c0 r9 j1 @ c9 c8 T; p% Z - @hp_image = RPG::Cache.windowskin("S_HP_Meter")2 @' Z+ }9 h# O8 m" ~
- @hp_bitmap = Bitmap.new(@hp_image.width,@hp_image.height)+ G' K; v& K4 ~) ]" b7 |. J
- @hp_range = @hp_image.width / 3 D5 v b d( ~" ?4 H; z
- @hp_width = @hp_range * @battler.hp / @battler.maxhp
: `7 _1 ~0 r7 g" c. B; F - @hp_width2 = @hp_range / 2
' U- n- i+ W! K - @hp_height = @hp_image.height / 2
1 _6 @$ \7 l3 k! o7 G - @hp_width_old = @hp_width! C, M* M" A' ]
- @hp_src_rect = Rect.new(@hp_range, 0, @hp_width, @hp_height)
: O! p0 o0 A& E% \) }! l4 G/ h3 C - @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect)
$ x# ?! s1 F- s! V - @hp_sprite = Sprite.new
4 k. G3 N- p: W; S8 d - @hp_sprite.bitmap = @hp_bitmap, G R& F6 ^ | m% B- l( F
- @hp_sprite.z = 5002- s$ H5 I3 j) D. Y2 z$ v( e
- #SP Border -------------------------------------------------------------------
' o+ i9 v0 X4 P- S - @layout2_image = RPG::Cache.windowskin("S_Border_SP_Meter")
# L& y+ Q/ B5 Q0 M - @layout2_bitmap = Bitmap.new(@layout2_image.width,@layout2_image.height)
& i7 C$ h4 R6 @ - @layout2_sprite = Sprite.new
% E# I8 f4 j. U5 W- z0 E+ Y' [" w - @layout2_sprite.bitmap = @layout2_bitmap
( p# a( |6 \6 T - @layout2_src_rect_back = Rect.new(0, 0,@layout2_image.width, @layout2_image.height)
) V ?8 W1 L5 A! I' k3 E - @layout2_bitmap.blt(0,0, @layout2_image, @layout2_src_rect_back)
0 e6 h" W5 I1 b4 Q/ P2 q1 [ J, @ - @layout2_sprite.z = 5001 0 w8 y3 j8 J& [) S7 B
- #SP Meter ------------------------------------------------------: g3 m/ ]4 Z+ N, i1 A- g
- @sp_flow = 0
, R' ?5 h. X3 B) _% x% V$ { - @sp_damage_flow = 0
1 S/ Y! ?! k3 `4 Y- y- D9 \' t; O - @sp_image = RPG::Cache.windowskin("S_SP_Meter")
0 X, } F# [# z0 P8 T: u8 H' N - @sp_bitmap = Bitmap.new(@sp_image.width,@sp_image.height)
( C6 k6 ~) T, e2 G0 I9 a6 y - @sp_range = @sp_image.width / 31 v+ K. A8 Q3 _% O
- @sp_width = @sp_range * @battler.sp / @battler.maxsp f0 {5 h( i: l$ y/ {0 T: a/ D4 m
- @sp_width2 = @sp_range / 2' _! z* l& x1 j8 e1 d; m- `: O
- @sp_height = @sp_image.height / 22 O: C! r( M* X7 |) X, [; n6 _8 g
- @sp_width_old = @sp_width6 n J9 t# u/ _+ I3 Z% D3 O
- @sp_src_rect = Rect.new(@sp_range, 0, @sp_width, @sp_height)2 ]: w e$ M: u# A, v; k C/ G# x
- @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect) O* S- g3 U% _% M& X B8 ]
- @sp_sprite = Sprite.new
6 t& q# _4 V6 I+ T7 @3 W - @sp_sprite.bitmap = @sp_bitmap
3 `5 { o1 n6 a2 b3 _6 h - @sp_sprite.z = 5002
' Q: } |; i* |$ i) g: n - update' v* {/ ~% ?$ ^* x" F a) p: g |
- end
6 W- o ^1 ?6 b2 } - #--------------------------------------------------------------------------) t9 S% d- r' C+ m" n
- # * Refresh
, f: O, q3 h4 b - #--------------------------------------------------------------------------8 C7 p7 F; R( D
- def refresh
3 b; A) O8 F: F" i4 @4 {! i) p - return if @old_hp == @battler.hp and @old_vis != self.visible
3 o- z4 z! m% h - self.bitmap.clear1 T5 T% U/ ^% r! h1 n% J2 l- v4 w
- @old_vis = self.visible
/ L6 t2 i. ?. V; L) o - @old_sp = @battler.sp
8 o" D. D: A7 N. p! S; @ - @old_hp = @battler.hp3 [' Z! b4 ^2 g: Y! x2 K
- hp_flow_update
2 t6 y$ c- o' \/ W' R: @3 ?' ^0 ^. T; q - sp_flow_update
9 b% ~4 j9 n- A; H. K W' b - hud_pos_update4 x" Y- H- _4 m0 D/ D8 x5 s4 V
- visible_update
) L$ y) P9 G ?/ ^8 d5 g# X% [ - end
/ k3 m, u2 i5 O - #--------------------------------------------------------------------------* T6 ~. V; Y* t; b0 m7 W
- # * Dispose
V3 f# p" _9 g# ? - #--------------------------------------------------------------------------
' v4 ^$ [- i0 L - def dispose& }$ T# }3 r3 q2 R' p
- #HP Meter Dispose
2 c( T, l, e- ^ - @hp_sprite.bitmap.dispose
7 i3 X7 @) w9 @- M. T3 f" H, M - @hp_sprite.dispose4 O9 u3 t9 A& a$ b# n; d7 S& v# o
- @hp_bitmap.dispose
" O/ X3 z; C, b/ X - #HP Border Dispose4 P+ N4 Z( O( q4 f0 E: r. ]
- @layout_sprite.bitmap.dispose: ~. W G, B! `+ J- s: G
- @layout_sprite.dispose
* }% {1 S, S: i) ]$ D, X - @layout_bitmap.dispose( ^! W+ c$ n, I) H! H! Y, Y
- #SP Meter Dispose
2 L7 q* \: n4 A$ F( A8 K9 y) y - @sp_sprite.bitmap.dispose! i- }( T* u! n6 c3 h# m
- @sp_sprite.dispose
: j* H/ ^/ m# ~' n3 ]: `7 C+ r9 u - @sp_bitmap.dispose2 `. [+ L& F3 X
- #SP Border Dispose. r N: L2 _. O% @$ X8 F1 r8 F( {4 N
- @layout2_sprite.bitmap.dispose- r2 b% X7 `. g' W: ^ K
- @layout2_sprite.dispose2 c& |7 s! _6 I' p
- @layout2_bitmap.dispose
0 R1 S2 d- G* a4 r - end
0 C6 n0 j8 ~7 a: n/ a7 | - #-------------------------------------------------------------------------- F2 f6 _5 u5 z. S$ s
- # * Update0 o; l; l/ z# f+ ^3 Y
- #--------------------------------------------------------------------------
5 l1 l, @5 M$ u; @, C - def update
2 r3 S+ ]# L$ _8 S$ J4 k0 Q - @battler = @enemy.battler
' p% w! H& l9 C; }) k# C& Q) T6 z - return dispose if @enemy.dead? or $game_map.events.values[@enemy.id].nil?7 `3 u! J9 m' {6 M
- if self.visible3 c; w/ ^; L( b. V
- refresh
2 l: p" {$ ?: M" @) e - else
/ ?/ P3 L3 H/ r - self.bitmap.clear+ Y' d, B0 n1 c7 ^# z
- end
* P* w. Q) k$ e9 d' L1 |1 Q - end9 ]2 D: q* ]$ E# `& ?. g
- #--------------------------------------------------------------------------
- H+ b7 y# [, i% j - # * Visible Update
9 E" w# H u7 c& U - #--------------------------------------------------------------------------3 k* v- J" |& Y) Q( B9 P
- def visible_update1 I' u) e7 x' W# ?
- if $game_switches[MOG::DISABLE_SHUD_SWITCH] == true
# E% `7 h/ p, P: H - @hp_sprite.visible = false
# \* R4 Q" D0 E" _8 N8 y6 Y - @layout_sprite.visible = false
; j7 {6 e5 h: T% E - @sp_sprite.visible = false4 R5 A0 P' L, ]# t- x- @
- @layout2_sprite.visible = false: g# H, C- Z$ n$ g
- else+ y9 q/ r0 x8 ^6 j) `2 N
- if HP_HUD == true8 \. }; H" P1 P" h
- @hp_sprite.visible = true
0 ]) @, X$ D3 i$ u' r( G u - @layout_sprite.visible = true
% A `* ^+ F+ P! j% Y9 U! M - else
/ C; r+ v9 ]2 @+ P9 ^ ~! R5 V - @hp_sprite.visible = false
% ?7 Q4 X5 l% K0 h# c2 T/ {0 P - @layout_sprite.visible = false% ~+ N. t! I# C9 o6 H4 H
- end
- n9 N" ~: @' ~, M# w# Y; L - if SP_HUD == true) y" ]( z9 w* y( b
- @sp_sprite.visible = true' {( d u! y. \ v5 ]$ d
- @layout2_sprite.visible = true( ^; a5 F' Y- d
- else: k$ J3 @6 p+ |* c
- @sp_sprite.visible = false* b5 v% L0 o5 C( W
- @layout2_sprite.visible = false& g" P. m. V. X+ [# d
- end 7 |/ q+ v5 O6 c* U
- end
5 Z. T5 B$ Y( t) N - end . f) I7 K" Y1 Z2 ~+ I$ B
- #--------------------------------------------------------------------------5 E: f2 q- b6 N
- # * Hud Pos Update- _4 [* d: ?' }! E& e: y2 d8 |
- #--------------------------------------------------------------------------
: o) n0 b$ X; v- e - def hud_pos_update" V( I% d; S5 E* h6 `6 M" @
- @hp_sprite.x = self.x - @hp_width2 + S_HP_METER_X
: N7 F9 E$ [" a( V' f. `+ m! C - @hp_sprite.y = self.y + S_HP_METER_Y ) n; E9 x9 Q: Y6 |6 ?2 d
- @layout_sprite.x = self.x - @hp_width2 + S_BORDER_HP_METER_X3 ?9 F% X! E; `) T* p
- @layout_sprite.y = self.y + S_BORDER_HP_METER_Y
% R5 [* u+ m6 x: F6 G! a2 B" [$ Z7 w - @sp_sprite.x = self.x - @sp_width2 + S_SP_METER_X
" I8 k v! Q4 u, q i$ U m# R - @sp_sprite.y = self.y + S_SP_METER_Y
# c" `1 X2 e; W8 m, B; N - @layout2_sprite.x = self.x - @sp_width2 + S_BORDER_SP_METER_X7 g4 J z( g* l) ^
- @layout2_sprite.y = self.y + S_BORDER_SP_METER_Y
' x5 G$ \7 [- b# C1 R$ \ - end
" U; X% Y0 b9 k* }$ Z$ V - #--------------------------------------------------------------------------2 z9 e; ?7 X) j" s% W9 I
- # * Hp Flow Update0 ~2 w( a# V0 E) h
- #--------------------------------------------------------------------------
/ V, j; S" l6 @) _* f - def hp_flow_update' T3 z: z, W/ a5 B2 T; k# ~
- @hp_sprite.bitmap.clear/ ^+ `3 Z/ @8 K6 q
- @hp_width = @hp_range * @battler.hp / @battler.maxhp / S5 Q& `$ L5 S" N
- #HP Damage---------------------------------
6 {* {2 ^" R8 c1 \ - valor = (@hp_width_old - @hp_width) * 3 / 100
" H* m+ V! T" C - valor = 0.5 if valor < 1
4 f6 I1 `% p6 Y1 g8 N% O, Q/ ` - if @hp_width_old != @hp_width+ s5 Y1 K/ E6 [; g
- @hp_width_old -= valor if @hp_width_old > @hp_width
- q2 p, F: s4 o& [, {( K9 z - if @hp_width_old < @hp_width % `" b! F4 A* n. G7 \
- @hp_width_old = @hp_width
( g, a' N- b4 W% E! v( `; U! t - end
, ~2 ^; U) P2 R, r4 i* m - @hp_src_rect_old = Rect.new(@hp_flow, @hp_height,@hp_width_old, @hp_height)
8 P" G: X2 w, Y8 m x, L" i - @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect_old) + n: c% {% H+ N6 i$ S$ s
- end
9 J: M4 F5 K$ M% f' f - #HP Real------------------------------------8 h: Q4 A) R$ L2 p" G0 M
- @hp_src_rect = Rect.new(@hp_flow, 0,@hp_width, @hp_height), j: a1 ~3 a% y. n
- @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect)
! {* S, y; {% F2 h2 F8 s - @hp_flow += 2
. m! L! g6 j4 T+ Y6 P- {- u. q* A - if @hp_flow >= @hp_image.width - @hp_range
/ L! m3 i& [$ K; e4 f - @hp_flow = 0
. r7 U; d( T1 {/ b - end
% Y0 ~! h; }+ @; X2 R# J- y8 { - end
+ C9 a* _- I1 k5 z! X" P9 g Y+ z - #--------------------------------------------------------------------------* T3 T4 j v8 X" K, X4 e, S, {$ Q
- # * Sp Flow Update% e' P4 E8 ?, Y% J% h
- #--------------------------------------------------------------------------- H$ a, l1 C% w+ ` K4 i; O
- def sp_flow_update! c: E ]9 @- d4 W
- @sp_sprite.bitmap.clear0 S& g( M* N! ]$ ]6 [3 Z$ ~: N
- @sp_width = @sp_range * @battler.sp / @battler.maxsp : U' l) m! `( j w' ]! s
- #SP Damage---------------------------------
6 P4 W) s X7 Q3 ~ - if @sp_width_old != @sp_width
4 A" }+ d! C. s! \2 |4 P. k - valor = (@sp_width_old - @sp_width) * 3 / 100
9 m5 u6 H% f* j! r# E - valor = 0.5 if valor < 1 5 I' F4 S3 Q& o7 t. v6 d5 K. L
- @sp_width_old -= valor if @sp_width_old > @sp_width
) X/ Y3 X' g ~- \( S k9 I l - if @sp_width_old < @sp_width ?9 h# r/ X9 v* N8 o
- @sp_width_old = @sp_width# j1 ^1 g1 h6 N, m+ u& t0 Q Y
- end v+ I% N' T* P/ T) ?9 K7 G3 ^8 ~0 v
- @sp_src_rect_old = Rect.new(@sp_flow, @sp_height,@sp_width_old, @sp_height)
" i7 G7 K5 Z5 f - @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect_old) & b* R6 N& y0 ?
- end
% }! f, I& o/ _! h& j - #SP Real------------------------------------& |: l( P0 S' b- |% `" u4 A I
- @sp_src_rect = Rect.new(@sp_flow, 0,@sp_width, @sp_height)
8 E$ K1 w* f+ N+ F4 @3 m2 S5 x/ G - @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect)6 X/ K+ L2 j1 Y/ ~& P
- @sp_flow += 1 1 F# C8 W* i* O7 H: _+ k6 |! l
- if @sp_flow >= @sp_image.width - @sp_range; X& s% A+ O3 ~- J9 U
- @sp_flow = 0
: D8 d# U7 C! R - end
- _% C: Q* V/ j( B; o9 L z2 P - end
, r" i7 E8 m e - end; p( e k1 n0 N2 U Z
- #===============================================================================
* R9 p/ R! q- j8 k, O - class Sprite_Character < RPG::Sprite; ~" b: D/ |& ^$ j- ]
- #-------------------------------------------------------------------------------
: F9 ~9 G5 F2 `- m - alias :xas_emini_hud_init :initialize6 F/ ^2 O8 ?' {5 E3 e6 |* p3 {
- include MOG4 I; r& A# i* r+ V' h9 a* F* H7 N
- def initialize(viewport, character)
; Z- y m/ w6 Z. g2 k - xas_emini_hud_init(viewport, character)
; {2 l/ W7 }( o5 N- i - @viewport = viewport
* U0 \; J5 u$ L# f, X, I8 N$ J - return if @character.battler.nil?1 D$ J/ o% l' _
- return if XAS_BA_ENEMY::ENEMY_OBJECT.include?(@character.battler.id)
% M$ O! w% g4 N G t4 I2 h9 N - return if XAS_BA_ENEMY::ITEM_ENEMY.include?(@character.battler.id); g2 I" D8 c. b7 h- T4 t: i8 g
- return if @character.battler.is_a?(Game_Actor)0 n1 x; U J( F/ S
- @bars = S_Hud.new(@character, @viewport)% s! [& E/ B. C1 h6 G! F* h
- end
1 q/ R8 b! i( \2 h7 J% A% @ - #-------------------------------------------------------------------------------) ? z6 ?$ ]7 n3 m& H
- alias :xas_emini_hud_up :update
" F5 p9 J7 w5 e) w1 j/ { - def update
/ ^2 i3 K' P: D$ r - xas_emini_hud_up* m, t- b% S; [+ B
- return if @bars.nil?
- z. c4 @& M9 ^. V( i: Q - return if @bars.disposed?/ J( Q- ]$ u: _" K. H- Y2 s
- dis = ($game_player.x - @character.x).abs + ($game_player.y - @character.y).abs2 Q4 c; v9 M3 H7 Q; |
- @bars.visible = (dis <= RANGE)! v5 [2 T$ F" ?9 |3 x% ^7 A0 P4 U
- if @bars.visible
* U! h6 S/ H$ R7 T+ D+ |1 f3 h - @bars.x = @character.screen_x# - @cw / 4
0 R& O& G; d5 z4 ?5 J - @bars.y = @character.screen_y# - @ch / 4" ~7 U H9 Q' }) ~; N' O. Q
- end
. P- B$ _( s, k: [" M) @8 l. B - @bars.update
7 g7 J$ C% t0 z2 A - end
2 x0 {" a8 x8 K# M: Z; H. M& ? - #-------------------------------------------------------------------------------& ^* m8 M3 b4 A: N
- def dispose
0 u: Z+ y0 Q5 R0 b# E% j - super
" B: e" ~- K, I( U6 b - @bars.dispose if [email protected]?
# g9 o- `. y& u* v2 f% }$ C - end
. W( ?" I# W3 I6 e+ i2 V - end
+ A' O+ }2 ?: Z+ |: E
4 p* @0 }7 b) k! l- $mog_rgss_s_hud = true
复制代码 * i/ g" c9 H8 x/ X; K1 U) Q; [
# b. G% F0 }0 t7 e: _
% N: N$ m/ D. y: n上面所說出錯的203行內容為- J: ?0 \5 w, {) b
@hp_sprite.bitmap.clear
: A. G& f4 \+ z2 d( k9 Q( L
2 u! D' I% `3 O" r$ t3 a想知道怎麼解決& c5 O& J' P7 t, P& F7 E- } \9 m
; J0 f4 o/ h& g* W$ h
該腳本支持3.82
% \# y1 ]1 Y; U: X. N; E m/ q6 H. e" b. G
下面是圖檔,要塞在Windowskin下' f1 D4 q( |% Q& B8 |- i- n
7 ?% G$ B2 S7 e6 h
S_HUD_Graphic.rar
(12.36 KB, 下载次数: 49)
# B/ e+ G1 j& X8 n# H
1 n/ \6 S8 c. E7 O K, x
! b+ ^( u& q% u- U, a" U
# B! Q) U7 i' }! _ |
|