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

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: xuexizhanghao
打印 上一主题 下一主题

[有事请教] 请问能不能做一个假的GAMEOVER,如果能怎么做

[复制链接]

Lv2.观梦者

梦石
0
星屑
942
在线时间
64 小时
注册时间
2021-7-15
帖子
24
11
 楼主| 发表于 2021-7-20 12:07:31 | 只看该作者
小怪兽奇奇侠 发表于 2021-7-20 11:18
变量修改你说的是第二种解决办法吧,第二种解决办法是要在事件页的开头就放条件分歧的,条件分歧的条件是 ...

我看了你和七楼,请问是这么写吗?
我试了一下,从自动存档进去之后还是GAMEOVER图,然后回标题画面

QQ截图20210720120617.png (182.72 KB, 下载次数: 9)

QQ截图20210720120617.png
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
942
在线时间
64 小时
注册时间
2021-7-15
帖子
24
12
 楼主| 发表于 2021-7-20 12:10:47 | 只看该作者
开关关 发表于 2021-7-19 23:59
这是我的实现方法:

我因为想完全做好游戏之后在开头的时候
DataManager.maxSavefiles = function() {
     return 1;
};
我怕冲突所以用的变量,但是好像不太行(11楼),或者是我没理解你们的意思还是没写对吗

点评

我在7楼发的方法不会受到DataManager.maxSaveFiles的限制,放心用就行。  发表于 2021-7-20 12:33
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
11175
在线时间
2066 小时
注册时间
2013-6-10
帖子
1516
13
发表于 2021-7-20 12:14:25 | 只看该作者
xuexizhanghao 发表于 2021-7-20 12:07
我看了你和七楼,请问是这么写吗?
我试了一下,从自动存档进去之后还是GAMEOVER图,然后回标题画面 ...

我说的变量,不是用事件设置的变量。我一直在说事件脚本,就是你设置自动存档用的事件脚本,在那里边写aaa=1,替换掉你的变量操作#0017=1,条件分歧的条件改成脚本aaa==1,这样子就可以了。
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7570
在线时间
665 小时
注册时间
2012-7-29
帖子
174
14
发表于 2021-7-20 12:50:24 | 只看该作者
本帖最后由 开关关 于 2021-7-20 13:03 编辑
xuexizhanghao 发表于 2021-7-20 12:07
我看了你和七楼,请问是这么写吗?
我试了一下,从自动存档进去之后还是GAMEOVER图,然后回标题画面 ...


11楼截图中的执行内容大致没问题,不过出了点小偏差。6楼说的是用脚本新建一个变量,名字叫“aaa”,而不是用事件里的变量。13楼也说得很清楚了。

只需稍微改一下,就是6楼说的方案。


“变量操作:#0017已播放结局 = 1”
改成
“脚本:aaa = 1”


“如果:已播放结局 = 1”
改成
“如果:脚本:aaa == 1”

要注意赋值的时候用单个等号“=”,条件判断要用两个等号“==”哦。
改完了,运行下试试。O(∩_∩)O

另外,我在7楼之所以不用全局变量,而是用写入硬盘的存档,是考虑到一个问题。如果不写入硬盘,重启游戏会导致全局变量直接清空。
玩家如果打完假结局,回到了标题,还没读档,就直接退出了游戏,那么下次进入游戏的时候,全局变量就没了,此时读档就会再进一次假结局。这会造成玩家误以为没有真结局。换做用存档来记录是否已经通过了假结局,就可以保证即使重启游戏,也不会出问题。
7楼截图的事件是测试无误的。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
942
在线时间
64 小时
注册时间
2021-7-15
帖子
24
15
 楼主| 发表于 2021-7-20 13:39:04 | 只看该作者
开关关 发表于 2021-7-20 12:50
11楼截图中的执行内容大致没问题,不过出了点小偏差。6楼说的是用脚本新建一个变量,名字叫“aaa”,而不 ...

我把所有的“变量17=1”改成了“脚本:aaa==1”然后进游戏测试,他说aaa is not defind
之后我试着在自动保存那句之前加了一句
var aaa
aaa=0
但是还是报这个错,我想试着全都写进一个脚本,但是貌似有行数限制
对不起我不太会编程,请问我是哪里落了什么吗

QQ截图20210720133834.png (173.75 KB, 下载次数: 12)

QQ截图20210720133834.png

点评

