Browse Source

dishes, bathrooms

chopeks 4 years ago
parent
commit
1499a296cf
2 changed files with 79 additions and 10 deletions
  1. 4 1
      README.md
  2. 75 9
      src/main/kotlin/mod/qsrc/Locations/Villa/mod_chastity_villa.kts

+ 4 - 1
README.md

@@ -102,4 +102,7 @@ killVar(temp) // which will translate to killvar 'temp'
 ##### Types
 There are 2 types: 
 - QspType - which is kotlin Any on steroids (more operators, array access etc)
-- QspCodeTemplate - which is used with conjunction with dynamic() (also allows kotlin anonymous lambda)
+- QspCodeTemplate - which is used with conjunction with dynamic() (also allows kotlin anonymous lambda)
+
+##### Strings
+Strings are normal, with " as \\" escape, while ' is '. No doubles.

+ 75 - 9
src/main/kotlin/mod/qsrc/Locations/Villa/mod_chastity_villa.kts

@@ -126,12 +126,54 @@ if (`$args`[0] == ModLoc.villa.kitchen) {
   modExt.defineLocation(ModLoc.villa, ModLoc.villa.kitchen, GLifeLocationType.indoors)
   ext.clearMainWindow()
   gs(GLLoc.stat)
-  ext.image("mod/chastity/villa/kitchen.jpg")
+  if (mod_chastity_duties_done[6] == 0) {
+    ext.image("mod/chastity/villa/kitchen_dirty.jpg")
+    act("Clean the dishes") {
+      mod_chastity_duties_done[6] = 1
+      ext.clearMainWindow()
+      ext.video("") // TODO add video!
+      mod_chastity_temp = rand(20, 40)
+      ext.addTime(mod_chastity_temp)
+      gs(GLLoc.stat)
+      "You cleaned the dishes."
+      act("Put them on the shelf") {
+        gt(`$loc`, `$metka`)
+      }
+    }
+  } else {
+    ext.image("mod/chastity/villa/kitchen.jpg")
+  }
+
+  // saturday meal
+  if (week == 6 && hour < 12 && mod_chastity_duties_done[4] == 0) {
+    act("Cook meals (1:00)") {
+      mod_chastity_duties_done[4] = 1
+      ext.clearMainWindow()
+      ext.video("") // TODO add video!
+      ext.addTime(60)
+      gs(GLLoc.stat)
+      gt(`$loc`, `$metka`)
+      "You cook the usual rare steaks."
+    }
+  }
+  // sunday meal
+  if (week == 7 && hour < 12 && mod_chastity_duties_done[5] == 0) {
+    act("Cook meals (1:00)") {
+      mod_chastity_duties_done[4] = 1
+      ext.clearMainWindow()
+      ext.video("") // TODO add video!
+      ext.addTime(60)
+      gs(GLLoc.stat)
+      gt(`$loc`, `$metka`)
+      "You cook the usual golubtsy."
+    }
+  }
 
   gs(GLLoc.kit_din) // load dynamics
   food_loc = 0
-
-  act("Eat a full meal (0:30)") { gs(GLLoc.food.m_meal) }
+  if ((week == 6 && mod_chastity_duties_done[4] == 1) || (week == 7 && mod_chastity_duties_done[5] == 1)) {
+    act("Eat a full meal (0:30)") { gs(GLLoc.food.m_meal) }
+  }
   dynamic(`$sandwich`)
   dynamic(`$driwater`)
   dynamic(`$dritea`)
@@ -154,6 +196,20 @@ if (`$args`[0] == ModLoc.villa.bathroom) {
 
   gs(GLLoc.din_van)
 
+  if (mod_chastity_duties_done[2] == 0) {
+    nl()
+    "Bathroom looks dirty."
+    act("Clean bathroom") {
+      mod_chastity_duties_done[2] = 1
+      mod_chastity_temp = rand(20, 60)
+      ext.addTime(mod_chastity_temp)
+      gs(GLLoc.stat)
+      gs(`$loc`, `$metka`)
+      nl()
+      "You cleaned bathroom."
+    }
+  }
+
   act("Take a shower (0:15)") {
     menu_off = 1
     ext.clearMainWindow()
@@ -208,7 +264,6 @@ if (`$args`[0] == ModLoc.villa.office) {
   gs(GLLoc.stat)
   ext.image("mod/chastity/villa/office.jpg")
 
-
   if (mod_chastity_duties_done[1] == 0) {
     "There's a lot of dust on the desk. You should clean it up."
     act("Clean up the desk") {
@@ -218,9 +273,7 @@ if (`$args`[0] == ModLoc.villa.office) {
       ext.addTime(mod_chastity_temp)
       gs(GLLoc.stat)
       "You wipe the dust, put pencils back into the cup."
-      mod_chastity_temp = rand(1, 3)
-      mod_chastity_temp = 1
-      if (mod_chastity_temp == 1) {
+      if (rand(1, 2) == 1) {
         ext.image("mod/chastity/villa/office_album.jpg")
         "You open the drawer wanting to put notepad into it. You see an old looking book, that looks like a photo album."
         "You can <a href=\"exec: minut += 5 & gt 'mod_chastity_villa_story', 'album_first'\">take a look</a> if you want."
@@ -258,13 +311,26 @@ if (`$args`[0] == ModLoc.villa.bedroom) {
   act("Leave") { ext.addTime(1); gt(ModLoc.villa.second_floor) }
 }
 
-
 if (`$args`[0] == ModLoc.villa.bathroom2) {
   modExt.defineLocation(ModLoc.villa, ModLoc.villa.bathroom2, GLifeLocationType.bathroom)
   ext.clearMainWindow()
   gs(GLLoc.stat)
   ext.image("mod/chastity/villa/bathroom2.jpg")
 
+  if (mod_chastity_duties_done[3] == 0) {
+    nl()
+    "Bathroom looks dirty."
+    act("Clean bathroom") {
+      mod_chastity_duties_done[3] = 1
+      mod_chastity_temp = rand(20, 60)
+      ext.addTime(mod_chastity_temp)
+      gs(GLLoc.stat)
+      gs(`$loc`, `$metka`)
+      nl()
+      "You cleaned bathroom."
+    }
+  }
+
   act("Sir's bedroom") { ext.addTime(1); gt(ModLoc.villa.bedroom) }
   act("Leave") { ext.addTime(1); gt(ModLoc.villa.second_floor) }
 }
@@ -342,6 +408,6 @@ if (`$args`[0] == ModLoc.villa.basement) {
       }
     }
   } else {
-    act("Head up") { ext.addTime(1); gt(ModLoc.villa.hall) }
+    act("Head upstairs") { ext.addTime(1); gt(ModLoc.villa.hall) }
   }
 }