赞 | 0 |
VIP | 0 |
好人卡 | 2 |
积分 | 5 |
经验 | 31761 |
最后登录 | 2025-10-10 |
在线时间 | 1794 小时 |
- 梦石
- 0
- 星屑
- 542
- 在线时间
- 1794 小时
- 注册时间
- 2009-7-12
- 帖子
- 443
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
這是我將官網的S_HUD修該而成的怪物血條, d4 ^! q4 n+ h- t# J8 z. q4 C
會在每隻事件怪物的腳下顯示
i! x* E' l/ n# C問題是不知道為什麼* O; Y) r$ W3 n, |
有時打怪打一打會跳出
! O5 z3 M# W: p5 K---------------------------
( }1 A6 v0 S2 y1 l* e+ V3 eXAS
) D5 r3 n5 G/ R/ g2 d---------------------------% I, Q0 J! S5 {) ]$ Q! O5 T
脚本 'MOG - S HUD' 的 203 行 发生了 RGSSError。
6 J! [! J% E& R$ [1 N
/ E* a' z7 O- P* C' B- W+ i4 vdisposed bitmap% P% ?) Z3 o+ C7 R8 m) F% Y, Z3 e* T
---------------------------
- H& u: m9 y( q) m: u確定 " s; J( j" p% ~0 \
---------------------------+ \- y- t& y9 C n4 Y% C4 p
0 K; ]2 H/ S& M8 A. h. Y% o這是腳本
5 d9 Y F/ ^( p7 J; b6 [" q9 Q3 z
$ M! ]6 T4 Y7 \- p- #===============================================================================& |2 V# X4 [2 o$ n8 x
- # MOG - s Hud 1.0
' ]. m, O* x1 R; K; D - #===============================================================================
* q; C1 n! t$ {/ H3 L; r9 G - # By Moghunter 8 f* M W/ }! D- B$ m. v
- # http://www.atelier-rgss.com: v7 ^7 m: y3 c4 Z% J3 R' {4 ]
- #===============================================================================6 k8 {: ]3 w9 v$ E+ v, ^# F2 D' J/ F/ \
- # Translated by Calvin624 : R- f' t5 V) I
- # http://www.xasabs.wordpress.com
+ x& W5 w- f8 @) Q& @) t" w! f - #===============================================================================1 j1 o4 _1 j0 T
- ###############################-DESCRIPTION-####################################) L2 r5 s' m' Y1 H
- #===============================================================================% v' ~/ _* Z6 b/ |" M
- # Personal HUD – displays the HP and SP below the hero.
, g! n' f9 i" ^+ T: q* Y6 O: ~ - #===============================================================================" G8 K+ @; {% T6 ]
- #
/ y( z( p2 I; N/ r0 } - # Graphics required:/ A8 c' B8 C; A# b8 q+ F
- # " ^/ v' @5 L" s7 t5 A' ^
- # S_Border_HP_Meter.png& R0 G' Y8 O: Q7 l6 e
- # S_Border_SP_Meter.png
8 `+ E2 G1 d8 @% \9 M e+ z9 B - # S_HP_Meter.png
1 _: c2 l1 v) G) O: ^+ x - # S_SP_Meter.png
6 K. {0 w3 d1 b - #
0 Z8 ` n+ u6 |5 k7 n - # All images must be in the Windowskin folder.
- J( J2 H8 n x" G7 m% D - #
0 ~9 D3 K' Q' B! K - #===============================================================================; C1 H5 h) I" F# n5 y
- module MOG
1 G8 Z: D4 S- Q+ B' x - VISIBLE_DEF = false 9 i6 p/ m2 I3 a& S j
- # Show HP meter?+ d, I6 }% E5 T$ k- {7 H4 O- E3 J% v
- HP_HUD = true
" j4 i( _, ~$ ^1 ]) I0 k5 T& Y- C - # Position of the HP border
; F" @; a! N8 I6 L5 w7 o - S_BORDER_HP_METER_X = -2
3 t: F8 r& n" b# ]2 s. F, v - S_BORDER_HP_METER_Y = -2
& R* V8 y: A; t9 L6 O8 X$ o - # Position of the HP meter5 F: a7 M O5 q* K/ x/ ]8 ^
- S_HP_METER_X = 0
1 W: u9 X0 X; F: x - S_HP_METER_Y = 07 D% Y& M. @- ~3 c: ?8 ]
- # Show SP meter?! k% j4 f3 [4 N; ]; c6 F+ s
- SP_HUD = true
8 u! e0 U* K- l5 U9 F" Q - # Position of the SP border$ k# j5 T U" h, E) m) D
- S_BORDER_SP_METER_X = 0
9 U5 H% u$ o3 f! Q( |1 V - S_BORDER_SP_METER_Y = 10 " u4 j. g1 ]2 v6 b: w
- # Position of the SP meter0 ]$ w" ]2 k! j4 ^
- S_SP_METER_X = 0, |! ?- R3 T! z* d- z
- S_SP_METER_Y = 108 `& W$ I+ u' E- }. B
- # Switch to disable the HUD5 [$ t0 \1 ]: w {; g( ]
- DISABLE_SHUD_SWITCH = 5
. M0 T ]: M/ M6 ]- ]) l: L1 M - RANGE = 204 m7 H4 K! K; P; S q8 ^, ]2 w
- end4 ] }$ q/ r/ ~' r: Y* z# F& {
- #===============================================================================
' u( m* b8 ?+ q5 l* m* ^ m - # S Hud
0 e4 l) }3 B8 O - #===============================================================================$ R0 |8 f* x) A9 [# I
- class S_Hud < RPG::Sprite$ O" M9 p' q+ c- i4 i8 y3 @
- include MOG
, N6 D) n* X8 b! ~ - #--------------------------------------------------------------------------, j' k/ t& X. w7 x
- # * Initialize
# O$ J' t$ P6 }. J - #--------------------------------------------------------------------------
, [$ o9 F& \! e - def initialize(enemy,viewport)7 [2 o0 v3 i- d# b9 O* g
- super(viewport)
( m3 ^7 I- _! E* Q% n! u - @enemy = enemy3 X7 | j" w: Y4 C' O U# D
- @battler = @enemy.battler
3 f+ K. N! {, v" W% |4 ` - @old_hp = 08 l- D4 [1 a9 j5 {& q
- @old_sp = 0
1 Z4 i; z4 @% I# p7 D - @old_vis = false: o8 c* d7 t" n* Q A7 G) S
- self.bitmap = Bitmap.new(100, 100) D! M2 \ B; o( F' @7 q1 B
- self.visible = (VISIBLE_DEF)#false7 j. g* k) O3 p' R+ s
- self.z = 100
( ]: K3 x& }/ e" u- l8 Z) U( O/ @/ e1 a - #HP Border -------------------------------------------------------------------
- r4 S6 y& Y5 t+ c& ~ - @layout_image = RPG::Cache.windowskin("S_Border_HP_Meter")9 {! H& x' n2 r0 J
- @layout_bitmap = Bitmap.new(@layout_image.width,@layout_image.height)
8 \+ f+ L5 r4 f - @layout_sprite = Sprite.new; v/ @" w' c. Z5 _& I
- @layout_sprite.bitmap = @layout_bitmap* e- b8 s v! b" j
- @layout_src_rect_back = Rect.new(0, 0,@layout_image.width, @layout_image.height)
" C' u$ T- q) U6 b/ I- O - @layout_bitmap.blt(0,0, @layout_image, @layout_src_rect_back)
% ~0 `0 j" g1 }( V - @layout_sprite.z = 50014 n$ C$ P& {; }. j9 R9 k* \
- #HP Meter ---------------------------------------------------
8 k% L8 {0 @* J/ W3 g+ M' a - @hp_flow = 0 a9 m" A: s! s& T5 k
- @hp_damage_flow = 0; W2 ?$ a* w2 `8 E/ [
- @hp_image = RPG::Cache.windowskin("S_HP_Meter")' n2 C, E# ^' u" }
- @hp_bitmap = Bitmap.new(@hp_image.width,@hp_image.height)/ J( M) B5 b9 p
- @hp_range = @hp_image.width / 3
* J: Y! ?7 j& }: h6 ^1 L! z - @hp_width = @hp_range * @battler.hp / @battler.maxhp
# g; G0 y8 @- C+ b" Q; p/ f8 C - @hp_width2 = @hp_range / 2
9 U: f& N2 r/ e( h3 v7 b - @hp_height = @hp_image.height / 2
" d+ x4 D$ i5 D2 Z- q - @hp_width_old = @hp_width9 R( v0 B( l) K: O( r& s# m& M
- @hp_src_rect = Rect.new(@hp_range, 0, @hp_width, @hp_height)
& X$ t% X( Q; @3 z. I - @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect) 1 ~+ g9 U2 O3 Z' @
- @hp_sprite = Sprite.new
6 x" p S6 q% R - @hp_sprite.bitmap = @hp_bitmap+ L( R4 w" e8 v, {
- @hp_sprite.z = 5002
9 F: G$ v( j5 e+ x. d% p - #SP Border -------------------------------------------------------------------
& G9 O! G, A! n" j. D - @layout2_image = RPG::Cache.windowskin("S_Border_SP_Meter")
) m6 E; \* Y; _ - @layout2_bitmap = Bitmap.new(@layout2_image.width,@layout2_image.height)* K6 p8 g8 [8 m! D% I0 f+ ]
- @layout2_sprite = Sprite.new) h4 d, [' v1 ^( {$ t A
- @layout2_sprite.bitmap = @layout2_bitmap( i% {4 d; O+ p
- @layout2_src_rect_back = Rect.new(0, 0,@layout2_image.width, @layout2_image.height)/ F0 s* P2 e# t; J2 t- _( j9 b
- @layout2_bitmap.blt(0,0, @layout2_image, @layout2_src_rect_back) 6 J( I- ?; _( g4 ^7 ]4 A
- @layout2_sprite.z = 5001
& W B& _* _7 V" \ - #SP Meter ------------------------------------------------------+ _. u# `+ u% ^% x4 j
- @sp_flow = 0
* H$ `7 q* Z( j3 o4 c2 J6 q5 o% K7 C - @sp_damage_flow = 0
* g" _3 o' p' s( n& C9 |' t0 u - @sp_image = RPG::Cache.windowskin("S_SP_Meter")+ T$ _! `3 d/ h; i, ^- `! |
- @sp_bitmap = Bitmap.new(@sp_image.width,@sp_image.height)
8 ?+ k2 }# l- W0 I% |$ e - @sp_range = @sp_image.width / 3
. O) J, D9 w, v& r1 |; P' Q - @sp_width = @sp_range * @battler.sp / @battler.maxsp 1 U3 `* Y3 c9 U; z7 n7 g
- @sp_width2 = @sp_range / 2 k: v% G( Z \9 |- i$ ?7 C1 R: v
- @sp_height = @sp_image.height / 2% k. [4 {3 ]) D# [9 P8 B
- @sp_width_old = @sp_width
3 s6 [" i' t. U$ ?" L- ~* I - @sp_src_rect = Rect.new(@sp_range, 0, @sp_width, @sp_height)
5 m0 o. G4 m h- w! u5 M0 i - @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect)1 F9 s/ [/ m/ Q: Y- f: L, N+ M
- @sp_sprite = Sprite.new
. }- \9 g& ^) z) _! H - @sp_sprite.bitmap = @sp_bitmap+ T$ P3 C5 D/ [/ o6 B
- @sp_sprite.z = 5002- D/ T" c" z2 E5 M& K; z2 t! s
- update0 x' q8 o0 \, _( c) \
- end' O" H4 Z; \3 M) `# B# B, t
- #--------------------------------------------------------------------------
, u e' @. a4 C- q+ `+ p2 q - # * Refresh
% L- \1 q$ R4 x - #--------------------------------------------------------------------------4 W+ z# L3 G8 P/ p1 l7 n
- def refresh
8 H1 H. A* P* s0 @+ \2 g - return if @old_hp == @battler.hp and @old_vis != self.visible. `- B: J3 F+ `% j( z2 @8 o
- self.bitmap.clear+ n; ^6 R& j" y: Y) j" o' f/ y3 M
- @old_vis = self.visible" m ^; p9 O M+ w) T; S7 M: B
- @old_sp = @battler.sp
1 j7 v8 c/ f a1 C9 E, Q _& S+ ]- R6 W - @old_hp = @battler.hp& D! V7 q, c: s; B$ \
- hp_flow_update
: d: |& G+ T5 t - sp_flow_update
3 c6 U+ k# I* |7 p9 j. z5 F2 o - hud_pos_update
2 R* C0 }% B- Q: ` - visible_update
! d8 i# K- Z* s - end7 _3 b4 b/ w! x" L4 a3 ]
- #--------------------------------------------------------------------------
. @* L7 f+ N5 ?1 A. x - # * Dispose
3 U; Y$ c- g2 [- f3 v2 ` - #--------------------------------------------------------------------------
3 l- W7 v3 C0 ~2 z& e - def dispose' Y! v* `8 Z0 h6 D4 V4 _0 E
- #HP Meter Dispose1 r* S$ W6 Y- \
- @hp_sprite.bitmap.dispose
2 y" }, X5 m2 F5 Q$ {; e* i& x N) z6 y - @hp_sprite.dispose9 p; Y) B* o% ?6 N
- @hp_bitmap.dispose
' l5 P- G; M7 x% P# `+ F - #HP Border Dispose
% M) k# I1 x3 G; u+ l - @layout_sprite.bitmap.dispose6 v- N- x3 g( z3 g a
- @layout_sprite.dispose+ ?- g! z2 R+ e! v' p# o
- @layout_bitmap.dispose
% X8 ~3 @1 a3 e/ W) I - #SP Meter Dispose4 t1 h; p* Y( }, Z5 V
- @sp_sprite.bitmap.dispose
- q0 c& c6 s5 e. d& T - @sp_sprite.dispose
% }( R2 Z& P) m( M0 @ - @sp_bitmap.dispose& V6 J/ P7 ~8 S
- #SP Border Dispose
+ Q: u7 V( p+ W3 X4 K2 n+ h - @layout2_sprite.bitmap.dispose+ M+ J) k, b' E. D2 O F
- @layout2_sprite.dispose0 \* t5 \( L0 Y9 g1 M
- @layout2_bitmap.dispose
# p9 p6 u6 Y$ t* V3 z" t7 G$ P - end
$ N" P4 ^$ W9 `: d' s7 Z2 l& z+ E - #--------------------------------------------------------------------------" V9 s# o6 K. r/ t+ t2 r9 T3 K' L
- # * Update
M& ?! p0 s, s2 n1 q- @. h: R - #--------------------------------------------------------------------------+ c; R0 Q! i5 e- ]+ f! [; T: u Q
- def update
( ~" S! s7 V1 n8 C - @battler = @enemy.battler
) t5 o* x U8 \2 ]/ j$ S* U - return dispose if @enemy.dead? or $game_map.events.values[@enemy.id].nil?/ A1 q! `* P C6 c2 J
- if self.visible$ C- X5 I& j1 s$ Q7 }9 y
- refresh
* U4 p: h+ b2 j8 j5 Y8 n1 F - else
+ H9 K5 v: p1 Y - self.bitmap.clear
3 r9 J2 s" H0 V - end; O0 e( `' G4 l- _( T, r. J6 N* t
- end
% _6 X+ M: t H6 g - #--------------------------------------------------------------------------
$ B K* E g" e" U - # * Visible Update5 F! ~ `5 I% X" z
- #--------------------------------------------------------------------------
3 d" t/ p; e. F5 _6 X/ m ` - def visible_update
# t9 Q+ x, u2 F8 F - if $game_switches[MOG::DISABLE_SHUD_SWITCH] == true
6 {( z. u0 H) Q& ^! Z, W - @hp_sprite.visible = false
' [, \+ e8 ~2 L) _ - @layout_sprite.visible = false
3 V2 x5 A4 ~' W/ A - @sp_sprite.visible = false9 u% i. H% w5 J9 J9 g
- @layout2_sprite.visible = false- G% W- n- t3 _6 h3 p
- else
4 j- y- g7 J# C - if HP_HUD == true
7 F% @" S1 b1 O, b& N& p - @hp_sprite.visible = true* t5 e. x# k3 T/ B1 W2 I1 a- S
- @layout_sprite.visible = true) g! K' ~, ]' b7 p5 Y1 q4 ^/ C
- else" {/ Z" b) y8 l* Y) m
- @hp_sprite.visible = false$ Y+ J: q+ X" Z$ `
- @layout_sprite.visible = false; m6 _4 K8 {9 h; \- `6 D6 ]0 \
- end ; M0 h @- b# `, }7 p4 K6 M
- if SP_HUD == true# c L. q+ S& [- _
- @sp_sprite.visible = true: L z$ ] ]9 v, e# i" x
- @layout2_sprite.visible = true% O; t# O( U) g- }, i+ H* z3 D" \
- else
1 L. i3 H/ w' W3 Q5 Y' M - @sp_sprite.visible = false
0 Y/ t8 k4 U$ ?' }2 V - @layout2_sprite.visible = false5 f1 i8 L! l: y$ s5 g
- end
' U/ V0 f2 } a+ C8 r& g - end
$ l) N: T7 a s) b - end
# {3 J, L& ?$ e( \4 c! `1 N, ~ - #--------------------------------------------------------------------------
5 H/ r8 K' i" q6 B" ~ - # * Hud Pos Update: f# a: J4 d2 r, z5 F- M9 x
- #--------------------------------------------------------------------------3 v; n3 H0 ~# o6 Y9 T } p0 J! H. `
- def hud_pos_update
& `7 y$ g6 Z2 r8 B - @hp_sprite.x = self.x - @hp_width2 + S_HP_METER_X8 q/ t& N; y3 Z+ x: S
- @hp_sprite.y = self.y + S_HP_METER_Y
7 s3 o5 s E* M* I2 K V2 e - @layout_sprite.x = self.x - @hp_width2 + S_BORDER_HP_METER_X
0 e* S4 p# O- B7 R6 b8 @- r - @layout_sprite.y = self.y + S_BORDER_HP_METER_Y
$ ?* d2 ]& r, z9 A$ V | - @sp_sprite.x = self.x - @sp_width2 + S_SP_METER_X2 h) ?3 Z; @6 S! w* W
- @sp_sprite.y = self.y + S_SP_METER_Y 2 n: Z+ ^9 E3 ]
- @layout2_sprite.x = self.x - @sp_width2 + S_BORDER_SP_METER_X6 F" o& w" B! E O
- @layout2_sprite.y = self.y + S_BORDER_SP_METER_Y # H" P2 a. e/ O
- end
4 C; L# t9 r% m( S! V- k - #--------------------------------------------------------------------------4 v, i" ]6 `( b5 R6 `! u0 \
- # * Hp Flow Update
9 b# }4 a+ W3 ^( ] - #--------------------------------------------------------------------------9 [8 M/ ~6 S" f0 q
- def hp_flow_update, e8 O P& z7 ]/ r( U+ k
- @hp_sprite.bitmap.clear0 R# Y$ {, z% l+ L5 t! S7 E
- @hp_width = @hp_range * @battler.hp / @battler.maxhp
+ h# t* y9 A; P( k4 u, H - #HP Damage---------------------------------0 b' g, D: J R- `8 @( U2 p
- valor = (@hp_width_old - @hp_width) * 3 / 100) @, N' u# A4 O4 q' C8 x( E& P0 Z# E' \
- valor = 0.5 if valor < 1 / e1 d% b4 G z+ D* {9 F
- if @hp_width_old != @hp_width
8 B% e( k( F+ e+ f! B - @hp_width_old -= valor if @hp_width_old > @hp_width ) F8 b- f$ [0 c7 Z7 s/ ?
- if @hp_width_old < @hp_width
* G6 R3 ^. N% k/ n' W0 C0 o o - @hp_width_old = @hp_width2 t, n% n! v* J
- end ; |5 f* }4 H/ [) p' I, [! v
- @hp_src_rect_old = Rect.new(@hp_flow, @hp_height,@hp_width_old, @hp_height)5 Y: d8 w" u/ e* H$ O$ L
- @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect_old) 4 d3 i$ D3 ^: @ D, x3 U
- end
/ f2 V9 s# P$ }( V - #HP Real------------------------------------& h \ T, u7 L/ `( {- V. F. z+ \
- @hp_src_rect = Rect.new(@hp_flow, 0,@hp_width, @hp_height)
8 O1 l* W4 G# R5 o4 S - @hp_bitmap.blt(0,0, @hp_image, @hp_src_rect) % h7 B! r5 t9 S; t `" ?
- @hp_flow += 2
& _% w& _/ Q ?4 p, j5 K: v - if @hp_flow >= @hp_image.width - @hp_range2 c @. t6 Y/ j) E
- @hp_flow = 0
1 r1 b0 F% z {" H2 Y+ b - end7 J+ R! U8 W; W1 a0 x& e
- end 0 Q+ r, p3 D, v" ?4 [9 W
- #--------------------------------------------------------------------------- N8 V/ `$ A+ W2 e. M9 v G
- # * Sp Flow Update m4 F7 \; M" h' ?9 O1 c
- #--------------------------------------------------------------------------* e9 ~7 [4 R0 q7 E. X: p
- def sp_flow_update
4 u: j6 i7 b( M. u' N& Q8 N - @sp_sprite.bitmap.clear5 z" H" Y2 e, L1 b1 T% s; Z
- @sp_width = @sp_range * @battler.sp / @battler.maxsp 5 D# F$ z+ i% k' M- g) r
- #SP Damage---------------------------------
9 _0 S- X7 Y! V - if @sp_width_old != @sp_width
2 ] h. I9 I$ M/ w0 s - valor = (@sp_width_old - @sp_width) * 3 / 100
, T) p+ k- ?" [% v2 i - valor = 0.5 if valor < 1
" N9 {- Y8 U3 W+ g4 q* V2 [1 z! C - @sp_width_old -= valor if @sp_width_old > @sp_width + w" \. \) S9 j" `! s/ J* |0 I8 Q9 I* z
- if @sp_width_old < @sp_width
0 W1 w9 J# k; ^5 _1 [ S - @sp_width_old = @sp_width
4 q3 f2 h) f/ U( k1 i - end # V6 Q- d) x V4 P
- @sp_src_rect_old = Rect.new(@sp_flow, @sp_height,@sp_width_old, @sp_height)
/ b! }1 K% C% z. I - @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect_old)
& v' H) W% r! B, ^0 h1 x - end
7 D2 n" g5 G7 m/ M - #SP Real------------------------------------4 Q, P3 B7 _) H" Y5 x: B( W! N, x
- @sp_src_rect = Rect.new(@sp_flow, 0,@sp_width, @sp_height). q& E7 Z$ ~: n; L, B# G2 y
- @sp_bitmap.blt(0,0, @sp_image, @sp_src_rect)$ K- g& _" f3 n/ y
- @sp_flow += 1
9 X0 a5 x% T+ y* c - if @sp_flow >= @sp_image.width - @sp_range; S$ H4 v, W/ [0 y' D8 C3 U
- @sp_flow = 0
9 z9 h1 e: c' T! A - end1 }6 O7 s: H- N& U, E
- end 4 D$ Y3 j. z; L j
- end2 l0 t5 D6 d* c8 o: w# a5 f
- #===============================================================================
o. R* S: Y" I% H) V7 q6 r - class Sprite_Character < RPG::Sprite1 {% ]6 e. K5 p# \' s( }% x0 s
- #-------------------------------------------------------------------------------
/ T* c7 X9 \! V% p - alias :xas_emini_hud_init :initialize
1 }: x- v' p. e/ W - include MOG4 w7 q+ L: X% U2 r' b" ]- x& N
- def initialize(viewport, character)7 f9 g1 u$ X- \( y; u
- xas_emini_hud_init(viewport, character)! c9 w5 h# O; x! T3 s$ W
- @viewport = viewport
3 z/ c3 R# B- u. }" I- C - return if @character.battler.nil?" ^6 H2 K# U! @0 |
- return if XAS_BA_ENEMY::ENEMY_OBJECT.include?(@character.battler.id)
) E' k: {9 y$ H5 N - return if XAS_BA_ENEMY::ITEM_ENEMY.include?(@character.battler.id)* c( c. V+ d8 \. e/ G' y6 a+ s [# o
- return if @character.battler.is_a?(Game_Actor)
9 l+ l8 X9 ^$ T1 D8 A- `# h - @bars = S_Hud.new(@character, @viewport)
. s/ z+ w7 z+ @ - end
) \' J0 l, K' t) X, j5 P - #-------------------------------------------------------------------------------; ~. T3 Z+ ^6 q
- alias :xas_emini_hud_up :update
9 k8 t% `3 J V" V6 D6 h - def update
$ t* J. a" v+ d- H3 c' Y# ` - xas_emini_hud_up
5 [# f' w X/ B' y. T+ ]& s! R: _ - return if @bars.nil?, D7 d4 Q" f |0 S7 ?( T$ d7 b$ |- f
- return if @bars.disposed?
# `! U2 j0 u( U- f - dis = ($game_player.x - @character.x).abs + ($game_player.y - @character.y).abs$ A9 O2 d; x# f( v8 Q4 t4 a
- @bars.visible = (dis <= RANGE). b: o: f7 W8 H( s% r/ l3 J
- if @bars.visible/ D+ [, j( [2 G" q2 P* Q
- @bars.x = @character.screen_x# - @cw / 4
+ q1 E/ F. J1 G - @bars.y = @character.screen_y# - @ch / 43 p8 S3 \- R7 a: U0 `3 f
- end6 h+ U6 y2 I; b, p8 f' ?2 O. z
- @bars.update. ]( y a9 l2 M
- end% _. r5 B7 R3 Y7 u( Y) i
- #-------------------------------------------------------------------------------
: d* z' J. `9 x7 H - def dispose4 r& e. |6 `% `/ s/ _+ l
- super* C+ t: b& X) D# O4 A( P# z
- @bars.dispose if [email protected]?4 ~" c: B! }, u* o& L
- end7 z4 H- p' m( P* _4 o
- end
- z) ^+ R) g) B- C8 v6 {1 M# [ - ' {# E. r; a2 A# M0 {4 C/ _* R; H
- $mog_rgss_s_hud = true
复制代码
/ P/ r7 X- W n0 C. J* Y$ _4 N. i D" v( N0 w/ S/ M7 t
$ Q9 f9 V& M5 j上面所說出錯的203行內容為
& t) M0 t2 e' w! J. F7 B@hp_sprite.bitmap.clear
8 v2 Z1 m5 T0 U* A, p4 h6 r$ P( {$ l+ [) k
想知道怎麼解決
" C/ r% C( u' @( H: Y4 K4 p) [5 ]' {4 H) V2 I+ _3 {
該腳本支持3.82
1 r) ~! ` ~- @9 j# b/ ~3 `- f8 D3 @6 q# Y6 w
下面是圖檔,要塞在Windowskin下
& B" ^' ?# F9 e* g4 A( W
8 `; ?) ]- g g1 l* K# r0 I: X7 y
S_HUD_Graphic.rar
(12.36 KB, 下载次数: 49)
, q/ z' V' t: g7 |
: e% a5 Z g X
. y1 A" u P/ N/ J. l: k7 {' h" a1 m5 N2 Q! j9 X
|
|