[SOLVED] make her cum (futa) problem (1 Viewer)

ZakkStar

Potential Patron
Joined
Feb 16, 2015
(i'm not english zorry ;D )
hi guys this is my first thread here, be gentle xD
ok, the mod - make her cum (futa) has some problems, or probably just only gives me problems.
the mod work, the only thing that doesn't work it's the cum.
after a few hours trying to solve the cum appared but not in the right position.

her is a screen and the source mod file:
futa.png


//breast expansion plus v2.1 by sby
//belly movieclip by Dante, the dark prince
import flash.net.URLRequest;
import flash.geom.Point;
import flash.display.MovieClip;
import flash.text.TextField;
import flash.utils.Dictionary;
import flash.events.MouseEvent;
import flash.net.FileReference;

// Members
{
var modSettingsLoader:Class;
var setsettingsfilename = "MakeHerCum_V1.0";

var main;
var g;
var her;
var cMC:MovieClip = new MovieClip();

var mytext:TextField = new TextField;
var mytext2:TextField = new TextField;
var sState:Boolean = false;
var CIMmin:Number = 100;
var CIMmax:Number = 0;

var modActive:int = 1;
var strandr; ////
var madecumstrands:int = 0; ////
var cumgendelay:Number = 0; ////

var cumgenAnchorDelay:Number = 5;
var cumgenDelayAmount:int = 10;
var strandXOffsetFromPenisOrigin:Number = 16;
var strandYOffsetFromPenisOrigin:Number = 0;
var cumgenRandomMassMult:Number = 0.2;
var cumgenMinMassBonus:Number = 0.05;

var showdebuginfo:int=1;

//local reusables
var j:Number = 0;
var tempp:Number;
var tempp2:Number;
var i:Number = 0;
var penisDirection:Point;
var penisAngleRadians:Number=0;
var penisAngleDegrees:Number=0;
var currentSpurtVelocity:Number=0;
var spurting:Boolean=false;
var isCumming:Boolean=false;
//

var mypage;

var debugmenucreated:Boolean = false;
}

// My Members
{
// General cum settings
var averageSpurtDelay:Number=10;
var maxDeviationSpurtDelay:Number=3;
var currentSpurtDelay:Number=0;

var averageSpurtLength:Number=3;
var maxDeviationSpurtLength:Number=1;
var currentSpurtLength:Number=0;

var maxDeviationCumAngle=0;
var currentDeviationCumAngle:Number=0;

var averageSpurtVelocity:Number=30;
var maxDeviationSpurtVelocity:Number=5;

var cumWhenHeCums:Number=1;
var cumWithKey:Number=1;
var cumKey:Number=78;
var timeToCumAfterKeyPress:Number=100;
var currentTimeAfterCumKeyPress:Number=0;
}

/**************************************************************************/

// Init
{
function initl(l) //boiler plate setup, docheck for each frame, options file selected
{
main = l;
g = l.g;
her = l.her;

var msl = new modSettingsLoader(setsettingsfilename,onSettings);
msl.addEventListener("settingsNotFound",onFail);
}

function onSettings(e) //load options file, set variables, repok variables
{
//main.updateStatus("insetting");
tempp = 0;
var dict:Dictionary = e.settings;
for (var key:Object in dict)
{
var val:Object = dict[key];
switch (key)
{

case "statusupdateforthislastline" :
if(val == 1)
{
main.updateStatus("reached end of settings doc,"+tempp+" errors");
}
break;

default :
if ( this.hasOwnProperty( key ) ) //checks if variable exists
{
this[key] = Number(val); //replaces all switch statement variable assignments
//main.updateStatusCol(key + " = "+ val,"#00ff00"); //replaces all switch statement updatestatus notifications, comment line to hide
//main.monitorDebug(key+": ",this,key);
}
else
{
main.updateStatusCol("invalid setting: "+key,"#FF0000"); //displays if there is a setting in the settings file that does not match any variables
tempp++;
}
break;
}
}

initstuff();
main.updateStatus("all settings ran through, "+tempp+" errors");
}

function onFail(e)
{
main.updateStatusCol(e.msg,"#FF0000");
initstuff();
}

function manualCum()
{
currentTimeAfterCumKeyPress = timeToCumAfterKeyPress;
}

function initstuff()
{
// ROZTOOW
// Register key
if(cumWithKey == 1)
{
main.registerFunction(manualCum, cumKey);
}

if(showdebuginfo==1)
{
createdebugmenu();
}

// ROZTOOW
// Modpage menu
mypage = new MovieClip();

var mymodbut1 = new MovieClip();
mymodbut1.graphics.beginFill(0x00FF00);
mymodbut1.graphics.drawRect(0, 0 ,135, 25);
mymodbut1.graphics.endFill();
mymodbut1.x = 0;
mymodbut1.y = 0;

var myText1:TextField = new TextField();
myText1.mouseEnabled = false;
myText1.selectable = false;
myText1.text = "breast expansion 2.1"
myText1.height = 30;
myText1.width = 140;

mymodbut1.addChild(myText1);
mypage.addChild(mymodbut1);

var myatext:Array = new Array("puke");
var mya:Array = new Array(clickHandlerpuke,toggledebug);
var numboxes = mya.length - 1;
for(i = 0; i < 1; i++)
{
for(j = 0; j < 0; j++)
{

var mymodbut2 = new MovieClip();

mymodbut2.graphics.beginFill(0x00FF00);
mymodbut2.graphics.drawRect(0, 0 ,30, 30);
mymodbut2.graphics.endFill();
mymodbut2.x = j*35;
mymodbut2.y = i*35 + 35;
//mymodbut2.width = 30;
//mymodbut2.height = 30;

var myText:TextField = new TextField();
myText.mouseEnabled = false;
myText.selectable = false;
myText.text = myatext[i*4 + j]
myText.height = 30;
myText.width = 30;

mymodbut2.addChild(myText);
mymodbut2.addEventListener(MouseEvent.CLICK,mya[i*4 + j]);

mypage.addChild(mymodbut2);
if(i*4 + j >= numboxes)
{
i=100;
j=100;
}
}
}
main.addPage(mypage,false);

cMC.addEventListener(Event.ENTER_FRAME, doCheck);
main.unloadMod();
main.registerUnloadFunction(doUnload);
}

/**************************************************************************/

function clickHandlerpuke(event:MouseEvent):void {
// ROZTOOW
// Add click event for mod menu button click
}

function toggledebug(event:MouseEvent):void {

if(showdebuginfo == 0)
{
showdebuginfo = 1;
createdebugmenu();
}
else
{
showdebuginfo = 0;
mytext.visible = false;
mytext2.visible = false;
}
}
}

/****************************************************************************/

// Update
{
function doCheck(e) //master function called every frame
{
// Check if we should instantly return
if (!modActive)
return;

if(!g.gamePaused)
{
currentTimeAfterCumKeyPress = Math.max(0, currentTimeAfterCumKeyPress - 1);

cumfrombreastsf();
}
showdebuginfof();

}

// ROZTOOW
function cumfrombreastsf()
{
// Determine wether she is cumming or not
isCumming = (her._penisControl.currentPenisID != 0) && ((cumWhenHeCums && g.him.ejaculating) || (currentTimeAfterCumKeyPress > 0));

if (!isCumming)
{
spurting = false;
return;
}

penisAngleDegrees = -(-90 + g.her.rotation + g.her.torso.rotation + her._penisControl.penisContainer.rotation);
penisAngleDegrees += 10 + currentDeviationCumAngle;
penisAngleRadians = (penisAngleDegrees * 3.14159265359) / 180;
penisDirection = new Point(Math.sin(penisAngleRadians), Math.cos(penisAngleRadians));

// Check if we want to start a new spurt
if (!spurting && currentSpurtDelay == 0)
{
strandr = g.strandControl.newCumStrand(new Point(strandXOffsetFromPenisOrigin, strandYOffsetFromPenisOrigin), her._penisControl.penis);//torso.midLayer.rightBreast.nipple);
strandr.myGravity = g.gravity;
currentSpurtLength = averageSpurtLength + Math.random() * maxDeviationSpurtLength - Math.random() * maxDeviationSpurtLength;
currentSpurtDelay = averageSpurtDelay + Math.random() * maxDeviationSpurtDelay - Math.random() * maxDeviationSpurtDelay;
currentDeviationCumAngle = Math.random() * maxDeviationCumAngle - Math.random() * maxDeviationCumAngle;
currentSpurtVelocity = averageSpurtVelocity + Math.random() * maxDeviationSpurtVelocity - Math.random() * maxDeviationSpurtVelocity;
penisAngleDegrees += currentDeviationCumAngle;
cumgendelay = cumgenAnchorDelay + 1; //need at least 1
spurting = true;


her._penisControl.angSpeed -= 1.5;
}

// Check if we are spurting
if (spurting)
{
cumgendelay = Math.max (0, cumgendelay - 1);
if(cumgendelay == 0)
{
strandr.insertLink(new Point(penisDirection.x * currentSpurtVelocity, penisDirection.y * currentSpurtVelocity), cumgenDelayAmount, g.randomCumMass() * cumgenRandomMassMult + cumgenMinMassBonus);
}
}

// Check if we want to stop spurting
if (spurting && currentSpurtLength == 0)
{
strandr.detachSourceLink(new Point(penisDirection.x * currentSpurtVelocity, penisDirection.y * currentSpurtVelocity), 0);
//strandr.detachBottom();
spurting = false;
}

// Update timers
if (!spurting)
{
currentSpurtDelay = Math.max(0, currentSpurtDelay - 1);
}
else
{
currentSpurtLength = Math.max(0, currentSpurtLength - 1);
}
}
function showdebuginfof()
{
if(showdebuginfo==1)
{
if(!g.gamePaused)
{
mytext.visible = true;
mytext2.visible = true;

mytext.text =
"\nx: "+penisDirection.x+
"\ny: "+penisDirection.y+
"\nrotation: "+penisAngleRadians+
"\ncurrentSpurtDelay: "+currentSpurtDelay+
"\nspurting: "+spurting;
}
else
{
mytext.visible = false;
mytext2.visible = false;
}
}
}
}


// Rest
{
function createdebugmenu()
{
if(!debugmenucreated)
{
debugmenucreated=true;
main.stage.addChild(mytext);
mytext.height = 800;
mytext.width = 300;
mytext.mouseEnabled = false;
mytext.selectable = false;
main.stage.addChild(mytext2);

mytext2.height = 800;
mytext2.width = 300;
mytext2.mouseEnabled = false;
mytext2.selectable = false;
mytext2.x = main.stage.stageWidth - mytext2.width;
var format:TextFormat = new TextFormat();
format.align = TextFormatAlign.RIGHT;
mytext2.defaultTextFormat = format;
}
}

function doUnload() //removes docheck from frame event
{
main.clearDebug();

cMC.removeEventListener(Event.ENTER_FRAME, doCheck);
if(showdebuginfo==1)
{
main.stage.removeChild(mytext);
main.stage.removeChild(mytext2);
}
}
}

and

modActive=1
cumWhenHeCums=1
cumWhitKey=4
timeToCumAfterKeyPress=2
averageSpurtDelay=15
maxDeviationSpurtDelay=5
averageSpurtLength=10
maxDeviationSpurtLength=5
maxDeviationCumAngle=10
averageSpurtVelocity=25
maxDeviationSpurtVelocity=5
cumgenRandomMassMult=0.2
cumgenMinMassBonus=0.05

Thanks for the help ;D
 

sby

Content Creator
Coder
Joined
Sep 11, 2012
i am guessing that adjusting the setting "strandXOffsetFromPenisOrigin" could fix this problem
maybe cranking it to 230
 

Users who are viewing this thread

Top


Are you 18 or older?

This website requires you to be 18 years of age or older. Please verify your age to view the content, or click Exit to leave.