Dev:SDK/Slave Girl - Plannings - General Actions - Chores, Jobs, Schools

From Slavemaker Wiki
Jump to: navigation, search
<<first <prev SDK/Slave Girl - Plannings - General Actions - Chores, Jobs, Schools next> last>>


SlaveMaker 3 SDK General Actions

There are general actions, not actual sex trainings that are done. These have actions numbers > 1000. When the action is done a function like ShowChoreCooking is called.

A number have functions like AfterJobAcolyte() which are called after the job is done and all standard effects and text are displayed. These are intended to add text, or add special events

________________________________________________________________


Variables

There are a series of standard variables you can test/check

_root.Supervise
true = your slave maker is supervising and is present
false = your assistant is supervising

_root.AppendActText - default true

true = the standard text is appended to any shown in the Showxxxx functions below
false = the standard text is not appended, please show all text yourself

_root.StandardDGText - defaults to true

change to false to suppress standard text for spontaneous dickgirl changes, or general cock references
Note if AppendActText is false these messages are never shown

_root.StandardPlugText - defaults to true if your slave is wearing an anal plug, otherwise false

change to false to suppress standard text for wearing an anal plug
Note if AppendActText is false these messages are never shown
_root.Naked
true if she is naked
false she is clothed
_root. is optional
_root.Lesbian
true if she is in lesbian training
false not in lesbian training
_root is optional
_root.Aroused
true if your slave is aroused
false and they are not
_root is optional
_root.Gender, your gender
_root.SlaveGender - your slaves permanent gender

_root.LastActionDone = the type of the action being done (see Slave Girl - Plannings - Common.rtf for the base values)

Also remember there are local copies of

SlaveName
CurrentPath
MaxPath

ie you do not need to use _root. to access them

Act Functions

Some of these functions are optional and default graphics are shown if you do not provide a function. You should where possible always provide the function. Some like AfterJobAcolyte are optional but nothing happens by default Optional ones are noted

In the notes it will list variables specific to the act and the standard stat effects the action does, and any other relelvant notes

________________________________________________________________

Chores[edit]

________________________________________________________________

ShowChoreCleaning

Show your slave training at cleaning

function ShowChoreCleaning()
LastActionDone

1002 - normal training
1002.1 - trained by a tutor
1002.2 - trained by Haro (minor slave)
1002.3 - trained by Sana (minor slave)
1002.4 - clean as she can (but she is at max cleaning)

eg from Belldandy

function ShowChoreCleaning()
{
        temp = int(Math.random()*2) + 1;
        if (temp == 2) _root.Backgrounds.ShowSky();
        CleaningClip.gotoAndStop(temp);
        CleaningClip._visible = true;
}

Notes

_root.TotalCleaning = times the chore has been done, BEFORE this time
_root.FirstTimeTodayCleaning = true the first time the chore has been done today

Stats

	Points(-1, 0, 0, -1, 0, 0, 0, 3 + Home.hKitchen, 0, 0, 0, 0, -1, 0, 0, 0, 3 - Home.hKitchen, 0, 0, 0);
		Home.hKitchen = quality of your kitchen, generally 0, can be 1 or 2

________________________________________________________________

ShowChoreCooking

Show your slave cooking

function ShowChoreCooking()
LastActionDone

1001 - normal training
1001.1 - trained by a tutor
1002.2 - trained by Haro (minor slave)
1002.3 - trained by Sana (minor slave)
1001.4 - clean as she can (but she is at max cleaning)

Notes

_root.TotalCooking = times the chore has been done, BEFORE this time
_root.FirstTimeTodayCooking = true the first time the chore has been done today

Stats

	Points(0, 0, -1, 0, 0, 0, 3 + Home.hKitchen, 0, 0, 0, 0, 0, -1, 0, 0, 0, 3 - Home.hKitchen, 0, 0, 0);
		Home.hKitchen = quality of your kitchen, generally 0, can be 1 or 2

