查看: 3487|回复: 11

[已经过期] 如何制作出这种会随着剧情推进改变画面的菜单

[复制链接]
梦石
0
星屑
455
在线时间
48 小时
注册时间
2020-4-15
回帖
9
发表于 2020-6-13 15:20:34 | 显示全部楼层 |阅读模式

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

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

×
如题,第一次发帖有什么不妥的地方请指出。最近玩了一款由韩文汉化过来的、由xp制作的游戏《SPEAKA》,被里面独特的菜单吸引了。截几个游戏过程图:

截图2.png

截图1.png

(在剧情推进到一定程度的时候菜单画面出现了更改)

这种随着剧情改变画面的菜单能在恐怖解密类型游戏里营造很棒的游戏氛围,对游戏有不错的补充作用,算是小彩蛋小细节,我本人非常喜欢。于是通关整个游戏后,我找到了游戏里提供的使用脚本地址,但是一方面因为游戏是外文汉化过来的,另一方面也有可能是我自己眼瞎缘故也有可能是这个脚本是作者自己创作的缘故,我并没能在网址里寻找到这个脚本。

我并不是很懂脚本,也去B站上搜索了非常多的教程慢慢摸索,还是没能达到这个效果。

我在论坛上搜索“菜单”以及“菜单界面”这几个关键词,分别是有十八页的相关和两页的相关,都底朝天翻了个遍也没能找到。如果是我疏忽了的话请告诉我,如果您知道该怎样制作出这种菜单的话请您务必指点我一下!拜托了!

我接下来还会继续寻找别的方法的,应该也会再去那个作者提供的网站上看看。

提前谢谢大家了。


梦石
1
星屑
15825
在线时间
5415 小时
注册时间
2017-2-18
回帖
413
发表于 2020-6-13 15:31:57 | 显示全部楼层
本帖最后由 阵颜 于 2020-6-13 15:34 编辑

这个估计是用事件菜单做的,如果是事件菜单做的话会很简单。
——————————————————————————————
用脚本写的话也不难。
化而为鸟,其名为鸽。怒而咕,咕咕咕咕——咕咕咕!
回复

使用道具 举报

梦石
0
星屑
455
在线时间
48 小时
注册时间
2020-4-15
回帖
9
 楼主| 发表于 2020-6-13 16:16:08 | 显示全部楼层
阵颜 发表于 2020-6-13 15:31
这个估计是用事件菜单做的,如果是事件菜单做的话会很简单。
————————————————————— ...

!请问具体该怎么做啊

点评

好的我去看看,会尽力的,谢谢您!  发表于 2020-6-13 22:26
你在论坛搜索事件菜单,实在学不来再继续在帖子里@我吧  发表于 2020-6-13 16:30
回复

使用道具 举报

梦石
0
星屑
455
在线时间
48 小时
注册时间
2020-4-15
回帖
9
 楼主| 发表于 2020-6-15 11:02:18 | 显示全部楼层
阵颜 发表于 2020-6-13 15:31
这个估计是用事件菜单做的,如果是事件菜单做的话会很简单。
————————————————————— ...

对不起wwww我去找了事件菜单但是好像研究不透,我是参考的喵氏事件系统集,也下载了开源的游戏《逐梦》去研究,但感觉还是不太行
回复

使用道具 举报

梦石
0
星屑
35248
在线时间
4171 小时
注册时间
2007-12-15
回帖
9489
发表于 2020-6-15 12:43:21 | 显示全部楼层
本帖最后由 89444640 于 2020-6-15 12:45 编辑

根据剧情变量更改标题画面背景图即可,连菜单也一起变都可以。
具体的就是,先要跳过标题画面的脚本,直接键入地图建立事件,显示图像1图像1根据剧情变量选,当变量0时候 黑色空白 1时候小人坐在树下哭的图 2的时候两个小人的图 你可能还需要一个
V(95963) >= 115 and V(95963) <= 117 的脚本 来控制某一段剧情时候用同一张图
底图 图像2道具黑色结束灰色 当空格键按下时 使用道具?因该是开始游戏吧,
当按上或者下时候条件分歧 按以后开始菜单变量=1图像2更改为道具灰色结束黑色,当空格键按下时游戏关闭
因为你就两个选项我就不考虑循环方式了。

点评

谢谢您,另外我想我问一下有没有这方面的脚本啊?因为我不是很拎得清楚事件与事件老是会出很多错,所以在自己尝试之余还想看看能不能用脚本  发表于 2020-6-15 14:56
回复

使用道具 举报

梦石
1
星屑
15825
在线时间
5415 小时
注册时间
2017-2-18
回帖
413
发表于 2020-6-15 19:37:34 | 显示全部楼层
本帖最后由 阵颜 于 2020-6-15 19:40 编辑

临时摸鱼写的,不知道有没有bug
————————————————
虽然写的渣了一点,不过用了的话还是请署名

定制菜单.zip

1.38 MB, 下载次数: 11

售价: 1 星屑  [记录]

点评