看到小怪兽奇奇侠同志在16楼的说法,我发现刚刚回复的搞错了。_(:з」∠)_ 自动保存之前那句应该去掉第一行,直接改成“aaa = 0”。  发表于 2021-7-20 14:07
var会让变量变成局部变量,js不要求分号,具体办法看下一楼  发表于 2021-7-20 14:05
解决方法:把第一段脚本改成“var aaa = 0;” 就像文字的句号,脚本每一句的句末应该加个分号“;”。如果只有一句,就可以省略分号。  发表于 2021-7-20 13:59
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
11175
在线时间
2066 小时
注册时间
2013-6-10
帖子
1516
16
发表于 2021-7-20 13:57:41 | 只看该作者
本帖最后由 小怪兽奇奇侠 于 2021-7-20 14:15 编辑

...var声明变量会让变量变成局部变量。注意一个等号两个等号的区分后,不用var还出现not defined的话,可以在本页事件头部定义aaa=0。


开关关同志说的问题其实也是真实存在的,一旦销毁窗口变量也会跟着销毁,实在不想用存档判定的话...你自己想办法吧。。。

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
942
在线时间
64 小时
注册时间
2021-7-15
帖子
24
17
 楼主| 发表于 2021-7-20 14:48:32 | 只看该作者
本帖最后由 xuexizhanghao 于 2021-7-20 14:58 编辑
小怪兽奇奇侠 发表于 2021-7-20 13:57
...var声明变量会让变量变成局部变量。注意一个等号两个等号的区分后,不用var还出现not defined的话,可以 ...


对,对不起
其实我只是担心用存档判定和我存档上限1是不是冲突
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
942
在线时间
64 小时
注册时间
2021-7-15
帖子
24
18
 楼主| 发表于 2021-7-20 14:51:31 | 只看该作者
xuexizhanghao 发表于 2021-7-20 13:39
我把所有的“变量17=1”改成了“脚本:aaa==1”然后进游戏测试,他说aaa is not defind
之后我试着在自动 ...

这个倒是可以,但是GAMEOVER以后要是重启游戏再进1号存档就会aaa is not defind
话说我忽然想到onbeforesave那句其实是不是没啥用……

QQ截图20210720143136.png (51.16 KB, 下载次数: 14)

QQ截图20210720143136.png
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7570
在线时间
665 小时
注册时间
2012-7-29
帖子
174
19
发表于 2021-7-20 15:22:37 | 只看该作者
本帖最后由 开关关 于 2021-7-20 15:41 编辑
xuexizhanghao 发表于 2021-7-20 14:51
这个倒是可以,但是GAMEOVER以后要是重启游戏再进1号存档就会aaa is not defind
话说我忽然想到 ...


我在7楼发的方法不会受到DataManager.maxSaveFiles的限制,放心用就行。

怕冲突,试试不就知道了。我用的工程存档上限是20,测试用存档判定,存档编号是12345,照样没问题。

$gameSystem.onBeforeSave() 是存档的步骤之一,你可以去掉试试,看看报不报错。什么都是可以试出来的。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
942
在线时间
64 小时
注册时间
2021-7-15
帖子
24
20
 楼主| 发表于 2021-7-20 16:00:44 | 只看该作者
本帖最后由 xuexizhanghao 于 2021-7-20 16:01 编辑
开关关 发表于 2021-7-20 15:22
我在7楼发的方法不会受到DataManager.maxSaveFiles的限制,放心用就行。

怕冲突,试试不就知道了。我用 ...


谢谢,多谢二位的教导终于成功了,感谢我这么蠢你们还耐心教我。

顺便问一句,按我一楼所说的,正常死亡后如果我想在再再读档的时候获得某个物品是不是也是类似的思路?
就是比如说,人物摔死了,就StorageManager.save(10,"摔死"),
完后每个存档点的的事件的“打开存档画面”的下一行写“如果StorageManager.load(10)=="摔死"就“增加物品:小心坠崖”“然后删掉这个存档10
如果StorageManager.load(10)=="吃得太多"就增加物品:饱腹之余,然后删掉存档10
之类的,我的思路对吗(我系统设置那里设的菜单上没有存档选项,只能用存档点,然后特殊物品当做成就列表用)

QQ截图20210720160121.png (49.06 KB, 下载次数: 10)

QQ截图20210720160121.png
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-18 09:42

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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