________________________________________________________________

ShowChoreDiscuss

You are talking to her. Show an image of her relaxing, sitting as if talking to you. Please include at least a naked version and preferably a dickgirl one if she can permanently transform

function ShowChoreDiscuss()

eg from Akane

function ShowChoreDiscuss()
{
        _root.HideBackgrounds();
        if (Naked) {
                if (_root.IsDickgirl()) DiscussClip.gotoAndStop(4);
                else DiscussClip.gotoAndStop(int(Math.random()*2) + 3);
        } else DiscussClip.gotoAndStop(int(Math.random()*2) + 1);
        DiscussClip._visible = true;
}

Notes

_root.TotalDiscuss = times the chore has been done, BEFORE this time
_root.FirstTimeTodayDiscuss = true the first time the chore has been done today

Stats

	Points(0, 0, 1 ,1 ,0, -1, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);

________________________________________________________________

ShowChoreExpose

Show your slave partially clothed, exposing her breasts, pussy, cock. ie lifting her top or skirt etc

function ShowChoreExpose()

Notes

_root.DifficultyExhib = obediance threshold to do this chore
_root.TotalExpose = times the chore has been done, BEFORE this time
_root.FirstTimeTodayExpose = true the first time the chore has been done today

Stats

	Points(1, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 2, 1, 3, 0, 0, 0, 0, 0)

________________________________________________________________

ShowChoreMakeUp

Your slave is practising makeup. If they are a pony slave then you personally are grooming her, brushing her hair and the such like.

If_root.DonePonygirl == 1 then she is being groomed as a ponygirl

function ShowChoreMakeUp() : Boolean
return true if she is aroused and does a kinky form of makeup

Notes

_root.TotalMakeUp= times the chore has been done, BEFORE this time
_root.FirstTimeTodayMakeUp = true the first time the chore has been done today

Stats

	if you return true
		Points(2, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.5, 0)
	if you return false
		Points(2, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0.5, 0)

________________________________________________________________

ShowChoreExercise

Show your slave exercising or going for a walk or run

If _root.DonePonygirl == 1 then she is being ridden and all graphics shown here are ignored (almost no girls have these graphics)

function ShowChoreExercise()

Notes
This function was called ShowChoreWalk and that function still works but is obsolete and should no longer be used.

_root.TotaExercise = times the chore has been done, BEFORE this time
_root.FirstTimeTodayExercise= true the first time the chore has been done today

Stats

	Points(0, 1, 0, 0, 0, 1, 0, 0, -2, 0, 0, 0, -1, 0, 0, 0, 2, 1, 0, 0)
	FatigueBonus += 0.5;

________________________________________________________________

ShowChoreReadABook (OPTIONAL)

Show her reading a book. There are default, generic versions of this

function ShowChoreReadABook() : Boolean

return true if she has a read graphic.

LastActionDoneDay

1019.1 - science book
1019.2 - poetry book
1019.3 - scroll
1019.4 - kamasutra
1019.5 - scripture

Note Scrolls are purely for Slave Girl use, no generic events use or create them

eg

        if (_root.LastActionDone == 1019.1) {
                // reading a science book
                ...
        }

Notes
TotalBooksRead - how many books have been read, increases 1 each time a book is read, so double TotalBooks

TotalPoetryRead

TotalScrollsRead - note purely for slave girl use

TotalScriptureRead
TotalKamasutraRead

Stats

        General Knowledge Book  - Points(0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0);
        Poetry                          - Points(0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 1, 0);
        Scripture (New Gods Faith)- Points(0, 0, 0, 20, -5, 0, 0, 0, 0, 0, 0, 0, 0, -10, 0, 0, 0, 0, 0, 0);
        Scripture (Other Faiths)        - Points(0, 0, 0, 20, 20, 0, 0, 0, 0, 0, 0, 0, 0, -10, 0, 0, 0, 0, 0, 0);
        Kamasutra (Lesbian)     - NoTalentPoints(0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 0, 0, 10, 0, 0, 0, 0, 0);
        Kamasutra                       - Points(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 10, 0, 0, 0, 0, 0);

