| 赞 | 0 |
| VIP | 0 |
| 好人卡 | 2 |
| 积分 | 6 |
| 经验 | 31761 |
| 最后登录 | 2025-11-8 |
| 在线时间 | 1800 小时 |
- 梦石
- 0
- 星屑
- 587
- 在线时间
- 1800 小时
- 注册时间
- 2009-7-12
- 帖子
- 443
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
這是我將官網的S_HUD修該而成的怪物血條# N# F; ~: K0 ?% m3 |. l7 K7 `
會在每隻事件怪物的腳下顯示
- U2 ]& L; h5 N! H2 r6 [' w8 _9 l問題是不知道為什麼
' K* o4 S5 h' p2 S8 H& `: j有時打怪打一打會跳出
' r# {2 Z+ i3 q' U3 q---------------------------
B# r) V/ ^6 `XAS# x4 ^9 b/ |! ?3 U7 S# s1 _
---------------------------
/ `( {. I0 a C: [! E: }$ h脚本 'MOG - S HUD' 的 203 行 发生了 RGSSError。
; T( _$ Z! D& f& V4 ^& R5 A, i+ a7 }$ p# l( [
disposed bitmap
- R; M" a. C$ C; ?---------------------------% v8 R6 d# ^( _: `4 ]* v% r
確定 . |; A7 e8 C" \# ^, X* D" I
---------------------------
4 I; m! ?# \, g, _4 @
7 G4 z+ i7 y( A& B這是腳本
$ s4 J8 `/ ^0 Q) ^8 k o1 H7 _6 `' U. _8 c+ l- F( D/ L" W) M2 l& b
- #===============================================================================
+ c& D8 r4 g4 p9 d; D5 Y - # MOG - s Hud 1.0
' [. d6 G1 t! D5 B - #===============================================================================( g8 o% K+ ?2 P* I( ]% G
- # By Moghunter
" S8 s4 Z" H y5 U2 K1 M; f+ e - # http://www.atelier-rgss.com
7 V: e8 C r8 J+ C- `& z - #===============================================================================7 d+ F% B: f& [
- # Translated by Calvin624 - b" N2 r+ g* a
- # http://www.xasabs.wordpress.com
/ ?% P. I: a# v/ M0 b1 {" v4 w - #===============================================================================
0 G$ t8 }; K9 n3 b: E - ###############################-DESCRIPTION-####################################" g \, M3 k! N) v }
- #===============================================================================
+ h' a% x, S' o4 `: c - # Personal HUD – displays the HP and SP below the hero.
# k# b+ Q; s& f - #===============================================================================
+ C8 R' ~9 }- t; M* r - #
8 f# w' `9 q/ d* p - # Graphics required:7 W; E. X' A# I! v: h
- #
9 t5 B E& g/ X+ h - # S_Border_HP_Meter.png
* V7 L( O" l1 F9 ^+ B9 l3 R% ?2 ` - # S_Border_SP_Meter.png
& A% Q/ {- n8 [. m9 B+ R - # S_HP_Meter.png9 W2 G4 [& M/ m
- # S_SP_Meter.png+ t! Y; t7 r5 e: h% M; d) s
- #+ b2 f$ }! p$ L4 q4 c+ G
- # All images must be in the Windowskin folder.
1 m2 D" K: T9 d - #. V8 u3 Z1 o) [: S+ E) A
- #===============================================================================
6 B& D# H$ k& i( L& h8 G3 m$ x4 T - module MOG, s3 n6 Q/ P0 U1 r' C
- VISIBLE_DEF = false " k" z2 A0 [1 j! m3 i
- # Show HP meter?
; }6 e, ]: v4 c+ l; ?3 W - HP_HUD = true0 e# P5 }- a" |0 w5 l9 V
- # Position of the HP border
& }4 ]2 k8 y( E - S_BORDER_HP_METER_X = -2 @: q1 `& K: L+ b$ C5 Y, O' Z
- S_BORDER_HP_METER_Y = -2 ) Z: W# R) [. t i
- # Position of the HP meter# { q/ J7 a& L
- S_HP_METER_X = 0
. w# }7 O" K2 ?$ k' G - S_HP_METER_Y = 0
5 G- B$ V) C2 c0 c1 Z - # Show SP meter?
# `$ }5 ?9 T& `7 E( E - SP_HUD = true0 \' z0 ?/ d* g* S0 T3 K' i8 O+ e
- # Position of the SP border: Y! @6 z v) k( b: d% l
- S_BORDER_SP_METER_X = 03 r5 R% ~' e& J' {) L9 v$ c; C
- S_BORDER_SP_METER_Y = 10
; ]: {: i; Q, ] - # Position of the SP meter8 l5 M# `- Y5 ~, p9 l$ a* O
- S_SP_METER_X = 0
/ v. h1 r9 j% L: Z1 K! Q/ n - S_SP_METER_Y = 10
# z0 Z+ W) g$ q' ~ - # Switch to disable the HUD
" c4 w O! K4 O( Y& H- [ - DISABLE_SHUD_SWITCH = 5: o& V9 `3 S' Z. k- t) E- P" J
- RANGE = 20
7 z O4 Z7 \/ b1 T$ }: t4 ?* x5 M2 k+ a- Z - end
' p w: N, h; U; d - #===============================================================================
, c( }% s4 M( Q2 p0 ^* y - # S Hud
" v' O( C+ Z$ O+ x1 ^/ ~8 x - #===============================================================================/ L9 s7 L* {/ B! s5 g
- class S_Hud < RPG::Sprite
7 W* U& S+ @- {0 r$ Q1 Y- R - include MOG
2 H: K7 S: @4 c3 Z# h' f5 v - #--------------------------------------------------------------------------
% G0 i# F% C6 a$ P( O& \' X - # * Initialize. q+ ]$ w6 T6 L9 ?+ Q: t
- #--------------------------------------------------------------------------
! m7 t8 L/ V* c& o - def initialize(enemy,viewport)4 n0 {( m7 N9 t
- super(viewport) 9 e$ j, [+ S. T+ ^
- @enemy = enemy1 G) v1 q7 }; N% q- N$ E0 [1 S
- @battler = @enemy.battler2 b. A& O& ~" a, a9 d6 N
- @old_hp = 0& I/ a) T, Q" E) ~
- @old_sp = 0( v; H/ {" c; U7 f. ?4 u2 P
- @old_vis = false
$ ]9 v2 P; V! u - self.bitmap = Bitmap.new(100, 100)6 h8 `+ B x, M+ ~
- self.visible = (VISIBLE_DEF)#false7 u' K' ?+ r% ]$ C$ b: U
- self.z = 100/ R& B3 X: d( s: t& _6 M* s
- #HP Border -------------------------------------------------------------------
; j0 e0 q3 R; ]0 Z6 e2 ]* o - @layout_image = RPG::Cache.windowskin("S_Border_HP_Meter")( K% k6 t. {$ K* N2 @' d
- @layout_bitmap = Bitmap.new(@layout_image.width,@layout_image.height)& f" ~5 t& H/ o: `; U$ w! o
- @layout_sprite = Sprite.new
- u& Y1 b+ f$ S - @layout_sprite.bitmap = @layout_bitmap
# S+ K) K5 o& N0 ~* n6 z$ T6 ?( T - @layout_src_rect_back = Rect.new(0, 0,@layout_image.width, @layout_image.height)
) `( u( z; X; r8 p( w - @layout_bitmap.blt(0,0, @layout_image, @layout_src_rect_back) % h, W* N+ V3 s: g5 f" e. a Q
- @layout_sprite.z = 50017 |. x; h2 u+ `1 H7 f
- #HP Meter ---------------------------------------------------
, M) A$ h# D: y! P Z - @hp_flow = 0
, w% @0 g3 N# ?- Y6 T1 h' t% }8 n$ f - @hp_damage_flow = 0
: o3 f4 U6 S* N- ~ - @hp_image = RPG::Cache.windowskin("S_HP_Meter")/ B# ]% U7 `; c
- @hp_bitmap = Bitmap.new(@hp_image.width,@hp_image.height)3 ^1 `8 Y% u+ G: \/ n7 g& L% m) o
- @hp_range = @hp_image.width / 31 R. `0 z% V. Y7 O
- @hp_width = @hp_range * @battler.hp / @battler.maxhp , |% v& e3 [9 `6 T5 l0 a
- @hp_width2 = @hp_range / 2& x$ R2 D( C/ Y5 O( L5 H2 F- |' o5 j
- @hp_height = @hp_image.height / 2
) y$ G1 T1 W+ P# ?1 _ - @hp_width_old = @hp_width
8 O6 |. y* Y7 g - @hp_src_rect = Rect.new(@hp_range, 0, @hp_width, @hp_height)
- K; h2 `0 [7 G - @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect) & v( J3 Y5 G3 L5 }2 t+ G& x
- @hp_sprite = Sprite.new
' b2 }% J* T* X/ K- ` - @hp_sprite.bitmap = @hp_bitmap% w- @+ q3 Z7 F
- @hp_sprite.z = 5002
9 B% j: [$ g( t+ E9 u% \. w - #SP Border -------------------------------------------------------------------, U2 r- b1 Q! p, D
- @layout2_image = RPG::Cache.windowskin("S_Border_SP_Meter")1 o% ~2 S( C- \2 i" o3 c
- @layout2_bitmap = Bitmap.new(@layout2_image.width,@layout2_image.height)
8 m8 u! u% z/ U" ^# h* Y - @layout2_sprite = Sprite.new Y7 p2 S* j6 ^
- @layout2_sprite.bitmap = @layout2_bitmap
f$ z9 p7 o3 x3 U; W - @layout2_src_rect_back = Rect.new(0, 0,@layout2_image.width, @layout2_image.height)
, b& G: u f; R j - @layout2_bitmap.blt(0,0, @layout2_image, @layout2_src_rect_back) 6 Z1 _8 K% E1 g3 j) l
- @layout2_sprite.z = 5001
5 I6 L0 Q" H" g" A0 v4 b, W% Q - #SP Meter ------------------------------------------------------4 f; U/ _% _- d
- @sp_flow = 0
) E! e% u7 x: C: T" `6 K) ~( g - @sp_damage_flow = 0& H r% q; F; i* A
- @sp_image = RPG::Cache.windowskin("S_SP_Meter")
# n |! j# Z* ~. u' g - @sp_bitmap = Bitmap.new(@sp_image.width,@sp_image.height)
! W5 o! a- Q" Z4 {0 B- ~0 E: Q* x - @sp_range = @sp_image.width / 3" Z+ X/ y6 x/ x+ { \
- @sp_width = @sp_range * @battler.sp / @battler.maxsp y/ W+ I- a/ Q
- @sp_width2 = @sp_range / 2
! k, W# t' x5 r% d' e: b/ X7 B - @sp_height = @sp_image.height / 2# r4 m2 G. D* f& R2 M
- @sp_width_old = @sp_width2 J' J+ D2 l+ G( T3 S
- @sp_src_rect = Rect.new(@sp_range, 0, @sp_width, @sp_height); }3 \8 X3 w5 Z2 V1 e1 s
- @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect)
' r6 R. r- u& G2 b9 ? M: A3 d6 X - @sp_sprite = Sprite.new
6 U$ T- H% Q; }" C# U1 `6 H+ n/ V4 e - @sp_sprite.bitmap = @sp_bitmap
8 q$ Z l/ K. W' S/ B0 ]* i1 [! Q - @sp_sprite.z = 5002
. U: k+ { G a - update/ C$ n0 ~2 Z# s
- end6 h# K! {2 w% ]
- #--------------------------------------------------------------------------
0 u2 ^0 m5 X" m# o0 R3 X, a8 R, Q1 i - # * Refresh
c* ~' s1 d0 d$ O. Z - #--------------------------------------------------------------------------
, \9 `. A4 T* E7 l/ z( [ - def refresh
; b5 B G+ y- {% a* E" i6 x - return if @old_hp == @battler.hp and @old_vis != self.visible
% w" _7 G0 _% @+ J4 a- C% C - self.bitmap.clear
/ f y- X y, J& w - @old_vis = self.visible0 F! i! g7 ]6 X+ Y* C$ `7 h1 D
- @old_sp = @battler.sp% d% J" ~# m V2 H
- @old_hp = @battler.hp5 O4 P G. J. j4 o5 h% Q
- hp_flow_update
9 g1 G, `- ?! V2 I - sp_flow_update
; p+ Q8 ]8 {. W) U; |2 G7 Z - hud_pos_update( Q8 n2 ]( x' `* t0 H( r
- visible_update
; B, @1 L: Z* Q8 V1 v - end
% N& P, h; a2 J# v0 b/ K k - #--------------------------------------------------------------------------
# s9 b) I4 Z/ f - # * Dispose+ a' T$ q0 s# y+ G$ r
- #--------------------------------------------------------------------------
- U0 N1 }' u" k( P - def dispose
6 l0 u0 C# u) X" _/ H# \6 A0 X - #HP Meter Dispose% E2 |" g1 r5 _" q) s
- @hp_sprite.bitmap.dispose. n. s/ ]) ^ h+ h) ]# d
- @hp_sprite.dispose
; d4 M0 P2 r' w - @hp_bitmap.dispose
- @ |+ d* v8 v$ l - #HP Border Dispose% S! _4 s5 v. e! Y) w
- @layout_sprite.bitmap.dispose
& }% i3 j4 k7 y/ _. {) Y - @layout_sprite.dispose" j3 T( r! M3 s) R: }' m/ Z( F
- @layout_bitmap.dispose: q9 u# \, W; H/ l& f, _; G
- #SP Meter Dispose
& Y) T( a2 A/ `) Y3 o: h - @sp_sprite.bitmap.dispose. N, G2 w# L) ` E3 H t7 |
- @sp_sprite.dispose2 [* ~# m- m- Y
- @sp_bitmap.dispose- D5 q7 x0 A4 F; G9 \7 v- b
- #SP Border Dispose
( M P, D/ u0 m - @layout2_sprite.bitmap.dispose
6 y, c9 N/ t2 }3 X5 I2 k7 @ - @layout2_sprite.dispose
( n" p7 y- I2 p - @layout2_bitmap.dispose9 j9 ]: [$ p% z- ^+ x7 @
- end ^5 T# Q% ^! E1 @" Y" u) m
- #--------------------------------------------------------------------------: w! r5 r+ f2 E3 B+ P, S; \! \
- # * Update
e4 @+ ?6 u. B, ~ - #--------------------------------------------------------------------------
7 S5 x% G: F) e1 M; d1 R - def update
/ X4 y9 m5 Z1 V2 @0 M - @battler = @enemy.battler * W& W+ Y8 e4 ~# C, q1 u' r0 c
- return dispose if @enemy.dead? or $game_map.events.values[@enemy.id].nil?! P: `! L& A6 r' }
- if self.visible' z- f" f) D' r4 z+ c
- refresh/ y( N1 A; s( z2 G. Y B' _9 O
- else
3 N* h7 w! }$ d5 g, V6 ~ - self.bitmap.clear' R- B& _" _ w: J; m3 J+ h
- end; [ c( l- m, f* ]! y0 U w
- end
* e3 p4 a5 n @8 ~8 G- R( {4 L, N - #--------------------------------------------------------------------------+ {6 `6 E. n+ p* K2 w- k! G8 W4 P0 a
- # * Visible Update
- y' E5 f! P* s - #--------------------------------------------------------------------------, j% q8 H! J, \
- def visible_update
- _ i- j/ ~. Q& ~7 R) ]* [0 n - if $game_switches[MOG::DISABLE_SHUD_SWITCH] == true
( M. Z6 O( v4 p - @hp_sprite.visible = false- W: L# B: L' d6 H+ U9 L
- @layout_sprite.visible = false7 `6 _. R: {5 r2 e
- @sp_sprite.visible = false
4 C( l3 F/ m _% E' O/ I2 _, ^. `1 q - @layout2_sprite.visible = false' |. D2 H& k6 G' r# X9 w, c, u% c
- else: ^3 Q; M- s* E) d6 H
- if HP_HUD == true0 r) t5 Z0 Q% {- A. e I
- @hp_sprite.visible = true
7 `! [% _# B) {$ O5 w7 ?" g - @layout_sprite.visible = true# _9 Q: O) {! p2 `( I# V4 N$ ]" {
- else1 x2 B) W* f& Q, a
- @hp_sprite.visible = false
3 ]: A) }) Y; S* [9 q - @layout_sprite.visible = false
" D$ B- T8 o: R- e" x. { - end
% k- D/ w, _, G. p - if SP_HUD == true; ?+ s6 v' P5 I5 Y7 [+ {
- @sp_sprite.visible = true7 j* C: R* _' L# M5 I0 W; m
- @layout2_sprite.visible = true" R. W3 L1 G6 g- I! e
- else
; ]! i7 v9 ?5 z! x - @sp_sprite.visible = false
2 I7 z# H1 K2 R P( v0 e7 ? - @layout2_sprite.visible = false/ v7 }# M2 V! H" @9 \/ J" |5 Z) M
- end * `* ~& x$ o/ E# c' o. d
- end 7 w4 j% Q- Q2 V9 W
- end
3 V+ A8 v- @+ Z7 O3 w( P! I - #--------------------------------------------------------------------------: c1 m* |5 X7 }9 A% T( |4 t" f$ D
- # * Hud Pos Update% Z" [) G$ y3 {# k# [; s, l
- #--------------------------------------------------------------------------
: F+ H& V4 t2 W) b4 } - def hud_pos_update
% F: x% m. h1 E# B6 H4 N- K - @hp_sprite.x = self.x - @hp_width2 + S_HP_METER_X1 O) b$ b0 ^: s0 Y% a
- @hp_sprite.y = self.y + S_HP_METER_Y
( p9 R: K5 ^2 h1 f- c1 P' {3 U - @layout_sprite.x = self.x - @hp_width2 + S_BORDER_HP_METER_X
- ~. n* U% J" s* R5 N: r, ^ - @layout_sprite.y = self.y + S_BORDER_HP_METER_Y
5 n) z+ C# J- H7 G - @sp_sprite.x = self.x - @sp_width2 + S_SP_METER_X4 b. j) i* W0 h7 L% Z/ Z
- @sp_sprite.y = self.y + S_SP_METER_Y 0 ]$ w' Z! O. Y* A% B& g
- @layout2_sprite.x = self.x - @sp_width2 + S_BORDER_SP_METER_X
6 r0 U& g- x. o' k g5 t. a - @layout2_sprite.y = self.y + S_BORDER_SP_METER_Y l- _. {9 W3 u7 L2 C! s
- end % u3 O1 m. E8 V( r& b! e2 k$ d
- #--------------------------------------------------------------------------
( j, z9 z4 J$ k% E9 |. ?8 e/ t - # * Hp Flow Update
6 L5 _3 Z" L- i5 [5 v& T - #--------------------------------------------------------------------------
, J1 K6 o! N/ a) g4 L% k, I1 c - def hp_flow_update
3 R6 E% [0 h' @+ Q+ c$ O* v! Z - @hp_sprite.bitmap.clear
3 `: ^9 `9 W4 k/ d! I - @hp_width = @hp_range * @battler.hp / @battler.maxhp
# n1 @2 j4 B$ i/ C; Q - #HP Damage---------------------------------, J: i# l; P- l1 @
- valor = (@hp_width_old - @hp_width) * 3 / 100
" y1 I' C' F& ~1 I! k - valor = 0.5 if valor < 1 " L* [! y/ X {, Z8 N
- if @hp_width_old != @hp_width
9 A, p2 t6 _, X: M1 b* K; n: M - @hp_width_old -= valor if @hp_width_old > @hp_width ; ^0 D5 S, P) t- g- @2 W4 w
- if @hp_width_old < @hp_width
1 a0 G% ]/ c0 o( W: D% F$ v - @hp_width_old = @hp_width, g/ ] {; P# n) v7 P V
- end
/ z* d$ d7 e6 h! v - @hp_src_rect_old = Rect.new(@hp_flow, @hp_height,@hp_width_old, @hp_height)$ {+ M1 C0 \7 ]% l$ B
- @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect_old) ' ~: X9 a7 Y: f& i6 y. ~
- end
% g0 P' c- x' ?& F/ N4 n/ F - #HP Real------------------------------------
" u, _. m }" e O0 I% ? - @hp_src_rect = Rect.new(@hp_flow, 0,@hp_width, @hp_height)
3 o8 {* A. g. c) x - @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect)
2 a1 k: d5 U8 H/ ` - @hp_flow += 2
4 W8 A$ v1 T% K6 v - if @hp_flow >= @hp_image.width - @hp_range
; D: ?6 k, q% F - @hp_flow = 0 ) y4 s8 h# ]. L0 W+ q
- end
9 t+ K, X. Z, J - end
2 M+ O( ^/ I% @/ F! c9 V - #--------------------------------------------------------------------------% f! Q& ^- G2 u- T3 S. o X# V. M
- # * Sp Flow Update5 V+ w$ Y1 B% T {: S, q
- #--------------------------------------------------------------------------
- b Y. A' S4 p - def sp_flow_update
. t) }" t J7 D; r* _ - @sp_sprite.bitmap.clear
6 n; R- i0 s" \: T2 K - @sp_width = @sp_range * @battler.sp / @battler.maxsp ! R+ Z( K. t6 D# S3 D9 i
- #SP Damage---------------------------------7 z7 Y, r2 [- i
- if @sp_width_old != @sp_width% i/ h2 c J$ b1 ^. W
- valor = (@sp_width_old - @sp_width) * 3 / 100
9 b& i5 T( ^4 L7 j - valor = 0.5 if valor < 1 9 |) y2 S0 w- _% M/ Q2 U0 F
- @sp_width_old -= valor if @sp_width_old > @sp_width
5 d0 s) M$ D! L3 I& S" g1 @: C - if @sp_width_old < @sp_width * Q. h, M5 G5 J6 x, E
- @sp_width_old = @sp_width+ \$ f8 @/ d9 H
- end & a7 h4 [/ ]4 k: a
- @sp_src_rect_old = Rect.new(@sp_flow, @sp_height,@sp_width_old, @sp_height); ]3 j% }7 Y7 m6 t
- @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect_old)
6 v% ?% I# ?" L: k& o$ B - end- H2 I) H+ `! @ o9 }1 q3 b
- #SP Real------------------------------------
1 M- e8 {% w% \8 a# `' G. J - @sp_src_rect = Rect.new(@sp_flow, 0,@sp_width, @sp_height), U# _6 d2 [8 T g
- @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect) q: _; g+ @, u
- @sp_flow += 1 & s3 V& O/ @* b( v. ^% [& M
- if @sp_flow >= @sp_image.width - @sp_range$ ?# ], F& f& e, `, A0 Z- P
- @sp_flow = 0
- h7 P) \4 m d4 P - end
" H: ~( e$ H3 u9 `7 F0 g - end
4 l/ i* e5 u' s7 h) @' n. D. E - end" X2 N, b3 N+ |
- #===============================================================================
; ^9 F7 e7 u0 V! u; f - class Sprite_Character < RPG::Sprite
- l" }! U4 v1 g$ M; M0 {" J - #-------------------------------------------------------------------------------+ p, o5 I+ I# d ^/ `
- alias :xas_emini_hud_init :initialize, h) I- @# V4 Z( Q
- include MOG
/ e; K) d; w( K& p. H% n& ` - def initialize(viewport, character)8 M+ V2 J8 z2 a) x K! `6 O. c
- xas_emini_hud_init(viewport, character)
& k! j8 t; |$ {0 C - @viewport = viewport
- @1 V" |6 V4 ?+ G1 x - return if @character.battler.nil?
5 A: w1 ?' {0 o: @: v Z3 s& N/ W/ A - return if XAS_BA_ENEMY::ENEMY_OBJECT.include?(@character.battler.id)3 z% _7 F7 j1 J% ^* p. {% |! d
- return if XAS_BA_ENEMY::ITEM_ENEMY.include?(@character.battler.id)& a2 q. a# x! O5 ~* `- M# C' {5 G
- return if @character.battler.is_a?(Game_Actor)2 M4 x0 p* \: E5 j K
- @bars = S_Hud.new(@character, @viewport): H8 ^. ~5 R. p7 T( `. ^" J5 r7 Y
- end
8 ?' e, B) {4 T6 _3 { - #-------------------------------------------------------------------------------
( l7 L4 W) p$ z, h2 |& K: R3 O& t1 P - alias :xas_emini_hud_up :update8 W0 }, m7 @9 w% q
- def update; P( U- j( b2 ?( c1 ]
- xas_emini_hud_up7 O, ~; |) T( S" ~$ o' p
- return if @bars.nil?
9 d! k4 O S- d' X( [& g - return if @bars.disposed?( U r" ?7 m6 H1 h" G
- dis = ($game_player.x - @character.x).abs + ($game_player.y - @character.y).abs
/ w% K$ a4 M& l) o, { - @bars.visible = (dis <= RANGE). f; G/ C7 \1 u# I4 N- a, E
- if @bars.visible6 H. n2 e' o8 p$ q
- @bars.x = @character.screen_x# - @cw / 4
$ \$ c/ d& x! a# Q, | - @bars.y = @character.screen_y# - @ch / 4( u, h) }8 C* Y; n
- end* ~7 O8 K4 r) e! B1 p- n
- @bars.update
' ?" r- B" ]6 P9 m2 c; U: C - end
$ o2 h5 f& \; V3 U `8 s - #-------------------------------------------------------------------------------. T) \" v) R* @4 b# V2 Y
- def dispose
$ A4 }6 l3 e( `5 [7 c - super- `/ p$ k7 F, i/ V: L* R. ?
- @bars.dispose if [email protected]?! l, [- L, b5 _* l
- end
! t# n( ?) G1 B( x( o! V% [ - end
; N+ f0 E0 ]2 K8 F I - 5 r" y- a3 x3 Q4 p1 [0 d
- $mog_rgss_s_hud = true
复制代码 * p2 L5 ?( F7 [' p# C* z
% {( }5 C( g7 K) A" y/ G
: Z( X* P4 O4 F/ h& e上面所說出錯的203行內容為
) ]6 P2 T" `8 X5 S% `# _@hp_sprite.bitmap.clear& B6 x) I2 L7 o
9 V5 T$ M+ D: s0 M7 o! W8 V }想知道怎麼解決7 J2 `/ o; c. R
( t# V. Y+ A* I! Y0 s( _9 h6 l該腳本支持3.823 @5 ^% O) H( H! S, M+ I
1 d6 s! P5 M( k( G2 f下面是圖檔,要塞在Windowskin下
2 r1 p8 o( r, X0 D- _+ R) e( b/ X/ L
S_HUD_Graphic.rar
(12.36 KB, 下载次数: 49)
& ~7 ^1 Q+ L4 c: |, {' m9 `
, j4 l. F1 J; f7 l& n
, l+ } F( e( l) m% ?7 ^9 D" \( l7 Z
|
|