From 5bbc8ce09a738f10e44815611052c531230e07f5 Mon Sep 17 00:00:00 2001 From: Harbinger Date: Thu, 7 Jun 2012 06:36:22 -0700 Subject: [PATCH] asdfasdfasdffdv --- src/Main.mxml | 104 +++++++++++++-------- src/org/sevenchan/AdventureController.as | 76 ++++++++++++++- src/org/sevenchan/dongs/Creature.as | 39 ++++---- src/org/sevenchan/dongs/Screen.as | 3 + src/org/sevenchan/dongs/ability/Lightning.as | 2 +- src/org/sevenchan/dongs/bodyparts/Arm.as | 2 +- src/org/sevenchan/dongs/bodyparts/Asshole.as | 3 +- src/org/sevenchan/dongs/bodyparts/Wing.as | 2 +- .../sevenchan/dongs/bodyparts/asshole/Abdomen.as | 2 +- src/org/sevenchan/dongs/creature/Ala.as | 1 + src/org/sevenchan/dongs/creature/Bova.as | 8 +- src/org/sevenchan/dongs/creature/Harpy.as | 6 +- src/org/sevenchan/dongs/creature/Scylla.as | 2 +- src/org/sevenchan/dongs/screens/WitchShopScreen.as | 15 ++- .../screens/encounters/BovaEncounterScreen.as | 31 +++--- 15 files changed, 208 insertions(+), 88 deletions(-) rewrite src/Main.mxml (94%) diff --git a/src/Main.mxml b/src/Main.mxml dissimilarity index 94% index f621d04..0fb28f8 100644 --- a/src/Main.mxml +++ b/src/Main.mxml @@ -1,37 +1,67 @@ - - - - - - - - - \ No newline at end of file + + + + + + + + + diff --git a/src/org/sevenchan/AdventureController.as b/src/org/sevenchan/AdventureController.as index 4cb080c..1886c04 100644 --- a/src/org/sevenchan/AdventureController.as +++ b/src/org/sevenchan/AdventureController.as @@ -122,7 +122,6 @@ package org.sevenchan //Panels pnlMain = addPanel("", 464.5, 618.5, 167.75, 56.75); - pnlStats = addPanel("", 464.5, 144.9, 15.75, 56.75); // Second row of buttons @@ -312,7 +311,7 @@ package org.sevenchan else screen = new StartupScreen(); } - if(screen==null) + if (screen == null) screen = new StartupScreen(); currentScreen = screen; currentScreen.setMain(this); @@ -403,6 +402,79 @@ package org.sevenchan return btn; } + public function onResize(h:Number, w:Number, measuredHeight:Number, measuredWidth:Number) + { + var originalPanelHeightPCT:Number = 464.5 / 600; + //pnlStats = addPanel("", 464.5, 144.9, 15.75, 56.75); + //pnlMain = addPanel("", 464.5, 618.5, 167.75, 56.75); + + pnlStats.height = pnlMain.height = (464.5 / 600) * h; + pnlStats.width = (144.9 / 800) * w; + pnlStats.x = (15.75 / 800) * w; + pnlStats.y = (56.75 / 600) * h; + + pnlMain.width = (618.5 / 800) * w; + pnlMain.x = (167.75 / 800) * w; + pnlMain.y = (56.75 / 600) * h; + + // Buttons + + var xOffset:Number = (16 / 800) * w; + var yOffset:Number = (531 / 600) * h;//(561 / 600) * h; + var bHeightPadding:Number = (32 / 600) * h; + var bWidthPadding:Number = (129.2 / 800) * w; + var bHeight:Number = (30 / 600) * h; + var bWidth:Number = (100 / 800) * w; + for (var i:int = 0; i < 12; i++) + { + //var btn:SexButton = addButton((i + 1).toString(), 100, 16 + ((i % 6) * 129.2), 561 + (Math.round(i / 12) * 32)); + btnAction[i].height = bHeight; + btnAction[i].width = bWidth; + btnAction[i].x = xOffset + ((i % 6) * bWidthPadding); + btnAction[i].y = yOffset + (Math.round(i / 12) * bHeightPadding); + } + + + // Top row of buttons + xOffset = (129.2 / 800) * w; + var toprow:Number = (21 / 600) * h; // 51 - 21 = 30 + var x:Number = (16 / 800) * w; + btnNewGame.width = bWidth; + btnNewGame.height = bHeight; + btnNewGame.y = toprow; + btnNewGame.x = x; + x += xOffset; + + btnLoadSaveGame.width = bWidth; + btnLoadSaveGame.height = bHeight; + btnLoadSaveGame.y = toprow; + btnLoadSaveGame.x = x; + x += xOffset; + + btnImportGame.width = bWidth; + btnImportGame.height = bHeight; + btnImportGame.y = toprow; + btnImportGame.x = x; + x += xOffset; + + btnExportGame.width = bWidth; + btnExportGame.height = bHeight; + btnExportGame.y = toprow; + btnExportGame.x = x; + x += xOffset; + + btnDebugMenu.width = bWidth; + btnDebugMenu.height = bHeight; + btnDebugMenu.y = toprow; + btnDebugMenu.x = x; + x += xOffset; + + btnAppearance.width = bWidth; + btnAppearance.height = bHeight; + btnAppearance.y = toprow; + btnAppearance.x = x; + } + private function initBG():void { bgshape = new Sprite(); diff --git a/src/org/sevenchan/dongs/Creature.as b/src/org/sevenchan/dongs/Creature.as index a06959f..7f8cf74 100644 --- a/src/org/sevenchan/dongs/Creature.as +++ b/src/org/sevenchan/dongs/Creature.as @@ -322,11 +322,21 @@ package org.sevenchan.dongs if (!haveBalls && !haveDicks && !haveVags) descr += " %CSUB% doesn't have any sexual organs. At least you won't get raped."; - if (breasts.length > 0) - descr += " %CSUB% has " + getBreastDescr() + ", and wears "; - else - descr += " %CSUB% doesn't have any breasts, but does have "; - descr += getAssDescr() + "."; + if (breasts.length > 0) { + descr += " %CSUB% has " + getBreastDescr(); + if(assholes.length>0) { + descr += ", and also has "+getAssDescr() + "."; + } else { + descr += ", but does not have any rectal orifaces to speak of."; + } + }else{ + descr += " %CSUB% doesn't have any breasts"; + if(assholes.length>0) { + descr += ", but does have "+getAssDescr() + ".";; + } else { + descr += ", nor do you see any rectal orifaces."; + } + } if (arms.length > 0) descr += " %CSUB% has " + getArmsDescr() + ", "; @@ -362,7 +372,7 @@ package org.sevenchan.dongs { _level++; if (!firstOne) - InfoScreen.push("

