查看: 515|回复: 2
打印 上一主题 下一主题

[求助] 关于使用SetBlockNew替换方块的问题

[复制链接]

6

主题

5

回帖

9

积分

Lv.1 新手木匠

UID
7839539
小麦
0
金锭
50
下界之星
0
跳转到指定楼层
楼主
发表于 2020-7-18 11:01:28 来自手机 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式 IP:浙江
我想在某些情况下,允许玩家生成一些种类的建筑,那么最简单的方案就是用PlaceStructure放置结构来生成
但是这造成了一个问题,就是有些玩家可能会在家的附近生成,这样就会一不小心覆盖掉家的方块
我的解决思路是先利用GetBlockNew Api遍历一遍即将生产建筑部分的方块,将其储存起来,然后假如玩家不小心替换了家的方块后,可以利用SetBlockNew Api来从刚刚保存的字典里恢复
这看起来很好,我在单独开发这个备份功能的时候是成功的,但是当我利用SetBlockNew这个Api去替换由结构文件生成的方块时,就会无法生成,SetBlockNew给我的返回是False
我又去旁边手搭了几个方块,成功的备份恢复了,结构方块内的就是无法恢复,有什么解决的方案吗

6

主题

5

回帖

9

积分

Lv.1 新手木匠

UID
7839539
小麦
0
金锭
50
下界之星
0
沙发
 楼主| 发表于 2020-7-19 16:25:57 来自手机 | 只看该作者 IP:浙江
好像没人回答,那就我自问自答一下,以便给遇到这个问题的小伙伴做个参考
用结构文件生成的方块确实不一样,即使用指令setblock都不能替换,但是fill可以,所以在替换方块前,可以先用fill指令清空这一块,再生成就好了

4

主题

1093

回帖

345

积分

Lv.2 石器学徒

UID
3409745
小麦
4
金锭
1241
下界之星
0
板凳
发表于 2020-8-4 11:17:29 | 只看该作者 IP:广东
可以提供下作品id和复现方法给我们吗
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

返回顶部