JasXSL / JasX-HUD

JasX HUD v0.3 and beyond in Second Life
MIT License
9 stars 1 forks source link

API Reference:

You can use the JasX wardrobe in your own projects, or just by chat command on channel 1.

The syntax is: jasx.setfolder [outfit]/[subfolder]

For example:

Changing outfit:

Toggle Strapon:

Toggling onAttach:

WARNING: REMOVED in 0.6 Toggling a single folder without affecting other folders. Only use this for Bits, Dressed & Underwear

Forcing an outfit info command:

Forcing a settings command:

Set sex

Set Species

HUD SENT EVENTS (OUTPUTS)

The HUD sends events on channel 2 in an llRegionSayTo to the owner. They are in the form of "event:(obj)JSON" Some events can be requested to other targets than the owner, but they must be requested by a command such as jasx.settings or jasx.getoutfitinfo.

Outfit info: 0.6

outfits:{
    "root":(str)outfit,                            // Ex: Lynx
    "strapon":(bool)strapon_on,                    // Ex: 1
    "slots":(int)dressed_slots                     // 2-bit array, from right to left being head, arms, torso, crotch, boots. Ex: 0b00 00 00 01 10 = head dressed, arms underwear. You can use jasxSlotState(slots, slot) to get the current state. 0 = bits, 1 = underwear, 2 = nude
}

0.5 and older

outfits:{
    "root":(str)root_folder,                            // Ex: Lynx
    "strapon":(bool)strapon_on,                     // Ex: 1
    "dressed":(arr)dressed_slots,                 // Ex: [1,1,1,0,1]  (( All but groin is dressed ))
    "underwear":(arr)underwear_slots,           // == || == For underwear
    "bits":(arr)bits_slots                                 // == || == For Bits
}

The slots are as follows:

  #define SLOT_HEAD 0
  #define SLOT_ARMS 1
  #define SLOT_TORSO 2
  #define SLOT_GROIN 3
  #define SLOT_BOOTS 4

Game attached:

gameattached:{
  "game":(str)lowercase_game_name
}

Settings:

settings:{
  "sex":(int)sex,
  "id":(int)jasx_id (owner only),
  "species":(int)species,
  "lfp":(bool)lfp_enabled,
  "flist":(str)f_list_character,
  "rp":(int)rp_style, 
}

Bridge shared vars

jx Bridge creates a multitude of DB4 entries for userdata stored in linkset data:

userData(BSUD$username)

See jx RLV.lsl for a full list of values. Note: userData always returns a string.

Settings folder

If you want to automatically change your species/gender settings when changing an outfit, you can put a folder underneath our outfit folder containing settings like $SEX=<sex> and/or $SPEC=<species>

Example: #RLV/JasX/ThiccFox/$SEX=6$SPEC=3 - Sets sex to female (vag+breasts = 2+4 = 6) and species to furry (3) when activating that outfit. See above for genital flags and species.