Chatterer.chatterer.new_vessel_node C# (CSharp) Method

new_vessel_node() private method

private new_vessel_node ( Vessel v ) : void
v Vessel
return void
        private void new_vessel_node(Vessel v)
        {
            //if (debugging) Debug.Log("[CHATR] new_vessel_node() START");
            ConfigNode vessel_node = new ConfigNode();

            //cn_vessel.name = v.id.ToString();
            //temp_vessels_node = new ConfigNode();
            vessel_node.name = "VESSEL";

            vessel_node.AddValue("vessel_name", v.vesselName);
            vessel_node.AddValue("vessel_id", v.id.ToString());

            save_shared_settings(vessel_node);

            /*
            //
            vessel_node.AddValue("main_window_pos_x", main_window_pos.x);
            vessel_node.AddValue("main_window_pos_y", main_window_pos.y);
            vessel_node.AddValue("ui_icon_pos_x", ui_icon_pos.x);
            vessel_node.AddValue("ui_icon_pos_y", ui_icon_pos.y);
            vessel_node.AddValue("main_gui_minimized", main_gui_minimized);
            vessel_node.AddValue("skin_index", skin_index);
            vessel_node.AddValue("active_menu", active_menu);
            vessel_node.AddValue("remotetech_toggle", remotetech_toggle);

            vessel_node.AddValue("chatter_freq", chatter_freq);
            vessel_node.AddValue("chatter_vol_slider", chatter_vol_slider);
            vessel_node.AddValue("chatter_sel_filter", chatter_sel_filter);
            vessel_node.AddValue("show_chatter_filter_settings", show_chatter_filter_settings);
            vessel_node.AddValue("show_sample_selector", show_sample_selector);
            vessel_node.AddValue("chatter_reverb_preset_index", chatter_reverb_preset_index);
            vessel_node.AddValue("chatter_filter_settings_window_pos_x", chatter_filter_settings_window_pos.x);
            vessel_node.AddValue("chatter_filter_settings_window_pos_y", chatter_filter_settings_window_pos.y);

            vessel_node.AddValue("quindar_toggle", quindar_toggle);
            vessel_node.AddValue("quindar_vol_slider", quindar_vol_slider);
            vessel_node.AddValue("sstv_freq", sstv_freq);
            vessel_node.AddValue("sstv_vol_slider", sstv_vol_slider);

            vessel_node.AddValue("sel_beep_src", sel_beep_src);
            vessel_node.AddValue("sel_beep_page", sel_beep_page);

            //Chatter sets
            foreach (RBRAudioList chatter_set in chatter_array)
            {
                ConfigNode _set = new ConfigNode();
                _set.name = "AUDIOSET";
                _set.AddValue("directory", chatter_set.directory);
                _set.AddValue("is_active", chatter_set.is_active);
                vessel_node.AddNode(_set);
            }

            //filters
            ConfigNode _filter;

            _filter = new ConfigNode();
            _filter.name = "CHORUS";
            _filter.AddValue("enabled", chatter_chorus_filter.enabled);
            _filter.AddValue("dry_mix", chatter_chorus_filter.dryMix);
            _filter.AddValue("wet_mix_1", chatter_chorus_filter.wetMix1);
            _filter.AddValue("wet_mix_2", chatter_chorus_filter.wetMix2);
            _filter.AddValue("wet_mix_3", chatter_chorus_filter.wetMix3);
            vessel_node.AddNode(_filter);

            _filter = new ConfigNode();
            _filter.name = "DISTORTION";
            _filter.AddValue("enabled", chatter_distortion_filter.enabled);
            _filter.AddValue("distortion_level", chatter_distortion_filter.distortionLevel);
            vessel_node.AddNode(_filter);

            _filter = new ConfigNode();
            _filter.name = "ECHO";
            _filter.AddValue("enabled", chatter_echo_filter.enabled);
            _filter.AddValue("delay", chatter_echo_filter.delay);
            _filter.AddValue("decay_ratio", chatter_echo_filter.decayRatio);
            _filter.AddValue("dry_mix", chatter_echo_filter.dryMix);
            _filter.AddValue("wet_mix", chatter_echo_filter.wetMix);
            vessel_node.AddNode(_filter);

            _filter = new ConfigNode();
            _filter.name = "HIGHPASS";
            _filter.AddValue("enabled", chatter_highpass_filter.enabled);
            _filter.AddValue("cutoff_freq", chatter_highpass_filter.cutoffFrequency);
            _filter.AddValue("resonance_q", chatter_highpass_filter.highpassResonaceQ);
            vessel_node.AddNode(_filter);

            _filter = new ConfigNode();
            _filter.name = "LOWPASS";
            _filter.AddValue("enabled", chatter_lowpass_filter.enabled);
            _filter.AddValue("cutoff_freq", chatter_lowpass_filter.cutoffFrequency);
            _filter.AddValue("resonance_q", chatter_lowpass_filter.lowpassResonaceQ);
            vessel_node.AddNode(_filter);

            _filter = new ConfigNode();
            _filter.name = "REVERB";
            _filter.AddValue("enabled", chatter_reverb_filter.enabled);
            _filter.AddValue("reverb_preset", chatter_reverb_filter.reverbPreset);
            _filter.AddValue("dry_level", chatter_reverb_filter.dryLevel);
            _filter.AddValue("room", chatter_reverb_filter.room);
            _filter.AddValue("room_hf", chatter_reverb_filter.roomHF);
            _filter.AddValue("room_lf", chatter_reverb_filter.roomLF);
            _filter.AddValue("room_rolloff", chatter_reverb_filter.roomRolloff);
            _filter.AddValue("decay_time", chatter_reverb_filter.decayTime);
            _filter.AddValue("decay_hf_ratio", chatter_reverb_filter.decayHFRatio);
            _filter.AddValue("reflections_level", chatter_reverb_filter.reflectionsLevel);
            _filter.AddValue("reflections_delay", chatter_reverb_filter.reflectionsDelay);
            _filter.AddValue("reverb_level", chatter_reverb_filter.reverbLevel);
            _filter.AddValue("reverb_delay", chatter_reverb_filter.reverbDelay);
            _filter.AddValue("diffusion", chatter_reverb_filter.diffusion);
            _filter.AddValue("density", chatter_reverb_filter.density);
            _filter.AddValue("hf_reference", chatter_reverb_filter.hfReference);
            _filter.AddValue("lf_reference", chatter_reverb_filter.lFReference);
            vessel_node.AddNode(_filter);

            foreach (RBRBeepSource source in beepsource_list)
            {
                ConfigNode beep_settings = new ConfigNode();
                beep_settings.name = "BEEPSOURCE";

                beep_settings.AddValue("precise", source.precise);
                beep_settings.AddValue("precise_freq", source.precise_freq);
                beep_settings.AddValue("loose_freq", source.loose_freq);
                beep_settings.AddValue("volume", source.audiosource.volume);
                beep_settings.AddValue("pitch", source.audiosource.pitch);
                beep_settings.AddValue("current_clip", source.current_clip);
                beep_settings.AddValue("sel_filter", source.sel_filter);
                beep_settings.AddValue("show_settings_window", source.show_settings_window);
                beep_settings.AddValue("reverb_preset_index", source.reverb_preset_index);
                beep_settings.AddValue("settings_window_pos_x", source.settings_window_pos.x);
                beep_settings.AddValue("settings_window_pos_y", source.settings_window_pos.y);

                //filters
                //ConfigNode _filter;

                _filter = new ConfigNode();
                _filter.name = "CHORUS";
                _filter.AddValue("enabled", source.chorus_filter.enabled);
                _filter.AddValue("dry_mix", source.chorus_filter.dryMix);
                _filter.AddValue("wet_mix_1", source.chorus_filter.wetMix1);
                _filter.AddValue("wet_mix_2", source.chorus_filter.wetMix2);
                _filter.AddValue("wet_mix_3", source.chorus_filter.wetMix3);
                beep_settings.AddNode(_filter);

                _filter = new ConfigNode();
                _filter.name = "DISTORTION";
                _filter.AddValue("enabled", source.distortion_filter.enabled);
                _filter.AddValue("distortion_level", source.distortion_filter.distortionLevel);
                beep_settings.AddNode(_filter);

                _filter = new ConfigNode();
                _filter.name = "ECHO";
                _filter.AddValue("enabled", source.echo_filter.enabled);
                _filter.AddValue("delay", source.echo_filter.delay);
                _filter.AddValue("decay_ratio", source.echo_filter.decayRatio);
                _filter.AddValue("dry_mix", source.echo_filter.dryMix);
                _filter.AddValue("wet_mix", source.echo_filter.wetMix);
                beep_settings.AddNode(_filter);

                _filter = new ConfigNode();
                _filter.name = "HIGHPASS";
                _filter.AddValue("enabled", source.highpass_filter.enabled);
                _filter.AddValue("cutoff_freq", source.highpass_filter.cutoffFrequency);
                _filter.AddValue("resonance_q", source.highpass_filter.highpassResonaceQ);
                beep_settings.AddNode(_filter);

                _filter = new ConfigNode();
                _filter.name = "LOWPASS";
                _filter.AddValue("enabled", source.lowpass_filter.enabled);
                _filter.AddValue("cutoff_freq", source.lowpass_filter.cutoffFrequency);
                _filter.AddValue("resonance_q", source.lowpass_filter.lowpassResonaceQ);
                beep_settings.AddNode(_filter);

                _filter = new ConfigNode();
                _filter.name = "REVERB";
                _filter.AddValue("enabled", source.reverb_filter.enabled);
                _filter.AddValue("reverb_preset", source.reverb_filter.reverbPreset);
                _filter.AddValue("dry_level", source.reverb_filter.dryLevel);
                _filter.AddValue("room", source.reverb_filter.room);
                _filter.AddValue("room_hf", source.reverb_filter.roomHF);
                _filter.AddValue("room_lf", source.reverb_filter.roomLF);
                _filter.AddValue("room_rolloff", source.reverb_filter.roomRolloff);
                _filter.AddValue("decay_time", source.reverb_filter.decayTime);
                _filter.AddValue("decay_hf_ratio", source.reverb_filter.decayHFRatio);
                _filter.AddValue("reflections_level", source.reverb_filter.reflectionsLevel);
                _filter.AddValue("reflections_delay", source.reverb_filter.reflectionsDelay);
                _filter.AddValue("reverb_level", source.reverb_filter.reverbLevel);
                _filter.AddValue("reverb_delay", source.reverb_filter.reverbDelay);
                _filter.AddValue("diffusion", source.reverb_filter.diffusion);
                _filter.AddValue("density", source.reverb_filter.density);
                _filter.AddValue("hf_reference", source.reverb_filter.hfReference);
                _filter.AddValue("lf_reference", source.reverb_filter.lFReference);
                beep_settings.AddNode(_filter);

                vessel_node.AddNode(beep_settings);
            }
            */
            vessel_settings_node.AddNode(vessel_node);
            vessel_settings_node.Save(settings_path + "vessels.cfg");

            //if (debugging) Debug.Log("[CHATR] new_vessel_node() :: vessel_node added to vessel_settings_node");
        }
chatterer