1 package org
.sevenchan
.dongs
.bodyparts
3 import org
.sevenchan
.dongs
.Creature
;
4 import flash
.net
.registerClassAlias
;
5 import org
.sevenchan
.dongs
.creature
.Player
;
6 import org
.sevenchan
.dongs
.enchantment
.Enchantment
;
7 import org
.sevenchan
.dongs
.weapons
.IWeapon
;
8 import org
.sevenchan
.dongs
.clothing
.Clothing
;
13 public class Asshole
implements IBodyPart
15 registerClassAlias
("P_Asshole", Asshole
);
17 public var _name
:String;
18 public var timesFucked
:Number = 0;
19 public var volumeFilled
:Number = 0;
20 public var capacity
:Number = 1500;
21 public var filledWith
:String = "";
22 public var pregCounter
:Number = -1;
23 public var pregnantWith
:Creature
= null;
24 public var _location
:String = "right where it should be";
25 public var _pen
:Boolean = false;
27 public function Asshole
(value
:Number=0,name
:String="")
33 private var _value
:Number;
34 public function get value
():Number {
38 public function get category
():String {
42 public function get name
():String {
46 public function get location
():String { return _location
;}
48 public function impregnate
(balls
:Vector
.<Testicle
>):void {
49 var amtCum
:Number = 0;
50 var enchTxt
:String = "";
51 var semen
:String = balls
[0].semen
;
52 var asshole
:Boolean = true;
54 for (var i
:int = 0; i
< balls
.length
; i
++) {
55 var t
:Testicle
= balls
[i
];
56 amtCum
+=t
.loadMult
* t
.normalLoad
;
60 volumeFilled
= amtCum
;
64 public function get sellDesc
():String { return getDescr
(-1,null); }
66 public function getDescr
(num
:Number, host
:Creature
):String {
67 var tightness
:String = "tight";
68 var filled
:String = "";
69 var stretched
:String = "";
73 filled
= ", "+pregnantWith
.getTypeName
()+"-impregnated"; // Oh god how do i describe this
75 if (filledWith
.length
!= 0)
76 filled
= ", " + filledWith
+ "-filled";
78 if (volumeFilled
> capacity
&& num
>0)
79 stretched
= " (<b>Your belly has swelled to accomodate the sheer volume.</b>)";
83 return o
+tightness
+filled
+ " "+_name
+ " asshole"+((num
>1)?"s":"")+", "+location
+stretched
;
87 public function getShortDescr
(withModifier
:Boolean = false):String {
88 var t
:String = "asshole";
93 public function onFailedAttack
(from
:Creature
, to
:Creature
):void{}
94 public function onGoodAttack
(from
:Creature
, to
:Creature
):void { }
96 public function isPenetrated
():Boolean { return _pen
; }
98 private var _weapon
:IWeapon
= null;
99 public function get weapon
():IWeapon
{ return _weapon
; }
100 public function tryEquip
(weap
:IWeapon
):Boolean
105 public function isConcealedBy
(host
:Creature
, clothing
:Vector
.<Clothing
>):Boolean
107 return clothing
.some
(function(c_
:Object, index
:int, vector
:Vector
.<Clothing
>):Boolean
109 var c
:Clothing
= Clothing
(c_
);
111 return (c
.type
.obscures
.indexOf
(category
) > -1);