boyStat 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. # boyStat
  2. !!For setting the $boy, dick and $dick_girth with a single call for a npc
  3. !!Use with a gosub and match the ARGS[0] with the correct char
  4. !!A generated NPC would be gs 'boyStat', $npclastcalled
  5. !!Other NPCs may be called either by number if they are a static NPC, or by letter and number otherwise.
  6. !!eg. "gs 'boyStat', 'A56'" would call for Roma. Likewise, "gs 'boyStat', 'A56'" also calls for Roma.
  7. !! A second argument calls for multiple partners. They are output as stats1, stats2, stats3, and stats4, for a total of 5 stats.
  8. if ($ARGS[0] = '' and ARGS[0] > 0) or mid($ARGS[0],1,1) < 10:
  9. if ARGS[0] > 0:
  10. npclastcalledn = ARGS[0]
  11. else
  12. npclastcalledn = $ARGS[0]
  13. end
  14. $npcboytemp = 'A' + npclastcalledn
  15. else
  16. $npcboytemp = $ARGS[0]
  17. !! {This error is for where something outside the range of possibility is specified. The calling code is broken. The exact thing specified will be announced.}
  18. if mid($npcboytemp,2,1) > 10:
  19. MSG 'There has been an error in the $boy passing code. Please contact a developer with what you were doing prior to receiving this message so the error may be fixed. Error type: Improper value for boyStat. Calling <<$ARGS[0]>>'
  20. $npcboytemp = 'D0'
  21. end
  22. end
  23. if mid($npcboytemp,1,1) = 'A' or mid($npcboytemp,1,1) = 'B' or mid($npcboytemp,1,1) = 'C':
  24. $npclastcalled = $npcboytemp
  25. npclastcalledn = mid($npcboytemp, 2)
  26. if $npc_usedname[$npclastcalled]=0: $npc_usedname[$npclastcalled] = $npc_firstname[$npclastcalled] & !! this is a workaround which compensate incomplete settings in npc_static files, it can be removed later ...
  27. $bstemp[1] = $npc_usedname[$npclastcalled]
  28. bstemp[2] = npc_dick[$npclastcalled]
  29. $bstemp[3] = $npc_thdick[$npclastcalled]
  30. bstemp[4] = npc_sexskill[$npclastcalled]
  31. if npc_gender[$npclastcalled] = 0 or npc_gender[$npclastcalled] = 3:
  32. $bstemp[5] = 'he' & $bstemp[6] = 'He'
  33. $bstemp[7] = 'his' & $bstemp[8] = 'His'
  34. $bstemp[9] = 'him' & $bstemp[10] = 'Him'
  35. $bstemp[11] = 'his' & $bstemp[12] = 'His'
  36. $bstemp[13] = 'himself' & $bstemp[14] = 'Himself'
  37. elseif npc_gender[$npclastcalled] = 1 or npc_gender[$npclastcalled] = 2:
  38. $bstemp[5] = 'she' & $bstemp[6] = 'She'
  39. $bstemp[7] = 'her' & $bstemp[8] = 'Her'
  40. $bstemp[9] = 'her' & $bstemp[10] = 'Her'
  41. $bstemp[11] = 'hers' & $bstemp[12] = 'Hers'
  42. $bstemp[13] = 'herself' & $bstemp[14] = 'Herself'
  43. else
  44. $bstemp[5] = 'xe' & $bstemp[6] = 'Xe'
  45. $bstemp[7] = 'xem' & $bstemp[8] = 'Xem'
  46. $bstemp[9] = 'xyr' & $bstemp[10] = 'Xyr'
  47. $bstemp[11] = 'xyrs' & $bstemp[12] = 'Xyrs'
  48. $bstemp[13] = 'xemself' & $bstemp[14] = 'Xemself'
  49. end
  50. elseif mid($npcboytemp,1,1) = 'D':
  51. if mid($npcboytemp, 2) = 1:
  52. $bstemp[1] = 'small sized'
  53. bstemp[2] = 10
  54. $bstemp[3] = 'slim'
  55. elseif mid($npcboytemp, 2) = 2:
  56. $bstemp[1] = 'medium sized'
  57. bstemp[2] = 15
  58. $bstemp[3] = 'well proportioned'
  59. elseif mid($npcboytemp, 2) = 3:
  60. $bstemp[1] = 'large sized'
  61. bstemp[2] = 20
  62. $bstemp[3] = 'thicker than average'
  63. elseif mid($npcboytemp, 2) = 4:
  64. $bstemp[1] = 'huge sized'
  65. bstemp[2] = 25
  66. $bstemp[3] = 'thick'
  67. elseif mid($npcboytemp, 2) = 5:
  68. $bstemp[1] = 'giant sized'
  69. bstemp[2] = 30
  70. $bstemp[3] = 'massive'
  71. elseif mid($npcboytemp, 2) = 6:
  72. $bstemp[1] = 'humongous sized'
  73. bstemp[2] = 35
  74. $bstemp[3] = 'monstrous'
  75. else
  76. $bstemp[1] = 'horse sized'
  77. bstemp[2] = 40
  78. $bstemp[3] = 'monstrous'
  79. end
  80. end
  81. if $ARGS[1] = 'a':
  82. $boy1 = $npclastcalled
  83. $boydesc1 = $bstemp[1]
  84. dick1 = bstemp[2]
  85. $dick_girth1 = $bstemp[3]
  86. silavag1 = bstemp[4]
  87. $xe1 = $bstemp[5] & $xec1 = $bstemp[6]
  88. $xem1 = $bstemp[7] & $xemc1 = $bstemp[8]
  89. $xyr1 = $bstemp[9] & $xyrc1 = $bstemp[10]
  90. $xyrs1 = $bstemp[11] & $xyrsc1 = $bstemp[12]
  91. $xemself1 = $bstemp[13] & $xemselfc1 = $bstemp[14]
  92. elseif $ARGS[1] = 'b':
  93. $boy2 = $npclastcalled
  94. $boydesc2 = $bstemp[1]
  95. dick2 = bstemp[2]
  96. $dick_girth2 = $bstemp[3]
  97. silavag2 = bstemp[4]
  98. $xe2 = $bstemp[5] & $xec2 = $bstemp[6]
  99. $xem2 = $bstemp[7] & $xemc2 = $bstemp[8]
  100. $xyr2 = $bstemp[9] & $xyrc2 = $bstemp[10]
  101. $xyrs2 = $bstemp[11] & $xyrsc2 = $bstemp[12]
  102. $xemself2 = $bstemp[13] & $xemselfc2 = $bstemp[14]
  103. elseif $ARGS[1] = 'c':
  104. $boy3 = $npclastcalled
  105. $boydesc3 = $bstemp[1]
  106. dick3 = bstemp[2]
  107. $dick_girth3 = $bstemp[3]
  108. silavag3 = bstemp[4]
  109. $xe3 = $bstemp[5] & $xec3 = $bstemp[6]
  110. $xem3 = $bstemp[7] & $xemc3 = $bstemp[8]
  111. $xyr3 = $bstemp[9] & $xyrc3 = $bstemp[10]
  112. $xyrs3 = $bstemp[11] & $xyrsc3 = $bstemp[12]
  113. $xemself3 = $bstemp[13] & $xemselfc3 = $bstemp[14]
  114. elseif $ARGS[1] = 'd':
  115. $boy4 = $npclastcalled
  116. $boydesc4 = $bstemp[1]
  117. dick4 = bstemp[2]
  118. $dick_girth4 = $bstemp[3]
  119. silavag4 = bstemp[4]
  120. $xe4 = $bstemp[5] & $xec4 = $bstemp[6]
  121. $xem4 = $bstemp[7] & $xemc4 = $bstemp[8]
  122. $xyr4 = $bstemp[9] & $xyrc4 = $bstemp[10]
  123. $xyrs4 = $bstemp[11] & $xyrsc4 = $bstemp[12]
  124. $xemself4 = $bstemp[13] & $xemselfc4 = $bstemp[14]
  125. else
  126. i = ARGS[1]
  127. if mid($ARGS[1],1,1) < 10: i = $ARGS[1]
  128. $boy[i] = $npclastcalled
  129. $boydesc[i] = $bstemp[1]
  130. dick[i] = bstemp[2]
  131. $dick_girth[i] = $bstemp[3]
  132. silavag[i] = bstemp[4]
  133. $xe[i] = $bstemp[5] & $xec[i] = $bstemp[6]
  134. $xem[i] = $bstemp[7] & $xemc[i] = $bstemp[8]
  135. $xyr[i] = $bstemp[9] & $xyrc[i] = $bstemp[10]
  136. $xyrs[i] = $bstemp[11] & $xyrsc[i] = $bstemp[12]
  137. $xemself[i] = $bstemp[13] & $xemselfc[i] = $bstemp[14]
  138. end
  139. killvar 'bstemp'
  140. killvar '$bstemp'
  141. killvar 'i'
  142. --- boyStat ---------------------------------