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论坛的小圈子 离开

相关推荐
二级小助手1 小时前
二级Web前端选择题高频真题20道与考场避坑笔记
javascript·css3·html5·web前端·计算机二级·二级web·web真题
前端小卡拉2 小时前
用了大半年 AI 编程工具,我才搞懂 Skill 到底是什么
前端·javascript
郭邯2 小时前
用 Intl.DateTimeFormat 手写一个时区转换器,顺便聊聊我和 AI 结对编程的日常
前端·javascript
AI砖家2 小时前
React Native 打包体积优化指南:在保证功能正常的前提下把包压到最小
javascript·react native·react.js·打包优化
无糖可可果3 小时前
从零看懂 JWT 登录鉴权:一个 React Demo 的完整拆解
前端·javascript
BreezeJiang3 小时前
JWT 登录不是存个 token:React 鉴权真正要闭合的是一条数据流
javascript·react.js·axios
2601_966563523 小时前
SFC游戏下载解压即玩 经典游戏整合版 包含SFC游戏合集1460个
游戏
四千岁3 小时前
稀疏向量BM25Retriever不支持中文怎么办?jieba来帮忙
前端·javascript·后端
这是个栗子3 小时前
【JS代码分析】前端鉴权基础:Token 的本地存储与状态重置实践
开发语言·前端·javascript
郝学胜-神的一滴4 小时前
[简化版 GAMES 104] 现代游戏引擎 06:从Tick时序到邮局模型,拆解确定性世界的底层密码
开发语言·c++·游戏引擎·图形渲染·软件开发·opengl