Dev:SDK/Core - Buttons

From Slavemaker Wiki
< Dev:SDK
Revision as of 22:56, 20 March 2012 by WikiSysop (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

SlaveMaker 3 SDK Core Buttons

There are a group of standard buttons in the Core game you can show

Generally use provided functions, avoid directly accessing the movie clips


Button MovieClips NextGeneral - next button in day and night events - please use ShowPlanningNext() and HidePlanningNext() to show/hide NextEvent - next button for other events - please use DoEvent Quitter - Leave button, use ShowLeaveButton() and HideLeaveButton() PlanningButton - planning button on main screen MorningButton - morning button EveningButton - morning button SystemButton - load/save YesEvent, NoEvent - Yes/No buttons, normally use DoYesNoEvent/DoYesNoEventXY to show AskQuestions - the list of questions shown, use AskHerQuestions/AddQuestion functions



DoEvent do an event and show the NextEvent button. Other buttons are hidden function DoEvent(enum:Object) enum - event to do. This value can either be a Number or a String, If it is a Number it will set _root.NumEvent to this value. If it is a String it will set _root.StrEvent to this value When the button is clicked the game will call internally DoEventNext() and then first call the slavegirls DoEventNext() function eg _root.DoEvent(400); eg _root.NumEvent = 100 + type; _root.DoEvent(); eg _root.DoEvent("Snakes" + _root.slrandom(2)); eg _root.DoEvent("LamiaEscape");


DoYesNoEvent display yes/no buttons at the bottom of the General text area function DoYesNoEvent(enum:Object) enum - event to do, This value can either be a Number or a String, If it is a Number it will set _root.NumEvent to this value. If it is a String it will set _root.StrEvent to this value if omitted then will use _root.NumEvent Other buttons are hidden When the yes button is clicked the game will call internally DoEventYes() and then first call the slavegirls DoEventYes() function When the yes button is clicked the game will call internally DoEventNo() and then first call the slavegirls DoEventNo() function

DoYesNoEventXY display yes/no buttons immediately below the last displayed text, will wrap in the the larger text area as needed function DoYesNoEventXY(enum:Object) enum - event to do, if omitted then will use _root.NumEvent Other buttons are hidden

PositionYesNo function PositionYesNo() Reposition the yes/no buttons, generally use this if you add more text after displaying the buttons, say using AfterDoActions or AfterDoSexActions

ShowYesNoButtons function ShowYesNoButtons() Do not generally use, mainly use DoYesNoEvent, but can be used in DoPlanningActions

HideYesNoButtons function HideYesNoButtons() hide the yes/no buttons, mainly for use in DoPlanningActions, but can be used elsewhere


AskHerQuestions ask up to 5 questions function AskHerQuestions(Event1:Object, Event2:Object, Event3:Object, Event4:Object, Event1Label:String, Event2Label:String, Event3Label:String, Event4Label:String, Caption:String, Event5:Object, Event5Label:String) Event1-5 event to be done when clicking on one of the four choices. Set to 0 hide the option. Event5 is optional Event1Label-Event5Label the string shown for the question, eg "Runaway screaming" - Event5Label is optional Caption Caption at the top of the questions, eg "What does she do?" Other buttons are hidden eg _root.AskHerQuestions(301, 302, 303, 0, "Please fuck me", "No way!", "Well, I'd prefer it in the ass", "", "How does she respond?"); // events 301, 302, 303 will need to be handled in the slavegirls DoEventNext() function _root.AskHerQuestions(301, 302, 303, 0, "Please fuck me", "No way!", "Well, I'd prefer it in the ass", "", "How does she respond?", 304, "How about my mouth?");

ResetQuestions function ResetQuestions() Reset and hide all questions

AddQuestion function AddQuestion(Event1:Object, Event1Label:String) Add a question to the list, call 1+ times. Any more than 5 are ignored

PositionQuestions function PositionQuestions(lines:Number, main:Boolean) Repostions the questions, this is to allow for the case where the game shows some questions and then you choose to alter the displayed text lines parameter is normally for internal use

Special case _root.PositionQuestions(undefined, true); positions the questions in the main window with a translucent background

ShowQuestions function ShowQuestions(Caption:String, main:Boolean) : Number eg _root.ResetQuestions(); _root.AddQuestion(300, "Fuck me"); if (_root.CheckBitFlag2(12)) _root.AddQuestion(301, "Fuck my ass"); _root.AddQuestion(302, "Fuck " + _root.ServantName); _root.ShowQuestions("She asks you to...");

Special case _root.ShowQuestions("She asks you to...", true); positions the questions in the main window with a translucent background. The question area is also wider for longer questions

HideQuestions function HideQuestions() Will hide the questions, seldom is there a need to call this. The game hides the questions once pressed. Generally use ResetQuestions() instead unless you wish to preserve any added questions

General Buttons


Customise a sex act or day action

function SetActButtonState(type:Number, tick:Boolean, available:Boolean, actlabel:String, cost:Number, aduration:Number, shortcut:String) type - the act number to change. see Slave - Planning.rtf tick - is the large tick shown, normally to indicate the act is done available - if false a large slash will indicate you cannot do it actlabel - the button label, html syntax. You must use the existing shortcut cost - the GP cost to do the action aduration - the time to do the action, in hours (1.5 for 1 hour 30 minutes) shortcut - a single letter for the shortcut to use

These are the standard calls for all buttons

SetActButtonState(1, false, true, "Nothing", 0, 1, "H"); SetActButtonState(13, false, true, "Naked", 0, 1, "N"); SetActButtonState(17, false, true, "Ponygirl", 0, 1, "Y"); SetActButtonState(18, false, true, "Spank " + NameCase(SlaveHimHer), 0, 1, "S"); SetActButtonState(14, false, true, Master, 0, 1, "M"); SetActButtonState(16, false, true, "Lend " + NameCase(SlaveHimHer), 0, 3, "E"); SetActButtonState(24, false, true, "Strip Tease", 0, 1, "z"); SetActButtonState(9, false, true, "Dildo", 0, 1, "D"); SetActButtonState(10, false, true, "Anal Plug", 0, 1, "P");

SetActButtonState(6, false, true, "Tits-Fuck", 0, 1, "T"); SetActButtonState(11, false, true, "Lesbian", 0, 1, "L"); SetActButtonState(12, false, true, "Bondage", 0, 1, "B"); SetActButtonState(15, false, true, "Gang-Bang", 0, 1, "G"); SetActButtonState(8, false, true, "Make " + SlaveHimHer + " Masturbate", 0, 1, "U"); SetActButtonState(2, false, true, "Touch " + NameCase(SlaveHimHer), 0, 1, "O"); SetActButtonState(7, false, true, "Ass Fuck "+ NameCase(SlaveHimHer), 0, 1, "A"); SetActButtonState(4, false, true, "Fuck "+ NameCase(SlaveHimHer), 0, 1, "F"); SetActButtonState(20, false, true, "69", 0, 1, "6"); SetActButtonState(3, false, true, "Lick " + NameCase(SlaveHimHer), 0, 1, "C");

SetActButtonState(5, false, true, "Blowjob", 0, 1, "J"); SetActButtonState(25, false, true, "Cum Bath", 0, 1, "w"); SetActButtonState(19, false, true, "Threesome", 0, 1, "3"); SetActButtonState(21, false, true, "Orgy", 0, 1, "R"); SetActButtonState(23, false, true, "Kiss", 0, 1, "K"); SetActButtonState(2001, false, true, "Martial\rTraining", 0, 2, "M"); SetActButtonState(2002, false, true, "Pray at\rChurch", 0, 2, "P"); SetActButtonState(2003, false, true, "Relax in\ra Bar", 0, 2, "B"); SetActButtonState(2004, false, true, "Attend\rCourt", 0, 4, "C");

SetActButtonState(1017, false, true, "Break", 0, 2, "R"); SetActButtonState(1004, false, true, "Discuss", 0, 1, "D"); SetActButtonState(1002, false, true, "Cleaning", 0, 2, "l"); SetActButtonState(1001, false, true, "Cooking", 0, 2, "C"); SetActButtonState(1011, false, true, "Expose " + NameCase(SlaveHimHer) + "self", 0, 2, "P"); SetActButtonState(1019, false, true, "Read a\rBook", 0, 2, "K"); SetActButtonState(1013, false, true, "Acolyte", 0, 2, "A"); SetActButtonState(1006, false, true, "Sciences", 50, 2, "S"); SetActButtonState(1007, false, true, "Theology", 50, 2, "T"); SetActButtonState(1010, false, true, "XXX", 50, 2, "X"); SetActButtonState(1012, false, true, "Restarant", 0, 2, "U"); SetActButtonState(1014, false, true, "Bar", 0, 2, "B"); SetActButtonState(1015, false, true, "Sleazy Bar", 0, 2, "Z"); SetActButtonState(1016, false, true, "Brothel", 0, 2, "H"); SetActButtonState(1005, false, true, "Make Up", 0, 2, "M"); SetActButtonState(1003, false, true, "Exercise", 0, 2, "W"); SetActButtonState(1009, false, true, "Dance", 50, 2, "N"); SetActButtonState(1008, false, true, "Etiquette\rschool", 50, 2, "E"); SetActButtonState(1019, false, true, "", 0, 2); SetActButtonState(1020, false, true, "", 0, 2); SetActButtonState(1021, false, true, "", 0, 2); SetActButtonState(1022, false, true, "Library", 0, 2, "L"); SetActButtonState(1023, false, true, "Onsen", 0, 2, "H"); SetActButtonState(1024, false, true, "", 0, 2); SetActButtonState(1025, false, true, "", 0, 2); SetActButtonState(1026, false, true, "", 0, 2); SetActButtonState(1027, false, true, "", 0, 2); SetActButtonState(1028, false, true, "", 0, 2); SetActButtonState(1029, false, true, "", 0, 2);

Notes: DO NOT call this in Initialise() the button will revert to default. Instead call it in UpdateSlave() or LoadGame() NameCase - function sets first letter to uppercase SlaveHimHer - 'him', 'her', 'them'

ShowActButton function ShowActButton(type:Number, showact:Boolean) type - as for SetActButtonState showact - true to show, false to hide, defaults to true

HideActButton function HideActButton(type:Number) As above, just hides the button

ShowPlanningNext function ShowPlanningNext() Show the next button while doing planning actions, and hide other leave/yes/no/questions. Use this if you trigger an event and when done want to continue to the next action in her planning list.

HidePlanningNext function HidePlanningNext() Hide the next button while doing planning actions

ShowLeaveButton function ShowLeaveButton() Show the leave button, and hide other next/yes/no/questions.