Levelled up!

You are now level " + level + "!

"); + InfoScreen.push("

Levelled up!

You are now at level " + level + "!

"); } public function onCombatInit():void @@ -697,7 +707,7 @@ package org.sevenchan.dongs if (collection.length == 0) { - return "no " + singular + "s"; + return "no " + Utils.pluralize(2,singular); } var out:String = ""; var varying:Boolean = false; @@ -852,21 +862,6 @@ package org.sevenchan.dongs public function changeFrom(f:Creature):void { - this._speed = f._speed; - this._strength = f._strength; - this._abilities = f._abilities; - this.enchantments = f.enchantments; - this.explored = f.explored; - this.gender = f.gender; - this.gold = f.gold; - this.height = f.height; - this.HP = f.maxHP; - this.mana = f.maxMana; - this.ownName = f.ownName; - this.sensitivity = f.sensitivity; - this.sexualPreference = f.sexualPreference; - this.inventory = f.inventory; - this.performConversion(f); } diff --git a/src/org/sevenchan/dongs/Screen.as b/src/org/sevenchan/dongs/Screen.as index ddd8877..1683036 100644 --- a/src/org/sevenchan/dongs/Screen.as +++ b/src/org/sevenchan/dongs/Screen.as @@ -49,6 +49,9 @@ package org.sevenchan.dongs public function processButtonPress(id:int):Boolean { + if (main == null) { + main = Main.main; + } if (id == -1) { updateScreen() return false; diff --git a/src/org/sevenchan/dongs/ability/Lightning.as b/src/org/sevenchan/dongs/ability/Lightning.as index 0279a44..7ad936a 100644 --- a/src/org/sevenchan/dongs/ability/Lightning.as +++ b/src/org/sevenchan/dongs/ability/Lightning.as @@ -29,7 +29,7 @@ package org.sevenchan.dongs.ability InfoScreen.push("

