public AdvData(AdvFileReader reader, Persistence persist)
     : this(persist)
 {
     setLanguage(persist.LCID);
     mCursor = new Cursor(this);
     mReader = reader;
     Settings.PngToJpeg = false;
     Settings.ScriptingLanguage = ProjectSettings.ScriptLang.PCDK;
 }
        public AdvData(Persistence persist)
        {
            setLanguage(persist.LCID);
            Settings = new ProjectSettings();
            Settings.ActionText = true;
            Settings.ActionTextHeight = 0;
            Settings.AnywhereRoom = "";
            Settings.AnywhereTransparency = 0;
            Settings.BackgroundColor = 32768;
            Settings.Booleans = new Dictionary<string, bool>();
            Settings.BorderColor = 8421376;
            Settings.CoinActivated = false;
            Settings.CoinAutoPopup = true;
            Settings.CoinCenter = new Vec2i(90, 65);
            Settings.CoinFading = 0;
            Settings.CoinRoom = "";
            Settings.Commands = new Dictionary<string, string>();
            Settings.CustomMenu = false;
            Settings.CustomMenuRoom = "";
            Settings.Directory = "";
            Settings.DrawDraggedItemIcons = false;
            Settings.DSPEffects = new ArrayList();
            Settings.GameIcon = "";
            Settings.GiveLink = "to";
            Settings.GroupItems = false;
            Settings.InfoLine = true;
            Settings.InfotextColor = 16777215;
            Settings.LinkText = "with";
            Settings.LoadingImage = "";
            Settings.Mainscript = "";
            Settings.MenuFading = 0;
            Settings.MuteMusicWhenSpeech = true;
            Settings.NotAntialiased = false;
            Settings.OffspeechColor = 16777215;
            Settings.Projectname = "New Project";
            Settings.ProtectGameFile = false;
            Settings.Resolution = new Vec2i(800, 600);
            Settings.Is16to9 = false;
            Settings.ScreenChange = ScreenChange.SC_DIRECT;
            Settings.ShowTaskbar = true;
            Settings.SilentDelete = false;
            Settings.Startscript = "";
            Settings.TargaColor = 16711935;
            Settings.TaskbarFromTop = false;
            Settings.TaskHeight = 140;
            Settings.TaskHideCompletely = true;
            Settings.TaskPopup = 0;
            Settings.TaskRoom = "";
            Settings.TextColor = 65280;
            Settings.TextOnOff = false;
            Settings.TextSceneFading = 0;
            Settings.TsAreaColor = 8421504;
            Settings.TsBackground = "";
            Settings.TsBorderColor = 0;
            Settings.TsBorderStyle = 0;
            Settings.TsSelectionColor = 12632256;
            Settings.TsStyle = 0;
            Settings.TsTextColor = 15793151;
            Settings.TsUseBgImage = false;
            Settings.TsUseSymbols = false;
            Settings.WalkText = "Walk to";
            Settings.RightClick = 0;
            Settings.UseMouseWheel = false;
            Settings.Fonts = new ArrayList();

            Settings.PngToJpeg = false;
            Settings.ScriptingLanguage = ProjectSettings.ScriptLang.PCDK;

            mImages = new Dictionary<string, string>();
            mSounds = new Dictionary<string, string>();
            mMusic = new Dictionary<string, string>();
            mVideos = new Dictionary<string, string>();
            mImageCache = new Dictionary<string, System.Drawing.Bitmap>();
            mReader = new AdvFileReader(persist);

            mCursor = new Cursor(this);
            mCursor.init();

            mItems = new Dictionary<string, Item>();
            mObjects = new Dictionary<string, AdvObject>();
            mCharacters = new Dictionary<string, AdvCharacter>();
            mCharacterInstances = new Dictionary<string, ArrayList>();
            mRooms = new Dictionary<string, Room>();
            mScripts = new Dictionary<string, Script>[(int)Script.Type.MAX];
            mLanguages = new Dictionary<string, Language>();
            for (int i = 0; i < (int)Script.Type.MAX; ++i)
            {
                mScripts[i] = new Dictionary<string, Script>();
            }
            Persistence = persist;
        }