Exemplo n.º 1
0
 public void OCOOCODDOC(float geo, bool renderMode, bool camMode)
 {
     this.OOQQCODOCD.OOODOQDODQ.Clear();
     int num = 0;
     IEnumerator enumerator = this.obj.GetEnumerator();
     try
     {
         while (enumerator.MoveNext())
         {
             Transform current = (Transform)enumerator.Current;
             if (current.name != "Markers")
             {
                 continue;
             }
             IEnumerator enumerator1 = current.GetEnumerator();
             try
             {
                 while (enumerator1.MoveNext())
                 {
                     Transform transforms = (Transform)enumerator1.Current;
                     MarkerScript component = transforms.GetComponent<MarkerScript>();
                     component.objectScript = this.obj.GetComponent<RoadObjectScript>();
                     if (!component.OOCCDCOQCQ)
                     {
                         component.OOCCDCOQCQ = this.OOQQCODOCD.OOOCQDOCDC(transforms);
                     }
                     OQDQOQDOQO oQDQOQDOQO = new OQDQOQDOQO()
                     {
                         position = transforms.position,
                         num = this.OOQQCODOCD.OOODOQDODQ.Count,
                         object1 = transforms,
                         object2 = component.surface,
                         tension = component.tension,
                         ri = component.ri
                     };
                     if (oQDQOQDOQO.ri < 1f)
                     {
                         oQDQOQDOQO.ri = 1f;
                     }
                     oQDQOQDOQO.li = component.li;
                     if (oQDQOQDOQO.li < 1f)
                     {
                         oQDQOQDOQO.li = 1f;
                     }
                     oQDQOQDOQO.rt = component.rt;
                     oQDQOQDOQO.lt = component.lt;
                     oQDQOQDOQO.rs = component.rs;
                     if (oQDQOQDOQO.rs < 1f)
                     {
                         oQDQOQDOQO.rs = 1f;
                     }
                     oQDQOQDOQO.OQDOOODDQD = component.rs;
                     oQDQOQDOQO.ls = component.ls;
                     if (oQDQOQDOQO.ls < 1f)
                     {
                         oQDQOQDOQO.ls = 1f;
                     }
                     oQDQOQDOQO.OOOCDQODDO = component.ls;
                     oQDQOQDOQO.renderFlag = component.bridgeObject;
                     oQDQOQDOQO.OCCOQCQDOD = component.distHeights;
                     oQDQOQDOQO.newSegment = component.newSegment;
                     oQDQOQDOQO.floorDepth = component.floorDepth;
                     oQDQOQDOQO.waterLevel = this.waterLevel;
                     oQDQOQDOQO.lockWaterLevel = component.lockWaterLevel;
                     oQDQOQDOQO.sharpCorner = component.sharpCorner;
                     oQDQOQDOQO.OQCDCODODQ = this.OOQQCODOCD;
                     component.markerNum = num;
                     component.distance = "-1";
                     component.OODDQCQQDD = "-1";
                     this.OOQQCODOCD.OOODOQDODQ.Add(oQDQOQDOQO);
                     num++;
                 }
             }
             finally
             {
                 IDisposable disposable = enumerator1 as IDisposable;
                 if (disposable == null)
                 {
                 }
                 disposable.Dispose();
             }
         }
     }
     finally
     {
         IDisposable disposable1 = enumerator as IDisposable;
         if (disposable1 == null)
         {
         }
         disposable1.Dispose();
     }
     this.distance = "-1";
     this.OOQQCODOCD.ODQQQCQCOO = this.OODCCOODCC.roadWidth;
     this.OOQQCODOCD.ODOCODQOOC(geo, this.obj, this.OODCCOODCC.OOQDOOQQ, renderMode, camMode, this.objectType);
     if (this.OOQQCODOCD.leftVecs.Count > 0)
     {
         this.leftVecs = this.OOQQCODOCD.leftVecs.ToArray();
         this.rightVecs = this.OOQQCODOCD.rightVecs.ToArray();
     }
 }
