我希望有一个事件,点击后可以获得奖励,但除非第二天(真实世界的时间)再次访问,否则不会再给予奖励。我该怎么做呢?
将问题分解为几个部分。
第一个问题:如何获取现实中的日期。
第二个问题:如何记住我们上次与事件交互时的现实日期。
有一点需要注意,你可能需要为此使用一些脚本。例如,对于第一个问题,你可以使用 Date 类将当前的日期和月份存储在变量中。
var date = new Date();
// 将 1 和 2 更改为你知道空闲的变量 ID
$gameVariables.setValue(1, date.getMonth())
$gameVariables.setValue(2, date.getDate())
通过这种方式,你将当前月份和当前日期存储在了变量中。
然后你可以将这些数据保存在某个地方,再次获取当前日期,并使用条件分支等进行比较。如果两者相等,则说明是同一天。如果需要,你也可以加入年份,date.getYear() 可以实现这一功能。
你的条件脚本试图使用脚本调用中的变量。这是行不通的——在脚本调用中声明的 JavaScript 变量只能在该脚本调用内部被访问。
你根本不应该使用脚本调用。请使用“控制变量”(使用不同于 3 的其他变量),并在“脚本”框中输入以下内容:
new Date().getDate()
然后,你的条件分支只需进行普通的变量比较(将变量 3 与另一个变量进行比较)。第二个脚本调用可以替换为一个“控制变量”操作,将变量 3 设置为等于另一个变量。
在同一张地图上放置多个这样的物品,它们会相互抵消吗?
我没看出有什么问题?不过你可能需要为每个变量单独设置一对变量。如果数量很多的话,可能会变得很混乱。
我会研究一下这个 Self Variable 插件。
1 个赞
这是日文内容。
我用于登录奖励的事件如下:
希望能对您有所帮助。
◆变量操作:#0017 日 = new Date().getDate()
◆条件分支:#0017 日 ≠ #0018 前日
◆文本:无, 无, 变暗, 中
: :感谢您的游玩!
: :赠送登录奖励!
◆变量操作:#0018 前日 = #0017 日
◆
:分支结束
