1
0

telefon.qsrc 66 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990
  1. # telefon
  2. !2021/05/06
  3. !! Draw screens for mobile phone.
  4. !!
  5. !! The base storage for Contacts is controlled by the Array "$contact". This array is a list of NPC identifiers
  6. !! telling us which ones are in your contact list. There are several other ancillary arrays that support the functions
  7. !! of a contact. Each of these has matching indexes to the $contact array. These are mostly used internally, but a
  8. !! writer can make use of them if they need to.
  9. !!
  10. !! ContactList arrays:
  11. !! $contact[] = NPC code for contact. ('A129', 'A29', 'B13', 'C14')
  12. !! $contactIcon[] = Icon for the contact to use. If path is left off, standard phone icon folder is used. if file extension is left off, '.png' is used
  13. !! $contactOCode[] = Code to execute if call is placed to this contact
  14. !! $contactOSche[] = If statement code to determine schedule for outbound calls
  15. !! $contactICode[] = Code to execute for Incoming call
  16. !! $contactISche[] = if statement code for schedule of incoming calls
  17. !! contactAnon[] = 0 if contact number is known to Sveta, 1 for Anonymous
  18. !! contactToday[] = Calls from this contact today
  19. !! contactWeek[] = Calls from this contact this week
  20. !! contactLastCall[] = last time this Contact called
  21. !
  22. !! Add a contact with AddContact
  23. !! gs 'telefon', 'AddContact', <NPC Code>, <Icon for NPC>, <Code for Incoming Call>, <Limiter for Incoming Call>, <Code for Outgoing Call>, <Limiter for Outgoign Call>, <Code for Incoming SMS>, <Limiter for Incoming SMS>, <Code for Outgoing SMS>, <Limiter for Outgoign SMS>, <Anonymous=1>
  24. !! Example, to Add Mother:
  25. !! gs 'telefon', 'AddContact', 'A29', 'icon_npc1', "gs 'telefon', 'Phone_call'", "hour >= 8 and hour <= 20", "gs 'telefon', 'lover'", "hour >= 8 and hour <= 20", "gs 'telefon', 'SMS_your_lover'", "hour >= 10 and hour <= 16", "gs 'telefon', 'lover_SMS'", "hour >= 10 and hour <= 16", 0
  26. !!
  27. !! Remove a contact with DeleteContact
  28. !! gs 'telefon', 'DeleteContact', <NPC Code>
  29. !! Example, to delete Mom:
  30. !! gs 'telefon', 'DeleteContact', 'A29'
  31. !!
  32. !! Header for Phone Screen. Keeps consistent and in one place
  33. $telefon['header'] = {
  34. if telefon['UnreadSMS'] > 0:
  35. $telefon['SMSstatus'] = 'You have <<telefon[''UnreadSMS'']>> unread message(s)'
  36. else
  37. $telefon['SMSstatus'] = ''
  38. end
  39. if 1:
  40. $result = '<center>
  41. <b><<$mid(100 + hour, 2, 2)>>:<<$mid(100 + minut, 2, 2)>></b><br>
  42. <table cellspacing="0" width="80%">
  43. <tr>
  44. <td><img src="images/system/icons/icon_statusbar_left.png"></td>
  45. <td><<$telefon[''SMSstatus'']>></td>
  46. <td align="right"><img src="images/system/icons/icon_statusbar_right.png"></td>
  47. end
  48. </tr>
  49. </table><br>'
  50. else
  51. $result = '<center>
  52. <b><<$mid(100 + hour, 2, 2)>>:<<$mid(100 + minut, 2, 2)>></b><br>
  53. <table cellspacing="0" width="80%">
  54. <tr>
  55. <td><img src="images/system/icons/icon_statusbar_left.png"></td>
  56. <td><<$telefon[''SMSstatus'']>></td>
  57. <td align="right"><img src="images/system/icons/icon_statusbar_right<<min(max(0, (pcs_sleep + 10) / 20), 5)>>.png"></td>
  58. </tr>
  59. </table><br>'
  60. end
  61. }
  62. !! Footer for phone screen. Body should be between these two
  63. $telefon['footer'] = {
  64. if $telefon['backButton'] = '': $telefon['backButton'] = 'gs ''telefon'', ''Phone_menu'' '
  65. $result = ' <a href="exec:<<$telefon[''backButton'']>>"><img src="images/system/icons/back.png"></a><br><br>
  66. <a href="exec:gs''stat''">Put Phone Away.</a><br>
  67. </center>'
  68. $telefon['backButton'] = 'gs ''telefon'', ''Phone_menu'' '
  69. }
  70. !! ''''This is how we print the screen on to the Additional Dscription window
  71. $telefon['print'] = {
  72. clr
  73. if menu_off = 0:
  74. if ARGS[0] ! 0: $telefon['backButton'] = 'gs ''stat'' '
  75. pl func('cleanHTML', dyneval($telefon['header']) + $telefon['body'] + dyneval($telefon['footer']))
  76. else
  77. pl func('cleanHTML', dyneval($telefon['header']) + $telefon['body'])
  78. end
  79. }
  80. !! This is the formatting function for a row in the Contact List. SHould be run as a DYNEVAL()
  81. $telefon['contact'] = {
  82. !! Contact Row in phone contact list
  83. !! $ARGS[0] = NPC icon
  84. !! $ARGS[1] = NPC Nickname
  85. !! $ARGS[2] = Code to execute for making a Call
  86. !! $ARGS[3] = if statement for determining if NPC is avaiable
  87. $telefon['ContactIcon'] = $ARGS[0]
  88. $telefon['ContactNickName'] = $ARGS[1]
  89. $telefon['ContactCallCode'] = $ARGS[2]
  90. $telefon['ContactCallSchedule'] = $ARGS[3]
  91. !!If file extension is not given, .png is assumed
  92. if instr($telefon['ContactIcon'],'.') = 0:
  93. $telefon['ContactIcon'] += '.png'
  94. end
  95. !!If path is not given, default phone icon path is assumed
  96. if instr($telefon['ContactIcon'],'/') = 0:
  97. $telefon['ContactIcon'] = 'images/system/phone/icons/' + $telefon['ContactIcon']
  98. end
  99. !!If Contact is not in available timeframe, we disable contact calling
  100. if dyneval('result = iif(<<$telefon["ContactCallSchedule"]>>,1,0)') = 0:
  101. $telefon['ContactCallCode'] = "gs 'telefon', 'phone_call_reject'"
  102. end
  103. $result = '<tr>
  104. <td><img src="<<$telefon[''ContactIcon'']>>" width="75"></td>
  105. <td><<$telefon[''ContactNickName'']>></td>
  106. <td align="right"><a href="exec:$callerid = ''<<$telefon[''ContactIcon'']>>'' & <<$telefon[''ContactCallCode'']>>"><b>Call</b></a></td>
  107. </tr>'
  108. }
  109. if $ARGS[0] = 'AddContact':
  110. !! $ARGS[1] = NPC Array identifier
  111. !! $ARGS[2] = Icon
  112. !! ARGS[3] = Anonymous? 0 if not, 1 if yes
  113. $telefonCon['NPC'] = $ARGS[1]
  114. $telefonCon['Icon'] = $ARGS[2]
  115. telefonCon['Anonymous'] = ARGS[3]
  116. telefonCon['ContactListID'] = arrpos('$contact', $telefonCon['NPC'])
  117. if telefonCon['ContactListID'] = -1:
  118. telefonCon['ContactListID'] = arrsize('$contact')
  119. $contact[telefonCon['ContactListID']] = $telefonCon['NPC']
  120. $contactOCode[telefonCon['ContactListID']] = ""
  121. $contactOSche[telefonCon['ContactListID']] = "0"
  122. $contactICode[telefonCon['ContactListID']] = ""
  123. $contactISche[telefonCon['ContactListID']] = "0"
  124. $contactOSMSCode[telefonCon['ContactListID']] = ""
  125. $contactOSMSSche[telefonCon['ContactListID']] = "0"
  126. $contactISMSCode[telefonCon['ContactListID']] = ""
  127. $contactISMSSche[telefonCon['ContactListID']] = "0"
  128. end
  129. $contactIcon[telefonCon['ContactListID']] = $telefonCon['Icon']
  130. contactAnon[telefonCon['ContactListID']] = telefonCon['Anonymous']
  131. killvar 'telefonCon'
  132. killvar '$telefonCon'
  133. end & ! --- AddContact ---
  134. if $ARGS[0] = 'SetCallSchedule':
  135. !! $ARGS[1] = NPC Array identifier
  136. !! $ARGS[2] = Code to execute for Call out
  137. !! $ARGS[3] = If statement code to determine schedule for outbound calls
  138. !! $ARGS[4] = Code to execute for Incoming call
  139. !! $ARGS[5] = if statement code for schedule of incoming calls
  140. $telefonCon['NPC'] = $ARGS[1]
  141. telefonCon['ContactListID'] = arrpos('$contact', $telefonCon['NPC'])
  142. if telefonCon['ContactListID'] = -1:
  143. !! If the contact does not exist, create an anonymous contact.
  144. gs 'telefon', 'AddContact', $telefonCon['NPC'], 'icon_na', 1
  145. telefonCon['ContactListID'] = arrsize('$contact') - 1
  146. end
  147. $telefonCon['OutCode'] = $ARGS[2]
  148. $telefonCon['OutSched'] = iif($ARGS[3] ! '', $ARGS[3], "0")
  149. $telefonCon['InCode'] = $ARGS[4]
  150. $telefonCon['InSched'] = iif($ARGS[5] ! '', $ARGS[5], "0")
  151. $contactOCode[telefonCon['ContactListID']] = $telefonCon['OutCode']
  152. $contactOSche[telefonCon['ContactListID']] = $telefonCon['OutSched']
  153. $contactICode[telefonCon['ContactListID']] = $telefonCon['InCode']
  154. $contactISche[telefonCon['ContactListID']] = $telefonCon['InSched']
  155. killvar '$telefonCon'
  156. end & ! --- SetCallSchedule ---
  157. if $ARGS[0] = 'ClearCallSchedule':
  158. $telefonCon['NPC'] = $ARGS[1]
  159. telefonCon['ContactListID'] = arrpos('$contact', $telefonCon['NPC'])
  160. if telefonCon['ContactListID'] = -1: exit
  161. $contactOCode[telefonCon['ContactListID']] = ""
  162. $contactOSche[telefonCon['ContactListID']] = "0"
  163. $contactICode[telefonCon['ContactListID']] = ""
  164. $contactISche[telefonCon['ContactListID']] = "0"
  165. killvar '$telefonCon'
  166. end & ! --- ClearCallSchedule ---
  167. if $ARGS[0] = 'SetSMSSchedule':
  168. !! $ARGS[1] = NPC Array identifier
  169. !! $ARGS[2] = Code to execute for SMS out
  170. !! $ARGS[3] = If statement code to determine schedule for outbound SMS
  171. !! $ARGS[4] = Code to execute for Incoming SMS
  172. !! $ARGS[5] = if statement code for schedule of incoming SMS
  173. $telefonCon['NPC'] = $ARGS[1]
  174. telefonCon['ContactListID'] = arrpos('$contact', $telefonCon['NPC'])
  175. if telefonCon['ContactListID'] = -1:
  176. !! If the contact does not exist, create an anonymous contact.
  177. gs 'telefon', 'AddContact', $telefonCon['NPC'], 'icon_na', 1
  178. telefonCon['ContactListID'] = arrsize('$contact') - 1
  179. end
  180. $telefonCon['OutSMSCode'] = $ARGS[2]
  181. $telefonCon['OutSMSSched'] = iif($ARGS[3] ! '', $ARGS[3], "0")
  182. $telefonCon['InSMSCode'] = $ARGS[4]
  183. $telefonCon['InSMSSched'] = iif($ARGS[5] ! '', $ARGS[5], "0")
  184. $contactOSMSCode[telefonCon['ContactListID']] = $telefonCon['OutSMSCode']
  185. $contactOSMSSche[telefonCon['ContactListID']] = $telefonCon['OutSMSSched']
  186. $contactISMSCode[telefonCon['ContactListID']] = $telefonCon['InSMSCode']
  187. $contactISMSSche[telefonCon['ContactListID']] = $telefonCon['InSMSSched']
  188. killvar '$telefonCon'
  189. end & ! --- SetSMSSchedule ---
  190. if $ARGS[0] = 'ClearSMSSchedule':
  191. $telefonCon['NPC'] = $ARGS[1]
  192. telefonCon['ContactListID'] = arrpos('$contact', $telefonCon['NPC'])
  193. if telefonCon['ContactListID'] = -1: exit
  194. $contactOSMSCode[telefonCon['ContactListID']] = ""
  195. $contactOSMSSche[telefonCon['ContactListID']] = "0"
  196. $contactISMSCode[telefonCon['ContactListID']] = ""
  197. $contactISMSSche[telefonCon['ContactListID']] = "0"
  198. killvar '$telefonCon'
  199. end & ! --- ClearSMSSchedule ---
  200. if $ARGS[0] = 'DeleteContact':
  201. !! $ARGS[1] = NPC Array identifier
  202. $telefonCon['NPC'] = $ARGS[1]
  203. telefonCon['ContactListID'] = arrpos('$contact',$telefonCon['NPC'])
  204. if telefonCon['ContactListID'] > -1:
  205. killvar '$contact', telefonCon['ContactListID']
  206. killvar '$contactIcon', telefonCon['ContactListID']
  207. killvar '$contactOCode', telefonCon['ContactListID']
  208. killvar '$contactOSche', telefonCon['ContactListID']
  209. killvar '$contactICode', telefonCon['ContactListID']
  210. killvar '$contactISche', telefonCon['ContactListID']
  211. killvar '$contactOSMSCode', telefonCon['ContactListID']
  212. killvar '$contactOSMSSche', telefonCon['ContactListID']
  213. killvar '$contactISMSCode', telefonCon['ContactListID']
  214. killvar '$contactISMSSche', telefonCon['ContactListID']
  215. killvar 'contactAnon', telefonCon['ContactListID']
  216. end
  217. killvar 'telefonCon'
  218. killvar '$telefonCon'
  219. end &! --- DeleteContact ---
  220. if $ARGS[0] = 'ContactList':
  221. $telefon['body'] = '
  222. <font size=6>Contacts</font><br>
  223. <img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_call.png" height="80" width="80"><br><br>
  224. <table cellspacing="0" width="80%">'
  225. !!iterating all Contacts
  226. i=0
  227. :contactloop2
  228. if i < arrsize('$contact'):
  229. if contactAnon[i] = 0:
  230. $telefon['body'] += dyneval($telefon['contact'],$contactIcon[i],$npc_nickname[$contact[i]],$contactOCode[i],$contactOSche[i])
  231. end
  232. i += 1
  233. jump 'contactloop2'
  234. end
  235. !! Oddball Contacts
  236. if telalla > 0:
  237. $telefon['body'] += dyneval($telefon['contact'],'icon_ira1','Alla',"$telsob = 'Alla' & gt 'telefon', 'mobilaraz'","hour >= 8 and hour <= 20")
  238. end
  239. if telmasha > 0:
  240. $telefon['body'] += dyneval($telefon['contact'],'icon_masha','Masha',"$telsob = 'Masha' & gt 'telefon', 'mobilaraz'","hour >= 8 and hour <= 20")
  241. end
  242. !! iterating all lovers
  243. lover_number = 0
  244. :loverloop2
  245. if pcs_lovers[lover_number] = 1 and svidanie[lover_number] = 0:
  246. $telefon['body'] += dyneval($telefon['contact'],'icon_bf'+lover_picture[lover_number],$loverdesc[lover_number],"lover_number = <<lover_number>> & gt 'telefon', 'callingTheLover', <<lover_number>>","hour > 6 and hour < 20")
  247. end
  248. lover_number += 1
  249. if lover_number < arrsize('pcs_lovers'): jump 'loverloop2'
  250. $telefon['body'] += '</table><br>'
  251. dynamic $telefon['print']
  252. killvar 'i'
  253. killvar 'lover_number'
  254. end &! --- ContactList ---
  255. !! Reset Contact Call Stats Daily and Weekly
  256. !!
  257. !! ARGS[1] = New Week if 1, 0 if same week
  258. if $ARGS[0] = 'DailyStatRefresh':
  259. i=0
  260. :DailyStatRefLoop
  261. if i < arrsize('$contact'):
  262. contactToday[i] = 0
  263. if ARGS[1] = 1:
  264. contactWeek[i] = 0
  265. end
  266. i += 1
  267. jump 'DailyStatRefLoop'
  268. end
  269. killvar 'i'
  270. end
  271. !! Determine if any Incoming calls should happen
  272. !!
  273. !! ARGS[1] = Previous totminut
  274. !! ARGS[2] = Current totminut
  275. if $ARGS[0] = 'IncomingCheck':
  276. telefIncCheck['PrevTotalMinutes'] = ARGS[1]
  277. telefIncCheck['NewTotalMinutes'] = ARGS[2]
  278. if telefIncCheck['PrevTotalMinutes'] > telefIncCheck['NewTotalMinutes'] or telefon['LastIncCallCheck'] > telefIncCheck['NewTotalMinutes'] or telefon['LastIncCallCheck'] = 0:
  279. !! Time Cheat has been used, so we should do some cleanup
  280. telefon['LastIncCallCheck'] = telefIncCheck['NewTotalMinutes']
  281. end
  282. !! Limit the number of calls per day
  283. !! right now allow every 60 minutes
  284. if telefIncCheck['NewTotalMinutes'] - telefon['LastIncCallCheck'] > 60 and menu_off = 0 and phone_off = 0:
  285. telefon['LastIncCallCheck'] = telefIncCheck['NewTotalMinutes']
  286. gs 'telefon','IncomingCallChooser'
  287. end
  288. killvar 'telefIncCheck'
  289. end
  290. if $ARGS[0] = 'IncomingCallChooser':
  291. !! When an Incoming call happens, choose who it comes from
  292. !! Add Contacts
  293. i=0
  294. :telefonIncLoop1
  295. if i < arrsize('$contact'):
  296. if $contactICode[i] ! "":
  297. if dyneval('result = iif(<<$contactISche[i]>>,1,0)') = 1:
  298. j = arrsize('$telefIncCall')
  299. if contactAnon[i] = 1:
  300. $telefIncIcon[j] = "images/system/phone/decline.png"
  301. $telefIncName[j] = "Unknown Caller"
  302. else
  303. $telefIncIcon[j] = $contactIcon[i]
  304. $telefIncName[j] = $npc_nickname[$contact[i]]
  305. end
  306. $telefIncCall[j] = $contactICode[i]
  307. $telefIncNPC[j] = $contact[i]
  308. end
  309. end
  310. i += 1
  311. jump 'telefonIncLoop1'
  312. end
  313. !! Add Lovers
  314. i=0
  315. :telefonIncLoop2
  316. if i < 3 and hour > 5 and hour < 20:
  317. if pcs_lovers[i] = 1 and svidanie[i] = 0 and loverday[i] ! daystart and rand(1,100) > 95:
  318. j = arrsize('$telefIncCall')
  319. $telefIncCall[j] = "gs 'telefon', 'lover', <<i>>"
  320. $telefIncIcon[j] = 'images/characters/shared/headshots_generic/<<lover_picture[i]>>.jpg'
  321. $telefIncName[j] = $loverdesc[i]
  322. end
  323. i += 1
  324. jump 'telefonIncLoop2'
  325. end
  326. if arrsize('$telefIncCall') > 0:
  327. j = rand(0,arrsize('$telefIncCall')-1)
  328. if $telefIncNPC[j] ! "":
  329. i = arrpos('$contact',$telefIncNPC[j])
  330. contactLastCall[i] = totminut
  331. contactToday[i] += 1
  332. contactWeek[i] += 1
  333. end
  334. gs 'telefon', 'IncomingCall', $telefIncIcon[j], $telefIncName[j], $telefIncCall[j]
  335. end
  336. killvar 'i'
  337. killvar 'j'
  338. killvar '$telefIncIcon'
  339. killvar '$telefIncName'
  340. killvar '$telefIncCall'
  341. killvar '$telefIncNPC'
  342. end
  343. if $ARGS[0] = 'IncomingCall':
  344. !! $ARGS[1] = Icon for contact
  345. !! $ARGS[2] = Nickname of contact
  346. !! $ARGS[3] = Code to execute for this Call
  347. $telefonIncC['Icon'] = $ARGS[1]
  348. $telefonIncC['Name'] = $ARGS[2]
  349. $telefonIncC['Code'] = $ARGS[3]
  350. PLAY 'sound/old_phone.mp3',30
  351. $telefon['body'] = '
  352. <font size=6><<$telefonIncC["Name"]>> calling</font><br>
  353. <img src="<<$telefonIncC["Icon"]>>" width="200"><br>
  354. <br>
  355. <br>
  356. <br>
  357. <a href="exec:<<$telefonIncC["Code"]>>"><img src="images/system/phone/call_accept.png"></a>
  358. <a href="exec:gt $loc, $loc_arg"><img src="images/system/phone/decline.png"></a><br>
  359. <b><font color="red">Your phone is ringing</font></b><br>'
  360. dynamic $telefon['print']
  361. killvar '$telefonIncC'
  362. end
  363. if $ARGS[0] = 'Phone_notebook':
  364. gs 'housing', 'rent'
  365. $telefon['body'] = '
  366. <font size=6>Planner</font><br>
  367. <img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_notebook.png" height="80" width="80"><br>
  368. <<year>>-<<$month>>-<<day>>, <<$week[week]>><br><br>'
  369. rent1 = -1
  370. rent4 = -1
  371. !! TODO: Will have to change this too, to handle more than 2 rentals.
  372. if func('homes_properties', 'is_property_of_status', 'rented', 'city_apartment') : rent1 = func('homes_properties', 'get_rent_days', 'city_apartment')
  373. if func('homes_properties', 'is_property_of_status', 'rented', 'old_town_apartment') : rent4 = func('homes_properties', 'get_rent_days', 'old_town_apartment')
  374. d1 = day
  375. w1 = week
  376. m1 = month
  377. y1 = year
  378. i = 0
  379. $list = '<br>&emsp;<b>•</b> '
  380. :pnotebook
  381. daynum = daystart+i
  382. $calendarday = ''
  383. if m1 = 1 and d1 >= 1 and d1 <= 8:
  384. $calendarday += $list + 'New Year holidays'
  385. if d1 = 1:$calendarday += ', New Year'
  386. if d1 = 7:$calendarday += ', Christmas'
  387. end
  388. if m1 = 2 and d1 = 23:$calendarday += $list + 'Defender of Fatherland Day'
  389. if m1 = 3 and d1 = 8:$calendarday += $list + 'Women''s Day'
  390. if m1 = 5 and d1 = 1:$calendarday += $list + 'Spring and Labor Day'
  391. if m1 = 5 and d1 = 2:$calendarday += $list + 'National holiday'
  392. if m1 = 5 and d1 = 9:$calendarday += $list + 'Victory Day'
  393. if m1 = 6 and d1 = 12:$calendarday += $list + 'Russia Day'
  394. if m1 = 6 and d1 = 13:$calendarday += $list + 'National holiday'
  395. if m1 = 11 and d1 = 4:$calendarday += $list + 'Unity Day'
  396. if mid($start_type,1,2) = 'sg' and SchoolAtestat = 0:
  397. if m1 = 1 and d1 = 1:$calendarday += $list + 'First day of Winter break.'
  398. if m1 = 1 and d1 = 15:$calendarday += $list + 'Last day of Winter break.'
  399. if m1 = 3 and d1 = 20:$calendarday += $list + 'First day of Spring break.'
  400. if m1 = 3 and d1 = 26:$calendarday += $list + 'Last day of Spring break.'
  401. if y1 = 2017 and m1 = 5 and d1 = 25:$calendarday += $list + 'Graduation Day!'
  402. if m1 = 6 and d1 = 1:$calendarday += $list + 'First day of Summer break.'
  403. if m1 = 8 and d1 = 31:$calendarday += $list + 'Last day of Summer break.'
  404. if m1 = 11 and d1 = 4:$calendarday += $list + 'First day of Autumn break.'
  405. if m1 = 11 and d1 = 11:$calendarday += $list + 'Last day of Autumn break.'
  406. end
  407. if daynum >= daylastperiod+28 and daynum < daylastperiod+31:$calendarday += $list + '<font color=''red''><b>Menstruation!</b></font>'
  408. if daynum >= daylastperiod+12 and daynum < daylastperiod+14:$calendarday += $list + '<font color=#336600><b>Ovulation!</b></font>'
  409. if pregchem >= 6720:$calendarday += $list + '<font color=''red''><b>Birthing day!</b></font>'
  410. if w1 < 5 and (workSec >= 1 or BurgerQW['Secretary'] = 1):$calendarday += $list + 'Working as a secretary. <i>(9:00 - 17:00)</i>'
  411. if w1 < 5 and workFabrika = 1:
  412. $calendarday += $list + 'Working as a seamstress. '
  413. if age < 18:$calendarday += '<i>(16:00 - 20:00)</i>' else $calendarday += '<i>(8:00 - 16:00)</i>'
  414. end
  415. if w1 > 1 and w1 <= 5 and workhosp = 1:$calendarday += $list + 'Working as a nurse. <i>(8:00 - 16:00)</i>'
  416. if worksalon = 1 and (w1 = 1 or w1 = 3 or w1 = 5):$calendarday += $list + 'Working as a masseuse. <i>(9:00 - 17:00)</i>'
  417. !! if maidqw > 0:$calendarday += '<br>&emsp;<b>•</b> Working as maid. <i>(16:00 - 19:00)</i>'
  418. if pfilmday[i] > 0:$calendarday += $list + 'Porn shoot: <i><<$porndesc[pfilmday[i]]>></i>'
  419. if d1 = 25 and (BurgerQW['Secretary'] = 1 or workKafe['job'] = 1 or workhosp = 1 or worksalon = 1 or tanwork = 1 or workSec = 1 or workFabrika = 1):$calendarday += $list + '<i>Pay day!</i>'
  420. if d1 = nyp_day and m1 = 12 and SchoolAtestat = 0 and mid($start_type,1,2) = 'sg':$calendarday += $list + 'New Year''s party at 14:00!'
  421. if (npc_QW['A33']-2) mod 2 = 1 and sisboyday+1 = daynum:
  422. if sisboytrioQW = 1:
  423. $calendarday += $list + '<font color="orange">Threesome with Anya and Roma at 18:00</font>'
  424. else
  425. $calendarday += $list + '<font color="orange">Anya having sex with Roma at 18:00</font>'
  426. end
  427. end
  428. if sisboyparty = 2 and sisboyparty_day+1 = daynum:$calendarday += $list + '<font color="orange">Party at Rex''s, gathering before 18:00 at Community Center</font>'
  429. if rent1 = 0:$calendarday += $list + 'Rent on city apartment expires!'
  430. if rent4 = 0:$calendarday += $list + 'Rent on Pushkin apartment expires!'
  431. if birthday = d1 and birthmonth = m1:$calendarday += $list + 'My birthday!'
  432. if kid > 0:
  433. k1 = kid
  434. :kiddieloop
  435. if daykid[k1] = d1 and monthkid[k1] = m1:$calendarday += $list + 'Birthday of my <<$polreb[k1]>> <<$kidname[k1]>>, my <<kid>>. baby!'
  436. if k1 > 1:k1 -= 1 & jump 'kiddieloop'
  437. end
  438. if $calendarday ! '':
  439. $telefon['body'] += '<b><<$monthName[m1]>> <<d1>>, <<$week[w1]>>:</b>'
  440. $telefon['body'] += $calendarday +'<br>'
  441. end
  442. if i < 14:
  443. rent1 -= 1
  444. rent4 -= 1
  445. i += 1
  446. w1 += 1
  447. if w1 > 7:w1 = 1
  448. d1 += 1
  449. if monthsend[m1] < d1:
  450. m1 += 1 & d1 = 1
  451. if m1 = 13: m1 = 1 & y1 += 1
  452. end
  453. jump 'pnotebook'
  454. end
  455. killvar 'calendarday'
  456. killvar 'rent1'
  457. killvar 'rent4'
  458. killvar 'd1'
  459. killvar 'w1'
  460. killvar 'm1'
  461. killvar 'y1'
  462. killvar 'daynum'
  463. dynamic $telefon['print']
  464. end &! --- Phone_notebook ---
  465. !!----------------------------------------Camera-------------------------------------------------
  466. !!for taking photos - only selfies for now
  467. if $ARGS[0] = 'Phone_camera':
  468. gs 'phone_selfies', 'open_camera'
  469. dynamic $telefon['print']
  470. end
  471. !!for viewing photos on your phone
  472. if $ARGS[0] = 'Phone_pictures':
  473. gt 'phone_selfies', 'view_selfies'
  474. end
  475. !!taking selfies in the shower or bath
  476. if $ARGS[0] = 'Phone_selfie_image_bathing':
  477. if $ARGS[1] = 'bath':
  478. gs 'phone_selfies', 'camera_selfie_image_bathing'
  479. elseif $ARGS[1] = 'shower':
  480. gs 'phone_selfies', 'camera_selfie_image_shower'
  481. end
  482. end
  483. !!-----------------------------------end of Camera------------------------------------------
  484. !!-----------------------------------start of sms------------------------------------------
  485. !{
  486. Send SMS lists the current contacts, then clicking on a contact gives a list of messages that can be sent.
  487. Receive messages lists the sms messages sent to the player, these can be deleted, they will be in bold until read.
  488. To add an incoming message
  489. gs 'telefon', 'add_sms', 'A1', 'Test message the text goes here', 'images/pc/activities/phone/selfies/bathroom/underwear/1.jpg', 'images/pc/activities/phone/selfies/school_bathroom/pussyflash/1.jpg'
  490. A1 is the NPC code (A1 is Dmitriy Nosov "Dimka")
  491. You can have up to 4 pictures attached to the message
  492. To add an out going message that can be sent
  493. gs 'telefon', 'add_sms_to_send', 'A1', 'Test message the text goes here'
  494. To add a contact if it doesn't exist
  495. if arrpos('$contact', 'A1') = -1: gs 'telefon', 'AddContact', 'A1', 'images/characters/shared/headshots_main/big1.jpg', "", "0", "", "0", "", "0", "", "0", 0
  496. SMS Arrays storing received messages and messages that can be sent
  497. Received Messages
  498. telefon['UnreadSMS'] = number of unread SMS messages
  499. $SMSContact[] = NPC code for contact. ('A129', 'A29', 'B13', 'C14') that sent the sms
  500. $SMSMessage[] = text for the sms message
  501. $SMSReplies[] = text for the replies
  502. $SMSTime[] = date time the message was received
  503. $SMSPicture1[] = url for first picture sent as part of the message
  504. $SMSPicture2[] = url for second picture sent as part of the message
  505. $SMSPicture3[] = url for third picture sent as part of the message
  506. $SMSPicture4[] = url for fourth picture sent as part of the message
  507. SMSMessageRead[] = 0 unread, 1 read
  508. Send Messages
  509. $SMSSendContact[] = NPC code for contact. ('A129', 'A29', 'B13', 'C14') that sent the sms
  510. $SMSSendMessage[] = text for the sms message
  511. $SMSSendCode[] = Code to execute for Incoming call
  512. SMSSendRepeatable[] = 0 delete option after send, 1 don't delete option
  513. $SMSSendDeleteId[] = id passed by the caller
  514. }
  515. if $ARGS[0] = 'Phone_sms':
  516. $telefon['body'] = '
  517. <font size=6>SMS</font><br>
  518. <img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/<<iif(telefon[''UnreadSMS'']=0,''icon_sms.png'',''icon_sms_new.gif'')>>" height="80" width="80"><br>'
  519. $telefon['body'] += '<b><a href="exec:gs ''telefon'', ''send_sms''">Send new SMS</a></b><br>'
  520. $telefon['body'] += '<table cellspacing="0" width="80%"><tr><th>Icon</th><th>Name</th><th align="right">Received</th><th></th></tr>'
  521. !!iterating all Messages
  522. !!reset and recalculate unread messages count, in case they get out of sync
  523. telefon['UnreadSMS'] = 0
  524. i=0
  525. :smsloop
  526. if i < arrsize('$SMSContact'):
  527. !! if the person sending is in the contact list display the names and icon
  528. telefon['contactid'] = arrpos('$contact',$SMSContact[i])
  529. if telefon['contactid'] = -1:
  530. $telefonCon['NPCName'] = ''
  531. $telefonCon['Icon'] = 'icon_na.png'
  532. else
  533. $telefonCon['NPCName'] = $npc_nickname[$contact[telefon['contactid']]]
  534. $telefonCon['Icon'] = $contactIcon[telefon['contactid']]
  535. end
  536. if SMSMessageRead[i] = 0: telefon['UnreadSMS'] += 1
  537. $telefon['body'] += dyneval($telefon['SMS'],i,$telefonCon['Icon'],$telefonCon['NPCName'],$SMSTime[i],SMSMessageRead[i])
  538. i += 1
  539. jump 'smsloop'
  540. end
  541. $telefon['body'] += '<b><a href="exec:gs ''telefon'', ''delete_sms'',''0'',''all''">Delete All</a></b><br>'
  542. $telefon['body'] += '</table><br>'
  543. dynamic $telefon['print']
  544. killvar 'i'
  545. end &! --- Phone_sms ---
  546. !{
  547. New SMS Message
  548. If NPC is not in the contacts list of the phone it will be displayed as unknown until the contact has been added
  549. $ARGS[1] = NPC code for contact. ('A129', 'A29', 'B13', 'C14')
  550. $ARGS[2] = Message text to be displayed
  551. $ARGS[3] = Replies to the message (optional)
  552. $ARGS[4] = path to a picture to be displayed (optional)
  553. $ARGS[5] = path to a picture to be displayed (optional)
  554. $ARGS[6] = path to a picture to be displayed (optional)
  555. $ARGS[7] = path to a picture to be displayed (optional)
  556. }
  557. if $ARGS[0] = 'add_sms':
  558. $SMSContact[telefon['SMSCount']] = $ARGS[1]
  559. $SMSMessage[telefon['SMSCount']] = $ARGS[2]
  560. $SMSReplies[telefon['SMSCount']] = $ARGS[3]
  561. $SMSTime[telefon['SMSCount']] = '<<$mid(100+hour,2,2)>>:<<$mid(100+minut,2,2)>> <<$week[week]>> <<day>> <<$month>> <<year>>'
  562. $SMSPicture1[telefon['SMSCount']] = $ARGS[4]
  563. $SMSPicture2[telefon['SMSCount']] = $ARGS[5]
  564. $SMSPicture3[telefon['SMSCount']] = $ARGS[6]
  565. $SMSPicture4[telefon['SMSCount']] = $ARGS[7]
  566. SMSMessageRead[telefon['SMSCount']] = 0
  567. telefon['SMSCount'] += 1
  568. telefon['UnreadSMS'] += 1
  569. end
  570. if $ARGS[0] = 'delete_sms':
  571. telefon['SMSid'] = ARGS[1]
  572. killvar '$SMSContact', telefon['SMSid']
  573. killvar '$SMSMessage', telefon['SMSid']
  574. killvar '$SMSReplies', telefon['SMSid']
  575. killvar '$SMSTime', telefon['SMSid']
  576. killvar '$SMSPicture1', telefon['SMSid']
  577. killvar '$SMSPicture2', telefon['SMSid']
  578. killvar '$SMSPicture3', telefon['SMSid']
  579. killvar '$SMSPicture4', telefon['SMSid']
  580. killvar 'SMSMessageRead', telefon['SMSid']
  581. telefon['SMSCount'] -= 1
  582. if $ARGS[2] = 'all' and telefon['SMSCount'] > 0 :
  583. gs 'telefon','delete_sms','0','all'
  584. end
  585. gs 'telefon', 'Phone_sms'
  586. end
  587. if $ARGS[0] = 'show_sms':
  588. telefon['SMSid'] = ARGS[1]
  589. !!set to read and update the number of unread messages
  590. if SMSMessageRead[telefon['SMSid']] = 0:
  591. telefon['UnreadSMS'] -= 1
  592. SMSMessageRead[telefon['SMSid']] = 1
  593. end
  594. !! Get image and name if in phone contacts otherwise show unknown
  595. telefon['contactid'] = arrpos('$contact',$SMSContact[telefon['SMSid']])
  596. if telefon['contactid'] = -1:
  597. $telefonCon['NPCName'] = ''
  598. $telefonCon['Icon'] = 'icon_na.png'
  599. else
  600. $telefonCon['NPCName'] = $npc_nickname[$contact[telefon['contactid']]]
  601. $telefonCon['Icon'] = $contactIcon[telefon['contactid']]
  602. end
  603. !!If file extension is not given, .png is assumed
  604. if instr($telefonCon['Icon'],'.') = 0:
  605. $telefonCon['Icon'] += '.png'
  606. end
  607. !!If path is not given, default phone icon path is assumed
  608. if instr($telefonCon['Icon'],'/') = 0:
  609. $telefonCon['Icon'] = 'images/system/phone/icons/' + $telefonCon['Icon']
  610. end
  611. $telefon['body'] = '
  612. <font size=6>SMS</font><br>
  613. <img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/<<iif(telefon[''UnreadSMS'']=0,''icon_sms.png'',''icon_sms_new.gif'')>>" height="80" width="80"><br>'
  614. $telefon['body'] += '<table cellspacing="0" width="80%">'
  615. $telefon['body'] += '<tr><tr><img height=100 src="<<$telefonCon[''Icon'']>>"></td><td><<$telefonCon[''NPCName'']>></td></tr>'
  616. $telefon['body'] += '<tr><td colspan="2"><<$SMSMessage[telefon[''SMSid'']]>></td></tr>'
  617. if $SMSReplies[telefon['SMSid']] <> '':
  618. !$telefon['body'] += '<tr><th colspan="2" style="font-size:120%">Reply</th></tr>'
  619. $telefon['body'] += '<tr><th> </th></tr>'
  620. $telefon['body'] += '<tr><td colspan="2"><<$SMSReplies[telefon[''SMSid'']]>></td></tr>'
  621. end
  622. if $SMSPicture1[telefon['SMSid']] <> '':
  623. $telefon['body'] += '<tr><td colspan="2"><img src="<<$SMSPicture1[telefon[''SMSid'']]>>"></td></tr>'
  624. end
  625. if $SMSPicture2[telefon['SMSid']] <> '':
  626. $telefon['body'] += '<tr><td colspan="2"><img src="<<$SMSPicture2[telefon[''SMSid'']]>>"></td></tr>'
  627. end
  628. if $SMSPicture3[telefon['SMSid']] <> '':
  629. $telefon['body'] += '<tr><td colspan="2"><img src="<<$SMSPicture3[telefon[''SMSid'']]>>"></td></tr>'
  630. end
  631. if $SMSPicture4[telefon['SMSid']] <> '':
  632. $telefon['body'] += '<tr><td colspan="2"><img src="<<$SMSPicture4[telefon[''SMSid'']]>>"></td></tr>'
  633. end
  634. $telefon['body'] += '</table><br>'
  635. $telefon['backButton'] = 'gs ''telefon'', ''Phone_sms'' '
  636. dynamic $telefon['print']
  637. end
  638. !! This is the formatting function for a row in the SMS message table. SHould be run as a DYNEVAL()
  639. !{
  640. SMS Row in messages table
  641. ARGS[0] = message id
  642. $ARGS[1] = NPC icon
  643. $ARGS[2] = NPC Nickname
  644. $ARGS[3] = Time received
  645. ARGS[4] = 0 unread, 1 read
  646. }
  647. $telefon['SMS'] = {
  648. telefon['SMSid'] = ARGS[0]
  649. $telefon['ContactIcon'] = $ARGS[1]
  650. $telefon['ContactNickName'] = $ARGS[2]
  651. $telefon['SMSTime'] = $ARGS[3]
  652. telefon['SMSStatus'] = ARGS[4]
  653. !!If file extension is not given, .png is assumed
  654. if instr($telefon['ContactIcon'],'.') = 0:
  655. $telefon['ContactIcon'] += '.png'
  656. end
  657. !!If path is not given, default phone icon path is assumed
  658. if instr($telefon['ContactIcon'],'/') = 0:
  659. $telefon['ContactIcon'] = 'images/system/phone/icons/' + $telefon['ContactIcon']
  660. end
  661. !! unread will be bold
  662. if telefon['SMSStatus'] = 0:
  663. $telefon['SMSstyle1'] = '<b>'
  664. $telefon['SMSstyle2'] = '</b>'
  665. else
  666. $telefon['SMSstyle1'] = ''
  667. $telefon['SMSstyle2'] = ''
  668. end
  669. $result = '<tr>
  670. <td><img height=100 src="<<$telefon[''ContactIcon'']>>"></td>
  671. <td><<$telefon[''SMSstyle1'']>><<$telefon[''ContactNickName'']>><<$telefon[''SMSstyle2'']>></td>
  672. <td align="right"><<$telefon[''SMSstyle1'']>><a href="exec:gs ''telefon'', ''show_sms'', <<telefon[''SMSid'']>>"><<$telefon[''SMSTime'']>></a><<$telefon[''SMSstyle2'']>></td>
  673. <td><<$telefon[''SMSstyle1'']>><a href="exec:gs ''telefon'', ''delete_sms'', <<telefon[''SMSid'']>>">Delete</a><<$telefon[''SMSstyle2'']>></td>
  674. </tr>'
  675. }
  676. !! List of Contacts that you can send sms messages to
  677. if $ARGS[0] = 'send_sms':
  678. $telefon['backButton'] = 'gs ''telefon'', ''Phone_sms'''
  679. $telefon['body'] = '
  680. <font size=6>Send SMS</font><br>
  681. <img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/<<iif(telefon[''UnreadSMS'']=0,''icon_sms.png'',''icon_sms_new.gif'')>>" height="80" width="80"><br>'
  682. if subscription['metered_calls'] = 1 and subscription['sms_limit'] > 0:
  683. $telefon['body'] += '<br/>'
  684. $telefon['body'] += '<b>You still can send <<subscription[''sms_limit'']>> text messages on your contract</b>'
  685. end
  686. !! Colour correction for editor ''''
  687. $telefon['body'] += '<table cellspacing="0" width="80%">'
  688. !!iterating all Contacts
  689. i=0
  690. :smscontactloop
  691. if i < arrsize('$contact'):
  692. if contactAnon[i] = 0:
  693. $telefon['body'] += dyneval($telefon['contactsms'],i)
  694. end
  695. i += 1
  696. jump 'smscontactloop'
  697. end
  698. $telefon['body'] += '</table><br>'
  699. dynamic $telefon['print']
  700. killvar 'i'
  701. end
  702. !! This is the formatting function for a row in the Contact List. SHould be run as a DYNEVAL()
  703. !! $ARGS[0] = index of contact in the conntact arrays
  704. $telefon['contactsms'] = {
  705. !! Contact Row in phone contact list
  706. $telefon['ContactIcon'] = $contactIcon[ARGS[0]]
  707. $telefon['ContactNPCcode'] = $contact[ARGS[0]]
  708. !!If file extension is not given, .png is assumed
  709. if instr($telefon['ContactIcon'],'.') = 0:
  710. $telefon['ContactIcon'] += '.png'
  711. end
  712. !!If path is not given, default phone icon path is assumed
  713. if instr($telefon['ContactIcon'],'/') = 0:
  714. $telefon['ContactIcon'] = 'images/system/phone/icons/' + $telefon['ContactIcon']
  715. end
  716. $result = '
  717. <tr>
  718. <td><img src="<<$telefon[''ContactIcon'']>>" width="75"></td>
  719. <td><<$npc_nickname[$telefon[''ContactNPCcode'']]>></td>
  720. <td><a href="exec:gs ''telefon'', ''npcSendListSms'', ''<<$telefon[''ContactNPCcode'']>>''">New Message</a></td>
  721. </tr>'
  722. }
  723. !! List of SMS messages available to be sent to an NPC
  724. !! $ARGS[1] = NPC code for the contact we want to display messages for
  725. if $ARGS[0] = 'npcSendListSms':
  726. $telefon['backButton'] = 'gs ''telefon'', ''send_sms'' '
  727. $telefon['body'] = '
  728. <font size=6>Send SMS</font><br>
  729. <img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/<<iif(telefon[''UnreadSMS'']=0,''icon_sms.png'',''icon_sms_new.gif'')>>" height="80" width="80"><br>'
  730. $telefon['body'] += '<table cellspacing="0" width="80%">'
  731. !!iterating all send sms messages
  732. i=0
  733. :npcSendListSmsLoop
  734. if i < arrsize('$SMSSendContact'):
  735. if $SMSSendContact[i] = $ARGS[1]:
  736. $telefon['body'] += dyneval($telefon['smsMessageToSend'],i)
  737. end
  738. i += 1
  739. jump 'npcSendListSmsLoop'
  740. end
  741. $telefon['body'] += '</table><br>'
  742. dynamic $telefon['print']
  743. killvar 'i'
  744. end
  745. !! This is the formatting function for a row in the messages to send List. SHould be run as a DYNEVAL()
  746. !! ARGS[0] = index of the message
  747. $telefon['smsMessageToSend'] = {
  748. $telefon['ContactNPCcode'] = $SMSSendContact[ARGS[0]]
  749. $result = '
  750. <tr>
  751. <td><<$npc_nickname[$telefon[''ContactNPCcode'']]>></td>
  752. <td><a href="exec: gs ''telefon'', ''smsSendMessage'', ''<<ARGS[0]>>''"><<$SMSSendMessage[ARGS[0]]>></a></td>
  753. </tr>'
  754. }
  755. if $ARGS[0] = 'smsSendMessage':
  756. dynamic '<<$SMSSendCode[ARGS[1]]>>'
  757. gs 'internet_mobile', 'send_sms'
  758. if SMSSendRepeatable[ARGS[1]] = 0:
  759. gs 'telefon', 'delete_sms_send_index', ARGS[1]
  760. end
  761. gs 'telefon', 'Phone_sms'
  762. end
  763. !{
  764. Add a new message that can be sent by the player
  765. $ARGS[1] NPC code for contact. ('A129', 'A29', 'B13', 'C14') that sent the sms
  766. $ARGS[2] text for the sms message
  767. $ARGS[3] Code to execute when the sms is sent
  768. ARGS[4] 0 delete option after send, 1 dont delete option
  769. $ARGS[5] id passed by the caller to identify the option to be deleted if it needs to be removed from the options
  770. }
  771. if $ARGS[0] = 'add_sms_to_send':
  772. i = arrsize('$SMSSendContact')
  773. $SMSSendContact[i] = $ARGS[1]
  774. $SMSSendMessage[i] = $ARGS[2]
  775. $SMSSendCode[i] = $ARGS[3]
  776. SMSSendRepeatable[i] = ARGS[4]
  777. $SMSSendDeleteId[i] = $ARGS[5]
  778. end
  779. if $ARGS[0] = 'delete_sms_send_index':
  780. killvar '$SMSSendContact', ARGS[1]
  781. killvar '$SMSSendMessage', ARGS[1]
  782. killvar '$SMSSendCode', ARGS[1]
  783. killvar 'SMSSendRepeatable', ARGS[1]
  784. killvar '$SMSSendDeleteId', ARGS[1]
  785. end
  786. !{
  787. $ARGS[1] = NPC code for contact. ('A129', 'A29', 'B13', 'C14')
  788. $ARGS[2] = Delete id of the message ($SMSSendDeleteId)
  789. }
  790. if $ARGS[0] = 'delete_sms_send_id':
  791. $telefon['SMStoDeleteFound'] = 'No'
  792. i = 0
  793. :findSmsToDeleteLoop
  794. if (i < arrsize('$SMSSendContact')) and $telefon['SMStoDeleteFound'] = 'No':
  795. if $SMSSendContact[i] = $ARGS[1] and $SMSSendDeleteId[i] = $ARGS[2]:
  796. gs 'telefon', 'delete_sms_send_index', i
  797. $telefon['SMStoDeleteFound'] = 'Yes'
  798. end
  799. i += 1
  800. jump 'findSmsToDeleteLoop'
  801. end
  802. end
  803. if $ARGS[0] = 'IncomingSMSCheck':
  804. i=0
  805. :telefonIncSMSLoop
  806. if i < arrsize('$contact'):
  807. if $contactISMSCode[i] ! "":
  808. if dyneval('result = iif(<<$contactISMSSche[i]>>,1,0)') = 1:
  809. dynamic $contactISMSCode[i]
  810. end
  811. end
  812. i += 1
  813. jump 'telefonIncSMSLoop'
  814. end
  815. killvar 'i'
  816. end
  817. !!-----------------------------------end of sms------------------------------------------
  818. if $ARGS[0] = 'Phone_wheather':
  819. $telefon['body'] = '
  820. <font size=6>Weather</font><br>
  821. <img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_weather.png" height="80" width="80"><br><br>
  822. <b>Temperature:</b><br>
  823. <<$temperature>>. <<$osadki>><br>
  824. P.O.P. today is <<weatherFall>>%<br>'
  825. dynamic $telefon['print']
  826. end &! --- Phone_wheather ---
  827. if $ARGS[0] = 'Phone_calendar':
  828. $telefon['body'] = '
  829. <font size=6>Calendar</font><br>
  830. <img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_calendar.png" height="80" width="80"><br><br>
  831. <B>Today:</B><br>
  832. <<$week[week]>>, <<day>> <<$month>> <<year>><br>'
  833. dynamic $telefon['print']
  834. end &! --- Phone_calendar ---
  835. if $ARGS[0] = 'Phone_media':
  836. $telefon['body'] = '
  837. <font size=6>Media</font><br>
  838. <img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_music.png" height="80" width="80"><br>
  839. <b>This option is not active</b><br>'
  840. dynamic $telefon['print']
  841. end &! --- Phone_media ---
  842. if $ARGS[0] = 'Phone_menu':
  843. if phone_off = 1:
  844. '<font color="red"><b>Your phone is disabled for this event</b></font>'
  845. elseif menu_off = 1 and phone_on = 0:
  846. gs 'obj_din', 'menu_disabled'
  847. else
  848. $telefon['body'] = '
  849. <a href="exec:gs ''telefon'', ''Phone_camera'' "><img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_camera.png" height="80" width="80"></a>
  850. <a href="exec:gs ''telefon'', ''Phone_calendar'' "><img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_calendar.png" height="80" width="80"></a>
  851. <a href="exec:gs ''telefon'', ''Phone_pictures'' "><img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_pictures.png" height="80" width="80"></a>
  852. <br>
  853. <a href="exec:gs ''telefon'', ''Phone_media'' "><img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_music.png" height="80" width="80"></a>
  854. <a href="exec:gs ''telefon'', ''Phone_notebook'' "><img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_notebook.png" height="80" width="80"></a>
  855. <a href="exec:gs ''telefon'', ''Phone_wheather'' "><img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_weather.png" height="80" width="80"></a>
  856. <br>
  857. <a href="exec:gs ''telefon'', ''ContactList'' "><img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_call.png" height="80" width="80"></a>
  858. <a href="exec:gs ''telefon'', ''Phone_sms'' "><img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/<<iif(telefon[''UnreadSMS'']=0,''icon_sms.png'',''icon_sms_new.gif'')>>" height="80" width="80"></a>
  859. <a href="exec:gs ''telefon'', ''Phone_megafon'' "><img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_megafon.png" height="80" width="80"></a>
  860. <br>'
  861. if menu_off = 1:
  862. $telefon['body'] += '<a href="exec:gs ''obj_din'', ''menu_disabled''"><img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_settings.png" height="80" width="80"></a><br>'
  863. else
  864. $telefon['body'] += '<a href="exec:killvar ''menu_page'' & gs ''Cheatmenu_din'' & dynamic $cheatmenu[''setting'']"><img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_settings.png" height="80" width="80"></a><br>'
  865. end
  866. dynamic $telefon['print'], 1
  867. end
  868. end &! --- Phone_menu ---
  869. if $ARGS[0] = 'Add_contact':
  870. $dummy = INPUT('Enter a note:')
  871. $contact[arrsize('$contact')] = dyneval($telefon['contact'],$ARGS[1],$dummy,$ARGS[2])
  872. killvar '$dummy'
  873. end &! --- Add_contact ---
  874. if $ARGS[0] = 'telotkaz':
  875. cla
  876. minut += 10
  877. '<<$ARGS[1]>>, "Sorry, I''m busy right now, maybe next time."'
  878. act 'Hangup':gt 'telefon', 'fin'
  879. end &! --- telotkaz ---
  880. if $ARGS[0] = 'fin':
  881. killvar 'lover_number'
  882. cla
  883. gt $loc, $loc_arg
  884. end
  885. if $ARGS[0] = 'setup':
  886. !! array $$phonetheme_name is built.
  887. !! might need a tweak to have it rebuilt when new themes are available.
  888. $phonetheme_name[0] = 'Custom_Standard'
  889. $phonetheme_name[1] = 'Bimbo'
  890. $phonetheme_name[2] = 'Custom_Aluminus'
  891. $phonetheme_name[3] = 'Custom_Bottlecapped'
  892. $phonetheme_name[4] = 'Custom_Galactic'
  893. $phonetheme_name[5] = 'Custom_Vectored'
  894. $phonetheme_name[6] = 'Custom_Veneer'
  895. $phonetheme_name[7] = 'Custom_Voidwalker'
  896. $phonetheme_name[8] = 'Custom_Voidwalker Red'
  897. $phonetheme_name[9] = 'Custom_Voidwalker Toxic'
  898. $phonetheme_name[10] = 'Gopnik'
  899. $phonetheme_name[11] = 'Sports'
  900. $phonetheme_name[12] = 'Succubus'
  901. $phonetheme_name[13] = 'Woodshop'
  902. phonetheme[0] = 1
  903. gs 'phone_selfies', 'Phone_selfie_totals'
  904. end
  905. !!=================================================================!!
  906. !! !!
  907. !! OLD STUFF and EVENTS !!
  908. !! !!
  909. !!=================================================================!!
  910. !--------------------------------------------------------------------------------------------------
  911. ! Old telephone system. Some of this should be removed.
  912. if $ARGS[0] = 'phone_ring':
  913. $telefon['body'] = '
  914. <font size=6><<$caller>> calling</font><br>
  915. <img src="<<$callerid>>"><br>
  916. <br>
  917. <br>
  918. <br>
  919. <br>'
  920. dynamic $telefon['print']
  921. end &! --- phone_ring ---
  922. if $ARGS[0] = 'phone_call_receive':
  923. $telefon['body'] = '
  924. <font size=6>Talking to <<$caller>></font><br>
  925. <img src="<<$callerid>>"><br>'
  926. dynamic $telefon['print']
  927. end &! --- phone_call_receive ---
  928. if $ARGS[0] = 'phone_balance':
  929. if subscription['monthly_calls'] = 0 and subscription['metered_calls'] < 4:
  930. if subscription['monthly_calls'] = 0 and subscription['monthly_calls-date'] > 0:
  931. $contractmessage = '<font size=6>Your mobile contract has expired, you have renew it or buy some minutes.</font><br>'
  932. elseif subscription['metered_calls'] < 4 and subscription['metered_calls-date'] > 0:
  933. $contractmessage = '<font size=6>Not enough minutes left on your contract to make a call</font><br>'
  934. else
  935. $contractmessage = '<font size=6>You don''t have a valid contract, you should buy one at MegFon.</font><br>'
  936. end
  937. $telefon['body'] = '
  938. <<$contractmessage>>
  939. <img src="<<$callerid>>"><br><br>
  940. <a href="exec:gs ''telefon'', ''Phone_menu'' "><img src="images/system/phone/decline.png"></a><br>'
  941. dynamic $telefon['print']
  942. wait 3500
  943. cla
  944. gt $loc, $loc_arg
  945. killvar 'contractmessage'
  946. elseif subscription['metered_calls'] > 4:
  947. subscription['metered_calls'] -= 4
  948. end
  949. end &! --- phone_balance ---
  950. if $ARGS[0] = 'Phone_call':
  951. $telefon['body'] = '
  952. <font size=6>Calling <<$npc_nickname[''A29'']>></font><br>
  953. <img src="images/system/phone/icons/icon_npc1.png"><br><br>
  954. <a href="exec:gs ''telefon'', ''Phone_contactlist'' "><img src="images/system/phone/decline.png"></a><br>'
  955. dynamic $telefon['print']
  956. wait 1500
  957. minut += 1
  958. $callerid = 'images/system/phone/icons/icon_npc1.png'
  959. gs 'telefon', 'phone_balance'
  960. $callerid = 'images/system/phone/icons/icon_npc1.png'
  961. gs 'telefon', 'phone_call_reject'
  962. end &! --- Phone_call ---
  963. if $ARGS[0] = 'phone_call_reject':
  964. $telefon['body'] = '
  965. <font size=6>Calling...</font><br>
  966. <img src="<<$callerid>>"><br><br>
  967. <a href="exec:gs ''telefon'', ''Phone_contactlist'' "><img src="images/system/phone/decline.png"></a><br>'
  968. dynamic $telefon['print']
  969. end &! --- phone_call_reject ---
  970. if $ARGS[0] = 'Phone_megafon':
  971. if subscription['monthly_calls'] = 1:
  972. $contractmessage = 'You have a valid monthly contract that will renew on <<subscription[''monthly_calls-date'']>>/<<month+1>>'
  973. elseif subscription['metered_calls'] = 1:
  974. $contractmessage = 'You have a valid minutes based contract that still has <<subscription[''metered_calls'']>> minuets left'
  975. elseif subscription['monthly_calls'] = 0 and subscription['monthly_calls-date'] > 0:
  976. $contractmessage = '<font size=6>Your mobile contract has expired, you have renew it or buy some minutes.</font><br>'
  977. elseif subscription['metered_calls'] < 4 and subscription['metered_calls-date'] > 0:
  978. $contractmessage = '<font size=6>You have a minute based plan, but it doesn''t have enough minutes left to make a call</font><br>'
  979. else
  980. $contractmessage = '<font size=6>You don''t have any valid contracts, you should buy one at MegaFon.</font><br>'
  981. end
  982. $telefon['body'] = '
  983. <font size=6>MegaFon</font><br>
  984. <img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_megafon.png" height="80" width="80"><br><br>
  985. <b><<$contractmessage>></b>'
  986. dynamic $telefon['print']
  987. killvar '$contractmessage'
  988. end &! --- Phone_megafon ---
  989. if $ARGS[0] = 'Edit_Custom_list':
  990. clr
  991. dummyas = arrsize('$contact')
  992. :din_bad_as1
  993. dummyas -= 1
  994. if dummyas >= 0:
  995. $dummyedit = $contact[dummyas]
  996. $dummyedit1 = dyneval('$result = ''</a><a href="exec:killvar ''''$contact'''',<<dummyas>> & gs ''''telefon'''', ''''Edit_Custom_list'''' "><b>Remove</b>'' ')
  997. $dummyedit2 = $replace($dummyedit,'<b>Call</b>',$dummyedit1)
  998. pl $dummyedit2
  999. jump 'din_bad_as1'
  1000. end
  1001. killvar 'dummyas'
  1002. killvar 'dummyedit'
  1003. killvar 'dummyedit1'
  1004. killvar 'dummyedit2'
  1005. pl'<center><a href="exec:gs ''telefon'', ''Phone_menu'' "><img src="images/system/icons/back.png"></a></center>'
  1006. !dynamic $telefon['print']
  1007. end &! --- Edit_Custom_list ---
  1008. if $ARGS[0] = 'mobilaraz':
  1009. cls
  1010. cla
  1011. gs'din_bad'
  1012. $caller = '<<$telsob>>'
  1013. gs 'telefon','phone_balance'
  1014. gs 'telefon','phone_call_receive'
  1015. willAgree = (rand(0, 10) > 3)
  1016. '"Yes, I''m listening," says a voice from the speaker.'
  1017. if month > 5 and temper > 20 and sunWeather = 1:
  1018. act 'Invite to the park':
  1019. cla
  1020. '"Let''s go for a walk in the park."'
  1021. if willAgree:
  1022. '<<$telsob>>, "See you in the park in an hour."'
  1023. act 'Go':
  1024. if $clothingworntype = 'nude':
  1025. gs 'clothing','wear_last_worn'
  1026. gs 'underwear','wear'
  1027. end
  1028. gt 'parksvid'
  1029. end
  1030. else
  1031. gs 'telefon','telotkaz',$telsob
  1032. end
  1033. end
  1034. end
  1035. act 'Invite to a movie':
  1036. cla
  1037. '"Want to go see a movie?"'
  1038. if willAgree:
  1039. '<<$telsob>>, "See you at the movie theater in an hour."'
  1040. act 'Go':gt 'kinosvid'
  1041. else
  1042. gs 'telefon','telotkaz',$telsob
  1043. end
  1044. end
  1045. act 'Invite to the pool hall':
  1046. cla
  1047. '"Let''s play pool."'
  1048. if willAgree:
  1049. '<<$telsob>>, "See you at the pool hall in an hour."'
  1050. act 'Go':
  1051. if $clothingworntype = 'nude':
  1052. gs 'clothing','wear_last_worn'
  1053. gs 'underwear','wear'
  1054. end
  1055. gt 'billsvid'
  1056. end
  1057. else
  1058. gs 'telefon','telotkaz',$telsob
  1059. end
  1060. end
  1061. act 'Invite to the cafe':
  1062. cla
  1063. '"Let''s go to the cafe."'
  1064. if willAgree:
  1065. '<<$telsob>>, "See you at the cafe in an hour."'
  1066. act 'Go':
  1067. if $clothingworntype = 'nude':
  1068. gs 'clothing','wear_last_worn'
  1069. gs 'underwear','wear'
  1070. end
  1071. gt 'kafesvid'
  1072. end
  1073. else
  1074. gs 'telefon','telotkaz',$telsob
  1075. end
  1076. end
  1077. act 'Invite to the casino':
  1078. cla
  1079. '"Let''s go to the casino."'
  1080. if willAgree:
  1081. '<<$telsob>>, "See you in the casino in an hour."'
  1082. act 'Go':
  1083. if $clothingworntype = 'nude':
  1084. gs 'clothing','wear_last_worn'
  1085. gs 'underwear','wear'
  1086. end
  1087. gt 'kazinosvid'
  1088. end
  1089. else
  1090. gs 'telefon','telotkaz',$telsob
  1091. end
  1092. end
  1093. act 'Hangup':gt 'telefon', 'fin'
  1094. end
  1095. !----------------End Old Telephone----------------------------
  1096. !-----------------------------------------------------------------------------
  1097. ! Support for Hardcoded Lovers (BF/GF)
  1098. if $ARGS[0] = 'callingTheLover' and loverGender[ARGS[1]] = 1:
  1099. cls & cla
  1100. gs 'din_bad'
  1101. lover_number = ARGS[1]
  1102. $caller = '<<$loverdesc[lover_number]>>'
  1103. $telsob = $caller
  1104. $callerid = 'images/characters/shared/headshots_generic/'+lover_picture[lover_number]+'.jpg'
  1105. gs 'telefon','phone_balance'
  1106. gs 'telefon','phone_call_receive'
  1107. willAgree = (rand(0, 10) > 3)
  1108. '"Yes, I''m listening," says a voice from the speaker.'
  1109. if month > 5 and temper > 20 and sunWeather = 1:
  1110. act 'Invite to the park':
  1111. cla
  1112. '"Let''s go for a walk in the park."'
  1113. if willAgree:
  1114. '<<$telsob>>, "See you in the park in an hour."'
  1115. act 'Go':
  1116. if $clothingworntype = 'nude':
  1117. gs 'clothing','wear_last_worn'
  1118. gs 'underwear','wear'
  1119. end
  1120. gt 'parksvid'
  1121. end
  1122. else
  1123. gs 'telefon','telotkaz',$telsob
  1124. end
  1125. end
  1126. end
  1127. act 'Invite to a movie':
  1128. cla
  1129. '"Want to go see a movie?"'
  1130. if willAgree:
  1131. '<<$telsob>>, "See you at the movie theater in an hour."'
  1132. act 'Go':
  1133. if $clothingworntype = 'nude':
  1134. gs 'clothing','wear_last_worn'
  1135. gs 'underwear','wear'
  1136. end
  1137. gt 'kinosvid'
  1138. end
  1139. else
  1140. gs 'telefon','telotkaz',$telsob
  1141. end
  1142. end
  1143. if $home['town'] = 'city':
  1144. act 'Invite to the pool hall':
  1145. cla
  1146. '"Let''s play pool."'
  1147. if willAgree:
  1148. '<<$telsob>>, "See you at the pool hall in an hour."'
  1149. act 'Go':
  1150. if $clothingworntype = 'nude':
  1151. gs 'clothing','wear_last_worn'
  1152. gs 'underwear','wear'
  1153. end
  1154. gt 'billsvid'
  1155. end
  1156. else
  1157. gs 'telefon','telotkaz',$telsob
  1158. end
  1159. end
  1160. end
  1161. act 'Invite to the cafe':
  1162. cla
  1163. '"Let''s go to the cafe."'
  1164. if willAgree:
  1165. '<<$telsob>>, "See you at the cafe in an hour."'
  1166. act 'Go':
  1167. if $clothingworntype = 'nude':
  1168. gs 'clothing','wear_last_worn'
  1169. gs 'underwear','wear'
  1170. end
  1171. gt 'kafesvid'
  1172. end
  1173. else
  1174. gs 'telefon','telotkaz',$telsob
  1175. end
  1176. end
  1177. act 'Invite to the casino':
  1178. cla
  1179. '"Let''s go to the casino."'
  1180. if willAgree:
  1181. '<<$telsob>>, "See you in the casino in an hour."'
  1182. act 'Go':
  1183. if $clothingworntype = 'nude':
  1184. gs 'clothing','wear_last_worn'
  1185. gs 'underwear','wear'
  1186. end
  1187. gt 'kazinosvid'
  1188. end
  1189. else
  1190. gs 'telefon','telotkaz',$telsob
  1191. end
  1192. end
  1193. act 'I think we should break up...':
  1194. cla
  1195. 'She sounds hurt, but you insist it is for the best. You both say goodbye and part ways.'
  1196. gs 'lover', 'remove', lover_number
  1197. act 'Hangup':gt 'telefon', 'fin'
  1198. end
  1199. act 'Hangup':gt 'telefon', 'fin'
  1200. end
  1201. if $ARGS[0] = 'callingTheLover' and loverGender[ARGS[1]] = 0:
  1202. cls
  1203. cla
  1204. gs'din_bad'
  1205. lover_number = ARGS[1]
  1206. $caller = '<<$loverdesc[lover_number]>>'
  1207. $callerid = 'images/characters/shared/headshots_generic/'+lover_picture[lover_number]+'.jpg'
  1208. gs 'telefon','phone_balance'
  1209. gs 'telefon','phone_call_receive'
  1210. willAgree = (rand(0, 10) > 3)
  1211. '"Yes, I''m listening," says a voice from the speaker.'
  1212. if month > 5 and temper > 20 and sunWeather = 1:
  1213. act 'Invite to the park':
  1214. cla
  1215. '"Let''s go for a walk in the park."'
  1216. if willAgree:
  1217. '<<$loverdesc[lover_number]>>, "See you in the park in an hour."'
  1218. act 'Go':
  1219. if $clothingworntype = 'nude':
  1220. gs 'clothing','wear_last_worn'
  1221. gs 'underwear','wear'
  1222. end
  1223. gt 'svidboy', 'parksvid'
  1224. end
  1225. else
  1226. gs 'telefon','telotkaz',$loverdesc[lover_number]
  1227. end
  1228. end
  1229. end
  1230. act 'Invite to a movie':
  1231. cla
  1232. '"Want to go see a movie?"'
  1233. if willAgree:
  1234. '<<$loverdesc[lover_number]>>, "See you at the movie theater in an hour."'
  1235. act 'Go':
  1236. if $clothingworntype = 'nude':
  1237. gs 'clothing','wear_last_worn'
  1238. gs 'underwear','wear'
  1239. end
  1240. gt 'svidboy', 'kinosvid'
  1241. end
  1242. else
  1243. gs 'telefon','telotkaz',$loverdesc[lover_number]
  1244. end
  1245. end
  1246. if $home['town'] = 'city':
  1247. act 'Invite to the pool hall':
  1248. cla
  1249. '"Let''s play pool."'
  1250. if willAgree:
  1251. '<<$loverdesc[lover_number]>>, "See you at the pool hall in an hour."'
  1252. act 'Go':gt 'svidboy', 'billsvid'
  1253. else
  1254. gs 'telefon','telotkaz',$loverdesc[lover_number]
  1255. end
  1256. end
  1257. end
  1258. act 'Invite to the cafe':
  1259. cla
  1260. '"Let''s go to the cafe."'
  1261. if willAgree:
  1262. '<<$loverdesc[lover_number]>>, "See you at the cafe in an hour."'
  1263. act 'Go':
  1264. if $clothingworntype = 'nude':
  1265. gs 'clothing','wear_last_worn'
  1266. gs 'underwear','wear'
  1267. end
  1268. gt 'svidboy', 'kafesvid'
  1269. end
  1270. else
  1271. gs 'telefon','telotkaz',$loverdesc[lover_number]
  1272. end
  1273. end
  1274. act 'I think we should break up...':
  1275. cla
  1276. 'He sounds hurt, but you insist it is for the best. You both say goodbye and part ways.'
  1277. gs 'lover', 'remove', lover_number
  1278. act 'Hangup':gt 'telefon', 'fin'
  1279. end
  1280. act 'Hangup':gt 'telefon', 'fin'
  1281. end
  1282. if $ARGS[0] = 'lover' and loverGender[ARGS[1]] = 0:
  1283. cls
  1284. menu_off = 1
  1285. lover_number = ARGS[1]
  1286. ring = 0
  1287. lover_days = daystart - loverday[lover_number]
  1288. gs 'stat'
  1289. gs 'telefon', 'phone_call_receive'
  1290. svetrand = rand(0, 5)
  1291. if svetrand = 0:$sveta = 'cutie'
  1292. if svetrand = 1:$sveta = 'honey'
  1293. if svetrand = 2:$sveta = 'sweetie'
  1294. if svetrand = 3:$sveta = 'baby'
  1295. if svetrand = 4:$sveta = 'hot stuff'
  1296. if svetrand = 5:$sveta = '<<$pcs_nickname>>'
  1297. 'Hey <<$sveta>>, it''s me, <<$loverdesc[lover_number]>>. How''s it going?'
  1298. act 'Reply':
  1299. cla
  1300. '"Pretty good, you?"'
  1301. '<<$loverdesc[lover_number]>>, "Great, but I kind of miss you, can we meet today?"'
  1302. if (pregchem / 24) <= lover_days and knowpreg = 1 and pregtalk = 0:
  1303. act 'Tell him he''s going to be a dad':
  1304. cla
  1305. pregtalk = 1
  1306. '"Honey, I''m pregnant with your child."'
  1307. if haraklover[lover_number] = 0:
  1308. if loverrelation[lover_number] >= 90:
  1309. loverlove[lover_number] = 1
  1310. '<<$loverdesc[lover_number]>>, "This is wonderful! We have to celebrate!"'
  1311. 'You start talking about living together. <<$loverdesc[lover_number]>> tells you that he is not against it on principle, but first he wants you to meet his parents.'
  1312. 'He warns you that his mother is very demanding and rigorous. <<$loverdesc[lover_number]>> says that he loves his mother and does not want to upset her. Therefore, you must look gorgeous, wear a dress from a boutique, and have well-groomed and curled hair and makeup in moderation.'
  1313. 'When you are totally ready <<$loverdesc[lover_number]>> will take you to his parents.'
  1314. act 'Hang up':gt 'telefon', 'fin'
  1315. act 'Meet tonight':
  1316. cla
  1317. svidanie[lover_number] = 1
  1318. '"How about this evening?"'
  1319. '<<$loverdesc[lover_number]>>, "Sounds great! When can I come to pick you up?"'
  1320. act 'Pick a time':
  1321. cla
  1322. meetday[lover_number] = daystart
  1323. meethour[lover_number] = input ("When do you want to be picked up? It is now <<$mid(100+hour,2,2)>>:<<$mid(100+minut,2,2)>>. [Enter the hour only 0 - 20]")
  1324. if meethour[lover_number] <= hour or meethour[lover_number] > 23:meethour[lover_number] = 20
  1325. '"How about <<meethour[lover_number]>>:00?"'
  1326. '<<$loverdesc[lover_number]>>, "Okay <<$sveta>>, see you at <<meethour[lover_number]>>:00."'
  1327. act 'Hang up':gt 'telefon', 'fin'
  1328. end
  1329. end
  1330. elseif loverrelation[lover_number] < 90:
  1331. money += 20000
  1332. '<<$loverdesc[lover_number]>> "I''m not yet ready to become a dad. I''ll give you the money for an abortion. Get rid of the child.'
  1333. act 'Hang up':gt 'telefon', 'fin'
  1334. end
  1335. elseif haraklover[lover_number] = 1:
  1336. money += 20000
  1337. '<<$loverdesc[lover_number]>> "I''m not yet ready to become a dad. I''ll give you the money get an abortion.'
  1338. act 'Hang up':gt 'telefon', 'fin'
  1339. elseif haraklover[lover_number] = 2:
  1340. pregtalk = 0
  1341. '<<$loverdesc[lover_number]>>, "What? You whore! Someone fucked your pussy, and now you drop it on me. You''re dumped.'
  1342. gs 'lover', 'remove', lover_number
  1343. act 'Hang up':gt 'telefon', 'fin'
  1344. end
  1345. end
  1346. elseif (pregchem / 24) > lover_days and knowpreg = 1 and pregtalk = 0:
  1347. act 'Honey, you will soon become a dad':
  1348. cla
  1349. loverrelation[lover_number] = 0
  1350. '"Honey, I''m pregnant with your child."'
  1351. '<<$loverdesc[lover_number]>>, "How the fuck did I manage that? Unless I own a time-machine and went back to before we met and fucked you, it''s someone else''s, go and tell him. I don''t want to see you again, goodbye."'
  1352. act 'Hang up.':gt 'telefon', 'fin'
  1353. end
  1354. elseif week > 1 and week < 5 and workKafe['job'] = 1:
  1355. act 'Sorry, I''m working today':
  1356. cla
  1357. '"Sorry, I''m working today."'
  1358. '<<$loverdesc[lover_number]>>, "Okay, I''ll call tomorrow."'
  1359. act 'Hang up':gt 'telefon', 'fin'
  1360. end
  1361. end
  1362. act 'Tonight':
  1363. cla
  1364. loverrelation[lover_number] += 1
  1365. svidanie[lover_number] = 1
  1366. meetday[lover_number] = daystart
  1367. '"How about this evening?"'
  1368. '<<$loverdesc[lover_number]>>, "Sounds great! When can I come to pick you up?"'
  1369. act 'Pick a time':
  1370. cla
  1371. meethour[lover_number] = input ("When do you want to be picked up. It is now <<$mid(100+hour,2,2)>>:<<$mid(100+minut,2,2)>>. [Enter the hour only 0 - 20]")
  1372. if meethour[lover_number] <= hour or meethour[lover_number] > 23:meethour[lover_number] = 20
  1373. '"How about <<meethour[lover_number]>>:00?."'
  1374. '<<$loverdesc[lover_number]>>, "Okay <<$sveta>>, see you at <<meethour[lover_number]>>:00."'
  1375. act 'Hang up':gt 'telefon', 'fin'
  1376. end
  1377. end
  1378. act 'Maybe tomorrow':
  1379. cla
  1380. loverrelation[lover_number] -= 1
  1381. '"I''m busy today. Call tomorrow."'
  1382. if loverrelation[lover_number] <= 0:'<<$loverdesc[lover_number]>>, Are you fucking me, you know what. Suck my dick.' & gs 'lover', 'remove', lover_number
  1383. if loverrelation[lover_number] > 0:'(<<$loverdesc[lover_number]>>) - Okay, I''ll call tomorrow.'
  1384. act 'Hang up': gt 'telefon', 'fin'
  1385. end
  1386. act 'I think we should break up...':
  1387. cla
  1388. 'He sounds hurt, but you insist it is for the best. You both say goodbye and part ways.'
  1389. gs 'lover', 'remove', lover_number
  1390. act 'Hang up': gt 'telefon', 'fin'
  1391. end
  1392. end
  1393. act 'Hang up (end relationship)':
  1394. cla
  1395. gs 'lover', 'remove', lover_number
  1396. gt 'telefon', 'fin'
  1397. end
  1398. end
  1399. if $ARGS[0] = 'lover' and loverGender[ARGS[1]] = 1:
  1400. cls
  1401. menu_off = 1
  1402. lover_number = ARGS[1]
  1403. ring = 0
  1404. lover_days = daystart - loverday[lover_number]
  1405. gs 'stat'
  1406. gs 'telefon', 'phone_call_receive'
  1407. svetrand = rand(0, 5)
  1408. if svetrand = 0:$sveta = 'cutie'
  1409. if svetrand = 1:$sveta = 'honey'
  1410. if svetrand = 2:$sveta = 'sweetie'
  1411. if svetrand = 3:$sveta = 'baby'
  1412. if svetrand = 4:$sveta = 'hot stuff'
  1413. if svetrand = 5:$sveta = '<<$pcs_nickname>>'
  1414. 'Hey <<$sveta>>, it''s me, <<$loverdesc[lover_number]>>. How''s it going?'
  1415. act 'Reply':
  1416. cla
  1417. '"Pretty good, you?"'
  1418. '<<$loverdesc[lover_number]>>, "Great, but I kind of miss you, can we meet today?"'
  1419. act 'Tonight':
  1420. cla
  1421. loverrelation[lover_number] += 1
  1422. svidanie[lover_number] = 1
  1423. meetday[lover_number] = daystart
  1424. '"How about this evening?"'
  1425. '<<$loverdesc[lover_number]>>, "Sounds great! When can I come to pick you up?"'
  1426. act 'Pick a time':
  1427. cla
  1428. meethour[lover_number] = input ("When do you want to be picked up. It is now <<$mid(100+hour,2,2)>>:<<$mid(100+minut,2,2)>>. [Enter the hour only 0 - 20]")
  1429. if meethour[lover_number] <= hour or meethour[lover_number] > 23:meethour[lover_number] = 20
  1430. '"How about <<meethour[lover_number]>>:00?."'
  1431. '<<$loverdesc[lover_number]>>, "Okay <<$sveta>>, see you at <<meethour[lover_number]>>:00."'
  1432. act 'Hang up':gt 'telefon', 'fin'
  1433. end
  1434. end
  1435. act 'Maybe tomorrow':
  1436. cla
  1437. loverrelation[lover_number] -= 1
  1438. '"I''m busy today. Call tomorrow."'
  1439. if loverrelation[lover_number] <= 0:'<<$loverdesc[lover_number]>>, Are you fucking me, you know what. Fuck off.' & gs 'lover', 'remove', lover_number
  1440. if loverrelation[lover_number] > 0:'(<<$loverdesc[lover_number]>>) - Okay, I''ll call tomorrow.'
  1441. act 'Hang up': gt 'telefon', 'fin'
  1442. end
  1443. act 'I think we should break up...':
  1444. cla
  1445. 'She sounds hurt, but you insist it is for the best. You both say goodbye and part ways.'
  1446. gs 'lover', 'remove', lover_number
  1447. act 'Hang up': gt 'telefon', 'fin'
  1448. end
  1449. end
  1450. act 'Hang up (end relationship)':
  1451. cla
  1452. gs 'lover', 'remove', lover_number
  1453. gt 'telefon', 'fin'
  1454. end
  1455. end
  1456. !---------------------- End of Lover support
  1457. !!-----------------------------------EVENTS------------------------------------------
  1458. ! Generic Calls for dates
  1459. !! NPC Date
  1460. !! ARGS[1] = contactlist index
  1461. !! $ARGS[2] = Date Location
  1462. if $ARGS[0] = 'NPCDate':
  1463. Call4Date["ContactIndex"] = ARGS[1]
  1464. $Call4Date["Location"] = $ARGS[2]
  1465. $Call4Date["NPC"] = $contact[Call4Date['ContactIndex']]
  1466. $Call4Date["CallerName"] = $npc_nickname[$Call4Date["NPC"]]
  1467. !! These variables are setup for certain downstream functions
  1468. $caller = $Call4Date["CallerName"]
  1469. $callerid = $contactIcon[Call4Date["ContactIndex"]]
  1470. $boydesc = $Call4Date["CallerName"]
  1471. pcs_mood += 10
  1472. npc_rel[$Call4Date["NPC"]] += 3
  1473. if $Call4Date["Location"] = 'city_park':
  1474. if npc_gender[$Call4Date["NPC"]] = 0:
  1475. gt 'dateM','datepark'
  1476. else
  1477. gt 'dateF','datepark'
  1478. end
  1479. elseif $Call4Date["Location"] = 'movie':
  1480. if npc_gender[$Call4Date["NPC"]] = 0:
  1481. gt 'dateM','datecinema'
  1482. else
  1483. !Not implemented yet
  1484. !gt 'dateF','datecinema'
  1485. end
  1486. elseif $Call4Date["Location"] = 'bar':
  1487. if npc_gender[$Call4Date["NPC"]] = 0:
  1488. gt 'dateM','datebar'
  1489. else
  1490. gt 'dateF','datebar'
  1491. end
  1492. elseif $Call4Date["Location"] = 'cafe':
  1493. if npc_gender[$Call4Date["NPC"]] = 0:
  1494. gt 'dateM','datecafe'
  1495. else
  1496. !Not implemented yet
  1497. !gt 'dateF','datecafe'
  1498. end
  1499. end
  1500. killvar 'Call4Date'
  1501. killvar '$Call4Date'
  1502. end
  1503. !! Sveta Calls the NPC
  1504. !! ARGS[1] = contactlist index
  1505. if $ARGS[0] = 'SvetaCallsNPC':
  1506. cls
  1507. cla
  1508. Call4Date["ContactIndex"] = ARGS[1]
  1509. $Call4Date["NPC"] = $contact[Call4Date['ContactIndex']]
  1510. $Call4Date["CallerName"] = $npc_nickname[$Call4Date["NPC"]]
  1511. if npc_gender[$Call4Date["NPC"]] = 0:
  1512. $Call4Date["NPC-he"] = 'he'
  1513. $Call4Date["NPC-He"] = 'He'
  1514. $Call4Date["NPC-his"] = 'his'
  1515. $Call4Date["NPC-His"] = 'His'
  1516. else
  1517. $Call4Date["NPC-he"] = 'her'
  1518. $Call4Date["NPC-He"] = 'Her'
  1519. $Call4Date["NPC-his"] = 'hers'
  1520. $Call4Date["NPC-His"] = 'Hers'
  1521. end
  1522. !! These variables are setup for certain downstream functions
  1523. $caller = $Call4Date["CallerName"]
  1524. $callerid = $contactIcon[Call4Date["ContactIndex"]]
  1525. gs 'telefon','phone_balance'
  1526. gs 'telefon','phone_call_receive'
  1527. Call4Date["willAgree"] = (rand(0, 10) > 3)
  1528. '"Yes, I''m listening," says a voice from the speaker.'
  1529. act 'Ask to meet':
  1530. cla
  1531. '"Let''s meet up."'
  1532. act 'Continue':gt 'telefon', 'NPCCallsForDate', Call4Date["ContactIndex"]
  1533. end
  1534. if month > 5 and temper > 20 and sunWeather = 1:
  1535. act 'Invite to the park':
  1536. cla
  1537. '"Let''s go for a walk in the park."'
  1538. if Call4Date["willAgree"]:
  1539. '<<$Call4Date["CallerName"]>>, "See you in the park in an hour."'
  1540. act 'Go':gt 'telefon', 'NPCDate', Call4Date["ContactIndex"], 'city_park'
  1541. else
  1542. gs 'telefon','telotkaz',$Call4Date["CallerName"]
  1543. end
  1544. end
  1545. end
  1546. act 'Invite to a movie':
  1547. cla
  1548. '"Want to go see a movie?"'
  1549. if Call4Date["willAgree"]:
  1550. '<<$Call4Date["CallerName"]>>, "See you at the movie theater in an hour."'
  1551. act 'Go':gt 'telefon', 'NPCDate', Call4Date["ContactIndex"], 'movie'
  1552. else
  1553. gs 'telefon','telotkaz',$Call4Date["CallerName"]
  1554. end
  1555. end
  1556. if $home['town'] = 'city':
  1557. act 'Invite to the bar':
  1558. cla
  1559. '"Let''s go to the bar."'
  1560. if Call4Date["willAgree"]:
  1561. '<<$Call4Date["CallerName"]>>, "See you at the bar in an hour."'
  1562. act 'Go':gt 'telefon', 'NPCDate', Call4Date["ContactIndex"], 'bar'
  1563. else
  1564. gs 'telefon','telotkaz',$Call4Date["CallerName"]
  1565. end
  1566. end
  1567. end
  1568. act 'Invite to the cafe':
  1569. cla
  1570. '"Let''s go to the cafe."'
  1571. if Call4Date["willAgree"]:
  1572. '<<$Call4Date["CallerName"]>>, "See you at the cafe in an hour."'
  1573. act 'Go':gt 'telefon', 'NPCDate', Call4Date["ContactIndex"], 'cafe'
  1574. else
  1575. gs 'telefon','telotkaz',$Call4Date["CallerName"]
  1576. end
  1577. end
  1578. !!Willpower checks for resistance
  1579. if npc_rel[$Call4Date["NPC"]] <= 25:
  1580. $Call4Date["loverResist"] = 'easy'
  1581. elseif npc_rel[$Call4Date["NPC"]] <= 50:
  1582. $Call4Date["loverResist"] = 'medium'
  1583. else
  1584. $Call4Date["loverResist"] = 'hard'
  1585. end
  1586. gs 'willpower', 'misc', 'self', $Call4Date["loverResist"]
  1587. if will_cost <= pcs_willpwr:
  1588. act 'I think we should break up... (<<will_cost>> Willpower)':
  1589. *clr & cla
  1590. gs 'willpower', 'pay', 'self'
  1591. gs 'stat'
  1592. '<<$Call4Date["NPC-He"]>> sounds hurt, but you insist it is for the best. You both say goodbye and part ways.'
  1593. gs 'telefon', 'DeleteContact', $Call4Date["NPC"]
  1594. act 'Hang up': gt 'telefon', 'fin'
  1595. end
  1596. else
  1597. act 'I think we should break up... (<font color="red"><<will_cost>> Willpower</font>)':
  1598. '<br><font color="red">You don''t have enough willpower to use this action.</font>'
  1599. end
  1600. end
  1601. act 'Hangup':gt 'telefon', 'fin'
  1602. killvar 'Call4Date'
  1603. killvar '$Call4Date'
  1604. killvar '$DateNickName'
  1605. end
  1606. !! NPC Calls Sveta for a Date
  1607. !! ARGS[1] = $contact index number
  1608. if $ARGS[0] = 'NPCCallsForDate':
  1609. cla
  1610. clr
  1611. Call4Date["ContactIndex"] = ARGS[1]
  1612. $Call4Date["NPC"] = $contact[Call4Date['ContactIndex']]
  1613. if npc_gender[$Call4Date["NPC"]] = 0:
  1614. $Call4Date["NPC-he"] = 'he'
  1615. $Call4Date["NPC-He"] = 'He'
  1616. $Call4Date["NPC-his"] = 'his'
  1617. $Call4Date["NPC-His"] = 'His'
  1618. else
  1619. $Call4Date["NPC-he"] = 'her'
  1620. $Call4Date["NPC-He"] = 'Her'
  1621. $Call4Date["NPC-his"] = 'hers'
  1622. $Call4Date["NPC-His"] = 'Hers'
  1623. end
  1624. !!Pick a nickname that caller will use for Sveta
  1625. $DateNickName[0] = 'cutie'
  1626. $DateNickName[1] = 'honey'
  1627. $DateNickName[2] = 'sweetie'
  1628. $DateNickName[3] = 'baby'
  1629. $DateNickName[4] = 'hot stuff'
  1630. $DateNickName[5] = '<<$pcs_nickname>>'
  1631. $Call4Date['SvetaName'] = $DateNickName[rand(0, arrsize('$DateNickName'))]
  1632. $Call4Date['CallerName'] = $npc_nickname[$Call4Date["NPC"]]
  1633. !! These variables are setup for certain downstream functions
  1634. $caller = $Call4Date["CallerName"]
  1635. $callerid = $contactIcon[Call4Date["ContactIndex"]]
  1636. 'Hey <<$Call4Date["SvetaName"]>>, it''s me, <<$Call4Date["CallerName"]>>. How''s it going?'
  1637. act 'Answer':
  1638. cla
  1639. '"Pretty good, you?"'
  1640. '<<$Call4Date["CallerName"]>>, "Great, but I kind of miss you, can we meet today?"'
  1641. if week > 1 and week < 5 and workKafe['job'] = 1:
  1642. act 'Sorry, I''m working today':
  1643. cla
  1644. '"Sorry, I''m working today."'
  1645. '<<$Call4Date["CallerName"]>>, "Okay, I''ll call tomorrow."'
  1646. act 'Hang up':gt 'telefon', 'fin'
  1647. end
  1648. end
  1649. act 'Tonight':
  1650. cla
  1651. npc_rel[$Call4Date["NPC"]] += 1
  1652. contMeetDay[Call4Date["ContactIndex"]] = daystart
  1653. '"How about this evening?"'
  1654. '<<$Call4Date["CallerName"]>>, "Sounds great! When can I come to pick you up?"'
  1655. act 'Pick a time':
  1656. cla
  1657. contMeetHour[Call4Date["ContactIndex"]] = input ("When do you want to be picked up. It is now <<$mid(100+hour,2,2)>>:<<$mid(100+minut,2,2)>>. [Enter the hour only 0 - 20]")
  1658. if contMeetHour[Call4Date["ContactIndex"]] <= hour or contMeetHour[Call4Date["ContactIndex"]] > 23:contMeetHour[Call4Date["ContactIndex"]] = 20
  1659. '"How about <<contMeetHour[Call4Date["ContactIndex"]]>>:00?."'
  1660. '<<$Call4Date["CallerName"]>>, "Okay <<$Call4Date["SvetaName"]>>, see you at <<contMeetHour[Call4Date["ContactIndex"]]>>:00."'
  1661. act 'Hang up':gt 'telefon', 'fin'
  1662. end
  1663. end
  1664. act 'Maybe tomorrow':
  1665. cla
  1666. npc_rel[$Call4Date["NPC"]] -= 1
  1667. '"I''m busy today. Call tomorrow."'
  1668. if npc_rel[$Call4Date["NPC"]] <= 0:'<<$Call4Date["CallerName"]>>, Are you fucking me, you know what. Suck my dick.' & gs 'telefon', 'DeleteContact', $Call4Date["NPC"]
  1669. if npc_rel[$Call4Date["NPC"]] > 0:'(<<$Call4Date["CallerName"]>>) - Okay, I''ll call tomorrow.'
  1670. act 'Hang up': gt 'telefon', 'fin'
  1671. end
  1672. !!Willpower checks for resistance
  1673. if npc_rel[$Call4Date["NPC"]] <= 25:
  1674. $Call4Date["loverResist"] = 'easy'
  1675. elseif npc_rel[$Call4Date["NPC"]] <= 50:
  1676. $Call4Date["loverResist"] = 'medium'
  1677. else
  1678. $Call4Date["loverResist"] = 'hard'
  1679. end
  1680. gs 'willpower', 'misc', 'self', $Call4Date["loverResist"]
  1681. if will_cost <= pcs_willpwr:
  1682. act 'I think we should break up... (<<will_cost>> Willpower)':
  1683. *clr & cla
  1684. gs 'willpower', 'pay', 'self'
  1685. gs 'stat'
  1686. '<<$Call4Date["NPC-He"]>> sounds hurt, but you insist it is for the best. You both say goodbye and part ways.'
  1687. gs 'telefon', 'DeleteContact', $Call4Date["NPC"]
  1688. act 'Hang up': gt 'telefon', 'fin'
  1689. end
  1690. else
  1691. act 'I think we should break up... (<font color="red"><<will_cost>> Willpower</font>)':
  1692. '<br><font color="red">You don''t have enough willpower to use this action.</font>'
  1693. end
  1694. end
  1695. end
  1696. act 'Hang up (end relationship)':
  1697. cla
  1698. gs 'telefon', 'DeleteContact', $Call4Date["NPC"]
  1699. gt 'telefon', 'fin'
  1700. end
  1701. killvar 'Call4Date'
  1702. killvar '$Call4Date'
  1703. killvar '$DateNickName'
  1704. end
  1705. --- telefon ---------------------------------