コード例 #1
0
        public static Vector3 MarkerRotToScmapRot(Quaternion Rot, SaveLua.Marker.MarkerTypes Type)
        {
            if (Type == SaveLua.Marker.MarkerTypes.CameraInfo)
            {
                Vector3 Euler = Rot.eulerAngles;
                Euler.z = 0;

                while (Euler.x < 0)
                {
                    Euler.x += 360f;
                }

                Euler.x = 90f - Euler.x;

                Euler = new Vector3(-Euler.y, Euler.x, 0);

                Euler  *= Mathf.Deg2Rad;
                Euler.x = Round(Euler.x);
                Euler.y = Round(Euler.y);
                return(Euler);
            }
            else
            {
                Vector3 Euler = Rot.eulerAngles;
                Euler.z = 0;
                return(Euler * Mathf.Deg2Rad);
            }
        }
コード例 #2
0
        public static Quaternion ScmapRotToMarkerRot(Vector3 rot, SaveLua.Marker.MarkerTypes Type)
        {
            if (Type == SaveLua.Marker.MarkerTypes.CameraInfo)
            {
                //X > Height
                //Y > Direction
                rot = new Vector3(rot.y, -rot.x, 0) * Mathf.Rad2Deg;

                //Clamp unproper rotations
                while (rot.x < -180)
                {
                    rot.x += 360;
                }
                while (rot.x >= 360)
                {
                    rot.x -= 360;
                }
                rot.x = Mathf.Clamp(rot.x, 0, 180);

                // Invert rotation and offset it by 90 degree
                rot.x = 90f - rot.x;

                return(Quaternion.Euler(rot));
            }
            else
            {
                return(Quaternion.Euler(rot * Mathf.Rad2Deg));
            }
        }
コード例 #3
0
        void ReadTypeMarker()
        {
            SaveLua.Marker.MarkerTypes Mt = SelectedGameObjects[0].GetComponent <MarkerObject>().Owner.MarkerType;

            for (int i = 1; i < Count; i++)
            {
                if (Mt != SelectedGameObjects[i].GetComponent <MarkerObject>().Owner.MarkerType)
                {
                    MarkerTypeField.text = ValueDifferent + ((Count > 1) ?(" ( " + Count + " )"):(""));
                    return;
                }
            }

            MarkerTypeField.text = SaveLua.Marker.MarkerTypeToString(Mt) + ((Count > 1) ? (" ( " + Count + " )") : (""));
        }
コード例 #4
0
            public bool ActiveByType(SaveLua.Marker.MarkerTypes type)
            {
                switch (type)
                {
                case SaveLua.Marker.MarkerTypes.BlankMarker:
                    return(Blank);

                case SaveLua.Marker.MarkerTypes.Mass:
                case SaveLua.Marker.MarkerTypes.Hydrocarbon:
                    return(Resource);

                case SaveLua.Marker.MarkerTypes.CameraInfo:
                    return(Camera);

                case SaveLua.Marker.MarkerTypes.LandPathNode:
                    return(LandNodes);

                case SaveLua.Marker.MarkerTypes.AmphibiousPathNode:
                    return(AmphibiousNodes);

                case SaveLua.Marker.MarkerTypes.WaterPathNode:
                    return(NavyNodes);

                case SaveLua.Marker.MarkerTypes.AirPathNode:
                    return(AirNodes);

                case SaveLua.Marker.MarkerTypes.RallyPoint:
                case SaveLua.Marker.MarkerTypes.NavalRallyPoint:
                    return(RallyPoint);

                case SaveLua.Marker.MarkerTypes.CombatZone:
                    return(Combat);

                case SaveLua.Marker.MarkerTypes.DefensivePoint:
                case SaveLua.Marker.MarkerTypes.NavalDefensivePoint:
                    return(Defense);

                case SaveLua.Marker.MarkerTypes.ProtectedExperimentalConstruction:
                    return(ProtExp);

                case SaveLua.Marker.MarkerTypes.ExpansionArea:
                case SaveLua.Marker.MarkerTypes.LargeExpansionArea:
                case SaveLua.Marker.MarkerTypes.NavalArea:
                    return(Expand);
                }
                return(Other);
            }
コード例 #5
0
            public bool ActiveByType(SaveLua.Marker.MarkerTypes type)
            {
                switch (type)
                {
                case SaveLua.Marker.MarkerTypes.BlankMarker:
                    return(Blank);

                case SaveLua.Marker.MarkerTypes.Mass:
                    return(Resource);

                case SaveLua.Marker.MarkerTypes.Hydrocarbon:
                    return(Resource);

                case SaveLua.Marker.MarkerTypes.CameraInfo:
                    return(Camera);

                case SaveLua.Marker.MarkerTypes.LandPathNode:
                    return(LandNodes);

                case SaveLua.Marker.MarkerTypes.AmphibiousPathNode:
                    return(AmphibiousNodes);

                case SaveLua.Marker.MarkerTypes.WaterPathNode:
                    return(NavyNodes);

                case SaveLua.Marker.MarkerTypes.NavalLink:
                    return(NavyNodes);

                case SaveLua.Marker.MarkerTypes.AirPathNode:
                    return(AirNodes);

                case SaveLua.Marker.MarkerTypes.RallyPoint:
                    return(RallyPoint);

                case SaveLua.Marker.MarkerTypes.NavalRallyPoint:
                    return(NavyRallyPoint);
                }
                return(Other);
            }