| 赞 | 0 |
| VIP | 0 |
| 好人卡 | 2 |
| 积分 | 7 |
| 经验 | 31761 |
| 最后登录 | 2026-2-12 |
| 在线时间 | 1808 小时 |
- 梦石
- 0
- 星屑
- 687
- 在线时间
- 1808 小时
- 注册时间
- 2009-7-12
- 帖子
- 443
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
這是我將官網的S_HUD修該而成的怪物血條! T* q% g& F, v' w6 [, E
會在每隻事件怪物的腳下顯示
$ [ Z$ ~( i* D2 o0 p問題是不知道為什麼3 C$ X7 A# |5 Z$ O6 p1 G- i
有時打怪打一打會跳出: s0 y, V" a7 `
---------------------------& X( a, c" ]6 `8 |9 w
XAS7 l: w: S3 T: s* d2 C0 @
---------------------------
2 k+ n5 ?# R: e' ~: L脚本 'MOG - S HUD' 的 203 行 发生了 RGSSError。+ c5 K$ G; Z$ d% P5 z. M
4 t6 L/ `0 l) u+ T( Y! b! {disposed bitmap
( G1 [; W2 v/ j0 Y---------------------------1 |: s& V. X& G: M) b- K9 g9 s0 `6 O4 y
確定 4 X4 [$ ]/ }' [$ w
---------------------------
% u: l" [" f$ E, Z' G. x; E8 E3 j) N1 ]
這是腳本
! J+ r- g$ W! x4 r9 x# X. A6 v: u
+ W0 O) `$ |2 f1 c8 k! ~: B9 P6 Z- #===============================================================================1 J% Z [! ^! M
- # MOG - s Hud 1.0
( L/ L" v: ~. A+ h2 B - #===============================================================================
& d' e: s; `( _* q3 d6 `2 Q! C - # By Moghunter 1 [, G5 L0 {- C, ^! d
- # http://www.atelier-rgss.com
3 s L! z1 t, \) p, c3 _ U3 j - #===============================================================================8 u! f$ p0 ?% X. z. K4 V
- # Translated by Calvin624
; K0 @' r- {. g( ?% s9 D1 B9 M2 ?0 U, a ^ - # http://www.xasabs.wordpress.com
; Z1 P3 f; t$ ^. _1 ]1 U1 q: D - #===============================================================================
1 k+ O! A- ?$ ` - ###############################-DESCRIPTION-####################################+ ^3 Q0 E4 f4 e, x
- #===============================================================================6 Q% l6 `1 L4 i* E2 k; A
- # Personal HUD – displays the HP and SP below the hero.% E3 f/ j% o! T
- #===============================================================================; P$ P) w- T4 Q! d7 n6 s+ o
- #
4 J. L+ M+ H3 M3 F& s - # Graphics required:
( V. d. j9 b; E+ l6 N - #
& L3 N: f) x5 f$ j, `' L# S - # S_Border_HP_Meter.png
6 f. x. k+ O# S - # S_Border_SP_Meter.png* O7 w! D/ v! h$ B* K8 D0 P `+ o
- # S_HP_Meter.png9 H8 }# M: b; b( Y4 u/ @" }/ w
- # S_SP_Meter.png c) e6 C2 u! [5 E8 F
- #
7 J& @2 m8 v% s, u# l1 D- K! Q - # All images must be in the Windowskin folder.
$ X7 c/ V0 S$ a/ ]- q - #$ m7 S4 n( y' J) A( a0 `3 ~. i* P
- #===============================================================================
2 R0 d. r. a3 M3 \/ c+ w - module MOG7 b0 @" Y) w( z7 ~7 t" K; _( W
- VISIBLE_DEF = false ; _% P: N* A) D1 o* }7 b1 D
- # Show HP meter?: Z8 Y ~3 K( p% u8 B
- HP_HUD = true& t [5 B( W2 c( K& q/ V
- # Position of the HP border3 L1 x9 ~ G: Z+ O# {; ?
- S_BORDER_HP_METER_X = -2) {2 ^( a( Y! D( i
- S_BORDER_HP_METER_Y = -2
1 f4 I. F4 }; ^) q, R+ q - # Position of the HP meter# w" j; ^. V) ^, w. @; i. P
- S_HP_METER_X = 0/ C5 ~) S) t3 [2 l9 U
- S_HP_METER_Y = 0
) ^5 l) }. F$ \& n* u1 l q - # Show SP meter?5 m2 k/ L. k4 o: Q' B" v
- SP_HUD = true4 h# m0 Q! G1 l$ T% ? P5 x' h% x$ ?
- # Position of the SP border: X. q' ?, ~5 n7 I" Y% n
- S_BORDER_SP_METER_X = 0
/ l8 G8 v3 K, I- H& F7 I+ u - S_BORDER_SP_METER_Y = 10 + N% i) k7 s# X/ [7 d$ p; z7 X
- # Position of the SP meter8 B# b7 @+ I' i3 a' n2 J3 s4 L
- S_SP_METER_X = 01 [/ ~- Q. C; X* s
- S_SP_METER_Y = 10# v) ?, p3 C6 N: w" M( d) `; D& T
- # Switch to disable the HUD
7 x- s, J. h8 M( t - DISABLE_SHUD_SWITCH = 59 N( r% s# }4 [2 P: l) [8 `% j
- RANGE = 20" N! I, s1 y: }7 }' G* |0 B
- end
; }/ Z: U# F# p. g - #===============================================================================4 F% H. f; V7 S) G: r/ }
- # S Hud5 ^, b% T( ?% L+ L% {
- #===============================================================================3 t6 l) F6 O% p+ D! A0 b% n
- class S_Hud < RPG::Sprite
! Y2 l8 U" g s$ K; p2 a/ ?8 B" P - include MOG' Z( |: A) k% Y- i# Z
- #--------------------------------------------------------------------------
/ [( A4 F2 e) T p- m/ R - # * Initialize9 \1 d9 k- i( ]5 t% J D
- #--------------------------------------------------------------------------" R& ` x! x0 Q% g1 A }
- def initialize(enemy,viewport)
5 k) b) z3 y6 `4 A& p5 R) O& R - super(viewport) 5 U# ^1 X* A2 Z$ N
- @enemy = enemy
# L+ }# |4 r$ `" W2 w9 |; b - @battler = @enemy.battler( X4 x# x9 ~5 D% }6 h
- @old_hp = 0
$ z0 p5 ?8 r( D$ C - @old_sp = 0! r! N8 E" B- m3 _
- @old_vis = false
% A0 A4 Q, P4 k* W% D" S5 U - self.bitmap = Bitmap.new(100, 100)
0 Z+ U" |/ |5 g" T! X - self.visible = (VISIBLE_DEF)#false
! _( _! a& R* y - self.z = 100
5 n7 u! f/ ]2 ^: d. v& A% j; {5 V9 P7 ] - #HP Border -------------------------------------------------------------------/ B. u+ T# F7 ?" P l2 N% J2 n
- @layout_image = RPG::Cache.windowskin("S_Border_HP_Meter")
3 k3 z# J, Z& l - @layout_bitmap = Bitmap.new(@layout_image.width,@layout_image.height)5 e8 x+ B+ Q9 S# P0 T0 w: F
- @layout_sprite = Sprite.new: \5 c9 _2 b$ c' f% t6 V4 t
- @layout_sprite.bitmap = @layout_bitmap+ J6 r, }! I9 Y( ^' X
- @layout_src_rect_back = Rect.new(0, 0,@layout_image.width, @layout_image.height)
" ]( [5 Z5 G; c9 T - @layout_bitmap.blt(0,0, @layout_image, @layout_src_rect_back)
1 g4 P+ |2 q0 h# p& N2 ^$ X4 f - @layout_sprite.z = 50019 x! L x8 } Z
- #HP Meter ---------------------------------------------------
' f) B. O9 i4 H) z: ]" ? - @hp_flow = 0
! s7 v/ g2 J4 `& z5 b+ j - @hp_damage_flow = 0
) R8 ]! V( ~4 U0 |) ^) C - @hp_image = RPG::Cache.windowskin("S_HP_Meter")+ w; C$ A- [7 T
- @hp_bitmap = Bitmap.new(@hp_image.width,@hp_image.height)# M% F( x; z- G3 b0 s
- @hp_range = @hp_image.width / 34 r. i) o; {1 \$ I: C
- @hp_width = @hp_range * @battler.hp / @battler.maxhp 2 S$ M- P8 v" b2 m6 w7 b7 I
- @hp_width2 = @hp_range / 2
( i0 ^3 b' q* _ m* q/ w, z& } - @hp_height = @hp_image.height / 2: ? O; T3 b! N0 p) ?
- @hp_width_old = @hp_width
G) a7 A9 j# e! G5 c# }9 o - @hp_src_rect = Rect.new(@hp_range, 0, @hp_width, @hp_height)& j# O; v* ]) [, s6 P ^
- @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect) ! ?% z! e" T& d) [
- @hp_sprite = Sprite.new
5 Z% K0 b6 b. f+ \4 @ - @hp_sprite.bitmap = @hp_bitmap1 |: ~: ^( X" e$ r6 l
- @hp_sprite.z = 5002
/ P2 B( q! p/ k - #SP Border -------------------------------------------------------------------
- D4 E( q4 e" f% R - @layout2_image = RPG::Cache.windowskin("S_Border_SP_Meter")
5 j) C6 V% y- W* |5 A4 i) Y- s - @layout2_bitmap = Bitmap.new(@layout2_image.width,@layout2_image.height)
! z+ D7 F( z; r# P - @layout2_sprite = Sprite.new: P6 B* z; \' K/ q
- @layout2_sprite.bitmap = @layout2_bitmap j5 f9 {3 K n7 L6 x: n8 ~
- @layout2_src_rect_back = Rect.new(0, 0,@layout2_image.width, @layout2_image.height)8 V- h- j: g0 R
- @layout2_bitmap.blt(0,0, @layout2_image, @layout2_src_rect_back)
# M( R1 ~- g( t4 V& g - @layout2_sprite.z = 5001 ( R( \# v' F2 N% C
- #SP Meter ------------------------------------------------------2 v2 j% ?2 Q5 n, V7 w
- @sp_flow = 08 W8 l( \. R; H. b
- @sp_damage_flow = 0" U* O5 Q( Z) i. u
- @sp_image = RPG::Cache.windowskin("S_SP_Meter")$ w* H! C7 ]2 c4 S$ E+ W1 f8 I" c
- @sp_bitmap = Bitmap.new(@sp_image.width,@sp_image.height)$ |" q5 u- v) X; D
- @sp_range = @sp_image.width / 38 p6 X, }; v; n; b1 f* }7 l
- @sp_width = @sp_range * @battler.sp / @battler.maxsp 2 }' `$ X# K2 L" e6 q( K5 ]
- @sp_width2 = @sp_range / 2% R! }2 R& m) m& B( M, a b
- @sp_height = @sp_image.height / 2
( D# C: Z+ T* x8 E - @sp_width_old = @sp_width0 O, s: x8 u: d/ ]6 i* c& C
- @sp_src_rect = Rect.new(@sp_range, 0, @sp_width, @sp_height)
# X5 D0 Q% g: @) K( f7 t) ~2 W+ c - @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect)5 a3 s) r3 k! x
- @sp_sprite = Sprite.new& x# Q5 x9 L) `9 z* S9 O. l, U( y
- @sp_sprite.bitmap = @sp_bitmap5 k+ i) M' l. B6 ^3 T
- @sp_sprite.z = 50027 ^+ A- a9 D6 D3 a" i" \* A
- update
7 v9 ]! s5 I, a8 \; h - end
B: E. W/ T: H% P - #-------------------------------------------------------------------------- o% B. K3 V% V; V& z9 ~, H/ V
- # * Refresh
- k, e. r2 H" K - #--------------------------------------------------------------------------
8 I" s9 a' V' g E# ~2 G - def refresh- F- p: g2 S2 ]) {& e- D* W, i5 Y
- return if @old_hp == @battler.hp and @old_vis != self.visible; _8 s; _! C3 ^2 D C6 w
- self.bitmap.clear
P% Z2 j1 T y9 e& O" J - @old_vis = self.visible
9 }" C+ Z7 m) w; o% f - @old_sp = @battler.sp* ~/ e" D8 S) _
- @old_hp = @battler.hp9 o7 @! I* M! n' \ p
- hp_flow_update' Y$ Q9 t# j: e5 T# R
- sp_flow_update* h2 V! Z, c. X6 t
- hud_pos_update
; s( H0 V% c+ |. Z) ^ - visible_update9 m! p8 o: i% W3 M( N) d$ a6 N ~* r
- end
5 I1 C! j, Z) `9 e( E G- l- ~" ^' k - #--------------------------------------------------------------------------
# a' ]' W2 P f" P! k) Y# M' \ - # * Dispose' i5 R" z3 ^/ a' u! i
- #--------------------------------------------------------------------------
- h$ v& u( j6 d8 f$ i - def dispose! g0 C, ?( s$ Q1 f9 b
- #HP Meter Dispose+ p9 f, W5 p- p' s+ R& R
- @hp_sprite.bitmap.dispose
3 \) \, k" `( T9 b. d* Y2 A - @hp_sprite.dispose
0 q7 B" T; U# R0 f$ }( s - @hp_bitmap.dispose, ~, L* ?5 j% M: U
- #HP Border Dispose
9 |; [( d4 l. M0 U( O0 t! v - @layout_sprite.bitmap.dispose& a& z9 x9 L/ C* b1 \* ]
- @layout_sprite.dispose
* c d/ Z% X. Z9 n* y: m- d - @layout_bitmap.dispose
* [4 \8 _3 w) j! @- s0 T - #SP Meter Dispose
! m1 ]3 [0 S3 l* X6 e. v0 | g - @sp_sprite.bitmap.dispose u1 Z7 O5 ~$ K ]& h
- @sp_sprite.dispose
: G( Y3 g: h' h& Q. Q - @sp_bitmap.dispose6 W4 ]; C) i3 U$ v) W7 ^
- #SP Border Dispose- h3 L* G' t/ j1 l1 F/ V1 [' G
- @layout2_sprite.bitmap.dispose
5 B v3 ?- T/ O6 x7 [. R& ^ - @layout2_sprite.dispose) ]- B8 v: _' n9 j- o( F
- @layout2_bitmap.dispose
* b7 w; q* l8 J. t - end" ~. T5 r1 t) \ H/ j
- #--------------------------------------------------------------------------9 q) \9 K7 P) J, e7 o0 H
- # * Update
2 U7 s1 @' g) a l* ]/ U - #--------------------------------------------------------------------------
; g4 ?5 P9 }! z. o5 Q - def update
' z6 {1 }1 ~2 o- f% f3 r; ]; ]$ J/ z - @battler = @enemy.battler 6 X6 g4 o$ j$ d3 C( ?& V7 T2 e
- return dispose if @enemy.dead? or $game_map.events.values[@enemy.id].nil?
2 A* C' C! z7 _6 f+ L/ ] - if self.visible
/ k7 q% ^$ a( Y. q( j# ]& D z - refresh
) Z4 I* z5 T8 a# ~% v/ A- E - else
) f8 T, J6 i* W) q$ { - self.bitmap.clear1 v" b8 s+ e- W( H' \
- end
2 M0 X" N }' H4 ^ - end1 w- v7 } h* a' B4 c2 P
- #--------------------------------------------------------------------------8 P& g9 O$ d9 f* d. K% d
- # * Visible Update
9 k$ T" {" k2 ~7 ^5 V - #--------------------------------------------------------------------------* d* M( s F# _) p
- def visible_update9 e& X+ A ?( K) _/ U
- if $game_switches[MOG::DISABLE_SHUD_SWITCH] == true
& v( b4 I- v }8 n/ I - @hp_sprite.visible = false
1 o: T+ w7 a( Z( l5 ^$ a" K - @layout_sprite.visible = false
. e. k; r+ {! `9 x; R - @sp_sprite.visible = false8 |6 w9 M% T, s
- @layout2_sprite.visible = false
6 \3 e# o. B5 {; ], b' t" K* a - else
/ C: ?, B# _0 u; B9 D - if HP_HUD == true- m3 V% I1 x0 X$ k4 ?. ~
- @hp_sprite.visible = true" f5 e0 @8 \9 e% _* ^# s4 Y
- @layout_sprite.visible = true
0 Y. M' i1 q# ]9 ?* g - else
- X: _( ^) I4 s4 f/ D - @hp_sprite.visible = false
7 `& g) C0 l; S N$ O7 K6 u - @layout_sprite.visible = false
; H! Q1 ], a7 j - end
. f, K5 n+ D3 u: n0 m9 \; i) K - if SP_HUD == true
* p' |$ e& H3 s! q: v4 z | - @sp_sprite.visible = true& F4 D. }" V) w: y6 M! s- B" t2 }
- @layout2_sprite.visible = true5 v; z7 S: Z4 M# a" V
- else
( k: C0 [+ t" I% R. k8 ^6 u- m5 _' A - @sp_sprite.visible = false
, X# d U3 E8 Z0 j1 O6 i# A - @layout2_sprite.visible = false
% T# ^# s5 i' O0 H9 m# { - end
% u7 k$ S3 @" C" B# N/ J - end
) w6 b7 e% q3 U7 M - end 6 D+ g& F4 D5 N; \6 f
- #--------------------------------------------------------------------------1 ?+ i2 I" s/ z% G u" ~: H' `
- # * Hud Pos Update
% | j: z3 S N9 D - #--------------------------------------------------------------------------
4 b/ d6 A+ u P8 m1 e7 d. D- x# r$ q" L - def hud_pos_update3 b8 @0 u5 U: u% j& O' j
- @hp_sprite.x = self.x - @hp_width2 + S_HP_METER_X) Z" o" t' G! G0 t2 E1 D
- @hp_sprite.y = self.y + S_HP_METER_Y 5 u) ~; l0 \. ?; J& q6 i/ p( M7 T0 B
- @layout_sprite.x = self.x - @hp_width2 + S_BORDER_HP_METER_X o, C7 y) @2 r$ d/ [ Z. a
- @layout_sprite.y = self.y + S_BORDER_HP_METER_Y ! D4 p+ c* _4 H m/ C
- @sp_sprite.x = self.x - @sp_width2 + S_SP_METER_X$ K2 d9 E4 p, y$ U% g+ ~' t
- @sp_sprite.y = self.y + S_SP_METER_Y " p$ c# p$ R0 q5 x @' I
- @layout2_sprite.x = self.x - @sp_width2 + S_BORDER_SP_METER_X
. I/ Q4 T* O7 c( O5 p - @layout2_sprite.y = self.y + S_BORDER_SP_METER_Y 9 o M5 | |# Y
- end
X! G' O* C1 A; v' |- b; Y - #--------------------------------------------------------------------------
; e- V# F3 H+ X! N6 U" c4 ?6 { - # * Hp Flow Update0 n2 J& J2 o1 K, t5 U5 G2 @" E
- #--------------------------------------------------------------------------
# ^! `2 v- i( p1 b - def hp_flow_update
- ?8 ^( E1 N8 E$ }# X - @hp_sprite.bitmap.clear% f1 @3 N, L/ F* x! h+ Q
- @hp_width = @hp_range * @battler.hp / @battler.maxhp / E; `! R" L' f" t
- #HP Damage---------------------------------
( v# d" c3 Y1 o5 }. f* P' c - valor = (@hp_width_old - @hp_width) * 3 / 100
2 [8 p& g+ \# `; q - valor = 0.5 if valor < 1 # G+ S, @; H6 f% @
- if @hp_width_old != @hp_width2 A4 }# B$ n5 S; |& s1 ^
- @hp_width_old -= valor if @hp_width_old > @hp_width
/ D7 a; t; m5 N ?( @ - if @hp_width_old < @hp_width ' i- _% m1 Q9 F3 o
- @hp_width_old = @hp_width
# z7 Q/ _! h# s+ z& [ - end
" w# @. h! W5 e$ B, ` - @hp_src_rect_old = Rect.new(@hp_flow, @hp_height,@hp_width_old, @hp_height)
8 Y( t: d, A6 i+ ?# r$ X - @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect_old)
3 @% V, F" E7 t9 Z+ A - end * t2 X* _1 R" Z6 j/ Q9 F
- #HP Real------------------------------------
- q' x) V- T* \( p2 a5 A1 {: Z% f. ? - @hp_src_rect = Rect.new(@hp_flow, 0,@hp_width, @hp_height)
6 @6 ~ j. ~2 Y5 ^ - @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect)
5 E. h4 A4 M1 |! g. j* p - @hp_flow += 2 + v' e k( p. {* l
- if @hp_flow >= @hp_image.width - @hp_range
( D9 B" |7 z+ [ - @hp_flow = 0 * T5 t& n+ x3 x" P5 }
- end7 H5 v/ F7 ?# V2 I
- end
! T5 {% _- S# x, ^ - #--------------------------------------------------------------------------
9 p+ c: `, \' D Q4 V) M# ` - # * Sp Flow Update
F$ p* J+ A7 e+ i: W - #-------------------------------------------------------------------------- \4 G% G/ s" M% o; R9 A
- def sp_flow_update) h9 Z# ^1 S! B* A
- @sp_sprite.bitmap.clear6 L3 n! {4 X9 m0 L4 q# c5 o
- @sp_width = @sp_range * @battler.sp / @battler.maxsp
% x4 x: { @5 o5 P2 d$ n+ a1 p6 q - #SP Damage---------------------------------
5 E/ @- Y, x( s. {, J4 a- J - if @sp_width_old != @sp_width$ O4 P" L) {8 e
- valor = (@sp_width_old - @sp_width) * 3 / 100! r$ w3 z' K/ ~" u7 D$ y O
- valor = 0.5 if valor < 1
9 `/ F# I/ c j; n7 g& ^/ n - @sp_width_old -= valor if @sp_width_old > @sp_width
4 n ~2 s) f0 s2 ]0 H - if @sp_width_old < @sp_width
! ]7 ]8 Q" c$ }, \- O4 } - @sp_width_old = @sp_width* z5 w M0 w. w2 h H: h3 m
- end ( E6 ?: Z: ^: b7 i) E
- @sp_src_rect_old = Rect.new(@sp_flow, @sp_height,@sp_width_old, @sp_height) `- z' R' B8 `3 d8 b
- @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect_old)
3 ?* @5 v# y1 v/ N4 X! _9 \ - end: Y$ G3 _6 q* Y
- #SP Real------------------------------------$ B2 y% {0 W. G" e
- @sp_src_rect = Rect.new(@sp_flow, 0,@sp_width, @sp_height)! \0 j. m; K, i/ A
- @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect)
, R( m1 V7 M- {$ a. D p3 |8 w - @sp_flow += 1
" h& J3 L1 b8 Q' F0 Y% a: c/ d - if @sp_flow >= @sp_image.width - @sp_range
2 g# C- Q) }: P5 c; Z5 } - @sp_flow = 0
( O( }$ V" k/ T' p4 @ - end( V, C" P" P* w& U
- end
+ N$ o; R; H( } - end
8 { ~) A- l; F) ], o; w4 p$ b - #===============================================================================- J4 @5 v+ t; c
- class Sprite_Character < RPG::Sprite
! T$ o A8 o+ W1 P - #-------------------------------------------------------------------------------
* v- o6 n# p! n7 i* k% F3 M# e - alias :xas_emini_hud_init :initialize3 S0 Z' D, Y& `8 e) e. N+ G( a- f
- include MOG! a& Y" T: h k. w5 m
- def initialize(viewport, character)
- ?2 a, n; R6 o/ R% x& \4 f" g - xas_emini_hud_init(viewport, character)
& ^+ e/ z9 |& a2 k! K - @viewport = viewport
$ d+ Z; ?: l# g3 Z6 f! z - return if @character.battler.nil?' w: \- V) N* _/ }# b- Q0 T
- return if XAS_BA_ENEMY::ENEMY_OBJECT.include?(@character.battler.id)
M" i S' i/ M: z. \ - return if XAS_BA_ENEMY::ITEM_ENEMY.include?(@character.battler.id)1 q, O$ F4 r! q/ Y9 ?3 Q3 l
- return if @character.battler.is_a?(Game_Actor)
$ h9 v/ L Y+ D# v: r1 k - @bars = S_Hud.new(@character, @viewport); A" A2 m* v# B
- end- t0 s: m( I( |1 J- T# p# h- \
- #-------------------------------------------------------------------------------
9 ^9 b) ?" D8 w; |* w( A/ J - alias :xas_emini_hud_up :update
7 S; x# | Q# Z, i - def update
* y' C5 u9 R F! u - xas_emini_hud_up
" r6 U! S) v& {7 s - return if @bars.nil?3 p2 I7 u/ O( f0 [6 ^1 `; h
- return if @bars.disposed?
/ S3 X5 E/ R$ i K# e# r - dis = ($game_player.x - @character.x).abs + ($game_player.y - @character.y).abs
( h4 k# D- h' w/ i - @bars.visible = (dis <= RANGE)/ n2 Z8 x! {; L6 i8 j9 |
- if @bars.visible' G5 C# ~7 `- @1 t! g3 V
- @bars.x = @character.screen_x# - @cw / 41 _+ S; c0 l. P/ D7 c, Y( C4 j5 |4 _
- @bars.y = @character.screen_y# - @ch / 4
# v9 l5 `- ?4 g - end# G4 w; G4 n' T/ N' e' M
- @bars.update. W& j0 J# x2 T1 \- S0 \6 x) g
- end( L1 ^' m; f, ]2 A
- #-------------------------------------------------------------------------------6 `$ ]) M% P3 g# ]1 }
- def dispose* X& R2 c" O$ H: _
- super
4 p4 l- n2 h: ]* C" S/ w" \- { - @bars.dispose if [email protected]?9 Z$ L/ W$ ?$ L$ f9 @& G7 R6 }7 F
- end& h3 k) [( s) \; x) P) n- {
- end2 V! M9 I( E/ ?7 W8 @( J
: j7 i2 b+ I& a8 v1 _1 h- $mog_rgss_s_hud = true
复制代码
4 `7 e, [! E7 |
. m9 O9 V" n) e3 }( p1 M+ e- e
5 @, ?6 L& w6 T+ U; H) B6 k上面所說出錯的203行內容為6 \5 w- l& v8 G- ^- j
@hp_sprite.bitmap.clear% q+ u# v0 n% l) o3 X7 ~$ K
9 O0 H, ^& k1 n( C' h想知道怎麼解決/ h7 d% L N; R" f! O* `+ d1 @
( E# K w, m+ ]) M7 s4 p( W該腳本支持3.82
: b$ t& C+ Z: b4 M- e% b6 B8 o9 `% w, h+ `
下面是圖檔,要塞在Windowskin下
! A% S) V" X$ M$ R6 R3 _/ [+ M& |* x5 A; |
S_HUD_Graphic.rar
(12.36 KB, 下载次数: 49)
7 e! D- @) ]: j, {5 f
+ X5 Q$ i- H. X: M& w9 q7 ~
* Q" w+ L( _1 c' X* c5 ^* ?5 T# J7 D; c- j/ f& B' o3 ]+ ]0 ]
|
|