Example #1
0
    public JSONValue ExportData()
    {
        JSONObject json_data = new JSONObject();

        json_data["m_action_type"]             = (int)m_action_type;
        json_data["m_ease_type"]               = (int)m_ease_type;
        json_data["m_use_gradient_start"]      = m_use_gradient_start;
        json_data["m_use_gradient_end"]        = m_use_gradient_end;
        json_data["m_force_same_start_time"]   = m_force_same_start_time;
        json_data["m_letter_anchor_start"]     = m_letter_anchor_start;
        json_data["m_letter_anchor_end"]       = m_letter_anchor_end;
        json_data["m_letter_anchor_2_way"]     = m_letter_anchor_2_way;
        json_data["m_offset_from_last"]        = m_offset_from_last;
        json_data["m_position_axis_ease_data"] = m_position_axis_ease_data.ExportData();
        json_data["m_rotation_axis_ease_data"] = m_rotation_axis_ease_data.ExportData();
        json_data["m_scale_axis_ease_data"]    = m_scale_axis_ease_data.ExportData();

        if (m_use_gradient_start)
        {
            json_data["m_start_vertex_colour"] = m_start_vertex_colour.ExportData();
        }
        else
        {
            json_data["m_start_colour"] = m_start_colour.ExportData();
        }
        json_data["m_start_euler_rotation"] = m_start_euler_rotation.ExportData();
        json_data["m_start_pos"]            = m_start_pos.ExportData();
        json_data["m_start_scale"]          = m_start_scale.ExportData();

        if (m_use_gradient_end)
        {
            json_data["m_end_vertex_colour"] = m_end_vertex_colour.ExportData();
        }
        else
        {
            json_data["m_end_colour"] = m_end_colour.ExportData();
        }
        json_data["m_end_euler_rotation"] = m_end_euler_rotation.ExportData();
        json_data["m_end_pos"]            = m_end_pos.ExportData();
        json_data["m_end_scale"]          = m_end_scale.ExportData();

        json_data["m_delay_progression"]    = m_delay_progression.ExportData();
        json_data["m_duration_progression"] = m_duration_progression.ExportData();


        JSONArray audio_effects_data = new JSONArray();

        foreach (AudioEffectSetup effect_setup in m_audio_effects)
        {
            if (effect_setup.m_audio_clip == null)
            {
                continue;
            }

            audio_effects_data.Add(effect_setup.ExportData());
        }
        json_data["AUDIO_EFFECTS_DATA"] = audio_effects_data;

        JSONArray particle_effects_data = new JSONArray();

        foreach (ParticleEffectSetup effect_setup in m_particle_effects)
        {
            if (effect_setup.m_legacy_particle_effect == null && effect_setup.m_shuriken_particle_effect == null)
            {
                continue;
            }

            particle_effects_data.Add(effect_setup.ExportData());
        }
        json_data["PARTICLE_EFFECTS_DATA"] = particle_effects_data;

        return(new JSONValue(json_data));
    }