mirror of
https://gitea.wildfiregames.com/0ad/0ad
synced 2026-06-16 05:13:58 -07:00
Clone targetPos in attackPlan
On a rejoined client the data isn't the same anymore. But it's equal. Likely this is because the data isn't aquired at the same turn. This could also be solved more generally by copying all data which is pushed to the AI. Or by using the same serializer for AI as for the rest of the simulation.
This commit is contained in:
parent
3ddf101a06
commit
55f2d356ff
1 changed files with 2 additions and 2 deletions
|
|
@ -1239,7 +1239,7 @@ AttackPlan.prototype.getPathToTarget = function(gameState, fixedRallyPoint = fal
|
|||
const endPos = { "x": this.targetPos[0], "y": this.targetPos[1] };
|
||||
const path = Engine.ComputePath(startPos, endPos, gameState.getPassabilityClassMask("large"));
|
||||
this.path = [];
|
||||
this.path.push(this.targetPos);
|
||||
this.path.push(clone(this.targetPos));
|
||||
for (const p in path)
|
||||
this.path.push([path[p].x, path[p].y]);
|
||||
this.path.push(this.rallyPoint);
|
||||
|
|
@ -2271,7 +2271,7 @@ AttackPlan.prototype.Serialize = function()
|
|||
"isBlocked": this.isBlocked,
|
||||
"targetPlayer": this.targetPlayer,
|
||||
"target": this.target !== undefined ? this.target.id() : undefined,
|
||||
"targetPos": this.targetPos,
|
||||
"targetPos": clone(this.targetPos),
|
||||
"uniqueTargetId": this.uniqueTargetId,
|
||||
"path": this.path,
|
||||
"unitCollUpdateArray": this.unitCollUpdateArray
|
||||
|
|
|
|||
Loading…
Reference in a new issue