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

Project1

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

[有事请教] 判断某文件是否存在,用条件分歧的脚本怎么写?

[复制链接]

Lv4.逐梦者

梦石
8
星屑
3953
在线时间
396 小时
注册时间
2017-10-11
帖子
154
跳转到指定楼层
1
发表于 2020-6-28 03:15:31 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
例如,判断某个文件名的图片是否存在,存在则显示,不存在则跳过。

Lv3.寻梦者

梦石
2
星屑
1943
在线时间
188 小时
注册时间
2020-5-21
帖子
123
5
发表于 2020-6-28 09:44:44 | 只看该作者
耶,收藏
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1333
在线时间
153 小时
注册时间
2020-4-26
帖子
151
4
发表于 2020-6-28 08:46:10 | 只看该作者
但以遊戲開發的角度,什麼情況會出現,圖片資源存在的不肯定呢?會用到,你就會放,他就該在
因為fs是node.js的模組,打包的方式不支援就不能用

点评

同意,不如研究检查文件完整性的方案来得实在。不过也许楼主是想做ARG游戏,让玩家去改文件名,改对了才显示。这就需要判断文件存在与否了。  发表于 2020-6-28 12:23
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
41983
在线时间
7655 小时
注册时间
2009-7-6
帖子
13527

开拓者贵宾

3
发表于 2020-6-28 08:40:42 | 只看该作者
给bitmap加一坨函数

JAVASCRIPT 代码复制
  1. Bitmap.prototype.setErrorListener = function(listner) {
  2.         if (!this.isError() && this._image) {
  3.                 this._image.removeEventListener('error', this._errorListener);
  4.                 this._image.addEventListener('error', this._errorListener = listner);
  5.         } else {
  6.                 listner(this);
  7.         }
  8. };


测试
JAVASCRIPT 代码复制
  1. var callback = function() {
  2.   console.log('8存在');
  3. };
  4. var bitmap = ImageManager.loadPicture("test");
  5. bitmap.setErrorListener(callback.bind(this));


当然,这个方法是异步的,不一定能立刻获得结果
所以一般加一个addLoadListener来确认是否成功
RGDirect - DirectX驱动的RGSS,点我了解.
(排满,暂停)RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7567
在线时间
675 小时
注册时间
2012-7-29
帖子
175
2
发表于 2020-6-28 05:23:21 | 只看该作者
我可能会用这段代码来实现判断文件是否存在:
JAVASCRIPT 代码复制
  1. require('fs').existsSync('img/animations/Absorb.png');

但是对于1楼所描述,遇到不存在的图片就跳过的效果,我认为另一个方法实现得更加简便。方法是让显示图片命令遇到不存在的图片时不报错。

要实现图片缺失却不报错,可以试试下面这个插件:
来源:https://raw.githubusercontent.com/triacontane/RPGMakerMV/master/ThroughFailedToLoad.js
插件本体

这样一来,就可以在事件执行内容中随心所欲地显示图片,遇到不存在的图片也不会报错了。这个方法省去了写条件分歧的工作量。

评分

参与人数 1+1 收起 理由
CCD0645 + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-7-21 05:08

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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