///
///
///
///
class FuckingUnit extends ContentUnit {
private fucker : ContentDifferential = new ContentDifferential(Person);
private fucked : ContentDifferential = new ContentDifferential(Person);
private hole : ContentDifferential = new ContentDifferential(SexHole);
private stick : ContentDifferential = new ContentDifferential(SexStick);
private markers : ContentDifferential = new ContentDifferential();
public constructor () {
super();
}
public setFucker (it : Thing | typeof Thing) {
this.fucker = new ContentDifferential(it);
return this;
}
public setFucked (it : Thing | typeof Thing) {
this.fucked = new ContentDifferential(it);
return this;
}
public setHole (it : Thing | typeof Thing) {
this.hole = new ContentDifferential(it);
return this;
}
public setStick (it : Thing | typeof Thing) {
this.stick = new ContentDifferential(it);
return this;
}
public addMarker (marker : ContentMarker) {
this.markers.addNoun(marker);
return this;
}
public getScore () {
return this.fucker.getScore() + this.fucked.getScore() + this.hole.getScore() + this.stick.getScore() + this.markers.getScore();
}
public isMatch (fu : FuckingUnit) {
if (fu instanceof FuckingUnit) {
return this.fucker.isMatch(fu.fucker) && this.fucked.isMatch(fu.fucked) &&
this.hole.isMatch(fu.hole) && this.stick.isMatch(fu.stick) && this.markers.isMatch(fu.markers);
}
return false;
}
}