我正在创建一个网络游戏(基于文本)。游戏的一部分是“竞技场”。我让每个玩家都投入一个角色进行战斗。我正在努力做到的是,当战斗开始时,付款人(以及其他任何人)可以一次动态地看到战斗1行动的结果。
我正在通过.php
进行战斗,因为我想确保所有数据都保存在服务器端,以便它反映每个人的相同内容,我可以将最终结果加载到{ {1}}。我的问题是在每次“心跳”期间将信息反映在浏览器上(MySQLi Database
)。
我的理论是让JS
一次完成整个战斗并逐行加载到隐藏在服务器上的.php
文件中。战斗开始后,将通过更新.txt
将信息从.txt
加载到浏览器。我可以将信息加载到文本中并分开:
“{玩家1}在面对x伤害时打了{Player 2}”| {p2HeadDamage = -5} DOM
我试图找到一种方法让JS将2分成不同的变量 - 第一个用于显示<br>
,第二个用于“损坏条”,我正在单独处理。
我的问题 - 我如何一次拉出1行(由DOM
分隔)和每个变量?
答案 0 :(得分:1)
我认为最好使用一种方法来维护服务器和客户端上的数据结构,而不是将其转储到txt文件中并让客户端解析它。
执行此操作的一种方法是使用一系列定义交互的对象。对于例如一个“FightRecord”对象,包含一个“Action”对象列表,它有两个属性“Desc”和“Damage”...然后使用JSON序列化/反序列化记录,JS函数setInterval循环遍历每个X的动作使用JQuery更新DOM的函数的秒数。
如果由于某种原因使用JSON交换对象是不可行的,那么您将需要使用正则表达式使用类似的基于setInterval的机制将文本数据解析为结构化数据。