RPGMakerMZ 游戏引擎 野外采集点制作

本文章个人保存记录

Project1论坛 小圈子 人才 不得学习

注意几点

  1. 采集点需要计时 所以需要初始化数组 记录每一个采集点的时间

  2. 保存每一个采集点的时间经过了多少

  3. 判断采集点时间是否为0 为0则进行采集 然后重新赋值时间

1.初始化采集点

需要在RPGMZ游戏 新建游戏 读取存档 这两点进行初始化采集点数组

javascript 复制代码
//=============================存档功能======================================
    const _Game_System_initialize = Game_System.prototype.initialize;
    Game_System.prototype.initialize = function() {
        _Game_System_initialize.call(this);
		this.initCollectCooldown(); // 初始化采集点
    };
	
	// 初始化采集点冷却
	Game_System.prototype.initCollectCooldown = function() {
   	    // 如果已经存在,就不覆盖(保护存档)
        if (this._Collect_Cooldown != null) return;
    
        // 100个采集点,1~5分钟随机冷却
        this._Collect_Cooldown = [];
        for (let i = 0; i < 100; i++) {
            this._Collect_Cooldown[i] = Math.floor(Math.random() * 14401) + 3600;
        }
    };
	
	const _Game_System_prototype_onAfterLoad = Game_System.prototype.onAfterLoad
	Game_System.prototype.onAfterLoad = function() {
        _Game_System_prototype_onAfterLoad.call(this);
		this.initCollectCooldown();
    };

initialize 是新建游戏时走的 onAfterLoad是读取存档时走的 都需要初始化

以上代码 可以同时完成 1 2 两个知识点

3. 采集点的计时和判断

javascript 复制代码
const _Scene_Map_prototype_update = Scene_Map.prototype.update;
    Scene_Map.prototype.update = function() {
        _Scene_Map_prototype_update.call(this);
		//采集点冷却计时
        for (let i = 0; i < 100; i++) {
		    if($gameSystem._Collect_Cooldown[i] > 0){
				$gameSystem._Collect_Cooldown[i]--;
			}
		}

    };

接下来在事件页进行判断即可

以人参为例子 分支 $gameSystem._Collect_Cooldown0 是第一个采集点 游戏内可以有很多个采集点 一百个 一千个都可以 当然每个采集点时间都是独立的

成功制作出了游戏内野外采集功能 并且支持存档功能

【RPGMakerMZ 野外采集点制作方式】 视频演示

结尾总结

请Project1论坛的小圈子 离开

相关推荐
YHHLAI1 小时前
[特殊字符] 面试中的 Promise —— 从入门到精通
前端·javascript·面试
weixin_BYSJ19872 小时前
SpringBoot + MySQL 乒乓球运动员信息管理系统项目实战--附源码04954
java·javascript·spring boot·python·django·flask·php
沪飘大军2 小时前
ll-llm:一个零依赖、可插拔的 OpenAI 兼容 LLM 代理
javascript
山河木马4 小时前
GPU自动处理专题3-NDC怎么映射成屏幕像素坐标(视口变换)
javascript·webgl·图形学
Appthing5 小时前
在 TanStack Start 中使用 VitePWA 的正确配置
javascript
前端炒粉6 小时前
手写promise
java·前端·javascript
mONESY6 小时前
Node.js fs 文件系统模块 四种读写方案全解析
javascript·后端
Larcher6 小时前
从回调地狱到优雅异步:Node.js 文件操作进化史
javascript·后端·架构
熊猫钓鱼>_>7 小时前
Electron:当 Web 技术统治桌面
大数据·前端·javascript·人工智能·架构·electron·agent
丁小未7 小时前
基于MVVM框架的XUUI HelloWorld 新手教程
unity·性能优化·c#·游戏引擎