// 处理数据包 private void ProcessPackage() { Network.Package p; // 获取数据包直到完毕 while (mNetwork.NextPackage(out p)) { // 确定不是本机,避免重复 if (mNetwork._id == p.id) { return; } // 获取该客户相对应的人物模组 if (!_htEnemies.Contains(p.id)) { AddEnemyCharacter(p.id); } // 更新客户的人物模型状态 EnemyCharacter ec = (EnemyCharacter)_htEnemies[p.id]; // 血量 ec.SetHP(p.hp); // 移动动作 ec.Move(p.pos.V3, p.rot.V3, p.cameraRot.V3, p.rightHandRot.V3); // 开枪 if (p.isShooted) { ec.Fire(); } } }