mirror of
https://gitgud.io/BondageProjects/Bondage-College.git
synced 2025-04-25 17:59:34 +00:00
More skills added to all chapters
More skills added to all chapters
This commit is contained in:
parent
ed6195edf4
commit
2f869d7421
28 changed files with 164 additions and 32 deletions
C000_Intro/CreatePlayer
C001_BeforeClass/Amanda
C004_ArtClass
C005_GymClass
C006_Isolation/IsolationRoom
C007_LunchBreak
C008_DramaClass
C999_Common/Player
Drawing.jsIcons
Skill.jsStruggle.jsTime.js
|
@ -1,4 +1,6 @@
|
|||
var C000_Intro_CreatePlayer_ChapterToLoad = "C001_BeforeClass";
|
||||
var C000_Intro_CreatePlayer_SkillCount = 5;
|
||||
var C000_Intro_CreatePlayer_ControlLoaded = false;
|
||||
|
||||
// Create Player Load
|
||||
function C000_Intro_CreatePlayer_Load() {
|
||||
|
@ -8,6 +10,14 @@ function C000_Intro_CreatePlayer_Load() {
|
|||
LeaveScreen = "";
|
||||
LoadText();
|
||||
|
||||
}
|
||||
|
||||
// Create Player Run
|
||||
function C000_Intro_CreatePlayer_Run() {
|
||||
|
||||
// If we load the controls
|
||||
if ((C000_Intro_CreatePlayer_ControlLoaded == false) && (GetText("Skill" + C000_Intro_CreatePlayer_SkillCount.toString()) != "")) {
|
||||
|
||||
// Creates a text box to enter the player name
|
||||
var InputName = document.createElement('input');
|
||||
InputName.setAttribute("ID", "InputName");
|
||||
|
@ -15,23 +25,32 @@ function C000_Intro_CreatePlayer_Load() {
|
|||
InputName.setAttribute("type", "text");
|
||||
InputName.setAttribute("value", "");
|
||||
InputName.setAttribute("maxlength", "20");
|
||||
InputName.setAttribute("style", "font-size:24px; font-family:Arial; position:fixed; padding-left:10px; left:200px; top:300px; width:500px; height:50px;");
|
||||
InputName.setAttribute("style", "font-size:24px; font-family:Arial; position:absolute; padding-left:10px; left:200px; top:240px; width:500px; height:50px;");
|
||||
InputName.addEventListener("keypress", KeyDown);
|
||||
document.body.appendChild(InputName);
|
||||
InputName.focus();
|
||||
|
||||
}
|
||||
// Creates a select box to pick a starting skill
|
||||
var SelectSkill = document.createElement('select');
|
||||
SelectSkill.setAttribute("ID", "SelectSkill");
|
||||
SelectSkill.setAttribute("name", "SelectSkill");
|
||||
SelectSkill.setAttribute("style", "font-size:24px; font-family:Arial; position:absolute; padding-left:10px; left:300px; top:320px; width:300px; height:50px;");
|
||||
for(var S = 0; S <= 5; S++)
|
||||
SelectSkill.appendChild(new Option(GetText("Skill" + S.toString()), S.toString()));
|
||||
document.body.appendChild(SelectSkill);
|
||||
C000_Intro_CreatePlayer_ControlLoaded = true;
|
||||
|
||||
// Create Player Run
|
||||
function C000_Intro_CreatePlayer_Run() {
|
||||
}
|
||||
|
||||
// Draw the player image and the text input for the name
|
||||
var ctx = document.getElementById("MainCanvas").getContext("2d");
|
||||
DrawImage(ctx, CurrentChapter + "/" + CurrentScreen + "/Player.jpg", 900, 0);
|
||||
DrawRect(ctx, 0, 0, 900, 600, "white");
|
||||
DrawRect(ctx, 300, 430, 300, 70, "#8c304e");
|
||||
DrawText(ctx, GetText("EnterName"), 450, 100, "black");
|
||||
DrawText(ctx, GetText("ValidChars"), 450, 200, "black");
|
||||
DrawText(ctx, GetText("ValidChars"), 450, 180, "black");
|
||||
|
||||
// Creates the "validate" button
|
||||
DrawRect(ctx, 300, 430, 300, 70, "#8c304e");
|
||||
DrawText(ctx, GetText("Validate"), 450, 465, "white");
|
||||
|
||||
}
|
||||
|
@ -39,17 +58,25 @@ function C000_Intro_CreatePlayer_Run() {
|
|||
// Validate the name and starts the game
|
||||
function C000_Intro_CreatePlayer_Validate() {
|
||||
var NewName = document.getElementById("InputName").value.trim();
|
||||
var StartingSkill = document.getElementById("SelectSkill").value.trim();
|
||||
var letters = /^[a-zA-Z ]+$/;
|
||||
if (NewName.match(letters) && (NewName.length > 0) && (NewName.length <= 20)) {
|
||||
if (StartingSkill == "1") PlayerAddSkill("Arts", 1);
|
||||
if (StartingSkill == "2") PlayerAddSkill("Fighting", 1);
|
||||
if (StartingSkill == "3") PlayerAddSkill("RopeMastery", 1);
|
||||
if (StartingSkill == "4") PlayerAddSkill("Sports", 1);
|
||||
if (StartingSkill == "5") PlayerAddSkill("Seduction", 1);
|
||||
PlayerSkillShowLevelUp = 0;
|
||||
Common_PlayerName = NewName;
|
||||
document.getElementById("InputName").parentNode.removeChild(document.getElementById("InputName"));
|
||||
document.getElementById("SelectSkill").parentNode.removeChild(document.getElementById("SelectSkill"));
|
||||
SetScene(C000_Intro_CreatePlayer_ChapterToLoad, "Intro");
|
||||
}
|
||||
}
|
||||
|
||||
// Create Player Key Down
|
||||
function C000_Intro_CreatePlayer_KeyDown() {
|
||||
if (KeyPress == 13) C000_Intro_CreatePlayer_Validate();
|
||||
//if (KeyPress == 13) C000_Intro_CreatePlayer_Validate();
|
||||
}
|
||||
|
||||
// Create Player Click
|
||||
|
|
|
@ -1,4 +1,10 @@
|
|||
Tag,Content
|
||||
EnterName,Enter a name for your character.
|
||||
EnterName,Enter a name and select a skill for your character.
|
||||
ValidChars,You can only use letters & spaces.
|
||||
Validate,Start the game
|
||||
Skill0,No skill
|
||||
Skill1,Arts
|
||||
Skill2,Fighting
|
||||
Skill3,Rope Mastery
|
||||
Skill4,Sports
|
||||
Skill5,Seduction
|
||||
|
|
|
|
@ -1,4 +1,10 @@
|
|||
Tag,Content
|
||||
EnterName,Enter a name for your character.
|
||||
EnterName,Enter a name and select a skill for your character.
|
||||
ValidChars,You can only use letters & spaces.
|
||||
Validate,Start the game
|
||||
Skill0,No skill
|
||||
Skill1,Arts
|
||||
Skill2,Fighting
|
||||
Skill3,Rope Mastery
|
||||
Skill4,Sports
|
||||
Skill5,Seduction
|
||||
|
|
|
|
@ -1,4 +1,10 @@
|
|||
Tag,Content
|
||||
EnterName,Entrez un nom pour votre personnage.
|
||||
EnterName,Choisissez un nom et un talent pour votre personnage.
|
||||
ValidChars,Seulement des lettres et des espaces.
|
||||
Validate,Démarrer la partie
|
||||
Skill0,No skill
|
||||
Skill1,Arts
|
||||
Skill2,Combat
|
||||
Skill3,Maîtrise des Cordes
|
||||
Skill4,Sports
|
||||
Skill5,Séduction
|
||||
|
|
|
|
@ -2,3 +2,9 @@ Tag,Content
|
|||
EnterName,Nadaj imiê swojej postaci.
|
||||
ValidChars,Mo¿esz u¿ywaæ wy³¹cznie liter oraz spacji.
|
||||
Validate,Zacznij grê
|
||||
Skill0,No skill
|
||||
Skill1,Arts
|
||||
Skill2,Fighting
|
||||
Skill3,Rope Mastery
|
||||
Skill4,Sports
|
||||
Skill5,Seduction
|
||||
|
|
|
|
@ -71,11 +71,12 @@ function C001_BeforeClass_Amanda_ConfrontBondage() {
|
|||
C001_BeforeClass_Amanda_BondageNotConfronted = false;
|
||||
}
|
||||
|
||||
// Chapter 1 - Amanda Kiss
|
||||
// Chapter 1 - Amanda Kiss (extra love if the player has seduction)
|
||||
function C001_BeforeClass_Amanda_Kiss() {
|
||||
if (C001_BeforeClass_Amanda_Kiss_Done == false) {
|
||||
C001_BeforeClass_Amanda_Kiss_Done = true;
|
||||
ActorChangeAttitude(1, 0);
|
||||
if (PlayerGetSkillLevel("Seduction") >= 1) ActorChangeAttitude(2, 0);
|
||||
else ActorChangeAttitude(1, 0);
|
||||
OverridenIntroText = GetText("Kiss");
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,6 +15,7 @@ var C004_ArtClass_Jennifer_PityDone = false;
|
|||
var C004_ArtClass_Jennifer_EggConfirm = false;
|
||||
var C004_ArtClass_Jennifer_EggInside = false;
|
||||
var C004_ArtClass_Jennifer_StunningBeautyReady = true;
|
||||
var C004_ArtClass_Jennifer_PaintAvail = true;
|
||||
|
||||
// Chapter 4 - Jennifer Load
|
||||
function C004_ArtClass_Jennifer_Load() {
|
||||
|
@ -231,3 +232,19 @@ function C004_ArtClass_Jennifer_StunningBeauty() {
|
|||
C004_ArtClass_Jennifer_StunningBeautyReady = false;
|
||||
ActorChangeAttitude(1, 0);
|
||||
}
|
||||
|
||||
// Chapter 4 - Jennifer Paint, can only be done if there's 30 minutes left for the class
|
||||
function C004_ArtClass_Jennifer_Paint() {
|
||||
if (CurrentTime <= 9.75 * 60 * 60 * 1000) {
|
||||
C004_ArtClass_Sarah_PaintAvail = false;
|
||||
C004_ArtClass_Jennifer_PaintAvail = false;
|
||||
ActorChangeAttitude(0, 2);
|
||||
CurrentTime = CurrentTime + 0.5 * 60 * 60 * 1000;
|
||||
PlayerAddSkill("Arts", 1);
|
||||
if (PlayerGetSkillLevel("Arts") >= 1) {
|
||||
ActorSpecificChangeAttitude("Julia", PlayerGetSkillLevel("Arts"), 0);
|
||||
ActorSpecificChangeAttitude("Sarah", PlayerGetSkillLevel("Arts"), 0);
|
||||
ActorSpecificChangeAttitude("Jennifer", PlayerGetSkillLevel("Arts"), 0);
|
||||
}
|
||||
} else OverridenIntroText = GetText("NoTimeToPaint");
|
||||
}
|
|
@ -42,9 +42,12 @@ Stage,LoveReq,SubReq,VarReq,Interaction,Result,NextStage,LoveMod,SubMod,Function
|
|||
130,0,0,,(Tighten the ropes.)|(1 minute),(This bondage is already|as tight as it can be.),130,0,0,Tighten()
|
||||
130,0,0,,(Tickle her.)|(1 minute),(She cowers in shame|to avoid your tickling.),130,0,0,Tickle()
|
||||
130,0,0,Common_PlayerNotRestrained,(Untie her.)|(1 minute),(You untie her and she throws the|ropes at you.) Can I go sit now?,120,0,0,Untie()
|
||||
130,0,0,PaintAvail,(Paint Jennifer.)|(30 minutes),(You carefully paint her and show the result.)|Please destroy this painting once class is over.,130,0,0,Paint()
|
||||
140,0,0,,(Tighten the ropes.)|(1 minute),(This bondage is already|as tight as it can be.),140,0,0,Tighten()
|
||||
140,0,0,,(Tickle her.)|(1 minute),(She cowers in shame|to avoid your tickling.),140,0,0,Tickle()
|
||||
140,0,0,Common_PlayerNotRestrained,(Ungag her.)|(1 minute),(You unbuckle the gag and release it|from her mouth) Can you untie me now?,130,0,0,Ungag()
|
||||
140,0,0,PaintAvail,(Paint Jennifer.)|(30 minutes),(You carefully paint her and show the result.)|(She looks at your work of art and whimpers.),140,0,0,Paint()
|
||||
150,0,0,,(Tighten the ropes.)|(1 minute),(This bondage is already|as tight as it can be.),150,0,0,Tighten()
|
||||
150,0,0,,(Tickle her.)|(1 minute),(She cowers in shame|to avoid your tickling.),150,0,0,Tickle()
|
||||
150,0,0,Common_PlayerNotRestrained,(Ungag her.)|(1 minute),"(You remove the tape from her mouth.)|Alright, can you untie me now?",130,0,0,Ungag()
|
||||
150,0,0,PaintAvail,(Paint Jennifer.)|(30 minutes),(You carefully paint her and show the result.)|(She looks at your work of art and whimpers.),150,0,0,Paint()
|
||||
|
|
|
|
@ -19,3 +19,4 @@ EarnTrust,I'll try to trust you then.|All of this is making me nervous.
|
|||
EggComment,"But, but, but. I, I. Ok.|(She bows her head.)"
|
||||
PlayerUntie,"(She blushes and steps up to untie you.)|Here you go my friend, I bet that was humiliating."
|
||||
PlayerStayTied,(She's too nervous to move up to help you.)|(You need 3 love or more to get help from her.)
|
||||
NoTimeToPaint,(There's not enough time left in|class to produce a work of art.)
|
||||
|
|
|
|
@ -18,6 +18,7 @@ var C004_ArtClass_Sarah_EggConfirm = false;
|
|||
var C004_ArtClass_Sarah_EggInside = false;
|
||||
var C004_ArtClass_Sarah_CrotchRopeReady = false;
|
||||
var C004_ArtClass_Sarah_OrgasmDone = false;
|
||||
var C004_ArtClass_Sarah_PaintAvail = true;
|
||||
|
||||
// Chapter 4 - Sarah Load
|
||||
function C004_ArtClass_Sarah_Load() {
|
||||
|
@ -227,3 +228,19 @@ function C004_ArtClass_Sarah_OrgasmStart() {
|
|||
function C004_ArtClass_Sarah_Orgasm() {
|
||||
ActorAddOrgasm();
|
||||
}
|
||||
|
||||
// Chapter 4 - Sarah Paint, can only be done if there's 30 minutes left for the class
|
||||
function C004_ArtClass_Sarah_Paint() {
|
||||
if (CurrentTime <= 9.75 * 60 * 60 * 1000) {
|
||||
C004_ArtClass_Sarah_PaintAvail = false;
|
||||
C004_ArtClass_Jennifer_PaintAvail = false;
|
||||
ActorChangeAttitude(1, 1);
|
||||
CurrentTime = CurrentTime + 0.5 * 60 * 60 * 1000;
|
||||
PlayerAddSkill("Arts", 1);
|
||||
if (PlayerGetSkillLevel("Arts") >= 1) {
|
||||
ActorSpecificChangeAttitude("Julia", PlayerGetSkillLevel("Arts"), 0);
|
||||
ActorSpecificChangeAttitude("Sarah", PlayerGetSkillLevel("Arts"), 0);
|
||||
ActorSpecificChangeAttitude("Jennifer", PlayerGetSkillLevel("Arts"), 0);
|
||||
}
|
||||
} else OverridenIntroText = GetText("NoTimeToPaint");
|
||||
}
|
|
@ -40,14 +40,17 @@ Stage,LoveReq,SubReq,VarReq,Interaction,Result,NextStage,LoveMod,SubMod,Function
|
|||
160,0,0,,(Tighten the ropes.)|(1 minute),The ropes are as tight as they can be.,160,0,0,Tighten()
|
||||
160,0,0,Common_PlayerNotRestrained,(Untie her.)|(1 minute),"Ooooooh, why did you untie me?|(She pulls her tongue and takes her pose.)",150,0,0,Untie()
|
||||
160,0,0,Common_PlayerNotRestrained,(Tickle her.)|(1 minute),You're funny. But is that the best you can do?|(She giggles but isn't impressed by your tickling.),160,0,0,
|
||||
160,0,0,PaintAvail,(Paint Sarah.)|(30 minutes),(You carefully paint her and show the result.)|Wow! This is such a kinky painting. I love it!,160,0,0,Paint()
|
||||
170,0,0,CrotchRopeReady,(Play with the crotch|rope.) (1 minute),(You play while she trembles and falls on|her knees. Ready to have a huge orgasm.),200,0,0,OrgasmStart()
|
||||
170,0,0,,(Tighten the ropes.)|(1 minute),The ropes are as tight as they can be.,170,0,0,Tighten()
|
||||
170,0,0,Common_PlayerNotRestrained,(Ungag her.)|(1 minute),(She stretches her jaw and smiles)|Do you have a bigger gag coming up?,160,0,0,Ungag()
|
||||
170,0,0,Common_PlayerNotRestrained,(Tickle her.)|(1 minute),(She giggles but isn't impressed by your tickling.),170,0,0,
|
||||
170,0,0,PaintAvail,(Paint Sarah.)|(30 minutes),(You carefully paint her and show the result.)|(She looks at your work of art and nods happily.),170,0,0,Paint()
|
||||
180,0,0,CrotchRopeReady,(Play with the crotch|rope.) (1 minute),(You play while she trembles and falls on|her knees. Ready to have a huge orgasm.),250,0,0,OrgasmStart()
|
||||
180,0,0,,(Tighten the ropes.)|(1 minute),The ropes are as tight as they can be.,180,0,0,Tighten()
|
||||
180,0,0,Common_PlayerNotRestrained,(Ungag her.)|(1 minute),(She smiles at you.) This tape|was the best idea I've ever had.,160,0,0,Ungag()
|
||||
180,0,0,Common_PlayerNotRestrained,(Tickle her.)|(1 minute),(She giggles but isn't impressed by your tickling.),180,0,0,
|
||||
180,0,0,PaintAvail,(Paint Sarah.)|(30 minutes),(You carefully paint her and show the result.)|(She looks at your work of art and nods happily.),180,0,0,Paint()
|
||||
200,0,0,,Do you want to|climax subbie girl?,"(She nods slowly, trying to control herself.)",210,0,1,
|
||||
200,0,0,,So this slut|wants to cum?,"(She shakes her head from left to right, then|from up to down, trying to control herself.)",210,-1,0,
|
||||
200,0,0,,You seem ready|to reach heaven.,"(She nods happily, trying to control herself.)",210,1,0,
|
||||
|
|
|
|
@ -12,3 +12,4 @@ Tighten,"(You tighten the knots while she moans.)|Mmmmhh, can we see each other
|
|||
TightenFail,(You try to tighten Sarah's bondage|but fail as the other students giggle.)
|
||||
PlayerRelease,Yes Miss. Someone like you shouldn't be tied up.|(She releases you from your bondage.)
|
||||
PlayerGag,Help you? Yes! I know what could help.|(She searches to find tape and shuts your mouth.)
|
||||
NoTimeToPaint,(There's not enough time left in|class to produce a work of art.)
|
||||
|
|
|
|
@ -1,7 +1,7 @@
|
|||
// Chapter 5 - Lose Fight Load
|
||||
function C005_GymClass_LoseFight_Load() {
|
||||
if (C005_GymClass_Jennifer_EasyMode) LoadFight("Jennifer", "Easy", Icons.Fight.Rope, PlayerGetSkillLevel("Fighting"));
|
||||
else LoadFight("Jennifer", "Normal", Icons.Fight.Rope, PlayerGetSkillLevel("Fighting"));
|
||||
if (C005_GymClass_Jennifer_EasyMode) LoadFight("Jennifer", "Easy", Icons.Fight.Rope, PlayerGetSkillLevel("RopeMastery"));
|
||||
else LoadFight("Jennifer", "Normal", Icons.Fight.Rope, PlayerGetSkillLevel("RopeMastery"));
|
||||
}
|
||||
|
||||
// Chapter 5 - Lose Fight Run
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// Chapter 5 - Win Fight Load
|
||||
function C005_GymClass_WinFight_Load() {
|
||||
if (C005_GymClass_Jennifer_EasyMode) LoadFight("Jennifer", "Normal", Icons.Fight.Rope, PlayerGetSkillLevel("Fighting"));
|
||||
else LoadFight("Jennifer", "Hard", Icons.Fight.Rope, PlayerGetSkillLevel("Fighting"));
|
||||
if (C005_GymClass_Jennifer_EasyMode) LoadFight("Jennifer", "Normal", Icons.Fight.Rope, PlayerGetSkillLevel("RopeMastery"));
|
||||
else LoadFight("Jennifer", "Hard", Icons.Fight.Rope, PlayerGetSkillLevel("RopeMastery"));
|
||||
}
|
||||
|
||||
// Chapter 5 - Win Fight Run
|
||||
|
|
|
@ -19,8 +19,7 @@ function C006_Isolation_IsolationRoom_DropInventory() {
|
|||
// Chapter 6 - Isolation Room Load
|
||||
function C006_Isolation_IsolationRoom_Load() {
|
||||
LeaveIcon = "Wait";
|
||||
StruggleDone = false;
|
||||
StruggleProgress = 0;
|
||||
StruggleLoad();
|
||||
C006_Isolation_IsolationRoom_OrgasmReady = (PlayerHasLockedInventory("VibratingEgg"));
|
||||
LoadText();
|
||||
}
|
||||
|
|
|
@ -13,6 +13,7 @@ var C007_LunchBreak_Amanda_IntroText = "";
|
|||
var C007_LunchBreak_Amanda_LeaveIcon = "";
|
||||
var C007_LunchBreak_Amanda_IsBoundAndGagged = false;
|
||||
var C007_LunchBreak_Amanda_ConfirmEvil = false;
|
||||
var C007_LunchBreak_Amanda_HasSeduction = false;
|
||||
|
||||
// Calculates the screen parameters
|
||||
function C007_LunchBreak_Amanda_CalcParams() {
|
||||
|
@ -53,6 +54,7 @@ function C007_LunchBreak_Amanda_Load() {
|
|||
ActorLoad("Amanda", "ActorSelect");
|
||||
LoadInteractions();
|
||||
C007_LunchBreak_Amanda_CalcParams();
|
||||
C007_LunchBreak_Amanda_HasSeduction = (PlayerGetSkillLevel("Seduction") >= 1);
|
||||
|
||||
// If Amanda doesn't like the player and isn't subbie enough, she leaves and don't talk
|
||||
if ((ActorGetValue(ActorLove) <= -3) && (ActorGetValue(ActorSubmission) <= 2) && (C007_LunchBreak_Amanda_CurrentStage == 0)) {
|
||||
|
@ -261,7 +263,6 @@ function C007_LunchBreak_Amanda_Ungag() {
|
|||
// Chapter 7 - Amanda Test Make Love (Amanda will only make love if +8 or more)
|
||||
function C007_LunchBreak_Amanda_TestMakeLove() {
|
||||
if (ActorGetValue(ActorLove) >= 8) {
|
||||
if (PlayerGetSkillLevel("Seduction") >= 1) ActorChangeAttitude(1, 0);
|
||||
OverridenIntroText = GetText("LoveStart");
|
||||
C007_LunchBreak_Amanda_CurrentStage = 240;
|
||||
} else {
|
||||
|
|
|
@ -77,6 +77,7 @@ Stage,LoveReq,SubReq,VarReq,Interaction,Result,NextStage,LoveMod,SubMod,Function
|
|||
200,0,0,,We still have time|before the bell?,(She giggles.) Time for what?,210,0,0,
|
||||
200,0,0,,Thanks for showing|me this lovely cafe.,My pleasure! We had a good time.,210,1,-1,
|
||||
200,0,0,,I wanted you to know|that I had a great time.,I did too! We seem to fit well together.,210,1,0,
|
||||
200,0,0,HasSeduction,"Amy, you're the sweetest|thing in this college.",(She blushes red and giggles.)|You're also sweet COMMON_PLAYERNAME.,210,2,0,
|
||||
200,0,0,,Can I kiss you?|(1 minute),(She nods and puts her lips against yours.),220,1,0,
|
||||
200,0,0,,(Stay silent and kiss her.)|(1 minute),,220,0,1,
|
||||
200,0,0,,Better not be late.|(Back to college.),,0,0,0,EndBonus()
|
||||
|
|
|
|
@ -24,6 +24,7 @@ var C007_LunchBreak_Jennifer_PushUpQuality = 0;
|
|||
var C007_LunchBreak_Jennifer_PushUpCount = 0;
|
||||
var C007_LunchBreak_Jennifer_RacketQuality = 0;
|
||||
var C007_LunchBreak_Jennifer_HasRestrainsAvail = false;
|
||||
var C007_LunchBreak_Jennifer_HasSeduction = false;
|
||||
|
||||
// Calculates the screen parameters
|
||||
function C007_LunchBreak_Jennifer_CalcParams() {
|
||||
|
@ -74,6 +75,7 @@ function C007_LunchBreak_Jennifer_Load() {
|
|||
ActorLoad("Jennifer", "ActorSelect");
|
||||
LoadInteractions();
|
||||
C007_LunchBreak_Jennifer_CalcParams();
|
||||
C007_LunchBreak_Jennifer_HasSeduction = (PlayerGetSkillLevel("Seduction") >= 1);
|
||||
|
||||
// If Jennifer doesn't like the player, she will run away from the start
|
||||
if ((ActorGetValue(ActorLove) <= -3) && (ActorGetValue(ActorSubmission) <= 3)) {
|
||||
|
|
|
@ -18,6 +18,7 @@ Stage,LoveReq,SubReq,VarReq,Interaction,Result,NextStage,LoveMod,SubMod,Function
|
|||
20,0,0,,The loser will be the|winner slave for lunch.,Slave? You mean the loser pays for lunch?,30,0,1,
|
||||
20,0,0,,The loser submits to|the winner for lunch.,Submits? You mean the loser pays for lunch?,30,0,0,
|
||||
20,0,0,,On second thoughts.|I don't want to play.,"Alright then, see you later.|(She packs and leaves for tennis.)",90,0,0,EndLunch()
|
||||
30,0,0,HasSeduction,Lovely Jennifer. You|can't resist a challenge.,(She blushes and looks at the floor.)|Indeed. Are you ready to play now?,40,1,1,
|
||||
30,0,0,,"Yes, whoever loses|will pay and obey.",You have a strange way to phrase your|bet but I'm up for it! Should we go now?,40,0,0,
|
||||
30,0,0,,Don't make me repeat.|Are you game or not?,(She frowns at you and gets competitive.)|Alright then! Are you ready to play now?,40,-1,0,
|
||||
30,0,0,,On second thoughts.|I don't want to play.,"Alright then, see you later.|(She packs and leaves for tennis.)",90,0,0,EndLunch()
|
||||
|
|
|
|
@ -44,6 +44,12 @@ function C008_DramaClass_Julia_Load() {
|
|||
ActorLoad("Julia", "Theater");
|
||||
LoadInteractions();
|
||||
|
||||
// On a perfect play, the player gains a level in arts
|
||||
if ((C008_DramaClass_Julia_CurrentStage == 300) && C008_DramaClass_Theater_PerfectPlay) {
|
||||
C008_DramaClass_Theater_PerfectPlay = false;
|
||||
PlayerAddSkill("Arts");
|
||||
}
|
||||
|
||||
// Cannot leave before Julia gave her instructions
|
||||
if (C008_DramaClass_Julia_CurrentStage < 100) LeaveIcon = "";
|
||||
if (C008_DramaClass_Julia_CurrentStage == 330) C008_DramaClass_Julia_CurrentStage = 400;
|
||||
|
@ -195,8 +201,7 @@ function C008_DramaClass_Julia_Masturbate() {
|
|||
function C008_DramaClass_Julia_QuaintComment() {
|
||||
if (!C008_DramaClass_Julia_QuaintCommentDone) {
|
||||
C008_DramaClass_Julia_QuaintCommentDone = true;
|
||||
if (PlayerGetSkillLevel("Seduction") >= 1) ActorChangeAttitude(2, 0);
|
||||
else ActorChangeAttitude(1, 0);
|
||||
ActorChangeAttitude(1 + PlayerGetSkillLevel("Seduction"), 0);
|
||||
}
|
||||
C008_DramaClass_Julia_CalcParams();
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ var C008_DramaClass_Villain_SpankDone = false;
|
|||
var C008_DramaClass_Villain_OrgasmDone = false;
|
||||
var C008_DramaClass_Villain_MastubateCount = 0;
|
||||
var C008_DramaClass_Villain_RavishDone = false;
|
||||
var C008_DramaClass_Villain_CanDoSwordDance = false;
|
||||
|
||||
// Calculates the scene parameters
|
||||
function C008_DramaClass_Villain_CalcParams() {
|
||||
|
@ -32,6 +33,7 @@ function C008_DramaClass_Villain_CalcParams() {
|
|||
C008_DramaClass_Villain_CanConvinceJuliaToStrip = (C008_DramaClass_Villain_PlayerIsDamsel && !C008_DramaClass_Villain_IsGagged && (C008_DramaClass_Julia_CurrentStage == 400) && ((ActorSpecificGetValue("Amanda", ActorLove) >= 10) || (ActorSpecificGetValue("Amanda", ActorSubmission) >= 10)));
|
||||
C008_DramaClass_Villain_DamselCanInteract = (C008_DramaClass_Villain_PlayerIsDamsel && !Common_PlayerGagged);
|
||||
C008_DramaClass_Villain_DamselCanBeg = (C008_DramaClass_Villain_PlayerIsDamsel && Common_PlayerGagged);
|
||||
C008_DramaClass_Villain_CanDoSwordDance = (!C008_DramaClass_Villain_PlayerIsDamsel && PlayerGetSkillLevel("Arts"));
|
||||
OverridenIntroImage = "";
|
||||
}
|
||||
|
||||
|
@ -262,3 +264,12 @@ function C008_DramaClass_Villain_Ravish() {
|
|||
}
|
||||
C008_DramaClass_Villain_CalcParams();
|
||||
}
|
||||
|
||||
// Chapter 8 - Sword Dance, a special option to disarm the opponent using art
|
||||
function C008_DramaClass_Villain_SwordDance() {
|
||||
if (C008_DramaClass_Villain_PlayerIsHeroine) { C008_DramaClass_Villain_CurrentStage = 240; C008_DramaClass_Theater_GlobalStage = 240; }
|
||||
if (C008_DramaClass_Villain_PlayerIsVillain) { C008_DramaClass_Villain_CurrentStage = 270; C008_DramaClass_Theater_GlobalStage = 270; }
|
||||
ActorSpecificChangeAttitude("Julia", PlayerGetSkillLevel("Arts"), 0);
|
||||
ActorSpecificChangeAttitude("Amanda", 0, 1);
|
||||
ActorSpecificChangeAttitude("Sarah", 0, 1);
|
||||
}
|
|
@ -31,6 +31,7 @@ Stage,LoveReq,SubReq,VarReq,Interaction,Result,NextStage,LoveMod,SubMod,Function
|
|||
230,0,0,PlayerIsHeroine,(Do a sword fight.),You charge each other and start|a funny but intense sword fight.,235,0,0,NoLeave()
|
||||
230,0,0,PlayerIsHeroine,(Surrender without a fight.),You drop your sword and the black|knight steps forward with a grin.,270,0,0,Surrender()
|
||||
230,0,0,PlayerIsDamsel,(Watch the fight.),Both knights charge on each other and|engage in a pretty neat sword fight.,235,0,0,NoLeave()
|
||||
235,0,0,CanDoSwordDance,(Do a sword dance.)|(1 minute),You dance gracefully around your opponent and|easily disarm her while she's dazzled by you.,270,0,0,SwordDance()
|
||||
235,0,0,CanIntimidate,(Intimidate her.)|(1 minute),You give a menacing look to Amanda which|barely fights and lets you disarm her.,270,0,0,"GlobalStage(270, 0, 1)"
|
||||
235,0,0,CanDisarm,(Disarm her.)|(1 minute),Amanda puts a pretty nice fight but|you're able to win by disarming her.,270,0,0,"GlobalStage(270, 0, 0)"
|
||||
235,0,0,PlayerIsVillain,(Play defensive.)|(1 minute),You stick to defensive moves and Amanda|takes advantage of it to disarm you.,240,0,0,"GlobalStage(240, 0, 0)"
|
||||
|
|
|
|
@ -5,6 +5,7 @@ function C999_Common_Player_Load() {
|
|||
C999_Common_Player_ActiveTab = "Profile";
|
||||
LeaveIcon = "Leave";
|
||||
LoadText();
|
||||
PlayerSkillShowLevelUp = 0;
|
||||
}
|
||||
|
||||
// Returns the title for the player based on actor interactions
|
||||
|
|
|
@ -248,6 +248,9 @@ function DrawInventory(ctx) {
|
|||
else
|
||||
DrawImage(ctx, "Icons/" + GetPlayerIconImage() + "_Inactive.png", 0, 601);
|
||||
|
||||
// Draw an arrow over the player head if there's a skill level up
|
||||
if (PlayerSkillShowLevelUp > 0) DrawImage(ctx, "Icons/SkillLevelUp.png", 0, 601);
|
||||
|
||||
// Scroll in the full inventory to draw the icons and quantity, draw a padlock over the item if it's locked
|
||||
var Pos = 1;
|
||||
for (var I = 0; I < PlayerInventory.length; I++) {
|
||||
|
|
BIN
Icons/SkillLevelUp.png
Normal file
BIN
Icons/SkillLevelUp.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 2.7 KiB |
4
Skill.js
4
Skill.js
|
@ -1,10 +1,14 @@
|
|||
var PlayerSkill = [];
|
||||
var PlayerSkillName = 0;
|
||||
var PlayerSkillLevel = 1;
|
||||
var PlayerSkillShowLevelUp = 0;
|
||||
|
||||
// Add a new skill or raise the skill level if the skill is already known
|
||||
function PlayerAddSkill(SkillToAdd, LevelToAdd) {
|
||||
|
||||
// Shows the new skill warning for 15 seconds
|
||||
PlayerSkillShowLevelUp = Math.round(15 * 1000 / RunInterval);
|
||||
|
||||
// If the skill is already known, we raise the level
|
||||
for (var I = 0; I < PlayerSkill.length; I++)
|
||||
if (SkillToAdd == PlayerSkill[I][PlayerSkillName]) {
|
||||
|
|
10
Struggle.js
10
Struggle.js
|
@ -13,6 +13,14 @@ var StruggleDone = false;
|
|||
var StruggleImageFrame = 0;
|
||||
var StruggleImageFrameMax = 1;
|
||||
var StruggleImageFrameTime = 0;
|
||||
var StruggleSkillBonus = 0;
|
||||
|
||||
// For each Rope Mastery level, it's 50% easier to struggle out
|
||||
function StruggleLoad() {
|
||||
StruggleDone = false;
|
||||
StruggleProgress = 0;
|
||||
StruggleSkillBonus = PlayerGetSkillLevel("RopeMastery");
|
||||
}
|
||||
|
||||
// The next tick to lower the struggle time comes faster with harder levels
|
||||
function StruggleGetNextTick() {
|
||||
|
@ -53,7 +61,7 @@ function StruggleClick(SType, SDifficulty, SMessage, SDoneMessage, SX, SY, SRadi
|
|||
|
||||
// Raise the progress by 2 for each click, 100 is done
|
||||
if (StruggleProgress <= 0) StruggleProgress = 8;
|
||||
StruggleProgress = StruggleProgress + 2;
|
||||
StruggleProgress = StruggleProgress + 2 + StruggleSkillBonus;
|
||||
if (StruggleProgress >= 100) {
|
||||
StruggleProgress = 100;
|
||||
StruggleDone = true;
|
||||
|
|
1
Time.js
1
Time.js
|
@ -32,6 +32,7 @@ function ProcessTimer() {
|
|||
// Ticks the timer every for the screen refresh and events
|
||||
clearInterval(CurrentTimer);
|
||||
CurrentTimer = setInterval("MainRun()", RunInterval);
|
||||
if (PlayerSkillShowLevelUp > 0) PlayerSkillShowLevelUp--;
|
||||
|
||||
// If the timer must run
|
||||
if (RunTimer) {
|
||||
|
|
Loading…
Add table
Reference in a new issue