Skip to content
Snippets Groups Projects
Forked from pregmodfan / fc-pregmod
17409 commits behind the upstream repository.

Basic documentation for the limb access functions in the new limb system.

ID system

The new system uses new IDs instead of the old ones.

limb       new  old
no limb:    0    1
natural:    1    0
basic:      2   -1
sex:        3   -2
beauty:     4   -3
combat:     5   -4
cybernetic: 6   -5

Usage example:

<<if isAmputee($activeSlave)>>
    Slave is full amputee.
<</if>>

Most functions can be used like this, though some are more specialized.

Functions:

Read-only functions:

  • isAmputee(slave): True if slave has no limbs, neither natural nor prosthetic.

  • hasAnyNaturalLimbs(slave): True if slave has at least one natural limb.

  • hasAnyProstheticLimbs(slave): True if slave has at least one prosthetic limb.

  • hasAnyLegs(slave): True if slave has at least one leg.

  • hasAnyArms(slave): True if slave has at least one arm.

  • hasAnyNaturalLegs(slave): True if slave has at least one leg that is natural

  • hasAnyNaturalArms(slave): True if slave has at least one arm that is natural

  • hasAnyProstheticArms(slave): True if slave has at least one arm that is prosthetic

  • hasBothLegs(slave): True if slave has both legs.

  • hasBothArms(slave): True if slave has both arms.

  • hasBothNaturalLegs(slave): True if slave has both legs and they are natural.

  • hasBothNaturalArms(slave): True if slave has both arms and they are natural.

  • hasAllLimbs(slave): True if slave has all limbs.

  • hasAllNaturalLimbs(slave): True if slave has all limbs and all are natural.

  • hasLeftArm(slave): True if slave has a left arm.

  • hasRightArm(slave): True if slave has a right arm.

  • hasLeftLeg(slave): True if slave has a left leg.

  • hasRightLeg(slave): True if slave has a right leg.

  • getLeftArmID(slave): Returns limb ID of the left arm.

  • getRightArmID(slave): Returns limb ID of the right arm.

  • getLeftLegID(slave): Returns limb ID of the left leg.

  • getRightLegID(slave): Returns limb ID of the right leg.

  • getLimbCount(slave, id): Returns count of specified limb ID. Can also be used to check for groups: 101: any limbs that are not amputated 102: prosthetic limbs off all kind 103: sex-prosthetic 104: beauty-prosthetic 105: combat-prosthetic

    103-105 mean the sum of 3-5 and 6 respectfully.

  • getLegCount(slave, id): Returns count of legs with specified limb ID.

  • getArmCount(slave, id): Returns count of arms with specified limb ID.

String functions

  • idToDescription(id): Returns a very short description of the specified limb ID. 0: "amputated"; 1: "healthy"; 2: "modern prosthetic"; 3: "advanced, sex-focused prosthetic"; 4: "advanced, beauty-focused prosthetic"; 5: "advanced, combat-focused prosthetic"; 6: "highly advanced cybernetic";

  • armsAndLegs(slave, arms, arm, legs, leg): Returns a string depending on the limbs a slave has. By default this is a variation of arms and legs, but this can be changed via parameters.

    Examples: armsAndLegs(slave, "hands", "hand", "feet", foot) returns hands and feet for a slave with all limbs, hand and foot for a slave with one limb each and feet for a slave with two legs, but no arms.

    Expects the slave to have at least one limb. Only the first parameter is mandatory, the rest defaults to the equivalent of armsAndLegs(slave, "arms", "arm", "legs", "leg")

Write-only functions

  • removeLimbs(slave, limb: Removes a slave's limbs. Allowed values for limb: "left arm", "right arm", "left leg", "right leg", "all".

  • attachLimbs(slave, limb, id): Attaches a limb of the specified id. Expects amputated limbs. Will overwrite existing limbs. Allowed values for limb: "left arm", "right arm", "left leg", "right leg", "all".

  • configureLimbs(slave, limb, id): Sets the slave's limb to the specified id and sets all limb related variables to their correct values. Intended for use during slave generation and events. Allowed values for limb: "left arm", "right arm", "left leg", "right leg", "all".