赞 | 0 |
VIP | 0 |
好人卡 | 20 |
积分 | 17 |
经验 | 42858 |
最后登录 | 2024-7-10 |
在线时间 | 755 小时 |
Lv3.寻梦者
- 梦石
- 0
- 星屑
- 1666
- 在线时间
- 755 小时
- 注册时间
- 2013-9-23
- 帖子
- 211

|
本帖最后由 午睡的风铃 于 2016-2-29 21:51 编辑
回復时没看见楼上已经回过了,并且我打不开那个网站(大概我没翻墙或没vpn?)......
只是单纯的在状态界面里加了个透明的窗口放立绘,规划什么的就靠你了(拍肩膀) = =
需要立绘窗口的优先级低于原本的状态窗口时建议把状态窗口的宽度改成不是全屏宽- #==============================================================================
- # 状态画面中显示角色立绘的窗口
- #==============================================================================
- # *立绘放在 Pictures 文件夹内
- # *每个队伍中的角色都要有对应的立绘,不然在查看无立绘角色的状态时会报错。
- # *立绘命名格式 ActorPortrait + 角色ID
- # 例:ActorPortrait1 是1号角色
- # ActorPortrait22 是22号角色
- # *默认立绘窗口优先级高于状态窗口,即立绘会把状态遮住。
- module ACPO
- APX = 400 # 调整立绘X坐标
- APY = 0 # 调整立绘Y坐标
- STWZ = 0 # 状态窗口优先级,需要高于立绘窗口时设为200即可。
- end
- #==============================================================================
- # ■ Window_ActorPortrait
- #==============================================================================
- class Window_ActorPortrait < Window_Base
- #--------------------------------------------------------------------------
- # ● 初始化
- #--------------------------------------------------------------------------
- def initialize(dx, dy, command_window)
- super(-20, -12, Graphics.width + 40, Graphics.height + 24)
- self.opacity = 0
- refresh
- end
- #--------------------------------------------------------------------------
- # ● 角色
- #--------------------------------------------------------------------------
- def actor=(actor)
- return if @actor == actor
- @actor = actor
- refresh
- end
- #--------------------------------------------------------------------------
- # ● 刷新
- #--------------------------------------------------------------------------
- def refresh
- contents.clear
- return unless @actor
- draw_portrait
- end
- #--------------------------------------------------------------------------
- # ● 绘制角色肖像画
- #--------------------------------------------------------------------------
- def draw_portrait
- bitmap = Cache.picture("ActorPortrait" + @actor.id.to_s)
- rect = Rect.new(0, 0, bitmap.width, bitmap.height)
- contents.blt(ACPO::APX - bitmap.width / 2,
- ACPO::APY + contents_height - bitmap.height, bitmap, rect)
- bitmap.dispose
- end
- end
- #==============================================================================
- # ■ Window_Status
- #==============================================================================
- class Window_Status < Window_Selectable
- #--------------------------------------------------------------------------
- # ● 绘制区域 2
- #--------------------------------------------------------------------------
- def draw_block2(y)
- draw_basic_info(136, y)
- draw_exp_info(304, y)
- end
- end
- #==============================================================================
- # ■ Scene_Status
- #==============================================================================
- class Scene_Status < Scene_MenuBase
- #--------------------------------------------------------------------------
- # ● 开始处理
- #--------------------------------------------------------------------------
- def start
- super
- create_status_window
- create_portrait_window
- end
- #--------------------------------------------------------------------------
- # ● 生成状态窗口
- #--------------------------------------------------------------------------
- def create_status_window
- @status_window = Window_Status.new(@actor)
- @status_window.set_handler(:cancel, method(:return_scene))
- @status_window.set_handler(:pagedown, method(:next_actor))
- @status_window.set_handler(:pageup, method(:prev_actor))
- @status_window.z = ACPO::STWZ
- end
- #--------------------------------------------------------------------------
- # ● 生成肖像画窗口
- #--------------------------------------------------------------------------
- def create_portrait_window
- @actorportrait_window = Window_ActorPortrait.new(0, 0, @command_window)
- @actorportrait_window.viewport = @viewport
- @actorportrait_window.actor = @actor
- end
- #--------------------------------------------------------------------------
- # ● 切换角色
- #--------------------------------------------------------------------------
- def on_actor_change
- @status_window.actor = @actor
- @actorportrait_window.actor = @actor
- @status_window.activate
- end
- end
复制代码 |
评分
-
查看全部评分
|