Exemplo n.º 2
0
    public void ODQDCQQDDO(Vector3 pos, bool doInsert)
    {
        if (!this.displayRoad)
        {
            this.displayRoad = true;
            this.OOQQCODOCD.OODDDCQCCQ(this.displayRoad, this.OODDDCQCOC);
        }
        int        first       = -1;
        int        second      = -1;
        float      num3        = 10000f;
        float      num4        = 10000f;
        Vector3    tmpPos      = pos;
        OQDQOQDOQO oqdqoqdoqo2 = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[0];
        OQDQOQDOQO oqdqoqdoqo3 = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[1];

        this.OOQQCODOCD.ODDDDCCDCO(pos, out first, out second, out num3, out num4, out oqdqoqdoqo2, out oqdqoqdoqo3, out tmpPos);
        pos = tmpPos;
        if ((doInsert && (first >= 0)) && (second >= 0))
        {
            if (this.OODCCOODCC.OOQDOOQQ && (second == (this.OOQQCODOCD.OOODOQDODQ.Count - 1)))
            {
                this.OODDQODDCC(pos);
            }
            else
            {
                OQDQOQDOQO oqdqoqdoqo = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[second];
                string     name       = oqdqoqdoqo.object1.name;
                int        num5       = second + 2;
                for (int i = second; i < (this.OOQQCODOCD.OOODOQDODQ.Count - 1); i++)
                {
                    string str2;
                    oqdqoqdoqo = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[i];
                    if (num5 < 10)
                    {
                        str2 = "Marker000" + num5.ToString();
                    }
                    else if (num5 < 100)
                    {
                        str2 = "Marker00" + num5.ToString();
                    }
                    else
                    {
                        str2 = "Marker0" + num5.ToString();
                    }
                    oqdqoqdoqo.object1.name = str2;
                    num5++;
                }
                oqdqoqdoqo = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[first];
                Transform transform = (Transform)Object.Instantiate(oqdqoqdoqo.object1.transform, pos, oqdqoqdoqo.object1.rotation);
                transform.gameObject.name = name;
                transform.parent          = this.OODDDCQCOC;
                MarkerScript component = transform.GetComponent <MarkerScript>();
                component.OOCCDCOQCQ = false;
                float num7 = num3 + num4;
                float num8 = num3 / num7;
                float num9 = oqdqoqdoqo2.ri - oqdqoqdoqo3.ri;
                component.ri = oqdqoqdoqo2.ri - (num9 * num8);
                num9         = oqdqoqdoqo2.li - oqdqoqdoqo3.li;
                component.li = oqdqoqdoqo2.li - (num9 * num8);
                num9         = oqdqoqdoqo2.rt - oqdqoqdoqo3.rt;
                component.rt = oqdqoqdoqo2.rt - (num9 * num8);
                num9         = oqdqoqdoqo2.lt - oqdqoqdoqo3.lt;
                component.lt = oqdqoqdoqo2.lt - (num9 * num8);
                num9         = oqdqoqdoqo2.rs - oqdqoqdoqo3.rs;
                component.rs = oqdqoqdoqo2.rs - (num9 * num8);
                num9         = oqdqoqdoqo2.ls - oqdqoqdoqo3.ls;
                component.ls = oqdqoqdoqo2.ls - (num9 * num8);
                this.OCOOCODDOC(this.OODCCOODCC.geoResolution, false, false);
                if (this.materialType == 0)
                {
                    this.OOQQCODOCD.OOQOOCDQOD(this.materialType);
                }
                if (this.objectType == 2)
                {
                    component.surface.gameObject.SetActive(false);
                }
            }
        }
        this.OOQODQOCOC();
    }