谢谢您!如果使用了的话一定会署名的!不会商用!谢谢您!  发表于 2020-6-16 12:49
化而为鸟,其名为鸽。怒而咕,咕咕咕咕——咕咕咕!
回复

使用道具 举报

职业の水客

梦石
2
星屑
16976
在线时间
7495 小时
注册时间
2010-6-16
回帖
3461

极短27评委MZ评测员极短26评委开拓者

发表于 2020-6-15 21:42:25 | 显示全部楼层
本帖最后由 寂静的夜里 于 2020-6-15 21:46 编辑

应该是这个脚本吧
[fold]class Scene_Allo
def main
   Graphics.freeze
  #메뉴 선택 변수 (처음은 아이템 선택)
  @nyan = 0
  @menu_switch = 1
      @sprite = Sprite.new
    s1 = ""
    s2 = ""
      case $game_variables[100]
      #기본 메뉴일 때
      when 0
        @sprite.bitmap = RPG::Cache.title("Basic Menu1.png")
      #1스테이지 일 때
      when 1
        @sprite.bitmap = RPG::Cache.title("1stage1.png")
      #독가스 메뉴일 때
      when 2
        @sprite.bitmap = RPG::Cache.title("poison1.png")
      #2스테이지 일 때
      when 3
        @sprite.bitmap = RPG::Cache.title("2stage1.png")
      #3스테이지 일 때
      when 4
        @sprite.bitmap = RPG::Cache.title("3stage1.png")
      #3스테이지 디유합류
      when 5
        @sprite.bitmap = RPG::Cache.title("3stage1-2.png")
      #부탁하진 메뉴창 x 부분
      when 10
        #그림 바꾸세요
        @sprite.bitmap = RPG::Cache.title("USB Menu1.png")
        #스위치 변수
        @menu_switch = 0
      when 11
        #그림 바꾸세요
        @sprite.bitmap = RPG::Cache.title("USB Menu2.png")
        #스위치 변수
        @menu_switch = 0
      when 12
        #그림 바꾸세요
        @sprite.bitmap = RPG::Cache.title("USB Menu3.png")
        #스위치 변수
        @menu_switch = 0
      when 13
        #그림 바꾸세요
        @sprite.bitmap = RPG::Cache.title("USB Menu4.png")
        #스위치 변수
        @menu_switch = 0  
       when 6
        @sprite.bitmap = RPG::Cache.title("4stage 1-1.png")
      #4-2
      when 7
        @sprite.bitmap = RPG::Cache.title("4stage 2-1.png")
       #4-3
      when 8
        @sprite.bitmap = RPG::Cache.title("4stage 3-1.png")
      #4-4
      when 9
        @sprite.bitmap = RPG::Cache.title("4stage 4-1.png")
      #3스테이지_USB 후
      when 14
        @sprite.bitmap = RPG::Cache.title("Mental Menu1.png")
      #망상계 메인 메뉴
      when 15
        @sprite.bitmap = RPG::Cache.title("Stage menu1.png")
      #망상계 메인 메뉴 (디유X)
      when 16
        @sprite.bitmap = RPG::Cache.title("xStage menu1.png")
      #엔딩 직전
      when 17
        @sprite.bitmap = RPG::Cache.title("Ending menu1.png")
      #2스테이지 - 디유x
      when 18
        @sprite.bitmap = RPG::Cache.title("2xstage1.png")
      end
      # 스프라이트 작성
      if @menu_switch ==1
    @command_window = Window_Command.new(192, [s1, s2])
    @command_window.back_opacity = 0
    @command_window.contents_opacity =0
    @command_window.x = 160 - @command_window.width / 2
    @command_window.y = 180
    @command_window.refresh
    end
      # 메뉴 로고 읽기
    # 표시 위치를 화면 중앙으로 설정
    @sprite.x = (640 - @sprite.bitmap.width) / 2
    @sprite.y = (480 - @sprite.bitmap.height) / 2
    # 불투명도 MAX(완전 표시)
    @sprite.opacity = 255
    Graphics.transition
   
      loop do
        # 게임 화면을 갱신
        Graphics.update
        # 입력 정보를 갱신
        Input.update
        # 프레임 갱신
        @sprite.update
        # 방향키 위쪽 혹은 아래쪽 버튼 누를시
        update
        if $scene != self
        break
      end
      if @nyan == 11 or @nyan == 12 or @nyan == 10
        break
      end
    end
   
    # 스프라이트를 해방
    @sprite.dispose
    if @menu_switch ==1
    @command_window.dispose
    end
    #끝내기 화면으로 가기
    if @nyan == 11 or @nyan == 12
   if @menu_switch ==1
    case @command_window.index
    when 0
      $game_system.se_play($data_system.decision_se)
      $scene = Scene_Item.new
    when 1
      $game_system.se_play($data_system.decision_se)
      $scene = Scene_End.new
    end
   end
    else
    $game_system.se_play($data_system.cancel_se)
    $scene = Scene_Map.new
    end
      Graphics.freeze
  end
  