You do not have enough mana.

"); return false; } - InfoScreen.push("

Lightning

You raise your hands to the sky, and dark clouds immediately form, darkening the blaster landscape. The clouds flicker with internal electrical discharges, and then, suddenly, a bolt slams into your opponent's head, causing significant damage. The shockwave caused by the hot air expanding suddenly causes even more.

"); + InfoScreen.push("

Lightning

You raise your hands to the sky, and dark clouds immediately form, darkening the blasted landscape. The clouds flicker with internal electrical discharges, and then, suddenly, a bolt slams into your opponent's head, causing significant damage. The shockwave caused by the hot air expanding suddenly causes even more.

"); activator.mana = 0; } rapee.HP -= rapee.HP / Math.max(1, rapee.level - activator.level); diff --git a/src/org/sevenchan/dongs/bodyparts/Arm.as b/src/org/sevenchan/dongs/bodyparts/Arm.as index 0d1bd7e..954b61b 100644 --- a/src/org/sevenchan/dongs/bodyparts/Arm.as +++ b/src/org/sevenchan/dongs/bodyparts/Arm.as @@ -28,7 +28,7 @@ package org.sevenchan.dongs.bodyparts } public function getDescr(num:Number, host:Creature):String { - return num + " "+getShortDescr(true); + return num + " "+Utils.pluralize(num,getShortDescr(true)); } public function getShortDescr(withModifier:Boolean = false):String { diff --git a/src/org/sevenchan/dongs/bodyparts/Asshole.as b/src/org/sevenchan/dongs/bodyparts/Asshole.as index adf259c..859d4e3 100644 --- a/src/org/sevenchan/dongs/bodyparts/Asshole.as +++ b/src/org/sevenchan/dongs/bodyparts/Asshole.as @@ -18,6 +18,7 @@ package org.sevenchan.dongs.bodyparts public var filledWith:String = ""; public var pregCounter:Number = -1; public var pregnantWith:Creature = null; + public var location:String = "right where it should be"; public var _pen:Boolean = false; public function Asshole(name:String="") @@ -63,7 +64,7 @@ package org.sevenchan.dongs.bodyparts } if (volumeFilled > capacity) stretched=" (Your belly has swelled to accomodate the sheer volume.)"; - return num + " " +tightness+filled+ " "+_name + " asshole"+((num>1)?"s":"")+stretched; + return num + " " +tightness+filled+ " "+_name + " asshole"+((num>1)?"s":"")+", "+location+"."+stretched; } diff --git a/src/org/sevenchan/dongs/bodyparts/Wing.as b/src/org/sevenchan/dongs/bodyparts/Wing.as index fa3f8b0..3cadc44 100644 --- a/src/org/sevenchan/dongs/bodyparts/Wing.as +++ b/src/org/sevenchan/dongs/bodyparts/Wing.as @@ -24,7 +24,7 @@ package org.sevenchan.dongs.bodyparts } public function getDescr(num:Number, host:Creature):String { - return num + " " + descriptor + " "+(reptilian?"reptilian":"feathered")+ " " + species + " wing"+(num>1?"s":""); + return num + " " + descriptor + " "+(reptilian?"leathery":"feathered")+ " " + species + " wing"+(num>1?"s":""); } public function get name():String { return species; } diff --git a/src/org/sevenchan/dongs/bodyparts/asshole/Abdomen.as b/src/org/sevenchan/dongs/bodyparts/asshole/Abdomen.as index c1bc6e3..1a6f5c3 100644 --- a/src/org/sevenchan/dongs/bodyparts/asshole/Abdomen.as +++ b/src/org/sevenchan/dongs/bodyparts/asshole/Abdomen.as @@ -3,7 +3,7 @@ package org.sevenchan.dongs.bodyparts.asshole import org.sevenchan.dongs.bodyparts.Asshole; import org.sevenchan.dongs.Creature; /** - * ... + * As in spiders. * @author N3X15 */ public class Abdomen extends Asshole diff --git a/src/org/sevenchan/dongs/creature/Ala.as b/src/org/sevenchan/dongs/creature/Ala.as index 580e91b..3d6cecd 100644 --- a/src/org/sevenchan/dongs/creature/Ala.as +++ b/src/org/sevenchan/dongs/creature/Ala.as @@ -31,6 +31,7 @@ package org.sevenchan.dongs.creature BodyPartRegistry.ghost_yellow_eye, BodyPartRegistry.ghost_yellow_eye ); + this.HP = 1100; mana = 100; this.gold = 100; this.inventory.push( diff --git a/src/org/sevenchan/dongs/creature/Bova.as b/src/org/sevenchan/dongs/creature/Bova.as index b5872eb..71f3a15 100644 --- a/src/org/sevenchan/dongs/creature/Bova.as +++ b/src/org/sevenchan/dongs/creature/Bova.as @@ -125,11 +125,13 @@ package org.sevenchan.dongs.creature skin.color = "patterned"; skin.texture = "short furry"; this._abilities.flatulence = new Flatulence(); + breasts = new Vector.(); + dicks = new Vector.(); + balls = new Vector.(); + this._gender = Gender.FEMALE; + this.initialGenderSetup(); if (oldMe.gender == Gender.MALE||oldMe.gender == Gender.ASEXUAL) { text += "Your facial hair vanishes, replaced by smooth skin. Your facial structure changes, becoming more feminine, and your breasts grow immensely, putting incredible stress on your back. You also shudder as you feel your groin split in two, the crack spreading up into your body and forming a new womb."; - breasts = new Vector.(); - addBreast(); - addBreast(); } text += "

