Add type assertions in areEntityInstancesEqual

This commit is contained in:
2026-03-31 06:00:47 +02:00
parent b2c3dc60ac
commit f78f35f98c

View File

@@ -336,25 +336,35 @@ export function areEntityInstancesEqual(left: EntityInstance, right: EntityInsta
} }
switch (left.kind) { switch (left.kind) {
case "playerStart": case "playerStart": {
return left.yawDegrees === right.yawDegrees; const typedRight = right as PlayerStartEntity;
case "soundEmitter": return left.yawDegrees === typedRight.yawDegrees;
}
case "soundEmitter": {
const typedRight = right as SoundEmitterEntity;
return ( return (
left.radius === right.radius && left.radius === right.radius &&
left.gain === right.gain && left.gain === typedRight.gain &&
left.autoplay === right.autoplay && left.autoplay === typedRight.autoplay &&
left.loop === right.loop left.loop === typedRight.loop
); );
case "triggerVolume": }
case "triggerVolume": {
const typedRight = right as TriggerVolumeEntity;
return ( return (
areVec3Equal(left.size, right.size) && areVec3Equal(left.size, typedRight.size) &&
left.triggerOnEnter === right.triggerOnEnter && left.triggerOnEnter === typedRight.triggerOnEnter &&
left.triggerOnExit === right.triggerOnExit left.triggerOnExit === typedRight.triggerOnExit
); );
case "teleportTarget": }
return left.yawDegrees === right.yawDegrees; case "teleportTarget": {
case "interactable": const typedRight = right as TeleportTargetEntity;
return left.radius === right.radius && left.prompt === right.prompt && left.enabled === right.enabled; return left.yawDegrees === typedRight.yawDegrees;
}
case "interactable": {
const typedRight = right as InteractableEntity;
return left.radius === typedRight.radius && left.prompt === typedRight.prompt && left.enabled === typedRight.enabled;
}
} }
} }