1

主题

5

回帖

70

积分

普通创作者

积分
70
发表于  2023-12-25 16:46:46 | 显示全部楼层 |阅读模式 987 2
地形编辑
编辑器昵称: 仅版务团队查看
联系QQ: 仅版务团队查看
正在看帖子的兄弟,您好,我现在正在阐述做游戏一个多月以来遇到的最棘手的问题,希望你能耐心聆听并为我提供一些帮助。


我有一个备战席的数组变量,比如云顶(8个人,每个人有格子独立的备战席),我想统一用一个全局的数组变量维护(就叫备战席)
里面装了圆形区域1,...2...n--显然单人的其他相关逻辑都很棒。
但多人的时候,另一个玩家加入游戏,其初始化变量的过程,覆盖了这一个备战席全局变量,导致玩家1的备战席变成了玩家2的了,玩家2的备战席就是本身的没变。
而后,我发现了更多的传值问题(其在单人都表现的很完美)
-比如人口,玩家1上了几个怪物到玩家2的地盘,导致玩家2没有人口上怪...
而且似乎玩家1的部分界面无法传入。

这些问题听着简单,我无法解决的几个点在于:
1.其本身就是数组,Y3好像无法在数组中再存放数组,若要改单位组貌似可行,但是代码工程量略大,需要大改。
2.如果使用备战席1,备战席2,这样的代码,重复性以及整洁性大大下降,若有4个玩家就需要4份,同1,非常不合理?
3.在我对脚本概念的理解里,玩家1的备战席变量是在玩家1客户端的,玩家2的备战席变量是在玩家2客户端的,
我不理解为什么玩家2能影响去修改玩家1的变量--这代表了全局变量可以被这2个2玩家去修改。
我想知道有没有什么API可以管理这个问题,或者有没有什么trick,让这个变量只能被一个玩家所感知?
4.获取本地玩家这个API我看标注了最好不要用,会导致异步,所以一直没测试。看了一些人讲但是没太听懂,希望有人能给我讲解一下。

希望您能给出一些让我醍醐灌顶的建议和修改方法。小辈不胜感激!
我知道答案 回答被采纳将会获得1 帮助次数 + 22 金钱 已有2人回答

2

主题

5

回帖

52

积分

普通创作者

积分
52
发表于  2023-12-26 15:41:45 来自手机 | 显示全部楼层
备战席1/2/3/4这个方法是可行的。其他方法我想到一个能不能用玩家的自定义键值试试?只是一个思路,没有实践过。

13

主题

32

回帖

455

积分

优秀创作者

积分
455
发表于  2023-12-26 19:49:37 | 显示全部楼层
所有玩家用同一个全局变量?   数组套数组?    好像可以用玩家自定义值  
不然就用累加数组号      。玩家1的 数组号是 1-8   玩家2  是9-16      
或者用自定义事件应该可以研究一下