Exemplo n.º 3
0
    public void OCOOCODDOC(float geo, bool renderMode, bool camMode)
    {
        this.OOQQCODOCD.OOODOQDODQ.Clear();
        int         num        = 0;
        IEnumerator enumerator = this.obj.GetEnumerator();

        try
        {
            while (enumerator.MoveNext())
            {
                Transform current = (Transform)enumerator.Current;
                if (current.name == "Markers")
                {
                    IEnumerator enumerator2 = current.GetEnumerator();
                    try
                    {
                        while (enumerator2.MoveNext())
                        {
                            Transform    marker    = (Transform)enumerator2.Current;
                            MarkerScript component = marker.GetComponent <MarkerScript>();
                            component.objectScript = this.obj.GetComponent <RoadObjectScript>();
                            if (!component.OOCCDCOQCQ)
                            {
                                component.OOCCDCOQCQ = this.OOQQCODOCD.OOOCQDOCDC(marker);
                            }
                            OQDQOQDOQO oqdqoqdoqo = new OQDQOQDOQO {
                                position = marker.position,
                                num      = this.OOQQCODOCD.OOODOQDODQ.Count,
                                object1  = marker,
                                object2  = component.surface,
                                tension  = component.tension,
                                ri       = component.ri
                            };
                            if (oqdqoqdoqo.ri < 1f)
                            {
                                oqdqoqdoqo.ri = 1f;
                            }
                            oqdqoqdoqo.li = component.li;
                            if (oqdqoqdoqo.li < 1f)
                            {
                                oqdqoqdoqo.li = 1f;
                            }
                            oqdqoqdoqo.rt = component.rt;
                            oqdqoqdoqo.lt = component.lt;
                            oqdqoqdoqo.rs = component.rs;
                            if (oqdqoqdoqo.rs < 1f)
                            {
                                oqdqoqdoqo.rs = 1f;
                            }
                            oqdqoqdoqo.OQDOOODDQD = component.rs;
                            oqdqoqdoqo.ls         = component.ls;
                            if (oqdqoqdoqo.ls < 1f)
                            {
                                oqdqoqdoqo.ls = 1f;
                            }
                            oqdqoqdoqo.OOOCDQODDO     = component.ls;
                            oqdqoqdoqo.renderFlag     = component.bridgeObject;
                            oqdqoqdoqo.OCCOQCQDOD     = component.distHeights;
                            oqdqoqdoqo.newSegment     = component.newSegment;
                            oqdqoqdoqo.floorDepth     = component.floorDepth;
                            oqdqoqdoqo.waterLevel     = this.waterLevel;
                            oqdqoqdoqo.lockWaterLevel = component.lockWaterLevel;
                            oqdqoqdoqo.sharpCorner    = component.sharpCorner;
                            oqdqoqdoqo.OQCDCODODQ     = this.OOQQCODOCD;
                            component.markerNum       = num;
                            component.distance        = "-1";
                            component.OODDQCQQDD      = "-1";
                            this.OOQQCODOCD.OOODOQDODQ.Add(oqdqoqdoqo);
                            num++;
                        }
                        continue;
                    }
                    finally
                    {
                        IDisposable disposable = enumerator2 as IDisposable;
                        if (disposable == null)
                        {
                        }
                        disposable.Dispose();
                    }
                }
            }
        }
        finally
        {
            IDisposable disposable2 = enumerator as IDisposable;
            if (disposable2 == null)
            {
            }
            disposable2.Dispose();
        }
        this.distance = "-1";
        this.OOQQCODOCD.ODQQQCQCOO = this.OODCCOODCC.roadWidth;
        this.OOQQCODOCD.ODOCODQOOC(geo, this.obj, this.OODCCOODCC.OOQDOOQQ, renderMode, camMode, this.objectType);
        if (this.OOQQCODOCD.leftVecs.Count > 0)
        {
            this.leftVecs  = this.OOQQCODOCD.leftVecs.ToArray();
            this.rightVecs = this.OOQQCODOCD.rightVecs.ToArray();
        }
    }
    // Token: 0x060048A4 RID: 18596 RVA: 0x00113274 File Offset: 0x00111474
    public void ODQDCQQDDO(Vector3 pos, bool doInsert)
    {
        if (!this.displayRoad)
        {
            this.displayRoad = true;
            this.OOQQCODOCD.OODDDCQCCQ(this.displayRoad, this.OODDDCQCOC);
        }
        int        num         = -1;
        int        num2        = -1;
        float      num3        = 10000f;
        float      num4        = 10000f;
        Vector3    vector      = pos;
        OQDQOQDOQO oqdqoqdoqo  = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[0];
        OQDQOQDOQO oqdqoqdoqo2 = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[1];

        this.OOQQCODOCD.ODDDDCCDCO(pos, ref num, ref num2, ref num3, ref num4, ref oqdqoqdoqo, ref oqdqoqdoqo2, ref vector);
        pos = vector;
        if (doInsert && num >= 0 && num2 >= 0)
        {
            if (this.OODCCOODCC.OOQDOOQQ && num2 == this.OOQQCODOCD.OOODOQDODQ.Count - 1)
            {
                this.OODDQODDCC(pos);
            }
            else
            {
                OQDQOQDOQO oqdqoqdoqo3 = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[num2];
                string     name        = oqdqoqdoqo3.object1.name;
                int        num5        = num2 + 2;
                for (int i = num2; i < this.OOQQCODOCD.OOODOQDODQ.Count - 1; i++)
                {
                    oqdqoqdoqo3 = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[i];
                    string name2;
                    if (num5 < 10)
                    {
                        name2 = "Marker000" + num5.ToString();
                    }
                    else if (num5 < 100)
                    {
                        name2 = "Marker00" + num5.ToString();
                    }
                    else
                    {
                        name2 = "Marker0" + num5.ToString();
                    }
                    oqdqoqdoqo3.object1.name = name2;
                    num5++;
                }
                oqdqoqdoqo3 = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[num];
                Transform transform = (Transform)Object.Instantiate(oqdqoqdoqo3.object1.transform, pos, oqdqoqdoqo3.object1.rotation);
                transform.gameObject.name = name;
                transform.parent          = this.OODDDCQCOC;
                global::MarkerScript component = transform.GetComponent <global::MarkerScript>();
                component.OOCCDCOQCQ = false;
                float num6 = num3 + num4;
                float num7 = num3 / num6;
                float num8 = oqdqoqdoqo.ri - oqdqoqdoqo2.ri;
                component.ri = oqdqoqdoqo.ri - num8 * num7;
                num8         = oqdqoqdoqo.li - oqdqoqdoqo2.li;
                component.li = oqdqoqdoqo.li - num8 * num7;
                num8         = oqdqoqdoqo.rt - oqdqoqdoqo2.rt;
                component.rt = oqdqoqdoqo.rt - num8 * num7;
                num8         = oqdqoqdoqo.lt - oqdqoqdoqo2.lt;
                component.lt = oqdqoqdoqo.lt - num8 * num7;
                num8         = oqdqoqdoqo.rs - oqdqoqdoqo2.rs;
                component.rs = oqdqoqdoqo.rs - num8 * num7;
                num8         = oqdqoqdoqo.ls - oqdqoqdoqo2.ls;
                component.ls = oqdqoqdoqo.ls - num8 * num7;
                this.OCOOCODDOC(this.OODCCOODCC.geoResolution, false, false);
                if (this.materialType == 0)
                {
                    this.OOQQCODOCD.OOQOOCDQOD(this.materialType);
                }
                if (this.objectType == 2)
                {
                    component.surface.gameObject.SetActive(false);
                }
            }
        }
        this.OOQODQOCOC();
    }
    // Token: 0x0600489C RID: 18588 RVA: 0x00112ADC File Offset: 0x00110CDC
    public void OCOOCODDOC(float geo, bool renderMode, bool camMode)
    {
        this.OOQQCODOCD.OOODOQDODQ.Clear();
        int num = 0;

        foreach (object obj in this.obj)
        {
            Transform transform = (Transform)obj;
            if (transform.name == "Markers")
            {
                foreach (object obj2 in transform)
                {
                    Transform            transform2 = (Transform)obj2;
                    global::MarkerScript component  = transform2.GetComponent <global::MarkerScript>();
                    component.objectScript = this.obj.GetComponent <global::RoadObjectScript>();
                    if (!component.OOCCDCOQCQ)
                    {
                        component.OOCCDCOQCQ = this.OOQQCODOCD.OOOCQDOCDC(transform2);
                    }
                    OQDQOQDOQO oqdqoqdoqo = new OQDQOQDOQO();
                    oqdqoqdoqo.position = transform2.position;
                    oqdqoqdoqo.num      = this.OOQQCODOCD.OOODOQDODQ.Count;
                    oqdqoqdoqo.object1  = transform2;
                    oqdqoqdoqo.object2  = component.surface;
                    oqdqoqdoqo.tension  = component.tension;
                    oqdqoqdoqo.ri       = component.ri;
                    if (oqdqoqdoqo.ri < 1f)
                    {
                        oqdqoqdoqo.ri = 1f;
                    }
                    oqdqoqdoqo.li = component.li;
                    if (oqdqoqdoqo.li < 1f)
                    {
                        oqdqoqdoqo.li = 1f;
                    }
                    oqdqoqdoqo.rt = component.rt;
                    oqdqoqdoqo.lt = component.lt;
                    oqdqoqdoqo.rs = component.rs;
                    if (oqdqoqdoqo.rs < 1f)
                    {
                        oqdqoqdoqo.rs = 1f;
                    }
                    oqdqoqdoqo.OQDOOODDQD = component.rs;
                    oqdqoqdoqo.ls         = component.ls;
                    if (oqdqoqdoqo.ls < 1f)
                    {
                        oqdqoqdoqo.ls = 1f;
                    }
                    oqdqoqdoqo.OOOCDQODDO     = component.ls;
                    oqdqoqdoqo.renderFlag     = component.bridgeObject;
                    oqdqoqdoqo.OCCOQCQDOD     = component.distHeights;
                    oqdqoqdoqo.newSegment     = component.newSegment;
                    oqdqoqdoqo.floorDepth     = component.floorDepth;
                    oqdqoqdoqo.waterLevel     = this.waterLevel;
                    oqdqoqdoqo.lockWaterLevel = component.lockWaterLevel;
                    oqdqoqdoqo.sharpCorner    = component.sharpCorner;
                    oqdqoqdoqo.OQCDCODODQ     = this.OOQQCODOCD;
                    component.markerNum       = num;
                    component.distance        = "-1";
                    component.OODDQCQQDD      = "-1";
                    this.OOQQCODOCD.OOODOQDODQ.Add(oqdqoqdoqo);
                    num++;
                }
            }
        }
        this.distance = "-1";
        this.OOQQCODOCD.ODQQQCQCOO = this.OODCCOODCC.roadWidth;
        this.OOQQCODOCD.ODOCODQOOC(geo, this.obj, this.OODCCOODCC.OOQDOOQQ, renderMode, camMode, this.objectType);
        if (this.OOQQCODOCD.leftVecs.Count > 0)
        {
            this.leftVecs  = this.OOQQCODOCD.leftVecs.ToArray();
            this.rightVecs = this.OOQQCODOCD.rightVecs.ToArray();
        }
    }