"; InfoScreen.push(text); diff --git a/src/org/sevenchan/dongs/creature/Harpy.as b/src/org/sevenchan/dongs/creature/Harpy.as index 98d4392..0280b32 100644 --- a/src/org/sevenchan/dongs/creature/Harpy.as +++ b/src/org/sevenchan/dongs/creature/Harpy.as @@ -1,10 +1,8 @@ package org.sevenchan.dongs.creature { - import mx.collections.ArrayList; - import org.sevenchan.dongs.Creature; - import org.sevenchan.dongs.bodyparts.*; import flash.net.registerClassAlias; - import org.sevenchan.dongs.Item; + import org.sevenchan.dongs.bodyparts.*; + import org.sevenchan.dongs.Creature; import org.sevenchan.dongs.items.HarpyTincture; import org.sevenchan.dongs.items.WhiteBerries; import org.sevenchan.dongs.screens.encounters.HarpyEncounterScreen; diff --git a/src/org/sevenchan/dongs/creature/Scylla.as b/src/org/sevenchan/dongs/creature/Scylla.as index ffda658..291a93f 100644 --- a/src/org/sevenchan/dongs/creature/Scylla.as +++ b/src/org/sevenchan/dongs/creature/Scylla.as @@ -11,7 +11,7 @@ package org.sevenchan.dongs.creature import org.sevenchan.dongs.screens.InfoScreen; /** - * A gigantic sea serpant with the upper body of a + * A gigantic sea serpent with the upper body of a * beautiful woman who just happens to have 3 rows * of needle-like teeth and an affinity for eating * people whole. diff --git a/src/org/sevenchan/dongs/screens/WitchShopScreen.as b/src/org/sevenchan/dongs/screens/WitchShopScreen.as index afab7e1..3d4b2b1 100644 --- a/src/org/sevenchan/dongs/screens/WitchShopScreen.as +++ b/src/org/sevenchan/dongs/screens/WitchShopScreen.as @@ -7,6 +7,7 @@ package org.sevenchan.dongs.screens import org.sevenchan.dongs.Item; import org.sevenchan.dongs.items.GoldPotion; import org.sevenchan.dongs.items.PinkPotion; + import org.sevenchan.dongs.items.Potion; import org.sevenchan.dongs.Screen; /** @@ -43,6 +44,9 @@ package org.sevenchan.dongs.screens break; case 1: setup(0, 6, "Hallasee's Potion Shoppe: Always Low Quality. Always."); + inventory = [ + new GoldPotion(MathUtils.rand(6, 10)), + new PinkPotion(MathUtils.rand(6, 10))]; break; case 2: setup(1, 12, "Ehf's Dick Depot: Every Fuck Begins with Ehf."); @@ -51,7 +55,6 @@ package org.sevenchan.dongs.screens setup(10, 24, "Granny Rasputin's Grand Gonads: The Balls of Champions."); break; } - inventory = [new GoldPotion(MathUtils.rand(6, 10)), new PinkPotion(MathUtils.rand(6, 10)),]; } private function setup(po:Number, i:Number, t:String):void @@ -290,8 +293,9 @@ package org.sevenchan.dongs.screens if (subpage == "penises") return BSPenises(id); if (subpage == "testes") - return BSTestes(id); - //if (subpage == "vaginas") return BSVaginas(id); + return BSTestes(id); + //if (subpage == "vaginas") + // return BSVaginas(id); //if (subpage == "breasts") return BSBreasts(id); //if (subpage == "abilities") return BSAbilities(id); //if (subpage == "enchantments") return BSEnchantments(id); @@ -658,6 +662,11 @@ package org.sevenchan.dongs.screens updateScreen(); return false; } + + private function BSVaginas(id:int):Boolean + { + return false; + } } } \ No newline at end of file diff --git a/src/org/sevenchan/dongs/screens/encounters/BovaEncounterScreen.as b/src/org/sevenchan/dongs/screens/encounters/BovaEncounterScreen.as index 1af6c10..ba826c7 100644 --- a/src/org/sevenchan/dongs/screens/encounters/BovaEncounterScreen.as +++ b/src/org/sevenchan/dongs/screens/encounters/BovaEncounterScreen.as @@ -4,6 +4,7 @@ package org.sevenchan.dongs.screens.encounters import org.sevenchan.dongs.ActionNode; import org.sevenchan.dongs.creature.Bova; import org.sevenchan.dongs.creature.Harpy; + import org.sevenchan.dongs.creature.Player; import org.sevenchan.dongs.MenuNode; import org.sevenchan.dongs.screens.Encounter; import org.sevenchan.dongs.screens.InfoScreen; @@ -29,7 +30,8 @@ package org.sevenchan.dongs.screens.encounters lustCost = 3; currentItem.content = "

