1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Feeding + Pill Growth Mod?

Discussion in 'Filled Requests' started by futahiro, May 6, 2015.

  1. futahiro

    futahiro Potential Patron

    Joined:
    May 6, 2015
    Messages:
    4
    Likes Received:
    0
    I'm not sure if anyone has made this mod yet. But my request is that you would simple feed the girl character and parts of her body would grow.
    It wouldn't need any fancy visuals other than different colored large pills that would be like a inventory on the side of the screen.
    The most complex thing i can think of is possibly having the inventory on the side, And then When you put the pill in the girls mouth the swallow animation would show.

    Here are some of the ideas i have for what the large pills can do.
    Blue Pill: Breast growth.
    Red Pill:Futa Penis Growth.
    Green Pill: Body Growth
    Black + Red,Blue,Green Pills: Shrinkage

    Would this be two complex of a request or a do-able idea?

    EDIT:
    Completed by @ModGuy

    EDIT:
    Code:
    package flash
    {
        import flash.display.Sprite;
        import flash.display.Graphics;
        import flash.events.MouseEvent;
    
        public dynamic class Main extends flash.display.MovieClip
        {
            private const r:Number = 8;
            private const l:Number = 3;
            private const t:Number = 1 / Math.sqrt(2);
    
            public var loader:*;
            public var her:*;
            public var lProxy:*;
           
            private var modPage:Sprite = new Sprite();
    
            private var activeEffect:String = "";
            private var activeValue:int = 0;
            private var pillEffects:Object = {"" : 0, "b+" : 0, "b-" : 0, "d+" : 0, "d-" : 0, "s+" : 0, "s-" : 0};
            private var cc:*;
    
            public function initl(l) : void
            {
                place(modPage,bind(createPill(0xDDCCCC, 0xFF7777, 0xEEDDDD), "R", cb), 20, 30);
                place(modPage,bind(createPill(0xCCDDCC, 0x77FF77, 0xDDEEDD), "G", cb), 20, 80);
                place(modPage,bind(createPill(0xCCCCDD, 0x7777FF, 0xDDDDEE), "B", cb), 20, 130);
                place(modPage,bind(createPill(0xDDCCCC, 0xFF7777, 0x998888), "R-", cb), 70, 30);
                place(modPage,bind(createPill(0xCCDDCC, 0x77FF77, 0x889988), "G-", cb), 70, 80);
                place(modPage,bind(createPill(0xCCCCDD, 0x7777FF, 0x888899), "B-", cb), 70, 130);
    
                l.addInPersist(modPage, l.addInLayer);
                var lp:* = lProxy.createProxy(her, "swallow");
                lp.addPre(swallow, true);
                l.addEnterFramePersist(tick);
                cc = l.g.characterControl;
                l.unloadMod();
            }
    
            private function tick(l:*) : void
            {
                if(pillEffects["b+"] > 0)
                    cc.setBreasts(cc.breastSize+1);
    
                if(pillEffects["b-"] > 0)
                    cc.setBreasts(cc.breastSize-1);
    
                if(pillEffects["s+"] > 0)
                    her.setBodyScale(her.bodyScale + 1/1000);
    
                if(pillEffects["s-"] > 0)
                    her.setBodyScale(her.bodyScale - 1/1000);
    
                if(pillEffects["d+"] > 0)
                {
                    var pcon:* = her._penisControl;
                    var sl:* = pcon.penisMenu.penisLengthSlider;
                    var r:* = Math.min(sl.handleRangeEnd, sl.currentValue(100) + 1);
                    r = r/100;
                    loader.updateStatus(r);
                    pcon.setPenisLength(r);
                    pcon.updatePenisLengthSlider();
                }
    
                if(pillEffects["d-"] > 0)
                {
                    var pcon:* = her._penisControl;
                    var sl:* = pcon.penisMenu.penisLengthSlider;
                    var r:* = Math.max(sl.handleRangeStart, sl.currentValue(100) - 1);
                    r = r/100;
                    loader.updateStatus(r);
                    pcon.setPenisLength(r);
                    pcon.updatePenisLengthSlider();
                }
    
                for (var i:* in pillEffects)
                    if(pillEffects[i] > 0)
                        pillEffects[i]--;
            }
    
            private function swallow(n:Number = 0, b:Boolean = true) : void
            {
                if(her.swallowing || her.passedOut || her.speaking) return;
                pillEffects[activeEffect] = activeValue;
                activeEffect = "";
                activeValue = 0;
            }
           
            private function cb(e:*) : void
            {
                var buttonName:String = e.target.name;
    
    
                switch(buttonName)
                {
                    case "R":
                        activeEffect = "b+";
                        activeValue = 20;
                        break;
                    case "R-":
                        activeEffect = "b-";
                        activeValue = 20;
                        break;
                    case "G":
                        activeEffect = "s+";
                        activeValue = 20;
                        break;
                    case "G-":
                        activeEffect = "s-";
                        activeValue = 20;
                        break;
                    case "B":
                        activeEffect = "d+";
                        activeValue = 20;
                        break;
                    case "B-":
                        activeEffect = "d-";
                        activeValue = 20;
                        break;
                }
                her.swallow();
            }
            private function place(c:Sprite, e:Sprite, _x:uint, _y:uint) : Sprite
            {
                e.x = _x;
                e.y = _y;
                c.addChild(e);
                return e;
            }
            private function bind(e:Sprite, n:String, f:Function) : Sprite
            {
                e.name = n;
                e.addEventListener(MouseEvent.CLICK, f);
                e.mouseChildren = false;
                e.buttonMode = true;
                return e;
            }
            private function createPill(c0:uint, c1:uint, c2:uint) : Sprite
            {
                var p:Sprite = new Sprite();
                var m:Sprite = drawPill(0);
                var p1:Sprite = drawPill(c1);
                var p2:Sprite = drawPill(c2);
    
                p2.x = p2.y = - r/t;
    
                p1.mask = m;
                p2.mask = m;
    
                p.graphics.beginFill(c0, 1);
                p.graphics.drawCircle(r*2, r*2, r*l);
                p.graphics.endFill();
    
                p.addChild(p1);
                p.addChild(p2);
                p.addChild(m);
    
    
                return p;
            }
    
            private function drawPill(f:uint) : Sprite
            {
                var p:Sprite = new Sprite();
                var e:Sprite = new Sprite();
                var g:Graphics = e.graphics;
    
                g.beginFill(f, 1);
                g.drawCircle(r, r, r);
                g.drawCircle(l*r, l*r, r);
                g.endFill();
    
                g.beginFill(f, 1);
                g.moveTo(r - r*t, r + r*t);
                g.lineTo(r + r*t, r - r*t);
                g.lineTo(l*r + r*t, l*r - r*t);
                g.lineTo(l*r - r*t, l*r + r*t);
                g.endFill();
    
                return e;
            }
        }
    }
     
    Last edited by a moderator: Sep 29, 2016
  2. d101232

    d101232 Potential Patron

    Joined:
    Apr 6, 2015
    Messages:
    9
    Likes Received:
    0
    i can see this working but i have my doubt