diff --git a/src/js/useSlave.JS b/src/js/useSlave.JS index f24361b65f24a70dff0e0a0f6ea0bc2ce97d9079..b06c192d10325187773daf441cc442a45437be59 100644 --- a/src/js/useSlave.JS +++ b/src/js/useSlave.JS @@ -282,24 +282,24 @@ window.useSlaveDisplay = function(slave) { } } if (slave.relationship > 0) { - const si = V.slaveIndices[slave.relationshipTarget]; - if (isSlaveAvailable(V.slaves[si])) { - sexOptions.push({text: `Fuck ${him} with ${his} ${relationshipTermShort(slave)} ${SlaveFullName(V.slaves[si])}`, scene: `FRelation`, update: {partner: "relationship"}}); + const lover = getSlave(slave.relationshipTarget); + if (isSlaveAvailable(lover)) { + sexOptions.push({text: `Fuck ${him} with ${his} ${relationshipTermShort(slave)} ${SlaveFullName(lover)}`, scene: `FRelation`, update: {partner: "relationship"}}); } else { - if (V.slaves[si].assignment === "be your agent") { + if (lover.assignment === "be your agent") { if (slave.broodmother < 2) { - sexOptions.push({text: `Send ${him} to live with your agent ${SlaveFullName(V.slaves[si])}`, goto: `Agent Company`, update: {subSlave: V.slaves[si]}}); + sexOptions.push({text: `Send ${him} to live with your agent ${SlaveFullName(lover)}`, goto: `Agent Company`, update: {subSlave: lover}}); } else { sexOptions.push({text: `A hyper-broodmother cannot be sent to live with your agent`}); } } else { - sexOptions.push({text: `${SlaveFullName(V.slaves[si])} is unavailable`}); + sexOptions.push({text: `${SlaveFullName(lover)} is unavailable`}); } } } if (slave.rivalryTarget !== 0 && hasAllLimbs(slave)) { - let rsi = V.slaveIndices[slave.rivalryTarget]; - if (isSlaveAvailable(V.slaves[rsi]) && hasAnyLegs(V.slaves[rsi])) { + const rival = getSlave(slave.relationshipTarget); + if (isSlaveAvailable(rival) && hasAnyLegs(rival)) { sexOptions.push({text: `Abuse ${his} rival with ${him}`, scene: `FRival`}); } }