对于回合制游戏相关问题,我有一个有效但效率低下的解决方案。
我现在想优化它。
短版:两名玩家共享游戏棋盘的几乎相同视图,除了活跃玩家能够“玩”而非活跃玩家只能查看棋盘。
活跃的玩家会看到一个带有几个按钮以与棋盘交互的视图,而不活跃的玩家则会显示一个简短的“等待轮到你”的消息。使用 JQuery 的 .load() 方法将这些模板加载到 div 中。
但是,每回合有 0-3 个动作,并且这些动作中的每一个都将“实时”显示给双方玩家。
截至目前,我有一个每秒重新加载的javascript计时器:
A)一个隐藏的 div,仅包含从游戏模型中获取的“移动”和“转弯”变量。(就数据流量而言 > 10 字节)如果在移动期间进行了更改 ->
B)重新加载板视图。如果玩家使用少于 3 个动作感到满意 - 有一个“传球转身”选项,或者使用所有 3 个动作 ->
C)将 move 变量重置为 0 并更改活动玩家。(显示不同的视图,如上所述)
我知道每秒服务器调用是一种非常糟糕的练习方式,并且确实需要一些输入。