假设我有一张适合4名玩家的桌子: 但是这只手中只使用了3名玩家:A,B,C。
在服务器上,布局如下:
C
B
A
但是所有玩家都必须使用正确的玩家顺序看到它,例如:ABC,BCA,CAB 他们还必须认为没有人坐在顶部,北方位置,客户总是认为底部和两侧都被占用。
所以例如: 服务器看到上面的内容,但C看到:
A B
C
B看到:
C A
B
和A看到:
B C
A
我正在试图找出一种算法,可以计算出服务器上的位置,这个位置也会在客户端上映射。例如,如果我告诉它我想知道客户端B上的哪个位置也是服务器的A映射呢?答案是,服务器上的索引1映射到客户端上的索引3。我也想反过来。
我会手动编程,但我想知道算法是否可以执行此操作,因为有一个模式。
由于
答案 0 :(得分:3)
我不确定我理解你的问题,因为它看起来微不足道,但是......
这只是一个循环转变。
pos = (pos - mypos) % numofplayers
答案 1 :(得分:1)
如果您有4个铃声配置的播放器,则将播放器位置存储在服务器上的阵列中,并将它们映射到每个客户端的显示位置。
示例:
绝对职位:position=[A, B, C]
用户A看到:A位于中心,索引为0
。 B在右边,索引0 + 1
,C在左边,索引0 - 1 MOD 3
用户B看到:B位于中心,索引为1
。 C在右边,索引1 + 1
。 A在左边,索引1 - 1
。
用户C看到:C位于中心,索引为2
。在右边,索引2 + 1 MOD 3
。 B在左边,索引2 - 1
。