|
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有账号?注册会员
×
本帖最后由 百里_飞柳 于 2015-9-19 14:11 编辑
前言:
因为自己的坑要用一个这个系统,然而找了一堆的脚本后发现一个比一个设置复杂,
所以索性就自己用浅薄的事件脚本知识写了一个~
因为是纯事件脚本的,所以大概也不会有什么冲突吧。
并且也可以通过显示z值更高的图片来美化这个的ui,自认为还是很方便易用的……
不过显示的cg都应该是544*416像素大小的,毕竟是简易的,所以不支持设置各种坐标啦。
注意:
本事件脚本必须配合YEA-Stop All Movement脚本使用(范例中已带有该脚本),
当然你有其他替代的脚本的话也行,把那个开关改成你的脚本控制人物暂停移动的开关即可。
脚本:
[fold=简易cg鉴赏系统脚本本体]
[pre lang="ruby"]#==============================================================================
#
# ※ 简易事件脚本cg鉴赏系统
# by 老鹰
#
#==============================================================================
#
#==============================================================================
# ※ 说明
#
# 本人第一次写成品脚本,似乎没有考虑很多的兼容问题,但是本脚本全部为事件脚本,
# 应该也不会冲突到哪里去的吧……
# 然后这是为自己的新作特意写的一个小系统,果然只会捣鼓事件脚本的我还是弱弱的啊……
#==============================================================================
#
#==============================================================================
# ※ 使用方法
#
# 1.本脚本【必须】与 YEA-Stop All Movement 脚本同时使用,且应放在其下,main之上。
# 2.本脚本还应与范例中的1号公共事件同时使用(公共事件的序号可变动,内容不可变动)。
# 3.设定部分完成后,在事件页第三页的【脚本】命令中输入:
#
# cg_show_initialize(max_number,name_prefix)
#
# ---其中max_number替换为同类名称cg的总数目
# ---其中name_prefix替换为同类cg的命名前缀,格式为字符串(命名方式见4)
#
# 4.cg命名方式
# 同类的cg应有相同的前缀名,且末尾编号从1开始,直至最后一张
#
# 例:正确的cg命名及调用cg鉴赏
# ---命名: cg_main1_1、cg_main1_2、cg_main1_3
# ---调用: cg_show_initialize(3, "cg_main1_")
#
#==============================================================================
#==============================================================================
# ※ 设定部分
#==============================================================================
module EAGLE
CG_MENU_START_SWITCH = 1 #此处更改cg菜单开启时打开的开关
PLAYER_STOP_MOVEMENT = 14 #此处更改之前所设置的YEA player移动停止的开关
CURRENT_PAGE_VAR = 1 #此处更改储存当前cg页数的变量的序号
MAX_PAGE_VAR = 2 #此处更改储存总cg页数的变量的序号
NAME_PREFIX_VAR = 3 #此处更改储存cg名称前缀的变量的序号
CG_NO = 1 #此处更改cg所使用的显示图片的序号
CG_HINT1_NO = 2 #此处更改cg左右翻页提示图片的序号(同显示图片)
CG_HINT2_NO = 3 #此处更改cg按Esc退出提示图片的序号(同显示图片)
end
#==============================================================================
# ※ 设定部分已完,以下内容请慎重改动
#==============================================================================
class Game_Interpreter
def cg_show_initialize(max_number,name_prefix)
return if $game_switches[EAGLE::CG_MENU_START_SWITCH]
$game_system.menu_disabled = true
$game_switches[EAGLE::CG_MENU_START_SWITCH] = true
$game_switches[EAGLE::PLAYER_STOP_MOVEMENT] = true
$game_variables[EAGLE::CURRENT_PAGE_VAR] = 1
$game_variables[EAGLE::MAX_PAGE_VAR] = max_number
$game_variables[EAGLE::NAME_PREFIX_VAR] = name_prefix
hint_initialize
eagle_show_pictures($game_variables[EAGLE::NAME_PREFIX_VAR], $game_variables[EAGLE::CURRENT_PAGE_VAR], 1)
end
def hint_initialize
$game_map.screen.pictures[EAGLE::CG_HINT1_NO].show("cg_hint1",0,0,40,100,100,0,0)
$game_map.screen.pictures[EAGLE::CG_HINT1_NO].move(0,0,0,100,100,255,0,50)
$game_map.screen.pictures[EAGLE::CG_HINT2_NO].show("cg_hint2",0,0,-40,100,100,0,0)
$game_map.screen.pictures[EAGLE::CG_HINT2_NO].move(0,0,0,100,100,255,0,50)
end
def eagle_show_pictures(name,page,direction) #图片显示 dir:0-从左 1-从右
case direction
when 1
$game_map.screen.pictures[EAGLE::CG_NO].show("#{name}#{page}",0,40,0,100,100,0,0)
else
$game_map.screen.pictures[EAGLE::CG_NO].show("#{name}#{page}",0,-40,0,100,100,0,0)
end
picture_fadein
end
def previous_page
return erase_pictures if $game_variables[EAGLE::CURRENT_PAGE_VAR] == 1
$game_variables[EAGLE::CURRENT_PAGE_VAR] -= 1
right_fadeout
eagle_show_pictures($game_variables[EAGLE::NAME_PREFIX_VAR], $game_variables[EAGLE::CURRENT_PAGE_VAR], 0)
end
def next_page
return erase_pictures if $game_variables[EAGLE::CURRENT_PAGE_VAR] == $game_variables[EAGLE::MAX_PAGE_VAR]
$game_variables[EAGLE::CURRENT_PAGE_VAR] += 1
left_fadeout
eagle_show_pictures($game_variables[EAGLE::NAME_PREFIX_VAR], $game_variables[EAGLE::CURRENT_PAGE_VAR], 1)
end
def picture_fadein #向中心移入
$game_map.screen.pictures[EAGLE::CG_NO].move(0,0,0,100,100,255,0,50)
wait(50)
end
def left_fadeout #向左移出
$game_map.screen.pictures[EAGLE::CG_NO].move(0,-40,0,100,100,0,0,50)
wait(50)
end
def right_fadeout #向右移出
$game_map.screen.pictures[EAGLE::CG_NO].move(0,40,0,100,100,0,0,50)
wait(50)
end
def erase_pictures
$game_map.screen.pictures[EAGLE::CG_NO].move(0,0,-40,100,100,0,0,50) #向上移动
$game_map.screen.pictures[EAGLE::CG_HINT1_NO].move(0,0,40,100,100,0,0,50)
$game_map.screen.pictures[EAGLE::CG_HINT2_NO].move(0,0,-40,100,100,0,0,50)
wait(50)
$game_variables[EAGLE::CURRENT_PAGE_VAR] = 0
$game_variables[EAGLE::MAX_PAGE_VAR] = 0
$game_variables[EAGLE::NAME_PREFIX_VAR] = 0
$game_switches[EAGLE::CG_MENU_START_SWITCH] = false
$game_switches[EAGLE::PLAYER_STOP_MOVEMENT] = false
$game_map.screen.pictures[EAGLE::CG_NO].erase
$game_map.screen.pictures[EAGLE::CG_HINT1_NO].erase
$game_map.screen.pictures[EAGLE::CG_HINT2_NO].erase
$game_system.menu_disabled = false
end
end[/pre][/fold]
截图:(请无视我的渣渣ui设计美工)
广告:
咳,自家的谎言之屋似乎很快就要发布了,所以……没事了……
尾言:
第一次在这里发帖,好紧张啊~ 范例就收了点辛苦费啦~
祝大家做游戏一切顺利!
|
评分
-
查看全部评分
|