/* v0.96.2 change log
added code for handjob mode support
added right handjob mode fingers
Ton3 notes of handjob figer/hand fixes:
1. Added lable layers to the right hand (just copy/pasted the labeling layer from the right upperarm). I did
this because figerr would show during her arms on his legs position. This change made it so that it would
only show during the handjob position.
2. Added new lines to the "misc:code for right hand job". It makes the change above actually work.
3. Changed fingerr costume script so that it functions properly. The original was mapped to the glove, which
no other costume element was ever mapped to any in-game clothing option. I used the modder to look for the
fingerr and just used that path. (took a while) Did not change the skin for it though.
4. Same as above, but for figerl.
5. I didn't include the outline changes because they are amature at best. I figured I'd leave it to the
professionals.
*/
import flash.events.Event;
import flash.utils.Timer;
import flash.events.TimerEvent;
var main;
if (this.parent.parent != null){
main = this.parent.parent;
var i:uint;
//declares timer in milliseconds (will be enabled later)
// var t:Timer = new Timer(10000);
//character code - generate on Modding tab
// main.g.inGameMenu.loadData("earring:stud");
//additional loop for each component to hide
/* for (i = 0; i<main.her.torso.rightCalfContainer.calf.numChildren; i++)
main.her.torso.rightCalfContainer.calf.getChildAt(i).visible=false;
*/
//---------------------------her components---------------------------\\
//---------------------------right nipple
/* var nipr=new newnippler();
//adds as nipple - follows skin HSL sliders on Options tab
main.loadCustomFull(nipr,".|Her.torso.midLayer.rightBreast.nipple","x:0;y:0;r:0;a:1");
//---------------------------left nipple
var nipl=new newnipplel();
//adds as nipple - follows skin HSL sliders on Options tab
main.loadCustomFull(nipl,".|Her.torsoBack.leftBreast.nipple","x:0;y:0;r:0;a:1");
//---------------------------right breast
var rtit=new breastr();
rtit.gotoAndStop(main.g.characterControl.breastSize+1);
//adds as skin - follows skin HSL sliders on Options tab
main.loadCustomFull(rtit,".|Her.torso.midLayer.rightBreast","x:0;y:0;r:0;a:1");
//adds as costume - ignores skin HSL sliders on Options tab
//main.loadCustomFull(rtit,".|Her.torso.breastCostume.bra","x:0;y:0;r:0;a:1");
//---------------------------left breast
var ltit=new breastl();
ltit.gotoAndStop(main.g.characterControl.breastSize+1);
//adds as skin - follows skin HSL sliders on Options tab
main.loadCustomFull(ltit,".|Her.torsoBack.leftBreast","x:0;y:0;r:0;a:1");
//adds as costume - ignores skin HSL sliders on Options tab
//main.loadCustomFull(ltit,".|Her.torsoBackCostume.breastCostume.bra","x:0;y:0;r:0;a:1");
//---------------------------nipple piercings
var nippiercer=new newnippiercer();
main.loadCustomFull(nippiercer,".|Her.torso.nipplePiercing","x:0;y:0;r:0;a:1");
var nippiercel=new newnippiercel();
main.loadCustomFull(nippiercel,".|Her.torso.leftNipplePiercing","x:0;y:0;r:0;a:1");
//---------------------------chest/abs
var chest=new newchest();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(chest,".|Her.torso.midLayer.chest","x:0;y:0;r:0;a:1");
//adds as costume - ignores skin HSL sliders on Options tab
main.loadCustomFull(chest,".|Her.torso.chestCostume","x:0;y:0;r:0;a:1");
//adds as upper chest costume - between breast costume, above back
main.loadCustomFull(chest,".|Her.torso.upperChestCostume","x:0;y:0;r:0;a:1");
//adds as lower chest costume - between breast costume, below back
main.loadCustomFull(chest,".|Her.torso.chestUnderCostume","x:0;y:0;r:0;a:1");
//---------------------------underboob
var uboob=new underboob();
uboob.stop();
main.her.addEventListener(Event.ENTER_FRAME,uboobslider);
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(uboob,".|Her.torso.midLayer.chest","x:0;y:0;r:0;a:1");
//adds as lower chest costume - between breast costume, below back
main.loadCustomFull(uboob,".|Her.torso.chestUnderCostume","x:0;y:0;r:0;a:1");
//---------------------------belly piercing
var navelpierce=new bellypierce();
main.loadCustomFull(navelpierce,".|Her.torso.chestCostume.bellyPiercing","x:0;y:0;r:0;a:1");
//---------------------------back
var back=new newback();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(back,".|Her.torso.back","x:0;y:0;r:0;a:1");
//adds as costume - ignores skin HSL sliders on Options tab
main.loadCustomFull(back,".|Her.torso.backCostume","x:0;y:0;r:0;a:1");
//---------------------------buttock
var butt=new newbackside();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(butt,".|Her.torsoBack.backside","x:0;y:0;r:0;a:1");
//adds as costume - ignores skin HSL sliders on Options tab
main.loadCustomFull(butt,".|Her.torsoBackCostume.backsideCostume","x:0;y:0;r:0;a:1");
//---------------------------right thigh
var thighr=new newthighr();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(thighr,".|Her.torso.leg.thigh","x:0;y:0;r:0;a:1");
//adds as costume - ignores HSL sliders on Options tab
main.loadCustomFull(thighr,".|Her.torso.rightThighCostume","x:0;y:0;r:0;a:1");
//---------------------------right calf
var calfr=new newcalfr();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(calfr,".|Her.torso.rightCalfContainer.calf","x:0;y:0;r:0;a:1");
//adds as costume - ignores HSL sliders on Options tab
main.loadCustomFull(calfr,".|Her.torso.rightCalfContainer.footwear","x:0;y:0;r:0;a:1");
//---------------------------left thigh
var thighl=new newthighl();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(thighl,".|Her.leftLegContainer.leg.thigh","x:0;y:0;r:0;a:1");
//adds as costume - ignores HSL sliders on Options tab
main.loadCustomFull(thighl,".|Her.leftLegContainer.leg.leftThighCostume","x:0;y:0;r:0;a:1");
//---------------------------left calf
var calfl=new newcalfl();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(calfl,".|Her.leftLegContainer.leg.calf","x:0;y:0;r:0;a:1");
//adds as costume - ignores HSL sliders on Options tab
main.loadCustomFull(calfl,".|Her.leftLegContainer.leg.footwear","x:0;y:0;r:0;a:1");
//---------------------------left shoulder
var shoulderl=new newshoulderl();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(shoulderl,".|Her.torsoBack.leftShoulder","x:0;y:0;r:0;a:1");
//adds as costume - ignores HSL sliders on Options tab
main.loadCustomFull(shoulderl,".|Her.torsoBackCostume","x:51.5;y:-11.5;r:1;a:1");
//---------------------------sternum
var sternum=new newchestback();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(sternum,".|Her.torsoBack.chestBack","x:0;y:0;r:0;a:1");
//adds as costume - ignores HSL sliders on Options tab
main.loadCustomFull(sternum,".|Her.torsoBackCostume","x:83;y:66;r:27;a:1");
//---------------------------neck
var neck=new newneck();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(neck,".|Her.head.neck","x:0;y:0;r:0;a:1");
//adds as collar - ignores HSL sliders on Options tab
main.loadCustomFull(neck,".|Her.collarContainer.collar","x:-8;y:-80;r:3;a:1");
//---------------------------ear
var ear=new newear();
main.loadCustomFull(ear,".|Her.ear","x:0;y:0;r:0;a:1");
//---------------------------iris
var iris=new neweye();
main.loadCustomFull(iris,".|Her.eye.ball.irisContainer.iris","x:0;y:0;r:0;a:1");
//---------------------------face
var herface=new newface();
main.loadCustomFull(herface,".|Her.head.face","x:0;y:0;r:0;a:1");
//---------------------------jaw
var jaw=new newjaw();
main.loadCustomFull(jaw,".|Her.head.jaw","x:0;y:0;r:0;a:1");
//---------------------------eyewear
var specs=new neweyewear();
main.loadCustomFull(specs,".|Her.eyewear","x:0;y;0;r:0;a:1");
//---------------------------futa penis
var futa=new herpenis();
main.her.torso.penisContainer.addChild(futa);
//---------------------------eyebrows
for(i=0;i<main.her.rightEyebrow.numChildren;i++)
main.her.rightEyebrow.getChildAt(i).visible=false;
for(i=0;i<main.her.leftEyebrow.numChildren;i++)
main.her.leftEyebrow.getChildAt(i).visible=false;
var browll=new leftbrowline();
main.loadCustomFull(browll,".|Her.leftEyebrow","x:4;y:19.5;r:0;a:1");
main.her.leftEyebrow.leftEyebrowLine=browll;
var browlf=new leftbrowfill();
main.loadCustomFull(browlf,".|Her.leftEyebrow","x:2;y:17.5;r:0;a:1");
main.her.leftEyebrow.leftEyebrowFill=browlf;
var browrl=new rightbrowline();
main.loadCustomFull(browrl,".|Her.rightEyebrow","x:39.5;y:28.5;r:0;a:1");
main.her.rightEyebrow.rightEyebrowLine=browrl;
var browrf=new rightbrowfill();
main.loadCustomFull(browrf,".|Her.rightEyebrow","x:38.5;y:27;r:0;a:1");
main.her.rightEyebrow.rightEyebrowFill=browrf;
//---------------------------right hand
var handr = new newhandr();
//adds as skin - follows HSL sliders on Options tab
main.her.rightForeArmContainer.upperArm.foreArm.hand.addChild(handr);
//adds as costume - ignores HSL sliders on Options tab
main.her.rightForeArmContainer.upperArmCostume.foreArmCostume.handCostume.addChild(handr);
//---------------------------right handjob support
handr.stop();
main.her.addEventListener(Event.ENTER_FRAME,rhandpos);
//---------------------------right fingers
var fingerr = new newfingerr();
//adds as skin - follows HSL sliders on Options tab
main.her.rightForeArmContainer.upperArm.foreArm.hand.grip.addChild(fingerr);
//adds as costume - ignores HSL sliders on Options tab
main.her.rightForeArmContainer.upperArmCostume.foreArmCostume.handCostume.addChild(fingerr);
//---------------------------left hand
var handl = new newhandl();
//adds as skin - follows HSL sliders on Options tab
main.her.leftArmContainer.upperArm.foreArm.hand.addChild(handl);
//adds as costume - ignores HSL sliders on Options tab
main.her.leftArmContainer.upperArmCostume.foreArmCostume.handCostume.addChild(handl);
//---------------------------left handjob support
handl.stop();
main.her.addEventListener(Event.ENTER_FRAME,lhandpos);
//---------------------------left hand (back)
var handlb = new newhandlb();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(handlb,".|Her.torso.midLayer.leftArm","x:0;y:0;r:0;a:1");
//adds as costume - ignores HSL sliders on Options tab
main.loadCustomFull(handlb,".|Her.torso.leftGlove","x:0;y:0;r:0;a:1");
//---------------------------left fingers
var fingerl = new newfingerl();
//adds as skin - follows HSL sliders on Options tab
main.her.leftHandOver.hand.addChild(fingerl);
//adds as costume - ignores HSL sliders on Options tab
main.her.leftArmContainer.upperArmCostume.foreArmCostume.handCostume.addChild(fingerl);
//---------------------------right forearm
var forearmr = new newforearmr();
//adds as skin - follows HSL sliders on Options tab
main.her.rightForeArmContainer.upperArm.foreArm.addChildAt(forearmr,
main.her.rightForeArmContainer.upperArm.foreArm.getChildIndex(
main.her.rightForeArmContainer.upperArm.foreArm.hand));
//adds as costume - ignores HSL sliders on Options tab
main.her.rightForeArmContainer.upperArmCostume.foreArmCostume.addChildAt(forearmr,
main.her.rightForeArmContainer.upperArmCostume.foreArmCostume.getChildIndex(
main.her.rightForeArmContainer.upperArmCostume.foreArmCostume.handCostume));
//---------------------------left forearm
var forearml = new newforearml();
//adds as skin - follows HSL sliders on Options tab
main.her.leftArmContainer.upperArm.foreArm.addChildAt(forearml,
main.her.leftArmContainer.upperArm.foreArm.getChildIndex(
main.her.leftArmContainer.upperArm.foreArm.hand));
//adds as costume - ignores HSL sliders on Options tab
main.her.leftArmContainer.upperArmCostume.foreArmCostume.addChildAt(forearml,
main.her.leftArmContainer.upperArmCostume.foreArmCostume.getChildIndex(
main.her.leftArmContainer.upperArmCostume.foreArmCostume.handCostume));
//---------------------------right upperarm
var upperarmr = new newupperarmr();
//adds as skin - follows HSL sliders on Options tab
main.her.rightArmContainer.upperArm.addChild(upperarmr);
//adds as costume - ignores HSL sliders on Options tab
main.her.rightArmContainer.upperArmCostume.addChild(upperarmr);
//---------------------------rightArm:back support
upperarmr.stop();
upperarmr.addEventListener(Event.ENTER_FRAME,armPosition);
//---------------------------left upperarm
var upperarml = new newupperarml();
//adds as skin - follows HSL sliders on Options tab
main.her.leftArmContainer.upperArm.addChildAt(upperarml,
main.her.leftArmContainer.upperArm.getChildIndex(
main.her.leftArmContainer.upperArm.foreArm));
//adds as costume - ignores HSL sliders on Options tab
main.her.leftArmContainer.upperArmCostume.addChildAt(upperarml,
main.her.leftArmContainer.upperArmCostume.getChildIndex(
main.her.leftArmContainer.upperArmCostume.foreArmCostume));
*/
//---------------------------his components---------------------------\\
//---------------------------left foot
/* var hfootl=new hisfootl();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(hfootl,".|Him.leftLeg.calf.foot","x:0;y:0;r:0;a:1");
//adds as shoe - ignores HSL sliders on Options tab
main.loadCustomFull(hfootl,".|Him.leftLegCostume.calf.foot","x:0;y:0;r:0;a:1");
//---------------------------right foot
var hfootr=new hisfootr();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(hfootr,".|Him.rightLeg.calf.foot","x:0;y:0;r:0;a:1");
//adds as shoe- ignores HSL sliders on Options tab
main.loadCustomFull(hfootr,".|Him.rightLegCostume.calf.foot","x:0;y:0;r:0;a:1");
//---------------------------left calf
var hcalfl=new hiscalfl();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(hcalfl,".|Him.leftLeg.calf","x:0;y:0;r:0;a:1");
//adds as costume - ignores HSL sliders on Options tab
main.loadCustomFull(hcalfl,".|Him.leftLegCostume.calf","x:0;y:0;r:0;a:1");
//---------------------------right calf
var hcalfr=new hiscalfr();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(hcalfr,".|Him.rightLeg.calf","x:0;y:0;r:0;a:1");
//adds as costume - ignores HSL sliders on Options tab
main.loadCustomFull(hcalfr,".|Him.rightLegCostume.calf","x:0;y:0;r:0;a:1");
//---------------------------left thigh
var hthighl=new histhighl();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(hthighl,".|Him.leftLeg","x:0;y:0;r:0;a:1");
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(hthighl,".|Him.leftLegCostume","x:0;y:0;r:0;a:1");
//---------------------------right thigh
var hthighr=new histhighr();
//adds as skin - follows HSL sliders on Options tab
main.loadCustomFull(hthighr,".|Him.rightLeg","x:0;y:0;r:0;a:1");
//adds as costume - ignores HSL sliders on Options tab
main.loadCustomFull(hthighr,".|Him.rightLegCostume","x:0;y:0;r:0;a:1");
//---------------------------torso
var htorso=new historso();
main.loadCustomFull(htorso,".|Him.torsoLayer.torso","x:0;y:0;r:0;a:1");
//---------------------------pants hip
var hip=new pantstop();
main.loadCustomFull(hip,".|Him.midLayer.hips","x:0;y:0;r:0;a:1");
//---------------------------right upper arm
var hupperarm = new hisupperarm();
main.him.armContainer.arm.upperArm.addChild(hupperarm);
//---------------------------right forearm
var hforearm = new hisforearm();
main.him.armContainer.arm.lowerArm.addChild(hforearm);
//---------------------------right hand
var hhand = new hishand();
main.him.armContainer.arm.hand.addChild(hhand);
//---------------------------left upper arm
var hupperarml = new hisupperarml();
main.him.leftArmContainer.arm.addChild(hupperarml);
//---------------------------left forearm
var hforearml = new hisforearml();
main.him.leftArmContainer.arm.foreArm.addChild(hforearml);
//---------------------------left hand
var hhandl = new hishandl();
main.him.leftArmContainer.arm.foreArm.hand.addChild(hhandl);
//---------------------------right breast
var htitr = new hisbreastr();
main.loadCustomFull(htitr,".|Him.torsoLayer.rightBreastContainer.rightBreast","x:0;y:0;r:0;a:1");
//---------------------------right breast
var htitl = new hisbreastl();
main.loadCustomFull(htitl,".|Him.torsoLayer.leftBreastContainer.leftBreast","x:0;y:0;r:0;a:1");
//---------------------------penis
var penis = new hispenis();
main.him.penis.addChildAt(penis,main.him.penis.getChildIndex(main.him.penis.getChildAt(0))+1);
*/
//----------------------------misc code, function calls---------------------------\\
//adjust mask size
/* main.him.penis.mask.width*=2;
main.him.penis.mask.height*=1.5;
*/
//remove mask
/* main.her.torso.rightThighCostume.mask=main.her.torso.getChildAt(
main.her.torso.getChildIndex(main.her.torso.rightThighCostume)-1);
var rthighmask=main.her.torso.rightThighCostume.mask;
main.her.torso.rightThighCostume.mask=null;
rthighmask.visible=false;
*/
//enable component toggling
// main.him.penis.addEventListener(MouseEvent.CLICK,doToggle);
//enable hue slider - component must have unique variable name
// main.registerForHueShift("slider name",[/*variable 1, variable 2, etc...*/]);
//enable timer
/* t.addEventListener(TimerEvent.TIMER,timeFunc);
t.start();
*/
//---------------------------remove her components---------------------------\\
// main.registerToRemove(handr);
// main.registerToRemove(handl);
// main.registerToRemove(forearmr);
// main.registerToRemove(forearml);
// main.registerToRemove(upperarmr);
// main.registerToRemove(upperarml);
// main.registerToRemove(futa);
// main.registerToRemove(fingerr);
// main.registerToRemove(fingerl);
//---------------------------remove his components---------------------------\\
// main.registerToRemove(hupperarm);
// main.registerToRemove(hforearm);
// main.registerToRemove(hhand);
// main.registerToRemove(hupperarml);
// main.registerToRemove(hforearml);
// main.registerToRemove(hhandl);
// main.registerToRemove(penis);
//code courtesy of RajasGrime - currently untested
/* main.addEventListener(Event.ENTER_FRAME,fixArm);
main.him.armContainer.arm.hand.getChildAt(0).alpha = 0;
main.him.armContainer.arm.upperArm.getChildAt(0).alpha = 0;
main.him.armContainer.arm.lowerArm.getChildAt(0).alpha = 0;
*/
//restores component visibility on mod unload
// main.registerUnloadFunction(fixback);
//removes listeners on mod unload
// main.registerUnloadFunction(noListen);
//restores original eyebrows
// main.registerUnloadFunction(fixbrows);
main.unloadMod();
}
/*
//uncomment to restore component visibility
function fixback(){
//additional loop for each component to restore
for (var i = 0; i<main.her.torso.rightCalfContainer.calf.numChildren; i++)
main.her.torso.rightCalfContainer.calf.getChildAt(i).visible=true;
//restore masks
// main.him.penis.mask.width/=2;
// main.him.penis.mask.height/=1.5;
// main.her.torso.rightThighCostume.mask=rthighmask;
}*/
/*
//uncomment to fix character setting
function lockSetting(e:Event){
var i:uint;
main.g.inGameMenu.loadData("hisPenis:0,1,1;hisTop:none;hisBottoms:none;hisFootwear:none");
//hides nipples
/* for (i = 0; i<n[0]; i++)
main.her.torso.midLayer.rightBreast.nipple.getChildAt(i).visible=true;
for (i = 0; i<n[1]; i++)
main.her.torsoBack.leftBreast.nipple.getChildAt(i).visible=true;
}*/
/*
//uncomment to remove listeners
function noListen(){
//disable right hand job support
// main.her.removeEventListener(Event.ENTER_FRAME,rhandpos);
//disable left hand job support
// main.her.removeEventListener(Event.ENTER_FRAME,lhandpos);
//disable rightArm:back support
// main.her.removeEventListener(Event.ENTER_FRAME,armPosition);
//disables component toggling
// main.him.penis.removeEventListener(MouseEvent.CLICK,doToggle);
//allows visibility of his arm
// main.removeEventListener(Event.ENTER_FRAME, fixArm);
//disables underboob updating
// main.removeEventListener(Event.ENTER_FRAME, uboobslider);
//remove timer
/* t.stop();
t.removeEventListener(TimerEvent.TIMER,timeFunc);
}*/
/*
//uncomment for component toggling
function doToggle(e){
penis.alpha *= -1;
}*/
/*
//uncomment to restore eyebrows
function fixbrows(){
var i:uint;
main.her.leftEyebrow.leftEyebrowLine=main.her.leftEyebrow.getChildAt(0);
main.her.leftEyebrow.leftEyebrowFill=main.her.leftEyebrow.getChildAt(1);
main.her.rightEyebrow.rightEyebrowLine=main.her.rightEyebrow.getChildAt(0);
main.her.rightEyebrow.rightEyebrowFill=main.her.rightEyebrow.getChildAt(1);
for(i=0;i<2;i++)
main.her.rightEyebrow.getChildAt(i).visible=true;
for(i=0;i<2;i++)
main.her.leftEyebrow.getChildAt(i).visible=true;
}*/
/*
//code for rightArm:back support
function armPosition(e:Event){
if(main.her.currentRightArmPosition==0){
upperarmr.gotoAndStop("backArm");
}
else{
upperarmr.gotoAndStop("normalArm");
}
}*/
/*
//code courtesy of RajasGrime - currently untested
function fixArm(e:Event) {
main.him.armContainer.arm.hand.getChildAt(0).alpha = 0;
}*/
/*
//executes timed commands
function timeFunc(e:TimerEvent){
}*/
/*
//updates underboob with breast slider
function uboobslider(e:Event){
uboob.gotoAndStop(main.g.characterControl.breastSize+1);
}*/
/*
//code for right hand job
function rhandpos(e:Event){
if(main.her.currentRightArmPosition==3){
handr.gotoAndStop("handjob");
fingerr.gotoAndStop("handjob");
}
else{
handr.gotoAndStop("normal");
fingerr.gotoAndStop("normal");
}
}*/
/*
//code for left hand job
function lhandpos(e:Event){
if(main.her.currentLeftArmPosition==3){
handl.gotoAndStop("handjob");
}
else{
handl.gotoAndStop("normal");
}
}*/