________________________________________________________________

Custom Chores Acts[edit]

____________________________________

Core Functions to enable and define the chores

SetCustomChoreDetails1 - sets a custom chore for the slave girl
function SetCustomChoreDetails1(slabel:String, desc:String)

slabel - short label on the button
desc - longer description


SetCustomChoreDetails2 - sets a custom job for the slave girl (eg Urd's Potion shop)
function SetCustomChoreDetails2(slabel:String, desc:String)

slabel - short label on the button
desc - longer description


SetCustomChoreDetails3 - sets a custom job for the slave girl (eg Urd's Potion shop)
function SetCustomChoreDetails3(slabel:String, desc:String)

slabel - short label on the button
desc - longer description


ShowCustomChore

function ShowCustomChore(num:Number)

Show chore 1-3, defaults to 1


HideCustomChore - hides the custom chore
function HideCustomChore(num:Number)

Hide job 1-3, defaults to 1

____________________________________

Slavegirl Override functions[edit]

____________________________________

ShowSlaveChore1

Your slave is training at a custom chore

function ShowSlaveChore1()

Note

_root.TotalSlaveChore1 = times the chore has been done, BEFORE this time
_root.FirstTimeTodayCustomChore1 = true the first time the chore has been done today

________________________________________________________________

ShowSlaveChore2

Your slave is training at a custom chore

function ShowSlaveChore2()

Note

_root.TotalSlaveChore2 = times the chore has been done, BEFORE this time
_root.FirstTimeTodayCustomChore2 = true the first time the chore has been done today

________________________________________________________________

ShowSlaveChore3

Your slave is training at a custom chore

function ShowSlaveChore3()

Note

_root.TotalSlaveChore3 = times the chore has been done, BEFORE this time
_root.FirstTimeTodayCustomChore3 = true the first time the chore has been done today

________________________________________________________________

Schools[edit]

________________________________________________________________

ShowSchoolSciences

Show your slave studying, say in a class, or at least reading a book

function ShowSchoolSciences()

Notes

_root.TotalSciences = times the school has been attended, BEFORE this time
_root.FirstTimeTodaySciences = true the first time the school has been attended today

Stats

        Points(0, -1, 0, 5 + Home.hLibrary, 0, -1, 0, 0, 0, 0, 0, 0, -2, 0, 0, 0, 1, 0, 0, 0);
                Home.hLibrary = quality of your library, generally 0, can be 1 or 2

____________________________________

AfterSchoolSciences (OPTIONAL)

called after your slave attends the school

function AfterSchoolSciences()

_root.FirstTimeTodaySciences == true the first time your slave attends the school in a given day

________________________________________________________________

ShowSchoolSinging

Show your slave singing

function ShowSchoolSinging()

Notes

_root.TotalSinging = times the school has been attended, BEFORE this time
_root.FirstTimeTodaySinging = true the first time your slave attends the school in a given day

Stats

        Points(0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0);
        slSinging += 0.2;

____________________________________

AfterSchoolSinging (OPTIONAL)

called after your slave attends the school

function AfterSchoolSinging()

_root.FirstTimeTodaySinging == true the first time your slave attends the school in a given day

________________________________________________________________

ShowSchoolTheology

Show your slave praying or studying

function ShowSchoolTheology()

Notes

_root.TotalTheology = times the school has been attended, BEFORE this time
_root.FirstTimeTodayTheology = true the first time your slave attends the school in a given day

Stats

        Points(0, -1, 0, 5 + Home.hLibrary, 0, -1, 0, 0, 0, 0, 0, 0, -2, 0, 0, 0, 1, 0, 0, 0);
                Home.hLibrary= quality of your library, generally 0, can be 1 or 2

____________________________________

AfterSchoolTheology (OPTIONAL)

called after your slave attends the school

function AfterSchoolTheology()

_root.FirstTimeTodayTheology == true the first time your slave attends the school in a given day

________________________________________________________________

ShowSchoolRefinement

Show your slave dressed elegantly, say in a kimono, or otherwise being courtly

function ShowSchoolRefinement()

Notes

_root.TotalRefinement = times the school has been attended, BEFORE this time
_root.FirstTimeTodayRefinement = true the first time your slave attends the school in a given day

Stats

        Points(0, 2, 3, 0, 0, -1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0)
        additionally if dressed courtly (IsDressCourtly())
        Points(0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)

____________________________________

AfterSchoolRefinement (OPTIONAL)

called after your slave attends the school

function AfterSchoolRefinement()

_root.FirstTimeTodayRefinement == true the first time your slave attends the school in a given day

________________________________________________________________

ShowSchoolDance

Show your slave dancing.

If they are a ponyslave then prancing and tually no girls have such images generic images are always shown then;

function ShowSchoolDance(donearoused:Boolean)

donearoused = true if your slave is aroused and may do something inappropriate

Notes

_root.DonePony == 1 if they are a pony slave
_root.TotalDance = times the school has been attended, BEFORE this time
_root.FirstTimeTodayDance = true the first time the chore has been done today

Stats - Prancing

Points(3, 0, 1, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0);

Stats - Dancing

Points(3, 0, 1, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0);
additionally if dressed in a dance dress (IsDressDance())
Points(0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
if you own the slave Latala
Points(0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);

____________________________________

AfterSchoolDance (OPTIONAL)

called after your slave attends the dance school

function AfterSchoolDance()

_root.FirstTimeTodayDance == true the first time your slave attends the school in a given day

________________________________________________________________

ShowSchoolXXX

Show your slave training in sex, at least just show her having sex

function ShowSchoolXXX(doDG:Boolean) : Boolean

doDG is true if the XXX School Teacher partners her with a dickgirl. You can ignore this if you like. If you do use it then display appropriate text for the lesson and return true, else return false

Notes

_root.TotalXXX = times the school has been attended, BEFORE this time
_root.FirstTimeTodayXXX = true the first time the chore has been done today

Stats - dickgirl training (return true)

NoTalentPoints(0, 0, -2, 0, -2, 1, 0, 0, 0, 4, 5, -4, 4, 0, -2, 0, 6, 0, 0, 0)

Stats - 'normal'

NoTalentPoints(0, 0, -2, 0, -2, 1, 0, 0, 0, 3, 4, -3, 4, 0, 1, 0, 4, 0, 0, 0)

____________________________________

AfterSchoolXXX (OPTIONAL)

called after your slave attends the school

function AfterSchoolXXX()

_root.FirstTimeTodayXXX == true the first time your slave attends the school in a given day

________________________________________________________________


Custom Schools[edit]

____________________________________

Core Functions to enable and define the schools

SetCustomSchoolDetails1 - sets a custom school for the slave girl
function SetCustomSchoolDetails1(slabel:String, desc:String)

slabel - short label on the button
desc - longer description


SetCustomSchoolDetails2 - sets a custom job for the slave girl (eg Urd's Potion shop)
function SetCustomSchoolDetails2(slabel:String, desc:String)

slabel - short label on the button
desc - longer description


SetCustomSchoolDetails3 - sets a custom job for the slave girl (eg Urd's Potion shop)
function SetCustomSchoolDetails3(slabel:String, desc:String)

slabel - short label on the button
desc - longer description


ShowCustomSchool

function ShowCustomSchool(num:Number)

Show school 1-3, defaults to 1


HideCustomSchool - hides the custom school
function HideCustomSchool(num:Number)

Hide job 1-3, defaults to 1

____________________________________

Slavegirl Override functions[edit]

____________________________________


ShowSlaveSchool1

Your slave is training at a custom school

function ShowSlaveSchool1()

Notes

_root.TotalSlaveSchool1 = time school has been attended, BEFORE this time
_root.FirstTimeTodayCustomSchool1 = true the first attended time today

________________________________________________________________

ShowSlaveSchool2

Your slave is training at a custom school

function ShowSlaveSchool2()

Notes

_root.TotalSlaveSchool2 = time school has been attended, BEFORE this time
_root.FirstTimeTodayCustomSchool2 = true the first attended time today

________________________________________________________________

ShowSlaveSchool3

Your slave is training at a custom school

function ShowSlaveSchool3()

Note

_root.TotalSlaveSchool3 = time school has been attended, BEFORE this time
_root.FirstTimeTodayCustomSchool3 = true the first attended time today

________________________________________________________________

Jobs[edit]

________________________________________________________________

ShowJobAcolyte

Show your slave working in a temple, dresses as a nun or miko preferably

function ShowJobAcolyte() : Number

return a multiplier for her salary, nomally return 1, but say 1.1 for a skilled girl

When you return, the game assumes the nun is talking to you and appends her finishing text.

ie assumes you show text like something like

PersonSpeakStart("Nun", "You were a skilled acolyte.", true);

If you show nothing, then the game always adds some text and then

PersonSpeakStart("Nun", "You were a big help.", true);

The engine then always appends

AddText(" Here is your reward : "+pay+"GP");

eg from Belldandy

function ShowJobAcolyte(doplug:Boolean) : Number {
        if (_root.DickgirlXF < 1 && ((_root.Naked) || (_root.Aroused && int(Math.random()*4) == 1))) AcolyteClip.gotoAndStop(3);
        else {
                temp = int(Math.random()*2) + 1;
                AcolyteClip.gotoAndStop(temp);
                _root.HideBackgrounds();
                if (temp == 1) _root.Backgrounds.ShowLake();
        }
        AcolyteClip._visible = true;
        if (_root.CustomFlag == 2) {
                // Angel
                _root.PersonSpeakStart("Nun", "It is an honour for me that you chose to work here.");
                _root.Points(0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
                return 1.2;
        } else {
                if (_root.CustomFlag == 1) {
                        // Demon
                        _root.SetText("The nun is breathing heavily and strangely flushed\r\r");
                        _root.PersonSpeakStart("Nun", SlaveName + " acted oddly and talked often about demons and the freedom of hell.", true);
                        _root.VarMorality = _root.VarMorality - 1;
                }
        }
        return 1;
}

eg from Akane

function ShowJobAcolyte() : Number {
        AcolyteClip._visible = true;
        return 1;
}

Notes

_root.TotalAcolyte = times the job has been done, BEFORE this time
_root.FirstTimeTodayAcolyte = true the first worked time today

Stats

Points(0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 0, 0, -2, 0, -1, 0, 2, 0, 0, 0)

____________________________________

AfterJobAcolyte (OPTIONAL)

Called after your slave has worked at the job

function AfterJobAcoltye(pay:Number)

pay = amount she earned in GP

________________________________________________________________

ShowJobBar

Show your job working in a bar

function ShowJobBar() : Number

return a multiplier for her salary, nomally return 1, but say 1.1 for a skilled girl

Notes

_root.TotalBar = times the job has been done, BEFORE this time
_root.FirstTimeTodayBar = true the first worked time today

Stats

Points(0, 0, -1, -1, 0, 0, 1, 1, 2, 0, 0, 1, 0, 0, 0, 0, 4, 0, 0, 0)

____________________________________

AfterJobBar (OPTIONAL)

Called after your slave has worked at the job

function AfterJobBar(pay:Number)

pay = amount she earned

________________________________________________________________

ShowJobBrothel

Show your slave working as a prostitute

function ShowJobBrothel() : Number

return a multiplier for her salary, nomally return 1, but say 1.1 for a skilled girl

Notes

_root.TotalBrothel = times the job has been done, BEFORE this time
_root.FirstTimeTodayBrothel = true the first worked time today

Stats

Points(0, tempvar, -2, -1, -3, 2, 0, 0, 0, 0, 1, 2, 3, 2, 0, 0, 8, tempvar, tempvar, 0);
tempvar = -2, unless Nymphomania > 94 or you return a value > 1 above, then tempvar = 1

____________________________________

AfterJobBrothel (OPTIONAL)

Called after your slave has worked at the job

function AfterJobBrothel(pay:Number)

pay = amount she earned

________________________________________________________________

ShowJobCockMilking

Show your slave working for Astrid having her cum milked. If LastActionDone is 1031 then your slave is also being milked, otherwise just your slave maker

function ShowJobCockMilking() : Number

return a multiplier for her/your salary, nomally return 1, but say 1.1 for a skilled girl

Notes

_root.TotalCockMilk= times your slave has been milked, BEFORE this time
_root.TotalSMCockMilk= times you have been milked, BEFORE this time

________________________________________________________________


ShowJobLibrary

Show your slave working in a library. The first time you work here a standard introduction is always show, an apended to any text shown

function ShowJobLibrary() : Number

return a multiplier for her salary, nomally return 1, but say 1.1 for a skilled girl

Notes

_root.TotalLibrary = times the job has been done, BEFORE this time
_root.FirstTimeTodayLibrary = true the first worked time today

Stats - Aroused

Points(0, 0, 0, 2, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 2, 0, 0, 0);

Stats - Not Aroused

Points(0, 0, 0, 2, 0, 1, 0, 1, 0, 0, 0, 0, -1, 0, -2, 0, 2, 0, 0, 0);

____________________________________

AfterJobLibrary(OPTIONAL)

Called after your slave has worked at the job

function AfterJobLibrary(pay:Number)

pay = amount she earned

________________________________________________________________

ShowJobOnsen

Show your slave working or sitting in a hotspring. The first time you work here a standard introduction is always show, an apended to any text shown

function ShowJobOnsen(wgender:Number) : Number
wgender -

0 = just cleaning
1 = wash male customer
2 = wash female customer
3 = wash dickgirl customer

return a multiplier for her salary, nomally return 1, but say 1.1 for a skilled girl

Notes

_root.TotalOnsen = times the job has been done, BEFORE this time
_root.FirstTimeTodayOnsen = true the first worked time today

Stats - Wash a Customer

Points(0, 2, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 2, 0, 0, 0)

Stats - No Washing

Points(0, 1, 0, 0, 0, 2, 0, 3, 0, 0, 0, 0, 0, 0, 1, 0, 3, 0, 0, 0)

____________________________________

AfterJobOnsen (OPTIONAL)

Called after all text shown, say use to trigger an event etc, and to disable all 'interest' if needed

function AfterJobOnsen(pay:Number, event:Number) : Boolean

pay = amount she earned in GP
interest = true if she was asked to wash a customer and they ask for something more intimate (about 25% of the time for first in day)

event

0 - no request for service
38.1 - male customer
38.2 - female
38.3 - dickgirl

return

true to prevent any customers 'interest' (not refuse, to completely remove it)
false to allow 'interest'

Notes
You can force an 'interest' (ie sex scene) by setting

NumEvent = 38.1 - male customer
NumEvent = 38.2 - female customer
NumEvent = 38.3 - dickgirl customer

If this differs to the female parameter then you must replace all text and show your own custom text You should then also set _root.AppendActText = false; to suppress the standard text about 'interest'

eg

function AfterJobOnsen(pay:Number, event:Number) : Boolean
{
        if (_root.CheckBitFlag2(10)) return false;  // pure path, will never give any sexual signals
        if (NumEvent != 38.1) {
                // she will only give signals to men
                _root.NumEvent = 38.1;
                _root.SetText(AddText("As " + SlaveName + " is cleaning a customer, a man asks for her to wash his back. " + SlaveName + " agrees and expertly washes the customers back.\r\rAs she finishes she notices his cock stiffening and he ask if she would care to help and wash something more private...");
                _root.AppendActText = false; // to suppress other standard text
                return true;
        }
        return true;
}

Actually you can set NumEvent to any custom value you desire.

____________________________________

ShowJobOnsenService (OPTIONAL)

Use to show sex acts with customers in the hotspring

function ShowJobOnsenService(cgender:Number) : Boolean

cgender = customers gender (1= male, 2 = female, 3 = dickgirl)

return

true to show a custom act
false for generic, and no custom graphic

Notes

_root.TotalOnsenService = times the service has been done, BEFORE this time

Stats -

Points(0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 2, 0, 0, 0, 0, 0)

________________________________________________________________

ShowJobRestaurant

Show your slave working in the restaurant

function ShowJobRestaurant() : Number

return a multiplier for her salary, nomally return 1, but say 1.1 for a skilled girl

if BitFlag1 32 is set she is working as an assistant chef, but only when she is not naked

eg

if (!_root.Naked && _root.CheckBitFlag1(32)) {
}

Notes

_root.TotalRestaurant = times the job has been done, BEFORE this time
_root.FirstTimeTodayRestaurant = true the first worked time today

Stats - Assistant Chef

Points(0, 0, 0.5, 0, 0, 0, 4, 0.5, 0, 0, 0, 0, 0, 0, 0, 0.5, 2, 0, 0, 0)

Stats - Waitress/Waiter

Points(0, 0, -1, 0, 0, 1, 1, 0.5, 2, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0)

____________________________________

AfterJobRestaurant (OPTIONAL)

Called after your slave has worked at the job

function AfterJobRestaurant(pay:Number)

pay = amount you slave earned

________________________________________________________________

ShowJobSleazyBar

Show her working in the sleazy bar, seceral variations

- doing a striptease (parameter strip = true)
- wearing a Bunny Suit - _root.BunnySuitOK == 1
- wearing Lingerie - _root.LingerieOK == true

function ShowJobSleazyBar(strip:Boolean) : Number

strip = true if she is to do a strip tease
return a multiplier for her salary, nomally return 1, but say 1.1 for a skilled girl

LastActionDoneDay

1015.1 - strip tease
1015.2 - refused to do strip tease

Notes

_root.TotalSleazyBar = times the job has been done, BEFORE this time
_root.FirstTimeTodaySleazyBar = true the first worked time today

Stats -

Points(2, -2, 0, -2, -2, 1, 0, 0, 2, 0, 0, 1, 2, 1, 1, 0, 6, 0, 0, 0);
if you return 1 from the show function Points(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, 0);
Points(0, 0, 0.5, 0, 0, 0, 4, 0.5, 0, 0, 0, 0, 0, 0, 0, 0.5, 2, 0, 0, 0)

____________________________________

AfterJobSleazyBar (OPTIONAL)

Called after all text shown, say use to trigger an event etc

function AfterJobSleazyBar(pay:Number) : Boolean

pay = amount she earned in GP

return

true to prevent 'service' for customers
false to allow 'service'

____________________________________

ShowJobSleazyBarService (OPTIONAL)

Use to show sex acts with customers in the sleazy bar

function ShowJobSleazyBarService(female:Boolean) : Boolean

female = true if the customer is a woman, false a male. Your discretion for dickgirl

return

true to show a custom act
false for generic (a standard blowjob), and no custom graphic

Notes

_root.TotalSleazyBarService = times the service has been done, BEFORE this time

Stats -

Points(0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 2, 0, 0, 0, 0, 0)

________________________________________________________________

Custom Jobs[edit]

____________________________________

Core Functions to enable and define the jobs

SetCustomJobDetails1 - sets a custom job for the slave girl (eg Urd's Potion shop)
function SetCustomJobDetails1(slabel:String, desc:String)

slabel - short label on the button
desc - longer description

eg from Ranma

_root.SetCustomJobDetails1("Sp<font color='#0000FF'>o<font color='#000000'>rts Store", " work in a sports store selling goods and discussing games");

SetCustomJobDetails2 - sets a custom job for the slave girl (eg Urd's Potion shop)
function SetCustomJobDetails2(slabel:String, desc:String)

slabel - short label on the button
desc - longer description


SetCustomJobDetails3 - sets a custom job for the slave girl (eg Urd's Potion shop)
function SetCustomJobDetails3(slabel:String, desc:String)

slabel - short label on the button
desc - longer description


ShowCustomJob

function ShowCustomJob(num:Number)

Show job 1-3, defaults to 1


HideCustomJob - hides the custom job
function HideCustomJob(num:Number)

Hide job 1-3, defaults to 1

____________________________________

Slavegirl Override functions[edit]

____________________________________


ShowSlaveJob1

Your slave is working at their first custom job

function ShowSlaveJob1()

use function

_root.EarnMoney(x) to have her earn money

eg

_root.EarnMoney(100); to earn 100GP from running the shop

Note this was previously called RunShop(), temporarily that function is also called, but is obsolete and will be removed

Notes

_root.TotalSlaveJob1 = times the job has been done, BEFORE this time
_root.FirstTimeTodayCustomJob1 = true the first worked time today

____________________________________

ShowSlaveJob2

Your slave is working at their second custom job

function ShowSlaveJob2()

use function

_root.EarnMoney(x) to have her earn money

eg

_root.EarnMoney(100); to earn 100GP from running the shop

Notes

_root.TotalSlaveJob2 = times the job has been done, BEFORE this time
_root.FirstTimeTodayCustomJob2 = true the first worked time today

____________________________________

ShowSlaveJob3

Your slave is working at their third custom job

function ShowSlaveJob2()

use function

_root.EarnMoney(x) to have her earn money

eg

_root.EarnMoney(100); to earn 100GP from running the shop

Notes

_root.TotalSlaveJob3 = times the job has been done, BEFORE this time
_root.FirstTimeTodayCustomJob3 = true the first worked time today

________________________________________________________________

Others[edit]

________________________________________________________________

ShowRefusedAction

Show your slave looking sad or angry as she has refused to do something

function ShowRefusedAction(Action:Number, slave:String, servant:String, Charisma:Number, Sensibility:Number, Refinement:Number, Intelligence:Number, Morality:Number, Constitution:Number, Cooking:Number, Cleaning:Number, Conversation:Number, BlowJob:Number, Fuck:Number, Temperament:Number, Nymphomania:Number, Obedience:Number, Libido:Number, Reputation:Number, Fatigue:Number, Joy:Number, Love:Number, Special:Number) : Boolean

Action - act to do
slave - standard refusal text for slave
servant - speech by your assistant
the rest are the stat changes for refusing to do the act

return true to disable standard effects, stat changes and text and do your own

Notes

_root.LastActionRefused is set to the action refused

Stats

vary by act refused, 50% worse if you have Leadership skill > 0

________________________________________________________________

ShowBreak

Show your slave resting or sleeping

function ShowBreak(sleeping:Boolean)

sleeping = true then show her asleep if possible

Notes

_root.TotalBreak = total times rested, BEFORE this time
_root.FirstTimeTodayBreak = true the first resting time today

Stats

Points(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, Home.hWards > 0 ? -13 : -10, 1, 0, 0);
hWards > 0 - is the house magically warded (Onsen house mainly)

________________________________________________________________

General Notes

Use functions like

DoDickgirlChange
DefaultDickgirl
DefaultLesbian
DefaultGeneric

to handle default images. You can also explicitly set

_root.UseGeneric = true;

to make the game use a generic image, or preferably call

_root.DefaultGeneric(100);


<<first <prev SDK/Slave Girl - Plannings - General Actions - Chores, Jobs, Schools next> last>>