The cowgirl looks at you tiredly, flicking one of her ears at a fly. \"What?\", she asks in her deep voice, tilting her head in frustration at your indecisiveness. The movement causes her cowbell to ding.

"; currentItem.children.push(new ActionNode(currentItem, "Milk", MathUtils.rand(250, 300), "Buy some milk from her for a few hundred gold.", onBuyMilk)); - if(main.player.dicks.length>0) + main = Main.main; + if (main.player.dicks.length > 0) currentItem.children.push(new ActionNode(currentItem, "Sex", 0, "Tempt her with sex", onFuck)); } @@ -67,7 +69,8 @@ package org.sevenchan.dongs.screens.encounters } } - public function onBuyMilk(ply:Creature, node:ActionNode):Boolean { + public function onBuyMilk(ply:Creature, node:ActionNode):Boolean + { text = "

Bova Milk

The pretty cowgirl lights up with joy, though " text += "the burdens of city life have left obvious mental and physical scars " text += "that still dampen her strange enthusiasm. After counting the change, " @@ -82,27 +85,33 @@ package org.sevenchan.dongs.screens.encounters return false; } - public function onFuck(ply:Creature, node:ActionNode):Boolean { + public function onFuck(ply:Creature, node:ActionNode):Boolean + { // You didn't use a fucking gas mask - if(!ply.hasItem(ItemRegistry.GAS_MASK.id)) { - text = "

