diff --git a/data/base/script/campaign/libcampaign_includes/artifact.js b/data/base/script/campaign/libcampaign_includes/artifact.js index 9a07bcfcb79..89e1f18f6c3 100644 --- a/data/base/script/campaign/libcampaign_includes/artifact.js +++ b/data/base/script/campaign/libcampaign_includes/artifact.js @@ -150,6 +150,12 @@ function __camPickupArtifact(artifact) camTrace("Artifact", artifact.id, "is not managed"); return; } + if (Object.hasOwn(ai, "pickedUp") && ai.pickedUp === true) + { + camDebug("Already picked up the artifact", __ALABEL); + return; + } + ai.pickedUp = true; camTrace("Picked up", ai.tech); playSound(cam_sounds.artifactRecovered, artifact.x, artifact.y, artifact.z);