#--------------------------------------------------------------------------
# ● 프레임 갱신
#--------------------------------------------------------------------------
def update
  if @menu_switch ==1
  @command_window.update
  end
  if Input.trigger? (Input::DOWN) or Input.trigger? (Input::UP)
    if @menu_switch == 1
      $game_system.se_play($data_system.cursor_se)
          #아이템 선택중일때
          if @nyan == 0
            case $game_variables[100]
              #기본 메뉴일 때
              when 0
                @sprite.bitmap = RPG::Cache.title("Basic Menu2.png")
              #1스테이지 일 때
              when 1
                @sprite.bitmap = RPG::Cache.title("1stage2.png")
              #독가스 메뉴일 때
              when 2
                @sprite.bitmap = RPG::Cache.title("poison2.png")
              #2스테이지 일 때
              when 3
                @sprite.bitmap = RPG::Cache.title("2stage2.png")
              #3스테이지 일 때
               when 4
                @sprite.bitmap = RPG::Cache.title("3stage2.png")
              #3스테이지 디유합류
               when 5
                @sprite.bitmap = RPG::Cache.title("3stage2-2.png")
                 when 6
                 @sprite.bitmap = RPG::Cache.title("4stage 1-2.png")
              #4-2
              when 7
                 @sprite.bitmap = RPG::Cache.title("4stage 2-2.png")
              #4-3
              when 8
                @sprite.bitmap = RPG::Cache.title("4stage 3-2.png")
              #4-4
              when 9
                @sprite.bitmap = RPG::Cache.title("4stage 4-2.png")
              #3스테이지_USB 후
             when 14
                @sprite.bitmap = RPG::Cache.title("Mental Menu2.png")
              #망상계 메인 메뉴
             when 15
              @sprite.bitmap = RPG::Cache.title("Stage menu2.png")
              #망상계 메인 메뉴 (디유X)
            when 16
              @sprite.bitmap = RPG::Cache.title("xStage menu2.png")
              #엔딩 직전
            when 17
              @sprite.bitmap = RPG::Cache.title("Ending menu2.png")
              #2스테이지 - 디유x
            when 18
              @sprite.bitmap = RPG::Cache.title("2xstage2.png")
              end
            @nyan = 1
            #끝내기 선택중일때
          elsif @nyan == 1
            case $game_variables[100]
              #기본 메뉴일 때
              when 0
                @sprite.bitmap = RPG::Cache.title("Basic Menu1.png")
              #1스테이지 일 때
              when 1
                @sprite.bitmap = RPG::Cache.title("1stage1.png")
              #독가스 메뉴일 때
              when 2
                @sprite.bitmap = RPG::Cache.title("poison1.png")
                #2스테이지 일 때
              when 3
                @sprite.bitmap = RPG::Cache.title("2stage1.png")
                #3스테이지 일 때
               when 4
                @sprite.bitmap = RPG::Cache.title("3stage1.png")
                #3스테이지 디유합류
               when 5
                @sprite.bitmap = RPG::Cache.title("3stage1-2.png")
                 when 6
        @sprite.bitmap = RPG::Cache.title("4stage 1-1.png")
      #4-2
      when 7
        @sprite.bitmap = RPG::Cache.title("4stage 2-1.png")
       #4-3
      when 8
        @sprite.bitmap = RPG::Cache.title("4stage 3-1.png")
      #4-4
      when 9
        @sprite.bitmap = RPG::Cache.title("4stage 4-1.png")
      #3스테이지_USB 후
      when 14
        @sprite.bitmap = RPG::Cache.title("Mental Menu1.png")
       #망상계 메인 메뉴
      when 15
        @sprite.bitmap = RPG::Cache.title("Stage menu1.png")
       #망상계 메인 메뉴 (디유X)
      when 16
        @sprite.bitmap = RPG::Cache.title("xStage menu1.png")
        #엔딩 직전
      when 17
        @sprite.bitmap = RPG::Cache.title("Ending menu1.png")
        #2스테이지 - 디유x
      when 18
        @sprite.bitmap = RPG::Cache.title("2xstage1.png")

              end
            @nyan = 0
          end
        end
   end
    #메뉴 버튼 누를시
    if Input.trigger? (Input::B)
      @nyan = 10
    end
    #확인 버튼 누를시
    if Input.trigger? (Input::C)
      if @menu_switch == 1
      if @nyan == 0
        @nyan = 11
      elsif @nyan == 1
        @nyan = 12
      end
    end
    end
    return
end
end[/fold]
一个看图的地方
群爆炸重建后状态:论坛老人最多(只剩下了活跃的老人),技术力很强(依旧不变)的编程灌水群:901540785
专门讨论RM相关的Q群:56875149
PS:第一个群不是专门讨论RM的,第二个才是哦。
回复

使用道具 举报

梦石
0
星屑
455
在线时间
48 小时
注册时间
2020-4-15
回帖
9
 楼主| 发表于 2020-6-16 14:28:20 | 显示全部楼层
阵颜 发表于 2020-6-15 19:37
临时摸鱼写的,不知道有没有bug
————————————————
虽然写的渣了一点,不过用了的话还是请 ...

不好意思,您发给我的工程文件打不开,总是显示Game.rxproj含有无效的路径,请问是怎么回事啊1551
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部