the cutting room mirror

Doom Classic Complete

This article has a talk page!
view on tcrf.net

This page contains notes for the game Doom Classic Complete.

Dev Menu Decompile#

Via JPEXS Free Flash Decompiler. If you know a better way, please feel free to replace.

package
{
    import flash.external.ExternalInterface;
    import flash.text.TextField;
    
    public class Dev_Menu extends idFlashMenu
    {
         
        
        public var skill_Option:TextField;
        
        public var infAmmo_Option:TextField;
        
        public var godMode_Option:TextField;
        
        public var expansion_Option:TextField;
        
        public var allWeapons_Option:TextField;
        
        public var noClip_Option:TextField;
        
        public var mapNumber_Option:TextField;
        
        var mapNumber:Number = 1;
        
        var expansionNumber:Number = 0;
        
        var skillNumber:Number = 0;
        
        var noClip:Boolean = false;
        
        var infAmmo:Boolean = false;
        
        var godMode:Boolean = false;
        
        var allWeapons:Boolean = false;
        
        public function Dev_Menu(param1:idFlashMenu)
        {
            addFrameScript(9,frame10,26,frame27);
            super(param1,8,null);
            this.gotoAndStop(selectedOption);
            UpdateOptions();
        }
        
        public function UpdateOptions() : *
        {
            var _loc1_:TextField = this.getChildByName("mapNumber_Option") as TextField;
            var _loc2_:TextField = this.getChildByName("expansion_Option") as TextField;
            var _loc3_:TextField = this.getChildByName("skill_Option") as TextField;
            var _loc4_:TextField = this.getChildByName("noClip_Option") as TextField;
            var _loc5_:TextField = this.getChildByName("infAmmo_Option") as TextField;
            var _loc6_:TextField = this.getChildByName("godMode_Option") as TextField;
            var _loc7_:TextField = this.getChildByName("allWeapons_Option") as TextField;
            _loc1_.text = mapNumber.toString();
            _loc2_.text = expansionNumber.toString();
            _loc3_.text = skillNumber.toString();
            if(noClip)
            {
                _loc4_.text = "ON";
            }
            else
            {
                _loc4_.text = "OFF";
            }
            if(infAmmo)
            {
                _loc5_.text = "ON";
            }
            else
            {
                _loc5_.text = "OFF";
            }
            if(godMode)
            {
                _loc6_.text = "ON";
            }
            else
            {
                _loc6_.text = "OFF";
            }
            if(allWeapons)
            {
                _loc7_.text = "ON";
            }
            else
            {
                _loc7_.text = "OFF";
            }
        }
        
        override public function Initialize() : *
        {
            super.Initialize();
            this.visible = true;
        }
        
        public function Modify_MapNumber(param1:*) : *
        {
            var _loc2_:TextField = this.getChildByName("mapNumber_Option") as TextField;
            mapNumber = mapNumber + param1;
            if(mapNumber < 1)
            {
                mapNumber = 32;
            }
            else if(mapNumber > 32)
            {
                mapNumber = 1;
            }
            _loc2_.text = mapNumber.toString();
        }
        
        public function Modify_BooleanText(param1:*, param2:*) : *
        {
            if(param1)
            {
                param2.text = "ON";
            }
            else
            {
                param2.text = "OFF";
            }
        }
        
        override public function LEFT_Selection() : *
        {
            switch(selectedOption)
            {
                case 1:
                    expansionNumber = expansionNumber - 1;
                    break;
                case 2:
                    mapNumber = mapNumber - 1;
                    break;
                case 3:
                    skillNumber = skillNumber - 1;
                    break;
                case 4:
                    noClip = !noClip;
                    break;
                case 5:
                    infAmmo = !infAmmo;
                    break;
                case 6:
                    godMode = !godMode;
                    break;
                case 7:
                    allWeapons = !allWeapons;
            }
            this.UpdateOptions();
            super.LEFT_Selection();
        }
        
        override public function RIGHT_Selection() : *
        {
            switch(selectedOption)
            {
                case 1:
                    expansionNumber = expansionNumber + 1;
                    break;
                case 2:
                    mapNumber = mapNumber + 1;
                    break;
                case 3:
                    skillNumber = skillNumber + 1;
                    break;
                case 4:
                    noClip = !noClip;
                    break;
                case 5:
                    infAmmo = !infAmmo;
                    break;
                case 6:
                    godMode = !godMode;
                    break;
                case 7:
                    allWeapons = !allWeapons;
            }
            this.UpdateOptions();
            super.RIGHT_Selection();
        }
        
        override public function SELECT_Option(param1:Number, param2:String) : *
        {
            if(param1 == 8)
            {
                ExternalInterface.call("DevMenu_Play",expansionNumber,mapNumber,skillNumber,noClip,infAmmo,godMode,allWeapons);
                this.visible = false;
            }
            super.SELECT_Option(param1,param2);
        }
        
        function frame10() : *
        {
            SendEvent("transition_in_finished");
            stop();
        }
        
        function frame27() : *
        {
            SendEvent("transition_out_finished");
            stop();
        }
    }
}