赞 | 1 |
VIP | 0 |
好人卡 | 3 |
积分 | 0 |
经验 | 6939 |
最后登录 | 2015-12-25 |
在线时间 | 47 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 45
- 在线时间
- 47 小时
- 注册时间
- 2009-6-1
- 帖子
- 127
|
我補一下我改寫的腳本- unless $imported["MenuAlter"]
- class Window_MenuStatus < Window_Selectable
- #--------------------------------------------------------------------------
- # ● リフレッシュ
- #--------------------------------------------------------------------------
- def refresh
- @item_max = $game_party.actors.size
- self.contents.dispose
- self.contents = Bitmap.new(width, @item_max * 80)
- for i in 0...@item_max
- x = 380 - i * 64
- y = i * 80
- # 戦闘参加メンバー以降は背景を暗くする
- if i >= $game_party.battle_actors.size
- self.contents.fill_rect(x - 64, y, 448, 96, Color.new(0, 0, 0, 96))
- end
- actor = $game_party.actors[i]
- draw_actor_graphic(actor, x - 40, y + 50)
- draw_actor_name(actor, x, y)
- #draw_actor_class(actor, x + 144, y -8)
- draw_actor_level(actor, x + 72, y)
- draw_actor_state(actor, x - 60, y + 48)
- #draw_actor_exp(actor, x + 236, y + 64)
- draw_actor_hp(actor, x, y + 20, 120)
- draw_actor_sp(actor, x, y + 44, 120)
- end
- end
- #--------------------------------------------------------------------------
- # ● 行数の取得
- #--------------------------------------------------------------------------
- def row_max
- # 項目数から行数を算出
- return @item_max - 1
- end
- #--------------------------------------------------------------------------
- # ● 先頭の行の取得
- #--------------------------------------------------------------------------
- def top_row
- # ウィンドウ内容の転送元 Y 座標を、1 行の高さ 112 で割る
- return self.oy / 80
- end
- #--------------------------------------------------------------------------
- # ● 先頭の行の設定
- # row : 先頭に表示する行
- #--------------------------------------------------------------------------
- def top_row=(row)
- # row を 0 ~ row_max - 1 に修正
- row = [[row, 0].max, row_max - 1].min
- # row に 1 行の高さ 112 を掛け、ウィンドウ内容の転送元 Y 座標とする
- self.oy = row * 80
- end
- #--------------------------------------------------------------------------
- # ● 1 ページに表示できる行数の取得
- #--------------------------------------------------------------------------
- def page_row_max
- return (self.height - 32) / 80
- end
- #--------------------------------------------------------------------------
- # ● 1 ページに表示できる項目数の取得
- #--------------------------------------------------------------------------
- def page_item_max
- return page_row_max
- end
- #--------------------------------------------------------------------------
- # ● カーソルの矩形更新
- #--------------------------------------------------------------------------
- def update_cursor_rect
- if @index < 0
- self.cursor_rect.empty
- return
- end
- # 現在の行を取得
- row = @index
- # 現在の行が、表示されている先頭の行より前の場合
- if row < self.top_row
- # 現在の行が先頭になるようにスクロール
- self.top_row = row
- end
- # 現在の行が、表示されている最後尾の行より後ろの場合
- if row > self.top_row + (self.page_row_max - 1)
- # 現在の行が最後尾になるようにスクロール
- self.top_row = row - (self.page_row_max - 1)
- end
- # カーソルの幅を計算
- cursor_width = self.width - 4
- # カーソルの座標を計算
- y = @index * 80 - self.oy
- # カーソルの矩形を更新
- self.cursor_rect.set(0, y, cursor_width, 80)
- end
- end
- end
复制代码 >tommay
嗯,謝謝您提供的腳本,不過感覺好像沒辦法直接拷過來用就是了(鞠躬) |
|