设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 5679|回复: 13
打印 上一主题 下一主题

[已经解决] 在游戏中实现两套GameOver画面

[复制链接]

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

1
发表于 2017-7-1 15:44:59 | 显示全部楼层
Apppath/www/img/system/GameOver.png
Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

2
发表于 2017-7-1 15:56:52 | 显示全部楼层
这是文件路径啊……
apppath代表game.exe的路径(因为没人知道你会放在那里)
去文件夹下面把相应的文件换了啊
Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

3
发表于 2017-7-1 19:39:57 | 显示全部楼层
whn334024 发表于 2017-7-1 16:37
可是我问的是怎么换gameover图像啊
就是以前版本rpgmaker有的更改游戏结束图像啊 ...

源文件你都换了……
Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

4
发表于 2017-7-2 16:13:05 | 显示全部楼层
啊——!
感觉我们两个不在一个频道上
你在困扰:这家伙特么说的到底是啥?
我在困扰:这家伙特么问的到底是啥?
Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

5
发表于 2017-7-4 09:54:01 | 显示全部楼层
本帖最后由 defisym 于 2017-7-4 09:58 编辑
whn334024 发表于 2017-7-3 10:21
就是

如何原来gameover的图片是A,bgm是b


了解了
你的意思是想要在游戏中实现两套GameOver画面
其实所谓的游戏结束不过是:
1、事件中调用游戏结束的方法
2、显示gameover,播放BGM
3、返回标题画面
这样一来就很容易解决了
将默认的GameOver的图片和音乐全部设置为空(其实不设置也可以)
新建一个全局事件A_1,用于显示GameOver画面系列1,条件既可以是根据主角团的HP自动判断,也可以是只有在你调用的时候才激活
内容:
1、显示图片
2、播放音效
3、打开相应的全局判定开关GO_1,能够让其他的事件知道你正处于Gameover事件流程中
4、最后我们还需要在音效播放完成后或者按下任意键后返回到标题界面
下面以按下任意键为例,音效播放完成同理:
RM默认没有按键触发的事件(你说坑不坑),只能够通过激活相应的事件再在分支条件里面判定相关的按键,所以你还需要全局并行事件B
B只有在GO_1打开的情况下才会执行,内容是判定按键,并执行返回标题的操作
因为要实现“任意键”,所以你需要给出所有按键的执行情况,结果均为“返回标题画面”或者任意你想要执行的操作
这样通过两个事件就可以模拟整个GameOver的流程,其中显示的图片和音乐是可以随意进行调用的。
只需要在你需要GameOver的情况下调用全局事件A_1即可执行整个流程
同时你还需要屏蔽掉默认的Gameover方法,不让系统调用默认的方法
例如地图上人物HP归零的情况下:(RPG sense中287行左右)
  1. Scene_Base.prototype.checkGameover = function() {
  2.     if ($gameParty.isAllDead()) {
  3.        // SceneManager.goto(Scene_Gameover);
  4.     }
  5. };
复制代码

要将SceneManager.goto(Scene_Gameover);方法注释掉
同理战斗失败也要注释掉,防止他调用默认的方法
在manager里面
  1. BattleManager.updateBattleEnd = function() {
  2.     if (this.isBattleTest()) {
  3.         AudioManager.stopBgm();
  4.         SceneManager.exit();
  5.     } else if (!this._escaped && $gameParty.isAllDead()) {
  6.         if (this._canLose) {
  7.             $gameParty.reviveBattleMembers();
  8.             SceneManager.pop();
  9.         } else {
  10.             //SceneManager.goto(Scene_Gameover);
  11.         }
  12.     } else {
  13.         SceneManager.pop();
  14.     }
  15.     this._phase = null;
  16. };
复制代码

这样在战斗结束后就会停留在战斗界面中,你就可以通过战斗事件来获取玩家是否死亡,来调用你自己制作的Gameover方法
当然以上的方法是都可以通过设计来规避的,比如人死了先回到大地图扯两句再死之类的,要是懒得设置,可以直接把//SceneManager.goto(Scene_Gameover);改成  SceneManager.pop();直接打回大地图去,然后再走全局事件

自然改写Scene_Gameover方法也是一种方式,不过我毕竟不是学JS的,也就能够勉强读懂逻辑,调用内部变量什么的不在能力范围之内

而且我自己的坑根本不用RPGmaker啊……(逃)

希望能够帮到你

最后建议楼主或者版主帮忙编辑一下该帖子的标题,以便后人查阅或给出更好的解决方案

点评

居然能对上频道,太可怕了  发表于 2017-7-16 18:46

评分

参与人数 1梦石 +2 收起 理由
余烬之中 + 2 不得了

查看全部评分

Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-6-9 22:34

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表