Exemplo n.º 6
0
    public void ODQDCQQDDO(Vector3 pos, bool doInsert)
    {
        string str;

        if (!this.displayRoad)
        {
            this.displayRoad = true;
            this.OOQQCODOCD.OODDDCQCCQ(this.displayRoad, this.OODDDCQCOC);
        }
        int        num        = -1;
        int        num1       = -1;
        float      single     = 10000f;
        float      single1    = 10000f;
        Vector3    vector3    = pos;
        OQDQOQDOQO item       = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[0];
        OQDQOQDOQO oQDQOQDOQO = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[1];

        this.OOQQCODOCD.ODDDDCCDCO(pos, out num, out num1, out single, out single1, out item, out oQDQOQDOQO, out vector3);
        pos = vector3;
        if (doInsert && num >= 0 && num1 >= 0)
        {
            if (!this.OODCCOODCC.OOQDOOQQ || num1 != this.OOQQCODOCD.OOODOQDODQ.Count - 1)
            {
                OQDQOQDOQO item1 = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[num1];
                string     str1  = item1.object1.name;
                int        num2  = num1 + 2;
                for (int i = num1; i < this.OOQQCODOCD.OOODOQDODQ.Count - 1; i++)
                {
                    item1 = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[i];
                    if (num2 >= 10)
                    {
                        str = (num2 >= 100 ? string.Concat("Marker0", num2.ToString()) : string.Concat("Marker00", num2.ToString()));
                    }
                    else
                    {
                        str = string.Concat("Marker000", num2.ToString());
                    }
                    item1.object1.name = str;
                    num2++;
                }
                item1 = (OQDQOQDOQO)this.OOQQCODOCD.OOODOQDODQ[num];
                Transform oODDDCQCOC = (Transform)UnityEngine.Object.Instantiate(item1.object1.transform, pos, item1.object1.rotation);
                oODDDCQCOC.gameObject.name = str1;
                oODDDCQCOC.parent          = this.OODDDCQCOC;
                MarkerScript component = oODDDCQCOC.GetComponent <MarkerScript>();
                component.OOCCDCOQCQ = false;
                float single2 = single / (single + single1);
                float single3 = item.ri - oQDQOQDOQO.ri;
                component.ri = item.ri - single3 * single2;
                single3      = item.li - oQDQOQDOQO.li;
                component.li = item.li - single3 * single2;
                single3      = item.rt - oQDQOQDOQO.rt;
                component.rt = item.rt - single3 * single2;
                single3      = item.lt - oQDQOQDOQO.lt;
                component.lt = item.lt - single3 * single2;
                single3      = item.rs - oQDQOQDOQO.rs;
                component.rs = item.rs - single3 * single2;
                single3      = item.ls - oQDQOQDOQO.ls;
                component.ls = item.ls - single3 * single2;
                this.OCOOCODDOC(this.OODCCOODCC.geoResolution, false, false);
                if (this.materialType == 0)
                {
                    this.OOQQCODOCD.OOQOOCDQOD(this.materialType);
                }
                if (this.objectType == 2)
                {
                    component.surface.gameObject.SetActive(false);
                }
            }
            else
            {
                this.OODDQODDCC(pos);
            }
        }
        this.OOQODQOCOC();
    }