telefon.qsrc 70 KB

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