查看: 4158|回复: 2

[RMVA发布] 【事件脚本】简易cg鉴赏系统(第一次写略生疏)

[复制链接]

老鹰

梦石
40
星屑
37812
在线时间
7091 小时
注册时间
2012-5-26
回帖
3297

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

发表于 2015-8-31 14:24:15 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 百里_飞柳 于 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设计美工)
QQ截图20150831142331.png
QQ图片20150831141621.png QQ图片20150831141626.png

广告:
咳,自家的谎言之屋似乎很快就要发布了,所以……没事了……

尾言:
第一次在这里发帖,好紧张啊~ 范例就收了点辛苦费啦~
祝大家做游戏一切顺利!

简易事件脚本cg鉴赏系统.zip

428.55 KB, 下载次数: 179

未带dll

评分

参与人数 1星屑 +260 收起 理由
VIPArcher + 260 塞糖

查看全部评分

梦石
0
星屑
9292
在线时间
2504 小时
注册时间
2011-5-20
回帖
14521

开拓者

发表于 2015-8-31 16:47:52 | 显示全部楼层
YEA的角色移动暂停?这个脚本的英文原名到底是什么呢···

点评

Yanfly Engine Ace - Stop All Movement _(:зゝ∠)_范例中已经带了  发表于 2015-8-31 16:51
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复

使用道具 举报

梦石
1
星屑
23236
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

发表于 2015-9-1 23:56:11 | 显示全部楼层

点评

喵呜大神太触orz  发表于 2015-9-2 00:02
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部