赞 | 0 |
VIP | 0 |
好人卡 | 2 |
积分 | 4 |
经验 | 31761 |
最后登录 | 2025-6-11 |
在线时间 | 1775 小时 |
- 梦石
- 0
- 星屑
- 385
- 在线时间
- 1775 小时
- 注册时间
- 2009-7-12
- 帖子
- 443
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
這是我將官網的S_HUD修該而成的怪物血條" A# i+ F6 d* g* N# z, e
會在每隻事件怪物的腳下顯示' z7 E T% x9 v$ i2 |( e& M
問題是不知道為什麼, b: R' k0 {$ Q* Y! x' l, A# e# F4 ^
有時打怪打一打會跳出, e; r( W0 o% y) Z8 O
---------------------------" O: Y6 G [$ i) Q3 o
XAS) b8 k2 d$ ~6 k+ {$ q
---------------------------
1 K, B! B6 U* m$ ^4 K脚本 'MOG - S HUD' 的 203 行 发生了 RGSSError。! H3 q/ c K8 F) Z& L
5 }) _2 D1 M) X4 H8 r, zdisposed bitmap
$ s% n$ @; b6 N# ^; r5 O---------------------------
- ?) R! k: J& z" X* M0 P: Y' D確定
7 V/ {8 E. ]+ m---------------------------% r0 A" j$ Q$ Z0 \6 ]% q
- F9 Q) x, J9 r- Y# d! I& O, |" O
這是腳本
. C1 j- l' r3 M9 N# ~# D( b3 _# v' @+ f9 @8 }
- #===============================================================================
1 U+ p) h2 p5 U4 C - # MOG - s Hud 1.0 ! p, @- Z# [0 F/ g3 q% A, m
- #===============================================================================0 L- T% n. x- t% N9 x9 [! C0 E
- # By Moghunter . P" q) B3 R1 |7 M3 G5 B
- # http://www.atelier-rgss.com
3 g* s4 ^% M" {( o6 [) s1 L - #===============================================================================1 H" d5 y$ s- R
- # Translated by Calvin624
! D+ X& U& U& V* Q - # http://www.xasabs.wordpress.com
6 j3 `0 r! M" j& Y) ]8 Q U" R' y - #===============================================================================
# |& }0 L) }- m$ |/ W - ###############################-DESCRIPTION-####################################. |- A$ z: i# a# `2 e) g( S; \+ u
- #===============================================================================
: g) n! l3 A' U2 f$ _ - # Personal HUD – displays the HP and SP below the hero.
0 H* S# D% I1 Z$ x - #===============================================================================
3 Q$ N2 R# t& W9 h" R3 \$ @: e - #
* t5 }1 _( V6 V* _! ^: E( K - # Graphics required:! X! W2 Y% }/ v+ Z
- # ; ]* |2 K5 g9 K. g) L9 q8 u! P+ x
- # S_Border_HP_Meter.png
, \/ x6 ]- F4 n# h% j8 J - # S_Border_SP_Meter.png; R; @6 w- A+ O$ j1 D6 k
- # S_HP_Meter.png
% ~: u t8 I+ H+ B$ ?1 B+ I) N# y! m - # S_SP_Meter.png* m8 M1 @ h3 k0 B1 Q& G/ y. G) R
- #. P' @4 ]1 h7 g* k
- # All images must be in the Windowskin folder.- X9 w% x \ `% L- v
- #
& T" @' r8 ]1 ? - #===============================================================================
0 k: j- Y. r! h - module MOG4 \% u! J# _. j4 A5 {
- VISIBLE_DEF = false ; g/ w) w {( b8 ^* L
- # Show HP meter?
4 C- n- Y4 \$ p - HP_HUD = true' E* Q# n: {5 E6 n S
- # Position of the HP border
5 `3 _5 |7 O7 V1 ^( R - S_BORDER_HP_METER_X = -2) f+ e0 H& l- y& _1 b* j4 d. B
- S_BORDER_HP_METER_Y = -2
3 i7 P E$ |) i- o$ Q - # Position of the HP meter
! P, x2 _& z6 F, N% h1 T2 s( P3 `4 U - S_HP_METER_X = 0/ ~6 G2 H, E# k& s+ D
- S_HP_METER_Y = 08 ?2 P+ [! I, z* ^+ a5 U* t3 w3 A# f
- # Show SP meter?
5 S2 f0 {' S& N* T$ s# F+ Z9 t& V - SP_HUD = true
; p5 |6 T l/ r- n3 v- h2 n3 P, T - # Position of the SP border7 k4 E4 m3 u! k/ H! u# u& j
- S_BORDER_SP_METER_X = 06 E6 _5 ^5 A- \( I$ h* d: v* `& ]' u
- S_BORDER_SP_METER_Y = 10
m8 m2 [& O$ i4 g9 t. r - # Position of the SP meter$ r: _2 A, J0 ]' b, ^
- S_SP_METER_X = 0
' y. _& O2 m( Z9 \$ E - S_SP_METER_Y = 10
7 s, j6 d- k, k. T - # Switch to disable the HUD
% [2 Q: ^% G6 l+ @& @ - DISABLE_SHUD_SWITCH = 5
: r3 c* `* G. [& R1 ?" [ - RANGE = 20+ Q' z: H5 l0 B) ~# V( c/ d
- end: y: @/ ^ e" B9 T
- #===============================================================================, O7 w x+ D8 G y
- # S Hud% n6 c9 I( y2 w1 @
- #===============================================================================8 y2 S/ [2 Z8 z% z6 i, X5 y
- class S_Hud < RPG::Sprite
) @! _# h: a2 q( E( t3 s; N - include MOG5 ~$ D& V8 J1 p) O6 I0 {) a( i
- #--------------------------------------------------------------------------
+ R& a$ h: S* g4 L - # * Initialize. T6 |5 ^: ~ \6 R5 H
- #--------------------------------------------------------------------------' Y& _ Y+ _% \4 {! q# C
- def initialize(enemy,viewport)
$ k' u" l V+ r; L: j7 J% v3 T - super(viewport)
# r! G0 u$ f& m" o' y - @enemy = enemy
9 b" {3 M$ t, }( p2 C p - @battler = @enemy.battler
: w+ t: E) ?* ~- ?% y4 ~; X5 W - @old_hp = 0
! d; L' e( i: F - @old_sp = 05 F6 f% c/ ~( B
- @old_vis = false
- X8 m2 l( j# H: F* n$ U- i- Y7 b0 L - self.bitmap = Bitmap.new(100, 100): S9 g) T# X4 [ |7 ^0 w9 ]0 d H
- self.visible = (VISIBLE_DEF)#false
' r0 B' M$ ?& I4 Z - self.z = 100" L+ Q* ~. d+ @- b
- #HP Border -------------------------------------------------------------------
3 G1 c4 {! Y& B - @layout_image = RPG::Cache.windowskin("S_Border_HP_Meter")1 _) r2 h6 n+ e: Y
- @layout_bitmap = Bitmap.new(@layout_image.width,@layout_image.height)6 M( {, T6 Z) M* j# Y; {
- @layout_sprite = Sprite.new
- I T/ `6 K. O+ w. ^ - @layout_sprite.bitmap = @layout_bitmap* I% b, C. P7 `6 D# {4 {
- @layout_src_rect_back = Rect.new(0, 0,@layout_image.width, @layout_image.height) \0 P4 \0 S) N
- @layout_bitmap.blt(0,0, @layout_image, @layout_src_rect_back)
/ ?* r1 E4 Y$ i7 z/ n( k, u& ^ - @layout_sprite.z = 5001& O; d$ F9 A# @& Y/ [, T
- #HP Meter ---------------------------------------------------& s1 G5 f' o e
- @hp_flow = 0 C/ f$ u: V* Y5 j# I! V/ [& Z
- @hp_damage_flow = 0
/ g3 ~% |* r. v9 V' T. e - @hp_image = RPG::Cache.windowskin("S_HP_Meter")
' V6 ^ l6 Q8 d/ D8 ] \1 n - @hp_bitmap = Bitmap.new(@hp_image.width,@hp_image.height)
% K ~0 r$ `' p, F& S& x+ H - @hp_range = @hp_image.width / 3
+ y+ u1 y2 b5 a, u/ _- X; z - @hp_width = @hp_range * @battler.hp / @battler.maxhp
' @ v# ], ~" K/ { - @hp_width2 = @hp_range / 2
9 h- E. ?) G, r8 F- ~- N1 P - @hp_height = @hp_image.height / 2% y, }1 ?8 k+ }' K' E- ?
- @hp_width_old = @hp_width+ R4 q# t4 [8 P: ?8 E
- @hp_src_rect = Rect.new(@hp_range, 0, @hp_width, @hp_height)) _* G( ^) l) i x, L) B2 n
- @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect) & w0 [. l. h% U1 m7 x9 b$ n: x4 D
- @hp_sprite = Sprite.new
* y7 y& {: {4 I0 ^$ l% O" @+ A - @hp_sprite.bitmap = @hp_bitmap. k: W/ }, @0 Z5 {- C
- @hp_sprite.z = 5002
" ^' U4 {& c0 p, k; |) H) R: u - #SP Border -------------------------------------------------------------------
6 v h! O1 q5 D% V0 B# d - @layout2_image = RPG::Cache.windowskin("S_Border_SP_Meter")
$ J% a( J6 u# e: W7 \ - @layout2_bitmap = Bitmap.new(@layout2_image.width,@layout2_image.height)
3 `$ W5 Z" {7 q9 G - @layout2_sprite = Sprite.new
' |! e: j# L) `5 h& z - @layout2_sprite.bitmap = @layout2_bitmap( ]: W1 t# |) K. L
- @layout2_src_rect_back = Rect.new(0, 0,@layout2_image.width, @layout2_image.height)
7 R9 _/ N4 x' {- B; d - @layout2_bitmap.blt(0,0, @layout2_image, @layout2_src_rect_back) * I' Z0 s* W! @
- @layout2_sprite.z = 5001 % x6 o3 M. K2 }7 d; |
- #SP Meter ------------------------------------------------------- T& E/ U3 s2 w/ ]) ^( [
- @sp_flow = 0
3 Q$ a( U+ G* @' k, h. ] - @sp_damage_flow = 0& n5 j8 l1 S/ _" [8 t; f# d
- @sp_image = RPG::Cache.windowskin("S_SP_Meter")
X( D' Y! F3 h3 X# ]9 P - @sp_bitmap = Bitmap.new(@sp_image.width,@sp_image.height)
* w ~/ |. y( h3 O7 m - @sp_range = @sp_image.width / 3' u+ i& o0 V' w [8 `- z) K
- @sp_width = @sp_range * @battler.sp / @battler.maxsp ; I, `; L% }( ^4 q
- @sp_width2 = @sp_range / 2
& |1 R$ Z% C3 l2 W: z1 e7 E9 G" \ - @sp_height = @sp_image.height / 2
( f+ e' L0 z; C( l1 r t - @sp_width_old = @sp_width
! H7 m- V! d" b. b/ g- Y* k- J. m - @sp_src_rect = Rect.new(@sp_range, 0, @sp_width, @sp_height)
4 b9 B5 _+ S1 _ - @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect)
# Z: j R1 s& p! G. I5 w9 k4 p - @sp_sprite = Sprite.new7 S% J, G! W ]$ V3 a4 V2 ?
- @sp_sprite.bitmap = @sp_bitmap. j& p. V# U% P
- @sp_sprite.z = 5002
( p6 N9 W4 I! M1 h - update
5 q* \, ?% W) X2 ^+ N) P - end+ M! r' x4 a8 n. p0 \
- #--------------------------------------------------------------------------3 W: |& o3 p, {6 d5 {; L3 V; y
- # * Refresh; O! q, Q, O. _0 Q
- #--------------------------------------------------------------------------0 e) t: A- [; u/ R5 E8 Z' Y0 n a
- def refresh1 j" q& B/ L. s
- return if @old_hp == @battler.hp and @old_vis != self.visible
/ W3 p" ]. }0 a( l' ? - self.bitmap.clear K/ o' Z& X: N" V
- @old_vis = self.visible* B" f; o4 j8 s6 z; M8 c o; R/ {/ X
- @old_sp = @battler.sp/ k1 ?% s+ X, g ?; h4 y
- @old_hp = @battler.hp
6 D# P2 ^5 s/ }$ A! N' u4 t - hp_flow_update
- y' y6 U" E4 G6 m. F - sp_flow_update0 [( {1 O$ [% H5 O' U
- hud_pos_update9 V7 a R6 v, _9 q
- visible_update
% Q# c- [+ }2 k; N! Z - end! q# h( [! N2 j
- #--------------------------------------------------------------------------
5 U. m8 u7 @+ K0 n+ p, k - # * Dispose
- u2 R9 {2 _# e- o2 p - #--------------------------------------------------------------------------
% `2 \' R; p; U' E - def dispose
1 Q, k: r" o) S - #HP Meter Dispose
; Q) W* L/ S4 s8 B) m4 f - @hp_sprite.bitmap.dispose
4 K i, r+ N$ \+ H, w& r" f - @hp_sprite.dispose
. K0 c, O8 ]& X0 r - @hp_bitmap.dispose
, V5 h$ o6 ~- o% X0 ?; L - #HP Border Dispose/ b0 u" z$ ^; _! `' \, [# f* D* _
- @layout_sprite.bitmap.dispose
" y4 v! B$ ?) s$ n# z( @9 u - @layout_sprite.dispose
' K- {8 {! X- h - @layout_bitmap.dispose
# v2 P" v# V* x6 K - #SP Meter Dispose* T+ y( O4 Q/ i" d; P
- @sp_sprite.bitmap.dispose
0 J8 F$ {' m0 @% d - @sp_sprite.dispose" r# r+ {5 S) V) `
- @sp_bitmap.dispose2 f0 x! z+ q5 p. z. j
- #SP Border Dispose% r4 q0 B3 a( m6 k: j9 S
- @layout2_sprite.bitmap.dispose" Y( y4 E6 |5 A$ |! Y. ^
- @layout2_sprite.dispose9 V$ i0 l. l6 K2 W7 c
- @layout2_bitmap.dispose
) R1 J4 F/ R( M$ x1 ^3 } - end' [- V* S0 y# A" t# \/ T9 p
- #--------------------------------------------------------------------------
* v4 x7 q+ e# i7 J - # * Update
* a4 u+ P4 Y! F, o* j - #--------------------------------------------------------------------------# I! K7 J( H; j/ S5 H" j
- def update
+ |% r: V& x/ }2 L - @battler = @enemy.battler 0 c7 i) ]. I) N3 M0 d; x" ?5 `
- return dispose if @enemy.dead? or $game_map.events.values[@enemy.id].nil?
/ L# X1 }7 W& y _0 w - if self.visible) {. H# F, ` {9 u& a' x0 C
- refresh
& d& B& w/ S) T0 B6 z - else
$ t5 U$ y% k- r+ v4 n; G) B- {4 J9 L - self.bitmap.clear
] q* P+ T9 E* {; ^3 Y - end5 X$ l1 U5 `4 T5 \
- end
+ M0 ^) ^% ], U" B3 W3 e7 X1 ~ - #--------------------------------------------------------------------------
& {* X# N- A/ k) T5 N' c w# S- K - # * Visible Update
! {0 O, H" ]% {/ \ - #--------------------------------------------------------------------------* G9 E( N" n3 m5 T) i1 K
- def visible_update
# p; X- m* }0 @, I l% n* s - if $game_switches[MOG::DISABLE_SHUD_SWITCH] == true5 r) |4 f0 _; D+ A' L' g: M4 L
- @hp_sprite.visible = false
. Z! U3 z7 ?3 J4 {7 C - @layout_sprite.visible = false3 H* E1 i7 L' k! C! u/ t. b/ _
- @sp_sprite.visible = false' b3 r4 S. A" c. w% f
- @layout2_sprite.visible = false
# g/ j2 g6 y3 @3 l6 Z - else
* \% i* y# c: O - if HP_HUD == true
, t: v9 c4 M. i - @hp_sprite.visible = true5 B# ?, h5 [7 T# g5 n
- @layout_sprite.visible = true
$ }# h% ?9 Z! H+ _5 @; v( A - else
+ b( a" I) S; D- ?+ E - @hp_sprite.visible = false+ v9 N& |2 o# b/ u1 M% q% n& H
- @layout_sprite.visible = false
, W! }9 p6 p. [6 H i - end
5 Y" d& F1 W1 j9 e; K - if SP_HUD == true
2 W4 H! t) b c6 Q- i i - @sp_sprite.visible = true
) f E" t$ |% Q l, d% { - @layout2_sprite.visible = true! c' H, J- R5 K( g: V4 J' B, {
- else' n, A2 P: Y: {. O
- @sp_sprite.visible = false/ }) {+ S: E$ F8 Q
- @layout2_sprite.visible = false
# Q% `: A( J0 j - end : g& Y, m7 {7 X: M7 H
- end
& b' G4 ~7 u. h4 x U( O% J9 G- O - end # @0 h- M+ y4 M
- #--------------------------------------------------------------------------
- f% h5 r4 c0 M8 x+ c/ d - # * Hud Pos Update( K$ ^% F8 a4 s2 ?8 t
- #--------------------------------------------------------------------------5 h9 T4 E8 h& | l2 m k: c- i: C
- def hud_pos_update
O' ?/ l0 k5 P: i& f - @hp_sprite.x = self.x - @hp_width2 + S_HP_METER_X# m( P* o+ i- l& M* `' F$ {
- @hp_sprite.y = self.y + S_HP_METER_Y , z2 q9 W0 c: X0 m
- @layout_sprite.x = self.x - @hp_width2 + S_BORDER_HP_METER_X
: D1 I) u, y, J; y1 s! V" w - @layout_sprite.y = self.y + S_BORDER_HP_METER_Y + P }* m' ^$ e2 G9 x1 C% H+ T
- @sp_sprite.x = self.x - @sp_width2 + S_SP_METER_X5 k, [6 b" D4 m3 U' b& ]/ z
- @sp_sprite.y = self.y + S_SP_METER_Y
! E. x5 Q9 U" J) _5 }" k - @layout2_sprite.x = self.x - @sp_width2 + S_BORDER_SP_METER_X7 o8 z3 X3 c4 R5 _: Z# i" t! W
- @layout2_sprite.y = self.y + S_BORDER_SP_METER_Y / n6 Z0 n$ |# G5 D [9 c
- end , K2 w2 b1 n7 F
- #--------------------------------------------------------------------------
0 y' S) m2 X5 j" m# T+ V - # * Hp Flow Update7 P4 S8 B }0 R H7 e2 d: n
- #--------------------------------------------------------------------------
! l3 B+ V1 q, _+ h6 ~5 O ] - def hp_flow_update
* k* b6 X: r' A! K- { - @hp_sprite.bitmap.clear M& c2 D6 h4 P8 j& h, i5 b# I: u
- @hp_width = @hp_range * @battler.hp / @battler.maxhp & `* Y$ p! |3 a0 D2 d8 {5 @3 E
- #HP Damage---------------------------------4 t& r0 Z6 t% F) J% G" b
- valor = (@hp_width_old - @hp_width) * 3 / 100
. K! w) V8 E8 y4 C) W$ g6 W* g& p - valor = 0.5 if valor < 1 ( f4 i. |5 ~* U0 K0 B; t6 N
- if @hp_width_old != @hp_width @8 n! ~5 x& r1 D. ~( |
- @hp_width_old -= valor if @hp_width_old > @hp_width ; h; ]6 A* z0 y( M. s6 K" w4 ~
- if @hp_width_old < @hp_width
& W$ d+ V9 n/ c) t. v) ? - @hp_width_old = @hp_width
; b! D* A& R& Z! |. V! m - end 0 |. c) o: x) ~0 }. o3 S( u
- @hp_src_rect_old = Rect.new(@hp_flow, @hp_height,@hp_width_old, @hp_height)% o9 k$ H; x3 [8 e+ e% ^
- @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect_old) + ^# z y4 \9 }. P: c2 X) L
- end : h2 V) t, J9 t" h) w
- #HP Real------------------------------------3 h% a+ m2 A( F: Z
- @hp_src_rect = Rect.new(@hp_flow, 0,@hp_width, @hp_height)1 B& }( V# P* @: {. C
- @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect)
8 p+ b9 y3 h7 S, Q - @hp_flow += 2
! N1 x9 `. B' M8 k6 { - if @hp_flow >= @hp_image.width - @hp_range
$ Y, l- H/ x2 x) M0 u - @hp_flow = 0
4 V( w9 j* [$ P- i- K0 [% L - end4 p' G; K/ n& b
- end
' }8 P- ]* j* K; p- z - #--------------------------------------------------------------------------
4 s! Y8 G# `8 S( | - # * Sp Flow Update
7 b7 \0 [9 {2 Z9 F( t% m - #--------------------------------------------------------------------------
" \: d) T$ ]" o- t) C8 k - def sp_flow_update
; O" D& r0 M: U4 a - @sp_sprite.bitmap.clear" w, C' |0 A( [) Q% {+ Q) v& O! B U
- @sp_width = @sp_range * @battler.sp / @battler.maxsp
3 ]1 {$ o5 X, ~. o - #SP Damage---------------------------------+ |3 Z* q6 _- ^9 r
- if @sp_width_old != @sp_width
& S/ P8 u: l( c7 |$ _ O3 K - valor = (@sp_width_old - @sp_width) * 3 / 100/ J3 b( c" I" H+ @8 o" ~
- valor = 0.5 if valor < 1 * ^( ]7 J7 a, M! D
- @sp_width_old -= valor if @sp_width_old > @sp_width 0 w# |% D$ a+ d) P/ C+ k
- if @sp_width_old < @sp_width
+ a3 k; f$ @, p6 Y - @sp_width_old = @sp_width) @: ^( h& m$ F7 t; A! W8 U1 O
- end
/ D2 m) L5 {0 b* `, x& @6 v - @sp_src_rect_old = Rect.new(@sp_flow, @sp_height,@sp_width_old, @sp_height)
5 o1 z9 s" b6 j - @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect_old)
% M0 Z1 h1 ]0 y- p - end
# ]& U+ K% Y6 u1 T$ p: l1 l% ?$ |$ j - #SP Real------------------------------------: O- {% w: S* t# f( w6 K: J, n+ z& H
- @sp_src_rect = Rect.new(@sp_flow, 0,@sp_width, @sp_height)
4 o, J$ h: \" s! w* o, y - @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect)
" G9 f* j! B9 L& A0 s - @sp_flow += 1 ! n" v6 A m) n+ A" }. N6 T
- if @sp_flow >= @sp_image.width - @sp_range7 S0 q7 a# \6 W6 h6 u g
- @sp_flow = 0
( I. S( I, {1 k+ a# I1 I; Y& Q% @ - end w$ B4 w6 z( h! ]0 d& Z
- end $ h& v. e g" P! }
- end
& a! n4 K u& x& _8 k% b! b - #===============================================================================- X( G3 B$ B9 w& m( w! G
- class Sprite_Character < RPG::Sprite. x; `/ x# e5 A; ]0 ?; C G& j
- #-------------------------------------------------------------------------------
% k6 v& z3 k- v2 q" M4 t) W, }2 } - alias :xas_emini_hud_init :initialize. F+ g0 g0 l2 K# a% F
- include MOG3 K% B+ u6 W) J
- def initialize(viewport, character)9 S( s" C" G3 ^; ^. p
- xas_emini_hud_init(viewport, character)1 c: p% R+ `% d
- @viewport = viewport( a* ^% \ X2 A+ v* h* c5 S
- return if @character.battler.nil?1 _7 R: P3 y: n: ^& v7 p
- return if XAS_BA_ENEMY::ENEMY_OBJECT.include?(@character.battler.id)
+ A* s: R+ `# G - return if XAS_BA_ENEMY::ITEM_ENEMY.include?(@character.battler.id)4 |2 i5 {% h3 {" @2 c1 C
- return if @character.battler.is_a?(Game_Actor)
& Z* E% } {1 b% o( ^% H - @bars = S_Hud.new(@character, @viewport), L& D& w" {2 o+ S
- end
3 c; b4 u, C3 T9 C6 T, m2 D1 R - #-------------------------------------------------------------------------------
! d& @# v( C0 G7 r5 A8 O - alias :xas_emini_hud_up :update$ D4 T/ u! u/ h5 A, a& E' x8 _3 R
- def update, `$ {: y2 B, p- g( Q9 G; b% ]
- xas_emini_hud_up
& F2 Q' Z0 p5 e - return if @bars.nil?
( q9 _! P) h' b% r. m - return if @bars.disposed?
7 Q- p2 c: S/ ?: H. ]& q7 o3 U1 m - dis = ($game_player.x - @character.x).abs + ($game_player.y - @character.y).abs8 g0 z8 s! N0 X9 a; s, k0 E
- @bars.visible = (dis <= RANGE)4 T$ L+ l1 {; H# P$ z5 W' t( V
- if @bars.visible
% o- n% F) S1 D2 O9 }- X1 M& X - @bars.x = @character.screen_x# - @cw / 41 q% d6 G8 q, } `% q5 V
- @bars.y = @character.screen_y# - @ch / 4
# s" i$ T1 y7 ]( v - end
3 g/ z9 e( H0 y. n& t9 F - @bars.update
" C* r0 I% j2 c, P# C, T# `6 v - end
7 Z3 N3 b" B1 g2 J- g - #-------------------------------------------------------------------------------
% ^+ O# g; v$ y7 P( y2 g - def dispose
( [9 u6 M l4 E7 D - super
- y2 l7 m$ |: R0 Q$ J+ K% Z. G - @bars.dispose if [email protected]?
- f3 y# y5 N$ K6 n - end" g) N& L y2 a6 \" `3 Z1 ^% E
- end1 i, \3 c: `2 s# n
- 4 ?0 M5 W: k& r
- $mog_rgss_s_hud = true
复制代码
# Y4 ]) d. {+ p; U% t o' D- } D
6 v& q( l( Z6 F0 U* [! {( }
9 G, {* G* E- W( @上面所說出錯的203行內容為- N/ m/ Y& D5 F5 U8 l# t
@hp_sprite.bitmap.clear8 @0 F/ r% v4 X4 S
6 ]! ^- e5 f, O. {% j& g想知道怎麼解決& M1 r! C; }9 e+ x' _
: }: }' T, W9 Y: J4 g/ R該腳本支持3.82
/ b' o. ], C0 ?3 o$ l& S8 e" ?! b! l
下面是圖檔,要塞在Windowskin下
' S+ r; I" @& q% p* z2 G. G( L C G$ X$ w9 |: P' g: _" y
S_HUD_Graphic.rar
(12.36 KB, 下载次数: 49)
0 h' b5 V z O/ b
$ d* B( n' D, h7 Y/ E- `- c l/ X2 T0 @ N$ m
5 k3 c) Z" M& K$ H* L* q# N
|
|