赞 | 3 |
VIP | 0 |
好人卡 | 0 |
积分 | 5 |
经验 | 13212 |
最后登录 | 2019-3-22 |
在线时间 | 452 小时 |
Lv2.观梦者
- 梦石
- 0
- 星屑
- 526
- 在线时间
- 452 小时
- 注册时间
- 2009-7-17
- 帖子
- 276
|
本帖最后由 奉命在先 于 2012-9-14 20:14 编辑
顺便问下怎么在论坛插入脚本,就是别人按下一个复制就可用复制整个脚本的那个方便玩意
http://www4.plala.or.jp/findias/ ... ce_rgss3/index.html
#==============================================================================
# ■ VXAce-RGSS3-32 メニュー画面-改 by Claimh
#------------------------------------------------------------------------------
# メニュー画面の表示を変更します
#==============================================================================
#==============================================================================
# ■ Window_MenuCommand
#==============================================================================
class Window_MenuCommand < Window_Command
#--------------------------------------------------------------------------
# ● 桁数の取得
#--------------------------------------------------------------------------
def col_max
4
end
#--------------------------------------------------------------------------
# ● ウィンドウ幅の取得
#--------------------------------------------------------------------------
def window_width
Graphics.width
end
#--------------------------------------------------------------------------
# ● 表示行数の取得
#--------------------------------------------------------------------------
def visible_line_number
2 #item_max
end
end
#==============================================================================
# ■ Window_HorzMenuStatus
#==============================================================================
class Window_HorzMenuStatus < Window_HorzCommand
#--------------------------------------------------------------------------
# ● 公開インスタンス変数
#--------------------------------------------------------------------------
attr_reader :pending_index # 保留位置(並び替え用)
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
def initialize(x, y)
@pending_index = -1
super(x, y)
unselect
deactivate
end
#--------------------------------------------------------------------------
# ● 項目数の取得
#--------------------------------------------------------------------------
def item_max
$game_party.members.size
end
#--------------------------------------------------------------------------
# ● 桁数の取得
#--------------------------------------------------------------------------
def col_max
4
end
#--------------------------------------------------------------------------
# ● 表示行数の取得
#--------------------------------------------------------------------------
def visible_line_number
1
end
#--------------------------------------------------------------------------
# ● ウィンドウ幅の取得
#--------------------------------------------------------------------------
def window_width
Graphics.width
end
#--------------------------------------------------------------------------
# ● ウィンドウ高さの取得
#--------------------------------------------------------------------------
def window_height
Graphics.height - fitting_height(2) - fitting_height(1)
end
#--------------------------------------------------------------------------
# ● 項目の高さを取得
#--------------------------------------------------------------------------
def item_height
height - standard_padding * 2
end
#--------------------------------------------------------------------------
# ● 選択項目の有効状態を取得
#--------------------------------------------------------------------------
def current_item_enabled?
true
end
#--------------------------------------------------------------------------
# ● 項目の描画
#--------------------------------------------------------------------------
def draw_item(index)
actor = $game_party.members[index]
enabled = $game_party.battle_members.include?(actor)
rect = item_rect_for_text(index)
draw_item_background(index)
draw_actor_status(actor, rect.x, rect.y, item_width - 8)
end
#--------------------------------------------------------------------------
# ● アクターステータス描画
#--------------------------------------------------------------------------
def draw_actor_status(actor, x, y, width)
draw_actor_name( actor, x, y + line_height * 0, width)
draw_actor_face( actor, x+(width-96)/2, y + line_height * 1, width)
y += 96
draw_actor_class(actor, x, y + line_height * 1, width)
draw_actor_level(actor, x+width-60, y + line_height * 2)
draw_actor_hp( actor, x, y + line_height * 3, width)
draw_actor_mp( actor, x, y + line_height * 4, width)
# draw_actor_tp( actor, x, y + line_height * 5, width)
draw_actor_icons(actor, x, y + line_height * 5, width)
end
#--------------------------------------------------------------------------
# ● 項目の背景を描画
#--------------------------------------------------------------------------
def draw_item_background(index)
if index == @pending_index
contents.fill_rect(item_rect(index), pending_color)
end
end
#--------------------------------------------------------------------------
# ● 決定ボタンが押されたときの処理
#--------------------------------------------------------------------------
def process_ok
super
$game_party.menu_actor = $game_party.members[index]
end
#--------------------------------------------------------------------------
# ● 前回の選択位置を復帰
#--------------------------------------------------------------------------
def select_last
select($game_party.menu_actor.index || 0)
end
#--------------------------------------------------------------------------
# ● 保留位置(並び替え用)の設定
#--------------------------------------------------------------------------
def pending_index=(index)
last_pending_index = @pending_index
@pending_index = index
redraw_item(@pending_index)
redraw_item(last_pending_index)
end
end
#==============================================================================
# ■ Window_MenuMap
#==============================================================================
class Window_MenuMap < Window_Base
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
def initialize(x, y)
super(x, y, Graphics.width - 160, fitting_height(1))
refresh
end
#--------------------------------------------------------------------------
# ● リフレッシュ
#--------------------------------------------------------------------------
def refresh
contents.clear
draw_text(4, 0, contents_width, line_height, $game_map.display_name)
end
end
class Sprite_MenuBack < Sprite
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
def initialize(viewport, x, y, h)
super(viewport)
self.x = x
self.y = y
self.bitmap = Bitmap.new(Graphics.width, h)
self.bitmap.fill_rect(0, 0, Graphics.width, h, Color.new(0,0,0,128))
end
end
#==============================================================================
# ■ Scene_Menu
#==============================================================================
class Scene_Menu < Scene_MenuBase
#--------------------------------------------------------------------------
# ● ゴールドウィンドウの作成
#--------------------------------------------------------------------------
def create_gold_window
@gold_window = Window_Gold.new
@gold_window.x = Graphics.width - @gold_window.width
@gold_window.y = Graphics.height - @gold_window.height
@map_window = Window_MenuMap.new(0, @gold_window.y)
end
#--------------------------------------------------------------------------
# ● ステータスウィンドウの作成
#--------------------------------------------------------------------------
def create_status_window
@status_window = Window_HorzMenuStatus.new(0, @command_window.height)
end
end
瞎折磨了一下午愣是没法结合,已有的VA长条像脚本各种不兼容ACE菜单脚本,这个是兼容的,但是只显示一个小小的头像太浪费空间了。谁能加入下
长条像规格如下图
比如这个就不兼容ACE菜单脚本和图标脚本
那么什么才是我所谓的“兼容ACE菜单脚本”呢?其实很简单,就是指菜单可以向下翻页,而且用脚本加入的任务、图鉴之类的功能选项也有,图标有没有无所谓,就这么简单如下图:
|
|