Пример #1
0
    static private void OQCOOCDODD(RoadObjectScript target)
    {
        EditorUtility.DisplayProgressBar("Build EasyRoads3D Object - " + target.gameObject.name, "Initializing", 0);

        RoadObjectScript[] scripts = (RoadObjectScript[])FindObjectsOfType(typeof(RoadObjectScript));
        List <Transform>   rObj    = new List <Transform>();


#if UNITY_4_3
#else
//Undo.RegisterUndo(OQCQQDCCCO.terrain.terrainData, "EasyRoads3D Terrain leveling");
#endif
        foreach (RoadObjectScript script in scripts)
        {
            if (script.transform != target.transform)
            {
                rObj.Add(script.transform);
            }
        }
        if (target.ODODQOQO == null)
        {
            target.ODODQOQO    = target.OOOOODODCQ.OCDCOOOOQC();
            target.ODODQOQOInt = target.OOOOODODCQ.OCQQCCDCDD();
        }
        target.ODQCCQDQQC(0.5f, true, false);

        List <tPoint>  hitOQCDQOCDOQ = target.OOOOODODCQ.OQDOODOOOQ(Vector3.zero, target.raise, target.obj, target.OOQDOOQQ, rObj, target.handleVegetation);
        List <Vector3> changeArr     = new List <Vector3>();
        float          stepsf        = Mathf.Floor(hitOQCDQOCDOQ.Count / 10);
        int            steps         = Mathf.RoundToInt(stepsf);
        for (int i = 0; i < 10; i++)
        {
            changeArr = target.OOOOODODCQ.OQCCOQCCCD(hitOQCDQOCDOQ, i * steps, steps, changeArr);
            EditorUtility.DisplayProgressBar("Build EasyRoads3D Object - " + target.gameObject.name, "Updating Terrain", i * 10);
        }

        changeArr = target.OOOOODODCQ.OQCCOQCCCD(hitOQCDQOCDOQ, 10 * steps, hitOQCDQOCDOQ.Count - (10 * steps), changeArr);
        target.OOOOODODCQ.OCQCDDCOOC(changeArr, rObj);

        target.ODCDQOOOQC();
        EditorUtility.ClearProgressBar();
    }