| 赞 | 0 |
| VIP | 0 |
| 好人卡 | 2 |
| 积分 | 7 |
| 经验 | 31761 |
| 最后登录 | 2026-2-12 |
| 在线时间 | 1808 小时 |
- 梦石
- 0
- 星屑
- 687
- 在线时间
- 1808 小时
- 注册时间
- 2009-7-12
- 帖子
- 443
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
這是我將官網的S_HUD修該而成的怪物血條
3 b0 u, M( I5 c5 @; t. {6 |會在每隻事件怪物的腳下顯示
- z% x. m' ]4 b問題是不知道為什麼
9 S5 Q3 m+ q1 S" v- p6 M有時打怪打一打會跳出
& x5 X/ h3 K5 E' d7 o& \) `---------------------------
. f8 D; B4 b3 `) tXAS
- B9 j2 P& Z- @% B---------------------------5 ^* v' B+ V& B) Z. f4 i) |
脚本 'MOG - S HUD' 的 203 行 发生了 RGSSError。
9 L# O1 g( e$ T% @! o( s4 A6 V1 B8 J3 y) U f) }+ h' i3 A
disposed bitmap
3 y) \. {& a1 l) ]/ W---------------------------
0 _' f, V/ _% J% _3 h8 `6 Z! U確定 5 A# }4 F$ {6 D0 b9 p( k6 m
---------------------------
# C. P3 m9 _1 r
2 K2 N- a0 [" u3 Z h, f這是腳本
0 M/ [/ p6 P i2 M' k5 x: V4 v4 m, R( c; K
- #===============================================================================
" j0 X+ ]/ Z; L- M, I9 b+ Z- E - # MOG - s Hud 1.0
4 A9 ]1 D' e5 u; U7 C0 Y2 P; i' @/ Z6 ] k - #===============================================================================
1 O. V, ?7 D, b! j; Z! p6 u1 N- T - # By Moghunter 0 j3 u5 `3 S' q/ g
- # http://www.atelier-rgss.com
! E: l3 o3 Z- n: n - #===============================================================================
/ V, `4 Y6 \& q, U+ n - # Translated by Calvin624
2 [! s8 t+ ~2 B8 M - # http://www.xasabs.wordpress.com
, M" s! E" }( K4 @ - #===============================================================================
/ _7 |1 s. a2 W - ###############################-DESCRIPTION-####################################
. i2 O1 V% }5 J - #===============================================================================
& Y+ m N0 ]0 D, u5 { - # Personal HUD – displays the HP and SP below the hero.
& p* D7 B ]! i* Z - #===============================================================================
8 t: S% T, V' s/ @ - #" w) c8 h L1 P) N" m+ V" K
- # Graphics required:6 Y) s5 y3 }+ l6 f6 u. _' e0 ?# B) ?
- # ( w7 j" T& P' V1 e' s. E5 J
- # S_Border_HP_Meter.png' Z- c# X0 c+ p' ~
- # S_Border_SP_Meter.png
. X7 U' ^! H9 n: O2 K _ - # S_HP_Meter.png
- Q( c K u, w9 p1 w7 t4 Z5 c - # S_SP_Meter.png+ x7 @! R! Q# z- ?3 }
- #) B8 T' y2 O) c& D0 k
- # All images must be in the Windowskin folder.
# U& F8 e6 z/ x) |, { - ## k+ [( o9 ?. V3 [
- #===============================================================================# L0 S2 T- g3 Y8 e+ d$ e8 F
- module MOG! k0 v7 a& Z" ?% j* B
- VISIBLE_DEF = false 9 a1 O5 |. w9 l- L4 }
- # Show HP meter?
2 g" a# ]3 g+ ?' e8 U2 v - HP_HUD = true6 r/ Q: F7 N' [ \; `) ~, L0 D4 V/ H
- # Position of the HP border
1 p) ?3 h, f9 ~9 @' B% y# ?; w' R - S_BORDER_HP_METER_X = -29 p9 q1 l3 ^5 l9 F8 U- o" Z! Z3 \
- S_BORDER_HP_METER_Y = -2 , V; O" u. `- Y t6 Z1 b1 M. T8 m
- # Position of the HP meter. h# n. l% I2 G8 C: W7 ]; G2 k
- S_HP_METER_X = 05 L# W/ O& E9 u2 s2 A8 v
- S_HP_METER_Y = 0$ `7 `& |+ ^& v) I7 B# {" F l
- # Show SP meter?) ]( T& G/ {; j: i1 `" H" n
- SP_HUD = true/ }* I2 J+ B, A% D8 a
- # Position of the SP border' ]; G# q: F s2 A& ^! y0 Y. ~" _7 _, L
- S_BORDER_SP_METER_X = 0
1 @# A$ v( k& e6 K- `3 L - S_BORDER_SP_METER_Y = 10 7 j' H5 W' d$ T9 T' K8 A
- # Position of the SP meter
; N/ n3 l3 e* c2 d - S_SP_METER_X = 0
2 L* Q( r% u2 H! M) u4 @' M* t" N* ]/ @ - S_SP_METER_Y = 10
% Y+ ]4 D' q+ K6 ?% a+ d- m - # Switch to disable the HUD
) ?/ h ]! O2 g& V$ W% d - DISABLE_SHUD_SWITCH = 5
) C* [5 I; d; t- U U* y: d" m - RANGE = 201 h |' _3 h, w/ u0 w7 x
- end
8 [% p% x( q2 ~) w( v7 g, `6 D3 ~% k - #===============================================================================
- P( E9 x3 M3 b2 L0 P - # S Hud3 W9 t. W, ?8 |3 W5 H- s
- #===============================================================================/ }9 U, N6 O/ ?7 P* v1 C. d
- class S_Hud < RPG::Sprite
9 r1 T* L- q1 S) Y9 E" G - include MOG
, Z6 T8 b8 x0 P5 K" c1 X - #--------------------------------------------------------------------------7 [4 L! D$ D% |1 c- p& [) k8 e2 U
- # * Initialize1 E+ i; f1 n: j4 f$ i- J# V5 l
- #--------------------------------------------------------------------------
# P; Q& O% T/ _9 W# Y- _, @9 B3 D - def initialize(enemy,viewport)3 \5 t8 [) j3 v3 {
- super(viewport) ) Q8 b* k3 _+ N+ r5 j* @& S
- @enemy = enemy. y0 X% U2 B4 D6 L/ I: |0 X! T( y
- @battler = @enemy.battler
6 b8 z2 N% K4 A+ ` - @old_hp = 0- M; b9 L" S5 Y% a9 Y0 G
- @old_sp = 0 O7 l8 y$ l; e9 k% V& L
- @old_vis = false
6 f5 R. A' v3 d+ J' I9 @! b - self.bitmap = Bitmap.new(100, 100)) H" t w! ~- f+ v8 R2 E$ \1 @
- self.visible = (VISIBLE_DEF)#false
7 J/ s1 @" }7 L7 E4 P7 N) @1 l - self.z = 100
) [4 W3 V' \- W! x! _ - #HP Border -------------------------------------------------------------------
9 S; I) A) \9 f5 e0 D - @layout_image = RPG::Cache.windowskin("S_Border_HP_Meter")
* P/ _4 m* l* [. _' E7 I: ~ - @layout_bitmap = Bitmap.new(@layout_image.width,@layout_image.height)
- @; @6 t4 A+ i; K( _ - @layout_sprite = Sprite.new6 l9 H8 j0 i8 f9 j
- @layout_sprite.bitmap = @layout_bitmap; u1 u; X7 K( x+ a) E$ Y0 g U% e5 _
- @layout_src_rect_back = Rect.new(0, 0,@layout_image.width, @layout_image.height)* n. M8 y b, f2 |, r* b1 _7 _
- @layout_bitmap.blt(0,0, @layout_image, @layout_src_rect_back) , |: v: f9 G5 A7 k; N
- @layout_sprite.z = 5001
0 C' r. L0 k0 _' Q - #HP Meter ---------------------------------------------------
! o7 {3 K! a" ~$ C - @hp_flow = 0; i' a: v( v" m9 O+ R! O
- @hp_damage_flow = 02 S& w& \8 Y; S" Y1 L' m- i0 ]
- @hp_image = RPG::Cache.windowskin("S_HP_Meter")
5 v0 c8 N. t# y4 a+ Y - @hp_bitmap = Bitmap.new(@hp_image.width,@hp_image.height)4 Y% ~8 B9 \4 _
- @hp_range = @hp_image.width / 38 l' q- V4 s& [7 `# C- d/ V8 ~
- @hp_width = @hp_range * @battler.hp / @battler.maxhp
4 ^- }1 o7 V5 F$ g8 G - @hp_width2 = @hp_range / 21 X5 A: |7 P5 {- c) ?5 V* w
- @hp_height = @hp_image.height / 2$ @; \$ x5 m9 j5 S& H" z/ n3 p; D
- @hp_width_old = @hp_width! K# V2 G, |6 f9 @9 M; A2 |
- @hp_src_rect = Rect.new(@hp_range, 0, @hp_width, @hp_height)9 q* O" l( L* ^8 Z: w; m
- @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect) : Y1 r$ _. ?' J2 i* Q6 m: D6 a
- @hp_sprite = Sprite.new
3 Y3 D7 J: l! ~# |1 w" } - @hp_sprite.bitmap = @hp_bitmap
2 W' [% f1 ^/ e: T, e }! ?& T - @hp_sprite.z = 5002
6 k5 I; ~0 J/ {6 c& K - #SP Border -------------------------------------------------------------------0 r, L# T$ C0 U' t& s! }- u, ]
- @layout2_image = RPG::Cache.windowskin("S_Border_SP_Meter")
8 k9 J8 v7 J4 B* ^ - @layout2_bitmap = Bitmap.new(@layout2_image.width,@layout2_image.height)
$ ^0 |2 k, P" ]( L# E9 {$ u8 g - @layout2_sprite = Sprite.new
' t, `* R b% u7 F$ U - @layout2_sprite.bitmap = @layout2_bitmap
) x# m% @1 W- D: ~ - @layout2_src_rect_back = Rect.new(0, 0,@layout2_image.width, @layout2_image.height)( n* r7 l3 s- U, k. q. K: A
- @layout2_bitmap.blt(0,0, @layout2_image, @layout2_src_rect_back) ( V. e. K4 N' ~/ g; j
- @layout2_sprite.z = 5001 9 k- G: m7 [& ]; P7 {* ~
- #SP Meter ------------------------------------------------------
& |6 [9 ^+ O" R# ` - @sp_flow = 0* O2 g! W# e& {6 Z
- @sp_damage_flow = 0
; A7 A, Q6 O- v - @sp_image = RPG::Cache.windowskin("S_SP_Meter")2 A4 g. w" @$ Q. ?' I" L
- @sp_bitmap = Bitmap.new(@sp_image.width,@sp_image.height)
i5 Y; A, ~5 n. P - @sp_range = @sp_image.width / 3$ ~) u2 B% d( I' e
- @sp_width = @sp_range * @battler.sp / @battler.maxsp
) t+ Z3 U5 q; c; V G% K f - @sp_width2 = @sp_range / 2: t& N' E* u& S# Y7 Y% K8 O
- @sp_height = @sp_image.height / 2
) g2 Z! A7 n/ l( T& Z2 t5 X - @sp_width_old = @sp_width
( Z, Q' b% i8 W, X' h - @sp_src_rect = Rect.new(@sp_range, 0, @sp_width, @sp_height)
3 C/ U7 w* b- }3 x; G# i( T* C6 @) b - @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect)6 b3 p3 t; N/ I$ x0 B+ Z# E
- @sp_sprite = Sprite.new4 W' X5 R0 K% I" O' `, h
- @sp_sprite.bitmap = @sp_bitmap
p4 p9 R' t* F# x2 ? - @sp_sprite.z = 5002+ Q" P; l0 B! ]. p
- update
0 A- i- O1 G; d8 n - end
, _0 T6 x* I, N+ U+ a - #--------------------------------------------------------------------------
* i: x) A( N; N) `& Q$ G$ r! T - # * Refresh* l4 w ^* {3 R7 ?, B2 H
- #--------------------------------------------------------------------------
j0 G: b- N4 `5 s9 C& H/ p - def refresh
8 P) w; Z' F% J8 W& x* k - return if @old_hp == @battler.hp and @old_vis != self.visible
1 i/ j7 W% a. N - self.bitmap.clear* A0 g8 ?/ ` u" c' S* f1 D- b
- @old_vis = self.visible% l: P% L0 {8 K0 n& Z9 ~
- @old_sp = @battler.sp
5 t& h% \" ]4 x- j) `! ` - @old_hp = @battler.hp
* U* ` ?; h: n) o1 W* z5 r - hp_flow_update8 f) @0 s- I& c& e$ }
- sp_flow_update1 f; I& H5 w7 r" @- H7 k
- hud_pos_update2 v. u2 _) \) B3 G
- visible_update1 x; Q8 A4 W1 Q9 Y7 I
- end
( D4 R+ Z+ t" j* u - #--------------------------------------------------------------------------' `' a( ]# A1 ?1 Y' A6 z
- # * Dispose3 y' E& ?6 c2 R6 ~
- #--------------------------------------------------------------------------; V) @) Z& z, O# a) @/ _& x0 T
- def dispose$ T4 k; s7 ?/ y% f! R8 F5 R3 p
- #HP Meter Dispose; F w( B1 v0 r' N) c) Q7 a( b
- @hp_sprite.bitmap.dispose
3 N( n* m }) z; S- Z6 R - @hp_sprite.dispose
1 M7 j& s* c& K! q: D2 s6 m/ s - @hp_bitmap.dispose+ @" ~' z5 U/ M8 `* I5 p
- #HP Border Dispose+ S) e! e/ D# E; `
- @layout_sprite.bitmap.dispose) q w% ?; B$ Z8 ~! ^
- @layout_sprite.dispose
7 n% e) w/ P' J! Q - @layout_bitmap.dispose
}" ]8 \" g/ P9 R8 N - #SP Meter Dispose
, N( o2 C. P( z& H - @sp_sprite.bitmap.dispose. }; K1 b2 p& |- i
- @sp_sprite.dispose) X4 p* D- H7 u0 [
- @sp_bitmap.dispose& W0 J9 {! P0 F2 U6 v
- #SP Border Dispose
$ i e" H0 [2 `9 |" e - @layout2_sprite.bitmap.dispose
! O, P |: a. M: o - @layout2_sprite.dispose( g' g+ t# h" r/ F( w. Y
- @layout2_bitmap.dispose
; q$ Y, U `! D9 Q - end
' R: {0 y* D# G9 {# @ - #--------------------------------------------------------------------------
5 Q3 B4 N" @2 F, l8 p# J - # * Update9 P. {& P+ t' Q' [. J, W
- #--------------------------------------------------------------------------: |* X) l' y1 L8 a; H+ l
- def update
! `% o" _0 w& D6 Z+ N - @battler = @enemy.battler + q+ i4 c' |& h# Y) N/ |0 d# H
- return dispose if @enemy.dead? or $game_map.events.values[@enemy.id].nil?
7 O9 t6 l/ U( x5 e - if self.visible
" R7 W, j2 G6 g - refresh8 w0 M& q: J$ N% R9 n
- else' c% |9 q; ~5 b R" Y- O
- self.bitmap.clear
8 K" I$ I1 k$ W# Q - end( x6 h% ^. V; ?* r0 W+ `6 O
- end
, _" t& m7 \5 |0 }3 J: X7 k+ g - #--------------------------------------------------------------------------1 w3 B+ j8 D* u
- # * Visible Update
/ V0 u! e8 U$ L" \0 c- v - #--------------------------------------------------------------------------
: P5 x" g0 d/ {! N - def visible_update! `' q1 J; s9 e( M8 C1 a& |! o! U
- if $game_switches[MOG::DISABLE_SHUD_SWITCH] == true
3 g# G' [+ l6 R7 J" r - @hp_sprite.visible = false8 q1 S) P3 P/ l3 s6 O
- @layout_sprite.visible = false
9 T6 o: j% p8 ]- P0 q" H - @sp_sprite.visible = false
+ f& I6 J& u, ]3 P. y - @layout2_sprite.visible = false
) ~2 x% b; ~ q. F: l/ N - else7 i8 j7 u* n3 H9 ]
- if HP_HUD == true
% Y/ [" |* N4 q/ X e; X: @ - @hp_sprite.visible = true
c0 P8 d6 b- }/ ` - @layout_sprite.visible = true e2 F: q7 ] U* n0 p) L
- else
* h8 F7 z) ]2 X# f1 E7 [( O - @hp_sprite.visible = false
w2 b8 O [9 r( a1 r: G - @layout_sprite.visible = false
+ V9 h. t, _! D; H: B - end
# u4 O+ ~ O1 U0 S* {0 p9 L6 R1 }! j - if SP_HUD == true6 ^' }2 X. L7 V8 @) K' z' x
- @sp_sprite.visible = true3 |/ e) h% q1 d8 o- U6 h
- @layout2_sprite.visible = true8 ^9 c3 B D. r
- else
& c ~1 k$ z2 S9 H, N - @sp_sprite.visible = false# g, l0 H- g% o
- @layout2_sprite.visible = false
' |, t9 V' d! _* w6 e* i - end + L& y- f2 w4 W; o: W% V- v
- end & l& |1 _6 F( [. S' J; g
- end
: f% F! I" V/ |3 \: B& w7 [ - #--------------------------------------------------------------------------$ n0 G) V& n( G+ M. |6 C; }- S* i
- # * Hud Pos Update0 ~& ~/ I! d. l% F+ M/ m) E9 |- M0 ^
- #-------------------------------------------------------------------------- {; ^7 w4 [6 ]& j
- def hud_pos_update! o& `. ^+ g/ T
- @hp_sprite.x = self.x - @hp_width2 + S_HP_METER_X
# Q8 R2 `0 z9 n; u* P9 W. j2 i - @hp_sprite.y = self.y + S_HP_METER_Y
+ |4 A+ r: ~5 ^! _ - @layout_sprite.x = self.x - @hp_width2 + S_BORDER_HP_METER_X8 m0 n* J( p& t7 l |
- @layout_sprite.y = self.y + S_BORDER_HP_METER_Y - G: j1 q$ i' q# ~3 y K
- @sp_sprite.x = self.x - @sp_width2 + S_SP_METER_X% d; S" o3 I0 D7 D: Z# `
- @sp_sprite.y = self.y + S_SP_METER_Y
, P( y2 t5 H/ Q9 j" c - @layout2_sprite.x = self.x - @sp_width2 + S_BORDER_SP_METER_X1 r( O. K$ ~4 Y j' t1 T1 u
- @layout2_sprite.y = self.y + S_BORDER_SP_METER_Y # D9 b) v( I, N, ?
- end ) X% Y$ Z3 [) o- H# g/ C; ?! n
- #--------------------------------------------------------------------------
$ c1 S4 Q3 i; z9 `! o" n, ^ - # * Hp Flow Update5 d4 G& E* [- \3 _
- #--------------------------------------------------------------------------$ F' J+ Y* r$ W' W* i9 p- T
- def hp_flow_update
7 l; l4 z2 ~/ Q l: G2 b' s% a - @hp_sprite.bitmap.clear
3 N) D- t4 S6 }- b0 A& z8 G - @hp_width = @hp_range * @battler.hp / @battler.maxhp # c6 s8 N ?! r. N) r+ ^: c% ~6 n/ v
- #HP Damage---------------------------------, w3 |) M. B& ?
- valor = (@hp_width_old - @hp_width) * 3 / 100$ G& I5 I+ [, J0 n
- valor = 0.5 if valor < 1 * ]+ `' s# m- ~0 t
- if @hp_width_old != @hp_width( V% v% [- I) @. w" S
- @hp_width_old -= valor if @hp_width_old > @hp_width
6 h8 L/ F2 r: G8 [% u! v - if @hp_width_old < @hp_width " E0 F+ _! Z- D/ ]8 i+ j
- @hp_width_old = @hp_width
. D6 `! m! I, o! S4 i* P' W - end ' E' T# y& R' O, Q" G* b
- @hp_src_rect_old = Rect.new(@hp_flow, @hp_height,@hp_width_old, @hp_height)
4 P) f2 x4 Y# \3 @2 y1 ]9 e0 T: U5 O - @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect_old)
, |5 ?9 U4 w+ p8 u; {: W - end
L$ h* w9 G+ X. ?" } - #HP Real------------------------------------5 c" Q0 O7 i5 j, H( g4 G% ~0 I3 T/ I
- @hp_src_rect = Rect.new(@hp_flow, 0,@hp_width, @hp_height)1 `7 x2 z+ K6 y, r2 t
- @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect)
: h( y: k$ Z/ Y B4 l - @hp_flow += 2 7 k J( i4 C0 S' J3 Y. d& l
- if @hp_flow >= @hp_image.width - @hp_range: F& @6 L9 @, ~7 J! h
- @hp_flow = 0
+ h5 W& M; U* e; n% T: P" N - end! f U# h5 Z1 @' i' X! i
- end . n, C# ?. X2 Z: Z1 e" T0 }
- #--------------------------------------------------------------------------
1 T" ~+ s5 M8 Y, T" I& i; ?% h - # * Sp Flow Update
( ?( f1 b# ?+ c - #--------------------------------------------------------------------------# N1 {9 R$ t. T5 {
- def sp_flow_update
" A' a1 T2 `5 S, @: L0 F - @sp_sprite.bitmap.clear; i: F" E, M. |9 I
- @sp_width = @sp_range * @battler.sp / @battler.maxsp ; C, J' r2 L! R- n8 ?6 Q4 C
- #SP Damage---------------------------------+ ]0 P$ q" p" h
- if @sp_width_old != @sp_width! g* h( t9 i# C, Y/ ?# P) @$ m
- valor = (@sp_width_old - @sp_width) * 3 / 100
9 @( B: @. R- t2 u( ` - valor = 0.5 if valor < 1
6 \" P6 }7 d$ i S- | - @sp_width_old -= valor if @sp_width_old > @sp_width ) n5 E, f- L' U6 g. P
- if @sp_width_old < @sp_width
5 [3 U# T! H0 \+ b# J - @sp_width_old = @sp_width! g# a' h9 a6 x. q& K' u( j
- end & R* K+ L6 k' |$ D5 `
- @sp_src_rect_old = Rect.new(@sp_flow, @sp_height,@sp_width_old, @sp_height); b! U" C0 X' L- `
- @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect_old) ) `$ h# q1 [8 X
- end1 O+ b6 C. S( V4 g" ?6 B6 W
- #SP Real------------------------------------' a0 J7 w2 l c5 @1 ~
- @sp_src_rect = Rect.new(@sp_flow, 0,@sp_width, @sp_height)
& R, Q- W0 Z- X7 F V- S) Z7 y' i - @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect)* e5 U; d& P. ?, D% }; I
- @sp_flow += 1 ; u3 d+ ?' Q' @+ b
- if @sp_flow >= @sp_image.width - @sp_range
) r# a* w4 U, F% J; I - @sp_flow = 0 1 X6 h$ i/ Q1 F% h) R$ g0 s+ H
- end
( V! _5 I# u4 @4 u- @; i - end
) O& ?) U) l& o# v; l" s - end y3 T4 H2 w/ S+ X/ B4 \! A5 M
- #===============================================================================
2 U7 R& F N3 n! [9 z+ h - class Sprite_Character < RPG::Sprite i3 W9 _0 \+ ^& }
- #-------------------------------------------------------------------------------2 Q: J5 }+ }3 u k
- alias :xas_emini_hud_init :initialize# G( s' w9 ]( r$ c/ W4 B
- include MOG% Z9 U/ ~9 f+ [' u* `6 E
- def initialize(viewport, character)
2 @6 Z) G, m% Y: Q5 k' g4 D - xas_emini_hud_init(viewport, character)1 ~: E$ ]$ U: e" Q! b
- @viewport = viewport
5 r1 E. E0 k- L1 h, C! P2 U5 i - return if @character.battler.nil?) m4 |9 E$ e$ w) \4 S1 V4 T
- return if XAS_BA_ENEMY::ENEMY_OBJECT.include?(@character.battler.id)- B. ?% A5 o9 r1 d& u
- return if XAS_BA_ENEMY::ITEM_ENEMY.include?(@character.battler.id)
( j! L8 o2 I4 h+ w% D - return if @character.battler.is_a?(Game_Actor)
. D/ N" N' k! A/ ^% R - @bars = S_Hud.new(@character, @viewport)
! @# f1 w, Y0 t' y8 P - end
3 X* H1 B* U! _2 \6 F1 V - #-------------------------------------------------------------------------------
0 k5 l0 X) `0 \ - alias :xas_emini_hud_up :update
' i3 {% p/ d0 [; p; n - def update
8 d" [8 u. U* i5 c6 @: K - xas_emini_hud_up
0 [+ t( V4 p; W3 [( t! j0 H - return if @bars.nil?9 q; \: o: |3 l+ B- t) ^
- return if @bars.disposed?
9 D- |' ^, |% X$ _; @1 C$ E. _* ] - dis = ($game_player.x - @character.x).abs + ($game_player.y - @character.y).abs
3 z) E) _% q# C- Q. c. h - @bars.visible = (dis <= RANGE)
5 t; q/ {9 a( k" H* L' B# F - if @bars.visible
$ c* H& Q% ^- R J3 I/ ? - @bars.x = @character.screen_x# - @cw / 4
4 k6 x. Q+ E9 a* p- i - @bars.y = @character.screen_y# - @ch / 4( x w! H. y8 j; `: T7 v1 Q- Q
- end& F0 K. O ^! e" d# F9 n
- @bars.update$ m7 d9 s b; D+ ]/ |7 J
- end" \/ m8 H, G+ B
- #-------------------------------------------------------------------------------
& C" G+ q2 ~" y$ C: X - def dispose n6 C( V7 ?+ R2 L8 q3 ]9 G
- super
% |, F$ @5 R) {3 ]$ b: N+ k - @bars.dispose if [email protected]?
8 }8 E5 L! H1 T/ T8 ^8 R; \: P. | - end
( z; }3 y+ U$ e2 R" E - end
, ~5 C: N' F) v) J5 [1 m
5 W X. ^ A9 }- $mog_rgss_s_hud = true
复制代码 ' I4 P; t/ I0 U' j3 P% H# O
. l# {; q# g7 A9 h0 l' {; ^
2 W1 d7 \: S) k
上面所說出錯的203行內容為) O0 N: Q! }# L# f) v3 O9 g$ H# f
@hp_sprite.bitmap.clear7 j2 ^1 c) p8 }1 l6 t" I
7 {, V7 H; V$ }
想知道怎麼解決
+ D, `1 z* J3 }) D k S, @% |; N# z" Y, ^% e
該腳本支持3.82
+ C' m w0 ^. |9 A4 U, W4 ~/ [8 T( a+ v: K1 P
下面是圖檔,要塞在Windowskin下2 n1 Z7 {1 O! h7 b8 Y
+ r0 l+ g" o6 @; v
S_HUD_Graphic.rar
(12.36 KB, 下载次数: 49)
2 R$ u% w2 R5 t, P
0 @; |3 U$ [0 G2 ]! o, B( [, e( B6 z' F. L* X0 f
0 s* x5 z1 ^' R2 F |
|