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

Project1

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

[有事请教] 请教如何用代码改变第3号地图第6号事件第9页的角色图片

[复制链接]

Lv5.捕梦者

梦石
24
星屑
7052
在线时间
247 小时
注册时间
2020-12-4
帖子
306

极短24获奖极短23获奖极短22获奖

1
发表于 2023-6-7 18:00:39 | 显示全部楼层
本帖最后由 纯属小虫 于 2023-6-8 12:17 编辑

咳咳,感觉够呛......
每次过图的时候,都会重新读取$game_map ,$game_events又是从$game_map 里读取的,所以$game_events 也会重新读取。
这些读取的数据源头都是这一行代码:@map = load_data(sprintf("Data/Map%03d.rxdata", @map_id))
所以,源文件在 Data/Map%03d.rxdata 里

简单来说就是,事件相关的信息都是临时变量
即使你把他们改了,【过图】或者【重启游戏】之后,它们都会归于原位......
除非魔改一波数据结构,以及存档读档的格式,才能比较好的实现题干的功能。

当然,如果只是单纯地想临时修改的话,也容易
不过执行该指令的位置必须就在【3】号地图里

随便一个事件脚本,执行以下内容即可
$game_map.events[6].pages[9].graphic.character_name =  "/data/Characters/大花狗.png"

以此思路,灵活应用一下,可以有这样的做法:
你可以在该地图创建一个自动执行,或者并行处理的事件(推荐并行处理),然后让该事件在满足某条件下,执行上述的脚本
从而间接满足“永久改变”

emmmm...应该是这样把,我我我...没试过哈,你自己测试一下~

点评

嗷嗷!数组应该是复数的~~感谢指正  发表于 2023-6-8 12:16
对了,发现一个小错误, "$game_map.events[6].page[9].graphic.character_name = "/data/Characters/大花狗.png""这里应该是"pages"不是"page"  发表于 2023-6-8 06:56
好的,多谢大神指点!感谢!  发表于 2023-6-8 06:54

评分

参与人数 1+1 收起 理由
taeckle + 1 我很赞同!

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-10 23:16

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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