people.js 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323
  1. //
  2. // People you can encounter
  3. /*jshint multistr:true*/
  4. // Demon at the Volcano
  5. var demon;
  6. function createDemon()
  7. {
  8. demon = new Avatar(0, 50, 100, 100, 50);
  9. demon.physique.skin = 100;
  10. demon.physique.horns = 10;
  11. demon.physique.hornstype = 2;
  12. demon.physique.tail = 10;
  13. demon.physique.tailtype = 2;
  14. demon.physique.wings = 1;
  15. demon.physique.hairc = "black";
  16. demon.physique.irisc = "red";
  17. demon.Mods.ironwill = 4;
  18. demon.Mods.breasts = 12;
  19. demon.Mods.changra = 100;
  20. demon.Mods.perception = 10;
  21. demon.Mods.amazon = 1;
  22. demon.Mods.pushsubmissiveness = 10;
  23. demon.Mods.pushdomesticity = 10;
  24. demon.Mods.pushmaternalism = 10;
  25. demon.Mods.pushallure = 10;
  26. demon.Mods.pushorientation = 10;
  27. demon.Mods.resistsubmissiveness = 20;
  28. demon.Mods.resistdomesticity = 20;
  29. demon.Mods.resistmaternalism = 20;
  30. demon.Mods.resistallure = 20;
  31. demon.Mods.resistorientation = 20;
  32. demon.name = "Demona";
  33. }
  34. // Meet Demon
  35. function MeetDemon()
  36. {
  37. rival = demon;
  38. redraw();
  39. if (getPlaceCnt("Volcano") == 2) {
  40. Message(NextWindow, "<h1>Demon!</h1><p>After wander near the fire mountain \
  41. day, you find tracks in the scortched earth, barefoot and a womans!\
  42. You hunt her, to claim her as a new woman for you clan!</p>\
  43. <p>You charge and she moves away, staying from your grasp and that of your ancestors. She speak oddly</p>\
  44. <p>'You are a new one for me to prey on, but you do seem stronger than most who become my toys.\
  45. I will let you go for now. Come back when you are stronger, then we will fight, either I will enslave you \
  46. or you will enslave me as your woman'</p>\
  47. <p>She laughs amused at the idea you defeat her. You furious and decide to attack any way. She smiles and her wings stretch out, she flies away!!!</p>\
  48. <p>You will return to capture this woman!</p>\
  49. ");
  50. } else {
  51. Message(NextWindow, "<h1>Nothing</h1><p>You failed to hunt anything but you do see the red woman far away, you could not catch her.</p>");
  52. }
  53. EndRound();
  54. }
  55. // Smith
  56. var smith;
  57. function createSmith()
  58. {
  59. createRival(20);
  60. smith = rival;
  61. smith.Mods.amazon = 2;
  62. smith.Mods.breasts = 6;
  63. smith.submissiveness = 0;
  64. smith.domesticity = 80;
  65. smith.maternalism = 65;
  66. smith.allure = 100;
  67. smith.orientation = 80;
  68. smith.futa = 0;
  69. smith.Mods.infuse = 1;
  70. smith.Mods.craftnipplerings = 1;
  71. smith.items.nipplerings = 1;
  72. smith.name = "Anhk";
  73. smith.goods = 0;
  74. }
  75. // Meet Smith
  76. function MeetSmith()
  77. {
  78. rival = smith;
  79. rival.round = player.round;
  80. redraw();
  81. EndRound(Message(NextWindow, "<h1>Another Clan!</h1><p>You wander looking for man to claim for your clan \
  82. and you come across another clan, huts and fires. You cautious and approach,\
  83. but no man meet you but a woman!</p>\
  84. <p>You prepare your changra to fight for her but sh speak</p>\
  85. <p>'Wait! This is my clan and you no beat me easily. Why not we trade, no fight!'</p>\
  86. <p>Strange woman, how a woman be head of clan? Still you can fight another time so you sit with her and talk. She know many things you do not and talks of how to make things and how to use your ancestors to make things stronger.</p>\
  87. <p>Maybe you return one day and learn more from her</p>\
  88. "));
  89. }
  90. // Trade with the Smith
  91. function TradeSmith()
  92. {
  93. rival = smith;
  94. redraw();
  95. $(".stats").hide();
  96. $("#output").html("<h1>Trading</h1><p>You meet the woman and her clan again and talk of making and ancestors. She tell you she can teach you about</p>\
  97. <div id='teach_buttons' class='push--top'>");
  98. if (player.Mods.infuse === 0) {
  99. $("#output").append("<button id='teach_infuse' class='btn btn-woman push--right'>Infuse</button>");
  100. }
  101. if (player.Mods.craftnipplerings === 0) {
  102. $("#output").append("<button id='teach_rings' class='btn btn-woman push--right'>Nipple Rings</button>");
  103. } else {
  104. if (player.Mods.craftcollar === 0) {
  105. $("#output").append("<button id='teach_collar' class='btn btn-woman push--right'>Torc</button>");
  106. }
  107. if (player.Mods.craftbellybuttonstud === 0) {
  108. $("#output").append("<button id='teach_bellybuttonstud' class='btn btn-woman push--right'>Belly Button Stud</button>");
  109. }
  110. if (player.Mods.craftheadband === 0) {
  111. $("#output").append("<button id='teach_headband' class='btn btn-woman push--right'>Headband</button>");
  112. }
  113. if (player.Mods.craftclitcockring === 0) {
  114. $("#output").append("<button id='teach_clitcockring' class='btn btn-woman push--right'>Clit/Cock Ring</button>");
  115. }
  116. $("#output").append("<button id='buy_metal' class='btn btn-woman push--right'>Barter Metal</button>");
  117. }
  118. $("#output").append("<button id='talk_btn' class='btn btn-woman push--right'>Talk</button>");
  119. $("#output").append("<button id='leave_btn' class='btn btn-woman push--right'>Leave</button></div>");
  120. if (player.Mods.infuse === 0) $("#teach_infuse").click(function(){TeachInfuse()});
  121. if (player.Mods.craftnipplerings === 0) $("#teach_rings").click(function(){TeachNippleRings()});
  122. else {
  123. if (player.Mods.craftcollar === 0) $("#teach_collar").click(function(){TeachCollar()});
  124. if (player.Mods.craftheadband === 0) $("#teach_headband").click(function(){TeachHeadBand()});
  125. if (player.Mods.craftbellybuttonstud === 0) $("#teach_bellybuttonstud").click(function(){TeachBellyButtonStud()});
  126. if (player.Mods.craftclitcockring === 0) $("#teach_clitcockring").click(function(){TeachClitCockRing()});
  127. $("#buy_metal").click(function(){BuyMetal();});
  128. }
  129. $("#talk_btn").click(function(){TalkSmith();});
  130. $("#leave_btn").click(function(){NextWindow();});
  131. $("#output").append("<div id='trade_output'></div>");
  132. }
  133. function TeachInfuse()
  134. {
  135. if (player.goods < 10) $("#trade_output").html("<p>You talk of this and she say you need to give her 2 hands of goods for her to teach you</p>");
  136. else if (player.experience < 5) $("#trade_output").html("<p>You not interested in training more now, maybe when you more of a man.</p>");
  137. else {
  138. player.goods -= 10;
  139. smith.goods += 10;
  140. player.experience -= 5;
  141. player.Mods.infuse = 1;
  142. Message(TradeSmith, "<h1>Training</h1><p>She teach you how to cook things and chant over them to call the power of your ancestors into the thing and change it's power. You need to offer to your ancestors and give these things to the fire.</p><p>You leave her, knowing how to better build your clan.</p>");
  143. NextWindow();
  144. }
  145. }
  146. function TeachNippleRings()
  147. {
  148. if (player.goods < 10) $("#trade_output").html("<p>You talk of this and she say you need to give her 2 hands of goods for her to teach you</p>");
  149. else if (player.experience < 5) $("#trade_output").html("<p>You not interested in training more now, maybe when you more of a man.</p>");
  150. else {
  151. player.goods -= 10;
  152. smith.goods += 10;
  153. player.experience -= 5;
  154. player.Mods.craftnipplerings = 1;
  155. Message("TradeSmith()", "<h1>Training</h1><p>She teach you about a thing called 'metal' a yellow or red thing you can easily make things from. It rare and only a few know how to find or make it. She show you how to make rings you put in a piercing into nipples. They make people desire to fuck more. You need metal to make these and she sell you metal for one hand of goods.</p><p>You can now craft these back at camp</p>");
  156. NextWindow();
  157. }
  158. }
  159. function TeachCollar()
  160. {
  161. if (player.goods < 10) $("#trade_output").html("<p>You talk of this and she say you need to give her 2 hands of goods for her to teach you</p>");
  162. else if (player.experience < 5) $("#trade_output").html("<p>You not interested in training more now, maybe when you more of a man.</p>");
  163. else {
  164. player.goods -= 10;
  165. smith.goods += 10;
  166. player.experience -= 5;
  167. player.Mods.craftcollar = 1;
  168. Message("TradeSmith()", "<h1>Training</h1><p>She teach you about how to make a collar out the yellow metal and a pretty stone, it make you a leader. It will stop any of your clan running away, especially if they men.</p><p>You can now craft these back at camp</p>");
  169. NextWindow();
  170. }
  171. }
  172. function TeachHeadBand()
  173. {
  174. if (player.goods < 10) $("#trade_output").html("<p>You talk of this and she say you need to give her 2 hands of goods for her to teach you</p>");
  175. else if (player.experience < 5) $("#trade_output").html("<p>You not interested in training more now, maybe when you more of a man.</p>");
  176. else {
  177. player.goods -= 10;
  178. smith.goods += 10;
  179. player.experience -= 5;
  180. player.Mods.craftheadband = 1;
  181. Message("TradeSmith()", "<h1>Training</h1><p>She teach you about how to make a band to wear on head out the yellow metal, it make you more handsome.</p><p>You can now craft these back at camp</p>");
  182. NextWindow();
  183. }
  184. }
  185. function TeachBellyButtonStud()
  186. {
  187. if (player.goods < 10) $("#trade_output").html("<p>You talk of this and she say you need to give her 2 hands of goods for her to teach you</p>");
  188. else if (player.experience < 5) $("#trade_output").html("<p>You not interested in training more now, maybe when you more of a man.</p>");
  189. else {
  190. player.goods -= 10;
  191. smith.goods += 10;
  192. player.experience -= 5;
  193. player.Mods.craftbellybuttonstud = 1;
  194. Message("TradeSmith()", "<h1>Training</h1><p>She teach you about how to make a stud you pierce into your belly button, very little metal and pretty stone needed it help your women to bear many children.</p><p>You can now craft these back at camp</p><p>She tell you things here big and confused, about how we only bear man children and maybe we talk more another time.</p>");
  195. NextWindow();
  196. }
  197. }
  198. function TeachClitCockRing()
  199. {
  200. if (player.goods < 10) $("#trade_output").html("<p>You talk of this and she say you need to give her 2 hands of goods for her to teach you</p>");
  201. else if (player.experience < 5) $("#trade_output").html("<p>You not interested in training more now, maybe when you more of a man.</p>");
  202. else {
  203. player.goods -= 10;
  204. smith.goods += 10;
  205. player.experience -= 5;
  206. player.Mods.craftclitcockring = 1;
  207. Message("TradeSmith()", "<h1>Training</h1><p>She teach you about how to make a ring you pierce into your cock or a womans pussy, a little metal needed.</p><p>You can now craft these back at camp</p>");
  208. NextWindow();
  209. }
  210. }
  211. function BuyMetal()
  212. {
  213. if (player.goods < 5) $("#trade_output").html("<p>You talk of this and she say you need to give her 1 hands of goods to buy metal</p>");
  214. else {
  215. player.goods -= 5;
  216. smith.goods += 5;
  217. player.metal += 1;
  218. $("#trade_output").append("<h2>Barter Metal</h2><p>You barter for a bit of metal</p>");
  219. }
  220. }
  221. function TalkSmith()
  222. {
  223. var str;
  224. if (player.Mods.craftbellybuttonstud === 1 && player.Mods.craftleftbracelet === 0) {
  225. if (smith.checkSwitch(0)) {
  226. // quest pending, so you have them?
  227. rival = undefined;
  228. var index = 0;
  229. for (index = 0; index < player.women.length; index++) {
  230. if (player.women[index].name == "Weshptah" && player.women[index].checkSwitch(0)) {
  231. // got him
  232. rival = player.women[index];
  233. break;
  234. }
  235. }
  236. if (rival !== undefined) {
  237. if (rival.pregnancy != 0 || rival.childrenboy != 0 || rival.childrengirl != 0) {
  238. var str = "<h1>Talking</h1><p>You have Weshptah and hand " + rival.himher + " over to " + smith.name + ". She look at Weshptah and at you, and say,</p><p>&quot;You took Weshptah as your woman, you want her? Give me 2 hands of goods and keep her&quot;</p>";
  239. if (player.goods > 9) {
  240. str += "<p>You have the goods and Weshptah now yours! You pay " + smith.name + " and she says she find a stonger man!";
  241. player.goods -= 10;
  242. } else {
  243. str += "<p>You no have the goods so " + smith.name + " slap Weshptah as say they will no leave again. She puts a collar around Weshptah's neck and turns to you<p>";
  244. player.women.splice(index, 1);
  245. smith.women.push(rival);
  246. }
  247. str += "<p>&quot;You did as you said me now teach you the great secret.&quot; She show you how to make a bracelet that allow the wearer to bear a female child! It take a lot of the power of the person who makes it, and weakens them much. It also need a bit of metal and stone to craft.</p><p>A person can wear two bracelets and this means their children will always be female.</p><p>You can now craft these back at camp.</p>";
  248. Message(NextWindow, str);
  249. } else {
  250. player.women.splice(index, 1);
  251. smith.women.push(rival);
  252. Message(NextWindow, "<h1>Talking</h1><p>You have Weshptah and hand " + rival.himher + " over to " + smith.name + ". She happy to see Weshptah but she slap them as say they will no leave again. She puts a collar around Weshptah's neck and turns to you<p><p>You did as you said me now teach you the great secret. She show you have to make a bracelet that allow the wearer to bear a female child! It take a lot of the power of the person who makes it, and weakens them much. It also need a bit of metal and stone to craft.</p><p>A person can wear two bracelets and this means their children will always be female</p><p>You can now craft these back at camp</p>");
  253. }
  254. player.Mods.craftleftbracelet = 1;
  255. } else Message(NextWindow, "<h1>Talking</h1><p>You talk to " + smith.name + " but you no have her man yet, so she tell you to go</p>");
  256. return;
  257. }
  258. smith.advanceDesire();
  259. if (smith.desire < 90) Message(NextWindow, "<h1>Talking</h1><p>You talk to " + smith.name + " about her clan and yours, she want to talk more about you and your hunting. She once say about woman child but say she talk more later.</p>");
  260. else {
  261. smith.desire = 0;
  262. smith.setSwitch(0, true);
  263. str = "<h1>Talking</h1><p>You talk to " + smith.name + " about her clan and she stop you, and say 'No more talking, we fuck!</p>";
  264. if (!player.hasCock()) str += "<p>She make you lay down and using tongue and fingers make you cry with pleasure. You then do the same to her</p>";
  265. else {
  266. str += "<p>She lie you back and mount your hard cock and make you scream with pleasure as you cum hard into her</p>";
  267. if (!smith.isPregnant()) smith.pregnancy = 2.5;
  268. }
  269. str += "<p>After she tell you that she had a man who she was making a strong man to father her children. He come to her as told her he no want to be her man and ran away to found his own clan! " + smith.name + " say if you return this man, name Weshptah back to her, she teach you a great secret, how to make you women bear girl children. It powerful secret of her ancestors but for this she teach you!</p><p>She tell you Weshptah like the sea and he a cunning hunter so be careful with him! You ask what is 'sea' and she tell you about the great water and where it is.</p>";
  270. setPlaceVisited("Beach");
  271. Message(NextWindow, str);
  272. }
  273. } else {
  274. smith.advanceDesire();
  275. if (player.Mods.craftleftbracelet === 1) {
  276. if (smith.desire < 90) {
  277. if (smith.isPregnant()) Message(NextWindow, "<h1>Talking</h1><p>You talk to " + smith.name + " about her clan and yours, about your ancestors and many other things.</p><p>She hold her belly as you talk, filling with your child</p>");
  278. else Message(NextWindow, "<h1>Talking</h1><p>You talk to " + smith.name + " about her clan and yours, about your ancestors and many other things.</p>");
  279. } else {
  280. smith.desire = 0;
  281. str = "<h1>Talking</h1><p>You talk to " + smith.name + " about her clan and she stop you, and say 'No more talking, we fuck!</p>";
  282. if (!player.hasCock()) str += "<p>She make you lay down and using tongue and fingers make you cry with pleasure. You then do the same to her</p>";
  283. else {
  284. str += "<p>She lie you back and mount your hard cock and make you scream with pleasure as you cum hard into her</p>";
  285. if (!smith.isPregnant()) smith.pregnancy = 2.5;
  286. }
  287. Message(NextWindow, str);
  288. }
  289. } else {
  290. Message(NextWindow, "<h1>Talking</h1><p>You talk to " + smith.name + " about her clan and yours, about your ancestors and many other things.</p>");
  291. }
  292. }
  293. NextWindow();
  294. }
  295. // Run aways
  296. var runaways = [ ];