tatiana_lab.qsrc 50 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091
  1. # tatiana_lab
  2. !2020/10/14/Gwen
  3. if $ARGS[0] = 'start':
  4. cla & *clr
  5. $menu_loc = 'tatiana_lab'
  6. $menu_arg = 'start'
  7. menu_off = 0
  8. CLOSE ALL
  9. minut += 5
  10. gs 'stat'
  11. gs 'themes', 'indoors'
  12. '<center><b><font color="maroon">Tatianas'' Laboratory</font></b></center>'
  13. '<center><img <<$set_imgh>> src="images/locations/city/citycenter/lab/lab.jpg"></center>'
  14. if succubusflag = 1 and sucbypass = 0:
  15. if sucpcinfo < 2:
  16. xgt 'tatiana_lab', 'suctraining'
  17. elseif sucpcinfo >= 6 and sucskill < 3 and sctrainprep = 1:
  18. xgt 'tatiana_lab', 'suctraining'
  19. end
  20. elseif succubusflag = 1 and sucbypass = 1:
  21. sucbypass = 0
  22. end
  23. act 'Leave':
  24. cla
  25. minut += 5
  26. gt 'city_center'
  27. end
  28. !! if tatina_missionday < daystart:
  29. !! gt 'tatiana_lab', 'missions'
  30. !! end
  31. act 'Train with Gustav':
  32. cla
  33. gt 'tatiana_lab', 'Gustav'
  34. end
  35. act 'Talk with Tatiana':
  36. cla
  37. gt 'tatiana_lab', 'Tatiana'
  38. end
  39. if judosparday ! daystart:
  40. act 'Sparring (Gustav, mutant power 600)':
  41. cla
  42. judosparday = daystart
  43. gs 'boyStat', 'A175'
  44. gs 'fight','initFight'
  45. gs 'fight_npcdata', 'gustav'
  46. gt 'fight', 'start'
  47. end
  48. end
  49. if tatianasparday ! daystart:
  50. act 'Sparring (Tatiana, magician6)':
  51. cla
  52. tatianasparday = daystart
  53. gs 'boyStat', 'A176'
  54. gs 'fight','initFight'
  55. gs 'fight_npcdata', 'tatiana'
  56. gt 'fight', 'start'
  57. end
  58. end
  59. !!!Has to be adjusted to match TatianaMissionQW value for latest mission (see 'tatiana_missions')
  60. TatianaMissionTotal = 3
  61. if tobiQW > 0 and TatianaMissionDay + 30 < daystart and TatianaMissionQW < TatianaMissionTotal:
  62. 'You have a feeling Tatiana might want to talk to you about something...'
  63. act 'Ask Tatiana what she wants':gt 'tatiana_lab','missions'
  64. end
  65. end
  66. if $ARGS[0] = 'Gustav':
  67. cla
  68. clr
  69. *clr
  70. minut += 5
  71. gs 'stat'
  72. gs 'themes', 'indoors'
  73. '<center><b><font color="maroon">Gustav</font></b></center>'
  74. '<center><img <<$set_imgh>> src="images/characters/city/jugo/jugopre.jpg"></center>'
  75. 'Gustav is sitting on floor and staring off into space.'
  76. act 'Leave':gt 'tatiana_lab', 'start'
  77. if gustavday ! daystart:
  78. act 'Develop strength (1:00)':
  79. cla
  80. timemult = 4
  81. loopcount = 1
  82. :timeloop1
  83. gs 'exercise', 'tier2', 0, 'stren_exp'
  84. if loopcount < timemult: loopcount += 1 & jump 'timeloop1'
  85. loopcount = 0
  86. timemult = 0
  87. gustavday = daystart
  88. 'You do exercises under the guidance of Gustav.'
  89. act 'Leave':gt 'tatiana_lab', 'Gustav'
  90. end
  91. act 'Develop agility (1:00)':
  92. cla
  93. timemult = 5
  94. loopcount = 1
  95. :timeloop2
  96. gs 'exercise', 'tier2', 0, 'agil_exp'
  97. if loopcount < timemult: loopcount += 1 & jump 'timeloop2'
  98. loopcount = 0
  99. timemult = 0
  100. gustavday = daystart
  101. 'You do exercises under the guidance of Gustav.'
  102. act 'Leave':gt 'tatiana_lab', 'Gustav'
  103. end
  104. act 'Develop reactions (1:00)':
  105. cla
  106. timemult = 5
  107. loopcount = 1
  108. :timeloop3
  109. gs 'exercise', 'tier2', 0, 'react_exp'
  110. if loopcount < timemult: loopcount += 1 & jump 'timeloop3'
  111. loopcount = 0
  112. timemult = 0
  113. gustavday = daystart
  114. 'You do exercises under the guidance of Gustav.'
  115. act 'Leave':gt 'tatiana_lab', 'Gustav'
  116. end
  117. act 'Develop endurance (1:00)':
  118. cla
  119. timemult = 5
  120. loopcount = 1
  121. :timeloop4
  122. gs 'exercise', 'tier2', 0, 'vital_exp'
  123. if loopcount < timemult: loopcount += 1 & jump 'timeloop4'
  124. loopcount = 0
  125. timemult = 0
  126. gustavday = daystart
  127. 'You do exercises under the guidance of Gustav.'
  128. act 'Leave':gt 'tatiana_lab', 'Gustav'
  129. end
  130. end
  131. end
  132. if $ARGS[0] = 'BodyModActuate':
  133. ! Does the actual modification
  134. ! ARGS[1] = Mana cost
  135. ! ARGS[2] = Time for change
  136. ! $ARGS[3] = property to set
  137. ! ARGS[4] = value to set
  138. ! $ARGS[5] = Description of new val
  139. ! $ARGS[6] = Body part name
  140. ! $ARGS[7] = Body part for pain
  141. ! $ARGS[8] = extra code to run before
  142. bodyModMana = ARGS[1]
  143. bodyModTime = ARGS[2]
  144. $bodyModStat = $ARGS[3]
  145. bodyModVal = ARGS[4]
  146. $bodyModDesc = $ARGS[5]
  147. $bodyModType = $ARGS[6]
  148. $bodyModPain = $ARGS[7]
  149. $bodyModExtra= $ARGS[8]
  150. if pcs_mana >= bodyModMana:
  151. dynamic $bodyModExtra
  152. dynamic "<<$bodyModStat>> = <<bodyModVal>>"
  153. pcs_mana -= bodyModMana
  154. gs 'arousal', 'flash', 30
  155. minut+=bodyModTime-30
  156. pain[$bodyModPain] = 100
  157. gs 'stat'
  158. gt 'tatiana_lab', 'BodyModded', $bodyModType, $bodyModDesc
  159. else
  160. *pl 'Tatiana says, "You don''t have enough mana to pull this off. Rest and we can try again later."'
  161. end
  162. killvar 'bodyModMana'
  163. killvar 'bodyModTime'
  164. killvar '$bodyModStat'
  165. killvar 'bodyModVal'
  166. killvar '$bodyModDesc'
  167. killvar '$bodyModType'
  168. killvar '$bodyModPain'
  169. killvar '$bodyModExtra'
  170. end
  171. if $ARGS[0] = 'ListBuilder':
  172. ! Builds a list of Attributes to be able to change
  173. ! $ARGS[1] = Name of the attribute
  174. ! $ARGS[2] = Mana cost of the change
  175. ! $ARGS[3] = Time the change will take
  176. ! $ARGS[4] = Array name of change value display string
  177. ! $ARGS[5] = Array name of value to change attribute to, 'i' means, just use array position
  178. ! $ARGS[6] = variable name of attribute to change
  179. ! $ARGS[7] = pain location
  180. ! $ARGS[8] = extra code to run before
  181. $bodyModType = $ARGS[1]
  182. bodyModMana = ARGS[2]
  183. bodyModTime = ARGS[3]
  184. $bodyModDesc = $ARGS[4]
  185. $bodyModIndx = $ARGS[5]
  186. $bodyModStat = $ARGS[6]
  187. $bodyModPain = $ARGS[7]
  188. $bodyModExtra= $ARGS[8]
  189. $hairColors[0]='black'
  190. $hairColors[1]='brown'
  191. $hairColors[2]='red'
  192. $hairColors[3]='blonde'
  193. hairTypes[0]=5 & $hairTypes[0]='extremely short'
  194. hairTypes[1]=31 & $hairTypes[1]='pixie-cut'
  195. hairTypes[2]=81 & $hairTypes[2]='medium'
  196. hairTypes[3]=161 & $hairTypes[3]='shoulder-length'
  197. hairTypes[4]=261 & $hairTypes[4]='long'
  198. hairTypes[5]=401 & $hairTypes[5]='very long'
  199. hairTypes[6]=601 & $hairTypes[6]='extremely long'
  200. $lipSize[0]='thin'
  201. $lipSize[1]='normal'
  202. $lipSize[2]='plump'
  203. $lipSize[3]='pouty'
  204. $lipSize[4]='pillowy'
  205. $eyeColors[0]='brown'
  206. $eyeColors[1]='grey'
  207. $eyeColors[2]='green'
  208. $eyeColors[3]='blue'
  209. $eyeLashes[0]='short'
  210. $eyeLashes[1]='average'
  211. $eyeLashes[2]='long'
  212. $eyeLashes[3]='lavish'
  213. $eyeLashes[4]='show-stealing'
  214. $eyeLashes[5]='long, jewel-dusted'
  215. breastSize[0]=5 & $breastSize[0]='AA'
  216. breastSize[1]=10 & $breastSize[1]='A'
  217. breastSize[2]=15 & $breastSize[2]='B'
  218. breastSize[3]=20 & $breastSize[3]='C'
  219. breastSize[4]=25 & $breastSize[4]='D'
  220. breastSize[5]=30 & $breastSize[5]='E'
  221. breastSize[6]=35 & $breastSize[6]='F'
  222. breastSize[7]=40 & $breastSize[7]='G'
  223. breastSize[8]=45 & $breastSize[8]='H'
  224. breastSize[9]=50 & $breastSize[9]='I'
  225. breastSize[10]=55 & $breastSize[10]='J'
  226. breastSize[11]=60 & $breastSize[11]='K'
  227. $ListStr = "<B><<$bodyModType>></B>"
  228. i = 0
  229. :BodyModLoop
  230. if i < arrsize('<<$bodyModDesc>>'):
  231. if $bodyModIndx = 'i':
  232. bodymodValue = i
  233. else
  234. bodymodValue = dyneval("result = <<$bodyModIndx>>[<<i>>]")
  235. end
  236. $bodyModDescX = dyneval('$result = <<$bodyModDesc>>[<<i>>]')
  237. $ListStr = $ListStr + "<br><a href=""EXEC:gs 'tatiana_lab','BodyModActuate',<<bodyModMana>>,<<bodyModTime>>,'<<$bodyModStat>>',<<bodymodValue>>,'<<$bodyModDescX>>','<<$bodyModType>>','<<$bodyModPain>>','<<$bodyModExtra>>'""><<$bodyModDescX>></a>"
  238. i += 1
  239. jump 'BodyModLoop'
  240. end
  241. killvar 'i'
  242. killvar '$bodyModDescX'
  243. killvar 'bodymodValue'
  244. killvar '$bodyModType'
  245. killvar 'bodyModMana'
  246. killvar 'bodyModTime'
  247. killvar '$bodyModDesc'
  248. killvar '$bodyModIndx'
  249. killvar '$bodyModStat'
  250. killvar '$bodyModPain'
  251. killvar '$bodyModExtra'
  252. $result = $ListStr
  253. killvar '$ListStr'
  254. end
  255. if $ARGS[0] = 'BodyModded':
  256. ! Landing page for having Body Mod done.
  257. ! $ARGS[1] = Name of the attribute
  258. ! $ARGS[2] = new value of attribute
  259. $bodyModType = $ARGS[1]
  260. $bodyModVal = $ARGS[2]
  261. cls & cla
  262. act 'Thank you':gt 'tatiana_lab', 'Tatiana'
  263. "You feel a bit drained and tingly all over. You look in the mirror."
  264. "Your <<$bodyModType>> is now <<$bodyModVal>>."
  265. """Thanks Tatiana!"""
  266. end
  267. if $ARGS[0] = 'Tatiana':
  268. cls
  269. $loc = 'tatiana_lab'
  270. $loc_arg = 'Tatiana'
  271. minut += 5
  272. gs 'stat'
  273. gs 'themes', 'indoors'
  274. '<center><b><font color="maroon">Tatiana</font></b></center>'
  275. '<center><img <<$set_imgh>> src="images/system/intro/shared/karinpre.jpg"></center>'
  276. 'Tatiana is always studying something.'
  277. if succubusflag = 1:
  278. if tatisucsex > 0 and sucinfoday ! 0 and sucinfoday <= daystart:
  279. '"Hey <<$pcs_nickname>>!'
  280. '"I''ve gotten some more information about Succubae!"'
  281. if sucpcinfo = 4 and succublvl >= 2:
  282. '"I heard from one of my mage contacts, in Sydney, Australia of all places, and he passed on some more details."'
  283. sucpcinfo = 5
  284. sucinfoday = daystart + 10 + rand(0,7)
  285. act 'Ask her to tell you': gt 'succubus', 'tatianaask', 1
  286. exit
  287. elseif sucpcinfo = 5:
  288. '"I heard from an old friend of mine who is now living in Morocco and she also has a Succubus for a lover. She said that after they had been together for some time, they discovered that with her help, her Succubus lover learned something new."'
  289. sucpcinfo = 6
  290. sucinfoday = daystart + 17 + rand(0,7)
  291. act 'Ask her to tell you': gt 'succubus', 'tatianaask', 2
  292. exit
  293. elseif sucpcinfo = 6:
  294. '"I heard from one of my contacts. He''s living in Las Vegas in America, which, apparently, is the Succubus capital of North America, and he passed along two pieces of information."'
  295. sucpcinfo = 7
  296. !! The +9000000 is so I can easily reset it when the next Skill upadtes are ready.
  297. sucinfoday = daystart + 9000000
  298. act 'Ask her to tell you': gt 'succubus', 'tatianaask', 3
  299. exit
  300. end
  301. end
  302. if tatisucsex ! 0 and tatisucsexask ! daystart: act 'Ask if she want''s to have sex': tatianasucsexask = daystart & gt 'tatiana_lab', 'Tatianasucsexask'
  303. if sucpcinfo >= 4: act 'Ask her about Succubae': gt 'tatiana_lab', 'Tatianasuctalk'
  304. end
  305. act 'Leave':gt 'tatiana_lab', 'start'
  306. act 'Ask for help with your appearance':
  307. cla
  308. '"Tatiana, I''m having problems with my body image, I''m not happy and was hoping that you might be able to help me."'
  309. *nl
  310. '"It''s possible but I will have to draw on your magical energy, it will cost some of your mana to perform a spell."'
  311. '"Also, this will be painful. The magic will force your flesh into new shapes."'
  312. $HairColorTab = func('tatiana_lab', 'ListBuilder', 'Hair Color', 500, 60, '$hairColors','i', 'pcs_haircol','hair', 'nathcol = bodyModVal')
  313. $HairLengthTab = func('tatiana_lab', 'ListBuilder', 'Hair Length',200, 120,'$hairTypes', 'hairTypes', 'pcs_hairlng','hair', '')
  314. $EyeColorTab = func('tatiana_lab', 'ListBuilder', 'Eye Color', 300, 120,'$eyeColors', 'i', 'pcs_eyecol', 'eye', '')
  315. $EyeLashTab = func('tatiana_lab', 'ListBuilder', 'Eye Lashes', 100, 30, '$eyeLashes', 'i', 'pcs_lashes', 'eye', '')
  316. $LipTab = func('tatiana_lab', 'ListBuilder', 'Lip Size', 300, 120,'$lipSize', 'i', 'pcs_lip', 'lip', '')
  317. $BreastTab = func('tatiana_lab', 'ListBuilder', 'Breast Size',1000,240,'$breastSize','breastSize','nbsize', 'breasts','magicf2b=0')
  318. $SkinTab = "<a href=""EXEC:gs 'tatiana_lab','BodyModActuate',1000,240,'pcs_skin',100,'clear','Skin','chest',''"">Clear Skin</a>"
  319. $VirginTab = "<a href=""EXEC:gs 'tatiana_lab','BodyModActuate',1000,120,'pcs_vag',0,'renewed','Virginity','vaginal',''"">Renew Virginity</a>"
  320. $SiliconeTab = "<a href=""EXEC:gs 'tatiana_lab','BodyModActuate',1000,240,'fillimplant',0,'natural again','Boobs','breasts','brSurTemp = 0 & stringimplant = 0'"">Remove Silicone</a>"
  321. $SpellListStr = "<CENTER>
  322. <TABLE CELLPADDING = '5'>
  323. <TR>
  324. <TD><<$SkinTab>></TD>
  325. <TD><<$VirginTab>></TD>
  326. <TD><<$SiliconeTab>></TD>
  327. </TR>
  328. <TR>
  329. <TD VALIGN='top'><<$HairColorTab>></TD>
  330. <TD VALIGN='top'><<$EyeColorTab>></TD>
  331. <TD VALIGN='top'><<$BreastTab>></TD>
  332. </TR>
  333. <TR>
  334. <TD VALIGN='top'><<$HairLengthTab>></TD>
  335. <TD VALIGN='top'><<$EyeLashTab>></TD>
  336. <TD VALIGN='top'><<$LipTab>></TD>
  337. </TR>
  338. </TABLE>
  339. </CENTER>"
  340. *pl func('cleanHTML',$SpellListStr)
  341. killvar '$HairColorTab'
  342. killvar '$HairLengthTab'
  343. killvar '$EyeColorTab'
  344. killvar '$EyeLashTab'
  345. killvar '$LipTab'
  346. killvar '$BreastTab'
  347. killvar '$SkinTab'
  348. killvar '$VirginTab'
  349. killvar '$SiliconeTab'
  350. killvar '$SpellListStr'
  351. act 'No, no, I''ve changed my mind. Thank you':gt 'tatiana_lab', 'Tatiana'
  352. act 'Restore you body to it''s original shape':
  353. cla
  354. '"Tatiana, I''m having problems with my body image, I''m not happy and was hoping that you might be able to help me."'
  355. '"It''s possible but I will have to draw on your magical energy, it will cost 40 mana to perform a reset spell.'
  356. 'This will reduce excess fat, growth of body parts and reduce high levels of silicone, moving you closer to your original body shape.'
  357. 'Do you wish to try this spell?'
  358. act 'No, no, I''ve changed my mind. Thank you':gt 'tatiana_lab', 'Tatiana'
  359. if pcs_mana >= 40:
  360. act 'That sounds great, let''s do it!':
  361. *clr
  362. cla
  363. minut += 30
  364. dounspell = 1
  365. gs 'body_shape', 'hardreset'
  366. gs 'stat'
  367. '<center><img <<$set_imgh>> src="images/characters/city/tatiana/magiclook.jpg"></center>'
  368. 'Tatiana lowers her glasses and stares deeply into your eyes. It feels like time just stops being a thing and you are floating.'
  369. 'It seems very soon afterwards when you snap back to reality but the big clock on the lab wall tells you its been 30 minutes.'
  370. 'Your body has changed much as Tatiana said it would and she is already busy checking nothing went wrong.'
  371. act 'Continue': gt 'tatiana_lab', 'Tatiana'
  372. end
  373. end
  374. end
  375. end
  376. if BurgerQW['IvanQW'] = 2 and poverKAR = 0 and softKAR = 0:
  377. act 'Ask Tatiana for help with Ivan':
  378. cla
  379. gs 'stat'
  380. 'You explained the situation and asked her to Tatiana assistance. Tatiana said thoughtfully. "I do not think there is any physical evidence of the guilt of Ivan. Necessary is achieved recognition. I think it would be possible to capture and interrogate. Or drink his cunning truth serum and interrogate. Anyway it is necessary to remove it all on video."'
  381. act 'Military solution':
  382. cls
  383. poverKAR = 1
  384. gs 'stat'
  385. '<center><img <<$set_imgh>> src="images/system/intro/shared/karinpre.jpg"></center>'
  386. 'You have decided to achieve recognition Ivan force. Tatiana told you. You go to the apartment of Ivan. There vstretishsya with Gustav. It will help resolve the issue. Just see if he will go to the second level of the press, he was distraught. At the second level of the press he turns into a monster.'
  387. act 'Leave':gt 'tatiana_lab', 'Tatiana'
  388. end
  389. act 'Tricky decision':
  390. cls
  391. softKAR = 1
  392. gs 'stat'
  393. '<center><img <<$set_imgh>> src="images/system/intro/shared/karinpre.jpg"></center>'
  394. 'You have decided to achieve recognition Ivan cunning. Tatiana told you. You go to the apartment of Ivan. There we meet with you and obtyapaem owners.'
  395. act 'Leave':gt 'tatiana_lab', 'Tatiana'
  396. end
  397. end
  398. elseif poverKAR = 2:
  399. act 'Approach to Tatiana about attacks apartments Ivan':
  400. cla
  401. poverKAR = 3
  402. 'You came to Tatiana and she sighed. "Yes, failed. Gustav caught a bullet in his head and his strength went up to the next level, it has cured, made almost invulnerable, but finally deprived of his mind. Gustav not only gained recognition for Ivan, and not just kill him, he blew part of the entrance his attack. But there are pluses. Cops think it was a gas explosion. But now you have to either pay the debt or goes to jail. "'
  403. act 'Leave':gt 'tatiana_lab', 'Tatiana'
  404. end
  405. end
  406. if Tatianaday ! daystart:
  407. act 'Develop your intelligence (1:00)':
  408. cla
  409. intel_exp += rand(3, 6)
  410. minut += 60
  411. Tatianaday = daystart
  412. 'You study with Tatiana developing your intellect.'
  413. act 'Leave':gt 'tatiana_lab', 'Tatiana'
  414. end
  415. act 'Develop your inner spirit (1:00)':
  416. cla
  417. sprt_exp += rand(3, 6)
  418. minut += 60
  419. Tatianaday = daystart
  420. 'You meditate with Tatiana improving your spirituality.'
  421. act 'Leave':gt 'tatiana_lab', 'Tatiana'
  422. end
  423. end
  424. if func('spellList','numAvailableSpells','basicSpells') > 0 or func('spellList','numAvailableSpells','healSpells') > 0:
  425. act 'Are there other spells you can teach me? (1:00)':
  426. cla
  427. 'Placeholder scene where Tatiana uses device to pull mana in exchange for her help.'
  428. ! Takes time
  429. minut += 60
  430. ! takes mana
  431. pcs_mana -= 10000
  432. if pcs_mana < 0: pcs_mana = 0
  433. ! causes orgasm
  434. $orgasm_or = 'yes'
  435. gs 'arousal', 'masturbate', 15
  436. gs 'arousal', 'end'
  437. gs 'stat'
  438. ! Adds new spells
  439. gs 'spellList','addAvailableSpells','basicSpells'
  440. gs 'spellList','addAvailableSpells','healSpells'
  441. act 'Leave':gt 'tatiana_lab', 'Tatiana'
  442. end
  443. end
  444. ! Show Actions for Learning Spells
  445. gs 'spellList', 'teacherActions', '$basicSpells', 'tatiana_lab', 'Tatiana'
  446. gs 'spellList', 'teacherActions', '$healSpells', 'tatiana_lab', 'Tatiana'
  447. !gs 'spellList', 'teacherActions', '$beautySpells', 'tatiana_lab', 'Tatiana'
  448. if pcs_magik >= 5 and spellavtoklon = 0:
  449. act 'Learn technique preparation (1:00)':
  450. cla
  451. minut += 60
  452. spellavtoklon = 1
  453. 'You learned the technique preparation. This technique allows you to enter into battle with the already created three clones.'
  454. act 'Leave':gt 'tatiana_lab', 'Tatiana'
  455. end
  456. end
  457. if pcs_magik >= 6 and spellbefshild = 0:
  458. act 'Learn technique pre-shield (1:00)':
  459. cla
  460. minut += 60
  461. spellbefshild = 1
  462. 'You learned the technique of pre-shield. This technique allows you to enter into battle with a magical shield protecting you against physical impacts.'
  463. act 'Leave':gt 'tatiana_lab', 'Tatiana'
  464. end
  465. end
  466. !! Succubus specific skill training.
  467. if succubusflag = 1:
  468. if sucpcinfo >= 4 and sucskill < 1:
  469. act 'Learn to monitor your Succubus Energies (may take some time)':
  470. cla
  471. minut += 30
  472. sucskill = 1
  473. gs 'stat'
  474. 'You spend 30 minutes meditating, with Tatiana in a light link with you as she shows you how to tell what your Succubus energy levels are.'
  475. 'You open your eyes and look at Tatiana sitting across from you.'
  476. 'She is flushed, breathing hard, and her nipples are showing clearly through her blouse.'
  477. if 1 + (succublvl * 2) + tatisucsex < 20 and rand(0,100) < 90:
  478. 'After a moment, she gives herself a shake and pulls herself together, before saying, "There you go!"'
  479. 'She then stands up and goes back to her studying.'
  480. act 'Finish': gt 'tatiana_lab', 'Tatiana'
  481. else
  482. xgt 'tatiana_lab', 'suctrainsex'
  483. end
  484. end
  485. elseif sucpcinfo >= 5 and sucskill < 2:
  486. act 'Learn to increase your energy storage (may take some time)':
  487. cla
  488. minut += 5
  489. 'You settle into a meditative state and link with Tatiana.'
  490. if succhungry > -2:
  491. gs 'stat'
  492. 'After a few minutes, you feel Tatiana break the link and say, "<<$pcs_nickname>>, you need to build up <i>two</i> days of reserve before we do this training."'
  493. 'She then stands up and goes back to her studying.'
  494. act 'Finish': gt 'tatiana_lab', 'Tatiana'
  495. exit
  496. end
  497. minut += 55
  498. gs 'stat'
  499. sucskill = 2
  500. 'Tatiana shows you how to build a storage reservoir that draws the excess energy in before your body uses it.'
  501. 'Once you''re finished, Tatiana is again showing clear signs of arousal and she says, "You know, touching your power is a really, <i>really</i>, intense experience!"'
  502. 'She then closes her eyes and visibly tries to get ahold of herself.'
  503. if tatisucsex >= 20 or rand(1,100) < 95:
  504. 'After several moments, she pulls herself together, opens her eyes, smiles at you, and says, "There, I knew I could do it!"'
  505. 'She then stands up and goes back to her studying.'
  506. act 'Finish': gt 'tatiana_lab', 'Tatiana'
  507. else
  508. 'Then her eyes snap open and you feel arousal suddenly flooding the link!'
  509. xgt 'tatiana_lab', 'suctrainsex'
  510. end
  511. end
  512. elseif sucpcinfo >= 6 and sucskill < 3:
  513. if money >= 5000 and sctrainprep = 0:
  514. act 'Ask her about the preparations and training':
  515. cla
  516. gs 'stat'
  517. minut += 60
  518. 'You ask her what''s involved in the training and preparations.'
  519. 'She spends some time explaining the technical details of what you need to do during the "ritual", then says,'
  520. '"The preparations will take 7 days, the money is to modify one of my devices to pull in free sexual energy from the adult businesses around here and to make several potions we''ll need, one of which is going to temporarily make me into a sexual energy "battery" and the others are so we can do the ritual without hurting ourselves.'
  521. '"Once I start, you''ll have 2 days to tell me to abort, after that I will have started building up the charge. We would not be able stop ourselves and premature sex could kill us, so I''ll be putting up a barrier to keep you out until 7 days have pasted and I''ll set it not to let you through unless you have 3 days of reserves and 100 units of stored energy.'
  522. '"Once I''ve built up to a full charge, I''ll only be able to hold it for a day, after that I''ll have to release it. The "battery" potion itself as well as the materials for it will not keep, so aborting after I start or fail to show up on time and 2000 <b>₽</b> will have been wasted.'
  523. '"So, do you want me to start the preparations?"'
  524. act 'Yes':
  525. cla
  526. money -= 5000
  527. sctrainprep = 1
  528. tatisucsexday = daystart + 7
  529. '"Ok, I''ll get started! Be here next <<$week[week]>> with 3 days of reserves and 100 units of stored energy."'
  530. if tatisucsex > 0:
  531. 'She then pulls you in for a quick kiss before adding, "Now get out of here, I can''t have you distracting me!"'
  532. else
  533. 'She then surprises you with a peck on the cheek before adding, "Now get out of here, I can''t have you distracting me!"'
  534. end
  535. act 'Leave':
  536. minut += 5
  537. gt 'city_center'
  538. end
  539. end
  540. act 'Not Yet': gt 'tatiana_lab', 'Tatiana'
  541. end
  542. elseif money >= 2000 and sctrainprep = -1:
  543. act 'Ask her to redo the preparations':
  544. cla
  545. 'Are you sure? The same things from before apply; 2 days to abort, the barrier, 3 days of reserves and 100 units of stored energy, 8 to 10 hours once I''m fully charged... Another 2000 <b>₽</b> wasted. Are you <i>really</i> sure?'
  546. act 'Yes':
  547. cla
  548. money -= 2000
  549. sctrainprep = 1
  550. tatisucsexday = daystart + 7
  551. '"Ok, I''ll get started! Be here next <<$week[week]>> with 3 days of reserves and 100 units of stored energy."'
  552. '"Now get out of here, I can''t have you distracting me!"'
  553. act 'Leave':
  554. minut += 5
  555. gt 'city_center'
  556. end
  557. end
  558. act 'Not Yet': gt 'tatiana_lab', 'Tatiana'
  559. end
  560. end
  561. elseif sucpcinfo >= 7 and sucskill < 4 and maddildo = 1 and sucexcess >= 100:
  562. act 'Ask Tatiana about the accommodation training':
  563. cla
  564. 'Tatiana asks, "Are you ready to do the accommodation training?"'
  565. act 'Yes, I''m ready. (can take a lot of time)':
  566. cls
  567. cla
  568. minut += 120
  569. gs 'stat'
  570. '<center><img <<$set_imgh>> src="images/shared/sex/mast/dildo.jpg"></center>'
  571. 'She walks you through everything you need to do while leading you to the couch.'
  572. 'Once there, as you as stripping, so is she! At your look, she says, "What? I don''t want to tear my clothes if one of us slips."'
  573. 'You settle onto the couch then work the massive dildo into your snach. After working the dildo for a bit, with Tatiana in a light link guiding you, you switch to your ass. You work there for a while before switching back. You continue this way for nearly two hours, concentrating so hard you only have two orgasms, before you feel your body responding as it should. A quick test and you’re done.'
  574. sucskill = 4
  575. sucexcess -= 100
  576. act 'Continue':
  577. pcs_horny = 0
  578. 'As you''re finishing, you notice Tatiana has her eyes closed and is visibly trying to get ahold of herself.'
  579. if tatisucsexday < daystart or rand(1,100) > 95:
  580. 'Then her eyes snap open and you feel arousal suddenly flooding the link!'
  581. xgt 'tatiana_lab', 'suctrainsex'
  582. else
  583. cla
  584. 'After several moments, she pulls herself together, opens her eyes, smiles at you, and says, "There, I knew I could do it!"'
  585. 'She then stands up and goes back to her studying.'
  586. act 'Finish': gt 'tatiana_lab', 'Tatiana'
  587. end
  588. end
  589. end
  590. act 'Not Yet': gt 'tatiana_lab', 'Tatiana'
  591. end
  592. end
  593. end
  594. if AlexandriaQW <=2 and pfilmNO = 1:
  595. act 'Tell Tatiana that you can''t finish the Aphrodite job.':
  596. cla
  597. minut +=5
  598. AlexandriaQW = 3
  599. gs 'stat'
  600. '"Tatiana, I have a problem. It seems that I''ve been blacklisted and can''t enter the Aphrodite building."'
  601. 'She tilts her head and seems to think the problem over, but it looks like she isn''t too worried by this revelation.'
  602. '"Hmm, that complicates the job somewhat, <<$pcs_nickname>>. It seems that the curse is only active during operating hours, so sneaking back in during the night isn''t an option."'
  603. '"So... I need to sneak back in there during daylight hours?"'
  604. 'Tatiana just snorts. "Don''t worry, <<$pcs_nickname>>, I have Gustav for those sorts of jobs. No, I was thinking of an <i>alternative.</i>" She gives you a look that makes you shiver, then continues."I know a way to help you infiltrate the place so you can look for the item in question. When the moment feels right, go to Aphrodite building and give me a call, but remember, only when it''s open."'
  605. 'Saying this, Tatiana turns towards her studies, leaving you to your own devices.'
  606. act 'Continue': gt 'tatiana_lab', 'Tatiana'
  607. end
  608. end
  609. if AlexandriaQW =4 or AlexandriaQW =5:
  610. act 'Tell Tatiana about the Aphrodite job.':
  611. *clr & cla
  612. '<center><img <<$set_imgh>> src="images/characters/city/alexandria/photo.jpg"></center>'
  613. 'It is time to tell Tatiana about your experience in Aphrodite. You head over to her and begin to explain everything, beginning with how you snooped around the agency and continuing with how you met her double. When you reach the part where you met Aleksei, Tatiana quickly walks towards a cabinet and pulls out an old photo, showing it to you. The image, taken in black and white, shows an armed Aleksei.'
  614. '"<<$pcs_nickname>>, are you sure that you met this woman? Blonde? Bossy? Tall?"'
  615. '"Yes, I am pretty sure. Is that bad?"'
  616. 'Tatiana pinches the bridge of her nose and sighs. "Yeah, <<$pcs_nickname>>, it''s pretty bad. Aleksei... Well, Alexandria, is an ex-councilor and probably one of the most powerful electric wizards in the world. Remember how The Amulet of Power isn''t supposed to end up in the hands of a woman? Well, she was looking for a form to obtain it, the back alleys word is that the quest made her magic <i>quirky</i>, and that beautiful blonde hair is the consequence of a simple scare."'
  617. '"So... Pretty bad?"'
  618. '"You have no idea <<$pcs_nickname>>." Tatiana sighs. "Look, we are talking here of a <i>centuries</i> old mindset, the one that yearns for the times were cannibalizing no-magical children was fashionable to recharge your energies. Do you a favor, just lie down, and let Reinhold take care of this."'
  619. minut +=5
  620. gs 'stat'
  621. act '"Okay, Tatiana, and what do I get out of this job?"':
  622. *clr & cla
  623. '<center><table><tr><td><img <<$set_imgh>> src="images/system/intro/shared/karinpre.jpg"></td><td><img <<$set_imgh>> src="images/characters/city/jugo/jugopre.jpg"></tr></td></table></center>'
  624. if AlexandriaQW =4:
  625. money += 5000
  626. if pfilmNO = 1:
  627. 'Tatiana gives you a half-smile, and you understand that she isn''t going to pay you for the Aphrodite job.'
  628. 'However, at that moment, to everyone''s surprise, Gustav sneaks up to your side and grabs your hand, placing a roll of bills on it. "Take this, <<$pcs_nickname>>. You succeeded in beating Tatiana''s double, and if not for Alex, the film would be here."'
  629. 'Gustav just stands there staring at a flabbergasted Tatiana who, after a beat, simply shrugs. "Okay, Gustav, don''t suggest that I am scrimpy or anything... Jeez..."'
  630. else
  631. 'Tatiana gives you a half-smile, and you understand that she isn''t going to pay you for the Aphrodite job.'
  632. 'However, at that moment, to everyone''s surprise, Gustav sneaks up to your side and grabs your hand, placing a roll of bills on it. "Take this, <<$pcs_nickname>>. You succeeded in beating Tatiana''s double, and if not for Alex, the film would be here."'
  633. 'Gustav just stands there staring at a flabbergasted Tatiana who, after a beat, simply shrugs. "Okay, Gustav, don''t suggest that I am scrimpy or anything... Jeez. I was going to speak to some of the people in the agency on her behalf, but now... . Okay, fine. <<$pcs_nickname>>, I will do it anyway."'
  634. gs 'fame', 'city', 'modelling', 10
  635. end if
  636. else
  637. if pfilmNO = 1:
  638. 'Tatiana gives you a half-smile, and you understand that she isn''t going to pay you for the Aphrodite job.'
  639. '"<<$pcs_nickname>>, you''ve failed to bring me the film. Instead, it has ended up in the hands of a powerful magician, who may be planning to use it against us."'
  640. 'You open your mouth to protest that it isn''t your fault, but one look at Tatiana''s face tells you that she''s already made up her mind... Fuck!'
  641. else
  642. gs 'fame', 'city', 'modelling', 10
  643. 'Tatiana gives you a half-smile, and you understand that she isn''t going to pay you for the Aphrodite job.'
  644. '"<<$pcs_nickname>>, you''ve failed to bring me the film. Instead, it has ended up in the hands of a powerful magician, who may be planning to use it against us."'
  645. 'You open your mouth to protest that it isn''t your fault, but before you can, Tatiana raises her hands consolingly.'
  646. '"Don''t worry, <<$pcs_nickname>>, you''re not going to leave empty-handed. I''m going to speak to some of the people in the agency on your behalf. It''ll be good for your modelling career."'
  647. end if
  648. end if
  649. AlexandriaQW = 6
  650. minut +=5
  651. gs 'stat'
  652. *nl
  653. 'Tatiana returns to her job, and before you can ask any more questions, Gustav grabs your arm to take you away.'
  654. 'As you walk, he presses a post-it into your hand. "Take this, <<$pcs_nickname>>. Now you can meet Alex."'
  655. '"What? How? Why?" You ask, more than a little confused.'
  656. 'After a moment of silence, the mutant shrugs. "I''m good at finding people. I knew that a powerful wizard had made his home in Saint Petersburg, and after overhearing what you said, I put two-and-two together. The rest is complicated. I think that Alex just wanted to talk. Messing with The Council isn''t on anyone''s agenda, and now that Reinhold is involved, you''re less likely to be in danger."'
  657. 'You look at the post-it. Scrawled on it are directions to a place in the suburbs. To reach it, you must take the metro. There is a station nearby, but are you going to go and meet Alex?'
  658. act 'Continue':gt 'tatiana_lab', 'Tatiana'
  659. end
  660. end
  661. end if
  662. end if
  663. if $ARGS[0] = 'Tatianasuctalk':
  664. cla
  665. clr
  666. *clr
  667. gs 'stat'
  668. gs 'themes', 'indoors'
  669. '<center><b><font color="maroon">Tatiana</font></b></center>'
  670. '<center><img <<$set_imgh>> src="images/system/intro/shared/karinpre.jpg"></center>'
  671. if sucpcinfo < 2:
  672. minut += 15
  673. 'As you both settle onto the couch, Tatiana turns to you and says, "Ok, tell me what happened."'
  674. 'You spend the next 15 minutes telling her about the Fairy, the odd dream, the energy you let loose the other night,'
  675. if succubusQW = 4:
  676. 'and the felling you get when you''ve had sex.'
  677. elseif succubusQW > 4:
  678. 'the felling you get when you''ve had sex, and the reaction you had to almost being raped.'
  679. end
  680. ''
  681. 'She thinks about it for a moment and then says, "Well, I have a couple of ideas, but no sense guessing when I can just magically examine you."'
  682. 'She hops up and says, "Get undressed and lie down on the couch."'
  683. sucpcinfo = 2
  684. act 'Undress and lie down': gt 'succubus', 'tatianaask'
  685. exit
  686. end
  687. if tatisucsex = 0 and tatisucsexask ! daystart: act 'Ask Tatiana if she wants to try Succubus Sex': tatisucsexask = daystart & gt 'tatiana_lab', 'Tatianasucsexask'
  688. act 'Ask her to repeat what she knows about Succubae': gt 'succubus', 'tatianaask'
  689. act 'Ask her if she has learned anything new about Succubae':
  690. cla
  691. !! Nothing after info level 6 here, because Tatiana will tell the PC automatically
  692. if sucinfoday ! 0 and sucinfoday <= daystart:
  693. if sucpcinfo = 4 and succublvl >= 2:
  694. '"Actually, I have gotten some more information about Succubae."'
  695. '"I heard from one of my mage contacts, in Sydney, Australia of all places, and he passed on some more details."'
  696. sucpcinfo = 5
  697. sucinfoday = daystart + 10 + rand(0,7)
  698. act 'Ask her to tell you': gt 'succubus', 'tatianaask', 1
  699. elseif sucpcinfo = 5:
  700. '"Actually, I have gotten some more information about Succubae."'
  701. '"I heard from an old friend of mine who is now living in Morocco and she actually has a Succubus for a lover. She said that after they had been together for some time, they discovered that with her help, her Succubus lover learned something new."'
  702. sucpcinfo = 6
  703. sucinfoday = daystart + 10 + rand(0,7)
  704. act 'Ask her to tell you': gt 'succubus', 'tatianaask', 2
  705. else
  706. 'No, I havn''t.'
  707. act 'Continue': gt 'tatiana_lab', 'Tatianasuctalk'
  708. end
  709. else
  710. 'No, I havn''t.'
  711. act 'Continue': gt 'tatiana_lab', 'Tatianasuctalk'
  712. end
  713. end
  714. act 'Change topics': gt 'tatiana_lab', 'Tatiana'
  715. end
  716. if $ARGS[0] = 'Tatianasucsexask':
  717. cla
  718. clr
  719. *clr
  720. gs 'stat'
  721. gs 'themes', 'indoors'
  722. '<center><b><font color="maroon">Tatiana</font></b></center>'
  723. '<center><img <<$set_imgh>> src="images/system/intro/shared/karinpre.jpg"></center>'
  724. if tatisucsex = 0:
  725. if TatianaSex = 1:
  726. 'You give Tatiana what you hope is a "come hither" smile and ask,'
  727. '"So, you want to give Succubus sex a try?"'
  728. else
  729. 'You give Tatiana a shy smile and ask,'
  730. '"Do you want to try Succubus sex?"'
  731. end
  732. else
  733. 'You give Tatiana a bright smile and ask,'
  734. 'Hey Tatiana, you up for some Succubus Sex?'
  735. end
  736. act 'She answers:':
  737. cla
  738. if tatisucsex = 0:
  739. 'She gives you a wide eyed look before saying,'
  740. if succublvl + TatianaSex < rand(0,6):
  741. '"I''m sorry, <<$pcs_firstname>>, I just don''t have the time now."'
  742. act 'Move on to something else': gt 'tatiana_lab', 'Tatiana'
  743. else
  744. '"I would love to!", with a wide smile.'
  745. 'She leads you over to the couch and you both strip.'
  746. act 'Proceed': gt 'succubus', 'tatianasex'
  747. end
  748. else
  749. if tatisucsexday <= daystart:
  750. if 1 + (succublvl * 2) + tatisucsex < rand(1,20):
  751. '"I''m sorry, <<$pcs_nickname>>, I just don''t have the time now."'
  752. act 'Move on to something else': gt 'tatiana_lab', 'Tatiana'
  753. else
  754. 'She gives you a "come hither" smile and says, "I would love to, <<$pcs_nickname>>!"'
  755. 'You both head toward the couch, stripping as you go.'
  756. 'Once there, you both sit down facing each other and she looks at you in anticipation.'
  757. act 'Proceed': gt 'succubus', 'tatianasex'
  758. end
  759. else
  760. if tatisucsexday - daystart > 1:
  761. $scsextmp = 'days'
  762. else
  763. $scsextmp = 'day'
  764. end
  765. 'She looks at you with a sad smile and says,'
  766. '"I''m sorry, <<$pcs_nickname>>, I need at least <<tatisucsexday - daystart>> more <<$scsextmp>>."'
  767. killvar '$scsextmp'
  768. act 'Move on to something else': gt 'tatiana_lab', 'Tatiana'
  769. end
  770. end
  771. end
  772. end
  773. if $ARGS[0] = 'Tatianasexreject':
  774. cla
  775. clr
  776. *clr
  777. gs 'stat'
  778. '<center><b><font color="maroon">Tatiana</font></b></center>'
  779. '<center><img <<$set_imgh>> src="images/system/intro/shared/karinpre.jpg"></center>'
  780. if scpopt = 2:
  781. 'I''m sorry, Tatiana, I just don''t have the time right now.'
  782. scpopt = 0
  783. killvar '$sclocrt' & killvar '$scargrt'
  784. end
  785. act 'Finish': gt 'tatiana_lab', 'Tatiana'
  786. end
  787. if $ARGS[0] = 'suctrainsex':
  788. 'She suddenly lunges at you and starts kissing you! You''re so surprised it takes you a bit to respond and, before you can do anything, she is nibbling your ear and whispering, "Let it go..."'
  789. gs 'arousal', 'kiss', 5, 'lesbian', 'sub'
  790. gs 'stat'
  791. if pcs_horny >= 100:
  792. 'You''re so shocked at this; you suddenly feel a powerful orgasm rush through you, causing you to cry out even as it rushes down the link to Tatiana, giving her a powerful orgasm as well!'
  793. 'Then, you feel your control slip...'
  794. $orgasm_or = 'yes'
  795. gs 'stat'
  796. act 'Continue': gt 'succubus', 'tatianasex'
  797. else
  798. scfwon = 2
  799. scpopt = 1
  800. $sclocrt = 'tatiana_lab'
  801. $scargrt = 'Tatianasexreject'
  802. 'You only have moments to decide, do you give in and let <<$sucself1>> go or do you reign it in?'
  803. act 'Continue': gt 'succubus', 'tatianasex'
  804. end
  805. end
  806. if $ARGS[0] = 'suctraining':
  807. if sucpcinfo < 2:
  808. cla
  809. clr
  810. *clr
  811. '<center><b><font color="maroon">Tatiana</font></b></center>'
  812. '<center><img <<$set_imgh>> src="images/system/intro/shared/karinpre.jpg"></center>'
  813. 'The moment you walked into her lab, Tatiana''s head jerked up and she hurried over to you.'
  814. 'She stares at you for several seconds, then demands, "What the hell happened to you!?!?"'
  815. 'You start to answer her when she holds up her hand and says, "Wait, come sit on the couch and tell me."'
  816. 'She turns away from you and walks toward the couch.'
  817. act 'Follow her': gt 'tatiana_lab', 'Tatianasuctalk'
  818. exit
  819. elseif sucpcinfo >= 6 and sucskill < 3 and sctrainprep = 1:
  820. if tatisucsexday > daystart and tatisucsexday - 5 >= daystart:
  821. cla
  822. clr
  823. *clr
  824. '<center><b><font color="maroon">Tatiana</font></b></center>'
  825. '<center><img <<$set_imgh>> src="images/system/intro/shared/karinpre.jpg"></center>'
  826. 'You attempt to enter Tatiana''s lab but an invisible barrier stops you, but Tatiana apparently heard you as she rushes over and says, "What''s wrong? Do we need to cancel?"'
  827. act 'Yes, I need to cancel':
  828. cla
  829. '"Are you sure?"'
  830. act 'Yes, I''m sure':
  831. cla
  832. if tatisucsexday = daystart + 7:
  833. sctrainprep = 0
  834. money += 5000
  835. '"Ok, good thing I hadn''t bought anything yet." and she hands you back the 5000 <b>₽</b> before going back to her studying.'
  836. else
  837. minut += 3
  838. sctrainprep = -1
  839. '"Ok, I''ll dump the "battery" potion."'
  840. 'With that, she walks over to her workbench and dumps the contents of several beakers into a barrel that flairs with magic as she does so.'
  841. end
  842. act 'Continue': gt 'tatiana_lab', 'start'
  843. end
  844. act 'No, never mind continue your preparations':
  845. cla
  846. 'She gives a small shake of her head and says, "Then get out of here, I can''t have you distracting me!"'
  847. act 'Leave': gt 'city_center'
  848. end
  849. end
  850. act 'No...':
  851. cla
  852. 'You say, "No, I just wanted to see you."'
  853. 'She answers, "That''s sweet, but I can''t have you distracting me, come back all charged up in <<tatisucsexday - daystart>> days!"'
  854. act 'Leave':
  855. minut += 3
  856. gt 'city_center'
  857. end
  858. end
  859. exit
  860. elseif tatisucsexday > daystart and tatisucsexday - 5 < daystart:
  861. if tatisucsexday - daystart > 1:
  862. $scsextmp = 'days'
  863. else
  864. $scsextmp = 'day'
  865. end
  866. 'You attempt to enter Tatiana''s lab but an invisible barrier stops you, but Tatiana apparently heard you as she shouts from across the lab, "I''ve already taken the first potion so I can''t come anywhere near you, come back all charged up in <<tatisucsexday - daystart>> <<$scsextmp>>!"'
  867. killvar '$scsextmp'
  868. act 'Leave':
  869. minut += 3
  870. gt 'city_center'
  871. end
  872. exit
  873. elseif tatisucsexday = daystart or tatisucsexday = daystart - 1:
  874. cla
  875. clr
  876. *clr
  877. gs 'stat'
  878. '<center><b><font color="maroon">Tatiana</font></b></center>'
  879. '<center><img <<$set_imgh>> src="images/system/intro/shared/karinpre.jpg"></center>'
  880. 'The instant you walk into the lab, Tatiana''s head snaps up and she stares hard at you as you approach the barrier.'
  881. if sucexcess >= 100 and succhungry < -2:
  882. minut += 10
  883. 'As you step through the barrier, Tatiana seems to teleport to you and start kissing you.'
  884. 'She then starts pulling you toward her workbench while saying between kisses, "Thank (kiss) goodness (kiss) you''re (kiss) here (kiss) and ready (kiss)! You wouldn''t (kiss) believe (kiss) how (kiss) <i><b>horny</b></i> (kiss) carrying (kiss) all this (kiss) sexual (kiss) energy (kiss) has made me!"'
  885. !! Maybe add arousal call here
  886. 'She suddenly turns away from you and you realize that you have reached her workbench. She grabs two smallish vails off the top, pops the tops off both, hands you one saying, "Drink this," before downing the other.'
  887. 'It tastes like strawberry syrup.'
  888. 'This time you''re ready when Tatiana lunges at you and you resume kissing as you lead her toward the couch while she is striping the clothes off both of you and you feel a large amount of your stored energy being released into your body.'
  889. 'Once there, you both sit down facing each other, she looks at you with burning lust, and says, "Do it!"'
  890. act 'Proceed': gt 'succubus', 'tatianasex'
  891. exit
  892. elseif sucexcess < 100 and succhungry > -2 and tatisucsexday = daystart:
  893. 'She then says, "Damn! You don''t have enough reserve <i>or</i> stored energy! Run over to the Park and find some robbers or something, then get back here tomorrow!"'
  894. elseif succhungry > -2 and tatisucsexday = daystart:
  895. 'She then says, Damn! You don''t have enough reserve energy! Run over to the Park and find some robbers or something, then get back here tomorrow!'
  896. elseif succhungry > -2 and tatisucsexday = daystart - 1:
  897. 'She then says, "Damn! You don''t have enough reserve energy and there isn''t enough time for you to build it up." She then sighs and says, "Go ahead and take off, I need to bleed this energy off safely."'
  898. sctrainprep = -1
  899. else
  900. 'She then says, "Damn! You don''t have enough stored energy! Run over to the Park and find some robbers or something, then get back here!"'
  901. end
  902. act 'Leave': minut += 5 & gt 'city_center'
  903. exit
  904. else
  905. 'The barrier is down when you get to the lab and Tatiana calls from across the room, "You''re too late, I had to release the energy and we''ll need to start over."'
  906. sctrainprep = -1
  907. act 'Continue': gt 'tatiana_lab', 'start'
  908. exit
  909. end
  910. end
  911. !! This is oops handling
  912. sucbypass = 1
  913. minut -= 5
  914. gt 'tatiana_lab', 'start'
  915. end
  916. if $ARGS[0] = 'missions':
  917. cls
  918. temp = rand (1,3)
  919. gs 'stat'
  920. '<center><b><font color="maroon">Tatiana</font></b></center>'
  921. '<center><img <<$set_imgh>> src="images/system/intro/shared/karinpre.jpg"></center>'
  922. if TatianaMissionQW = 0:
  923. TatianaMissionQW = 1
  924. TatianaMissionDay = daystart
  925. minut += 15
  926. *clr & cla
  927. 'Tatiana looks up from the pile of files she always seems to be sifting when she notices you. "<<$pcs_firstname>>, finally! I''ve been waiting for you. We need to talk."'
  928. '"What about?"'
  929. '"Well, you''ve had some time to acclimate yourself to your new situation and to process everything Reinhold and I told you, so," she smiles, "it''s time we started your actual training."'
  930. 'You feel a rush of excitement going through you, and images of shooting fireballs from your hands and parting the sea come before your inner eye. "Great!" You exclaim. "I''m so ready for that."'
  931. 'Tatiana probably guessed what you were thinking, because she chuckles and placates: "That doesn''t mean we''re gonna teach you super-powerful spells. At least not yet." She gives the words a moment to take effect; your enthusiasm for her plans, figuratively throbbing and erect a second ago, shrivels and goes limp by the time she continues. "This part of your training is the most important: You will actually put your skills, senses and knowledge into practice."'
  932. 'The last bit rouses your interest once more. "Into practice? You mean like doing missions for the council?"'
  933. '"Well, the council''s kinda responsible for the big leagues, which is way more than you could handle yet. But long-term, yes." Her tone takes on a mocking quality. "Once Reinhold thinks you''re ready, I''m sure he''ll swoop in, take credit for all the progress you have made thanks to me and swamp you with dangerous adventures. That''d be just like the old bastard." Tatiana sees the uncertainty with which you look at her, grins and shakes her head, confirming that it was all in good humor.'
  934. act 'What kind of missions?':
  935. *clr & cla
  936. '"So," you struggle to imagine what to expect, "what would these missions be like?"'
  937. '"Nothing dangerous," Tatiana reassures you, "at least not while you are still learning the basics." She walks over to a pile of folders and holds one up. "It''d be more along the lines of finding out why somebody''s dog has two tails or," she holds up another folder, "investigating strange sounds people hear coming from their cellar."'
  938. 'You blankly stare at her for a few seconds, expecting Tatiana to chuckle and reveal her explanation as a joke once more, but she doesn''t. "That... sounds like-"'
  939. '"Bullshit?" She offers helpfully.'
  940. '"Conspiracy crap, ghost stories and all that," is what you choose to say instead.'
  941. 'Tatiana nods understandingly. "Yeah, it does. But remember, normal people don''t see magic for what it is."'
  942. '"Right," you remember, "little green men and poltergeists."'
  943. 'Tatiana smiles as you quote her and nods. "And some of those things really turn out to have magical causes: The dog with two tails had been experimented on by one of us, so it was practically bursting with magic. As for the voices..." her smile turns lewd, "those were just some tenants having some extramarital fun away from prying eyes, regularly and loudly."'
  944. act 'Why are we doing this?':
  945. *clr & cla
  946. 'You feel your face heating up slightly at the thought. Something about this is bothering you, though: "But... why would we even look into this? I mean, it sounds interesting enough, but is there a reason behind it?"'
  947. 'Tatiana shrugs. "Well, you <i>could</i> go and get some ancient tomes, lock yourself into an ivory tower and spend half a century or something reading about magic, like most of the old farts on the council do. <b>OR</b>," she spreads her arms to point towards her many files and books on one hand and the exit on the other, "you could just cover the basics and then go out and experience magic first-hand, like I do."'
  948. 'You stare at the heaps and piles of paper incredulously - they are a multiple of everything you''ve read in your entire life! "Those are the basics?!"'
  949. '"Yep," she laughs, "if you wanna really understand how magic works and why it does this at one time and that at another, you gotta get some reading done. Trust me, if there was any way around it, I would have found it. But magic makes the reading easier and quicker, and it''s sooo worth it. The things you can do once you grasp what energies the universe holds are incredible. And I''ve only just scratched the surface."'
  950. '"What do you mean by ''energies of the universe''? I thought you said that magic only exists in living things, like plants and animals."'
  951. '"Did I?" She looks thoughtful but shrugs again. "Well, it''s a little complicated, but to put it simply: When scientists speak of ''dark matter'' and ''dark energy'', then, in reality, they are trying to explain the magic in this plane of existence and all the others, like demons and the magic that exists in their ''dimension'' or whatever you''d wanna call it. But," she waves her hand as if to shoo away a pesky fly, "you don''t have to concern yourself with that right now. When the time comes, Reinhold can explain it to you in more detail - hell, considering that he''s your mentor, I''ve done an awful lot of explaining already... Now, let''s go!"'
  952. 'With that, Tatiana turns towards the exit once more and beckons you to follow.'
  953. '"Go where?" You ask.'
  954. '"To the magic!" She answers cryptically.'
  955. act 'Go to the magic (?)':gt 'tatiana_missions','intro'
  956. end
  957. end
  958. elseif temp = 1:
  959. !Text could use improvement, maybe mission specific text?
  960. *clr & cla
  961. '"Hey <<$pcs_firstname>>, are you up for a magical adventure?" Tatiana asks with a grin.'
  962. act 'Always': gt 'tatiana_missions','start'
  963. act 'Not right now':gt 'tatiana_lab','start'
  964. elseif temp = 2:
  965. *clr & cla
  966. '"Hello <<$pcs_nickname>>, glad you''re here." Tatiana smiles at you. "What do you say? Feel ready for a mission?"'
  967. act 'Sure, let''s do this': gt 'tatiana_missions','start'
  968. act 'Not right now':gt 'tatiana_lab','start'
  969. elseif temp = 3:
  970. *clr & cla
  971. '"Hello <<$pcs_nickname>>." Tatiana looks at you expectantly. "Would you like to do an investigation?"'
  972. act 'Gladly': gt 'tatiana_missions','start'
  973. act 'Not right now':gt 'tatiana_lab','start'
  974. end
  975. ! if TatianaMissionQW = 5: gt 'tatiana_missions', 'special'
  976. ! act 'Mission 1': gt 'tatiana_missions', '1'
  977. !! etc. Maybe give them names so you know what you''re doing. Selecting them goes to in depth description and refuse/accept
  978. !!!Lore for possible consequences of exposing (many) normal people to powerful magic:
  979. !
  980. ! 'Tatiana lays both folders back where they belong and her expression turns serious. "Remember how I told you that magic has a natural tendency to stay hidden? Well, there''s a limit to that tendency, a threshold beyond which either the magic cannot stay hidden anymore or at which the normal person cannot explain what they''re seeing with some non-magical phenomenon, we''re not sure which - in other words, humans have a breaking point, and when they are pushed beyond that, most of them realize how the world really is... and lose their minds."'
  981. ! '"Could that have happened to me?" You shiver at the thought.'
  982. ! '"Honestly, I have no idea," Tatiana admits, "but the power you have absorbed since then is huge, even if you can''t really use it to its full potential, and that may have very well driven most regular mages insane, so we''re moving in unknown territory here."'
  983. ! 'You nod solemnly, suddenly very appreciative of the mental health and stability you always took for granted. "So, you investigate anything that might have magical causes to prevent people from going crazy?"'
  984. ! '"It''s even bigger than that, <<$pcs_firstname>>. We know that this threshold exists. Every mage witnesses it sooner or later." She stops, momentarily lost in thought, but quickly recovers. "We have a theory that, if too many people are exposed to too much magic at once, it might break the illusion for everybody; you know, like a nuclear bomb goes off when you reach a critical mass."'
  985. ! '"Which would then drive everybody insane," you conclude.'
  986. ! '"Maybe not everybody," she corrects, "but many of them. And those that wouldn''t go insane, well, who knows what they''d do? Go on witch hunts? Try to kill all succubi and fae? Attempt to harness the magic of the universe? It would destroy the world as we know it, that''s for sure."'
  987. ! 'You agree with her - with how much had been flung at you when all this began, you were pretty close to hysteria too, if you''re completely honest with yourself.'
  988. end
  989. --- tatiana_lab ---------------------------------