Always Use Protection

"; + if (!ply.hasItem(ItemRegistry.GAS_MASK.id)) + { + text = "

Always Use Protection

"; text += "

She smiles mischieviously again as you unzip, and then blushes as she, too, slips out of her clothing, letting her huge tits spill out of her tight shirt. You lick their puffy, swollen nipples, eliciting a soft moan as you soothe her skin. You finish undressing each other in a cheap hotel room you hurriedly purchase together from a bored innkeeper who was all too happy to see bare breasts. The door barely closes behind the both of you as you throw yourselves into bed.

"; text += "

Your " + ply.getDickDescr() + " throb uncontrollably against her thigh, and it doesn't take long to find yourself balls-deep in a moaning cowgirl while suffocating in her massive tits.

"; text += "

And that's when it all goes terribly wrong.

"; text += "

You loudly stifle a giggle as a loud fart escapes her buns while in the middle of orgasm. Her eyes shoot open, and you finish into her right before she screams at you to run. "Why? It's not like there's a fucking Ala in this room. Are you concerned about the fart, because I don't m-" She interrupts you by shoving you out of bed and huddling you towards the door, but it's too late as the effects of her gasses take hold

"; - text += "

TODO: Transformation into a Bova

"; - ply.changeFrom(CreatureRegistry.bova); - } else { + //text += "

TODO: Transformation into a Bova

"; + InfoScreen.push(text); + ply.lust = 0; + if (ply is Player) + (ply as Player).changeTo(CreatureRegistry.bova); + } + else + { var paid:int = Math.min(100, ply.gold); ply.gold -= paid; node.content = "

She smiles mischieviously again as you unzip, and then blushes as she, too, slips out of her clothing, letting her huge tits spill out of her tight shirt. She notices your gas mask fall out of your bag, and she puts it on you. You look at her in confusion, but she merely plants a wet kiss on the goggles and whispers "trust me" into your ear. You finish undressing each other in a cheap hotel room you hurriedly purchase together from a bored innkeeper who was all too happy to see bare breasts. The door barely closes behind the both of you as you throw yourselves into bed.

"; node.content += "

Your " + ply.getDickDescr() + " " + Utils.pluralize(ply.dicks.length, "throbs", "throb") + " uncontrollably against her thing, and it doesn't take yourself long to find yourself ball-deep in her wet cunt.

"; node.content += "

After a about half an hour of slow thrusting, your goggles are completely steamed up on the inside and smeared with cheap lipstick on the outside. You can't see a thing, but you understand why the mask was put on, as she passed gas the entire time you were in bed with her. Even though it is hot and stale inside of the mask, it's certainly tolerable compared to outside...

"; - node.content += "

After you leave, she leaves a stack of gold on the nightstand, explaining it was for the ruined, milk-soaked bed and the miasma. You pay her "+paid+"G for the experience, receiving a warm kiss and a hug in exchange. As she turns to leave, you see her wiggle her bum and wink back at you before she vanishes into the crowd.

"; + node.content += "

After you leave, she leaves a stack of gold on the nightstand, explaining it was for the ruined, milk-soaked bed and the miasma. You pay her " + paid + "G for the experience, receiving a warm kiss and a hug in exchange. As she turns to leave, you see her wiggle her bum and wink back at you before she vanishes into the crowd.

"; + ply.lust = 0; } - ply.lust = 0; - InfoScreen.push(text); return true; } } -- 2.11.4.GIT