Exemple #1
0
            public static GClass1 ReadDecal(this SCMap scMap)
            {
                GClass1 gClass1 = new GClass1();

                gClass1.unk0   = scMap.ReadInt();
                gClass1.gEnum7 = scMap.ReadInt();

                int texturesCount = scMap.ReadInt();

                gClass1.texturePaths = new string[texturesCount];
                for (int i = 0; i < texturesCount; i++)
                {
                    int strLenght = scMap.ReadInt();
                    gClass1.texturePaths[i] = scMap.ReadString(strLenght);
                }

                gClass1.scale    = scMap.ReadVector3();
                gClass1.position = scMap.ReadVector3();
                Vector3 rot = scMap.ReadVector3();

                gClass1.rotation      = Quaternion.Euler(rot);
                gClass1.cutOffLOD     = scMap.ReadFloat();
                gClass1.nearCutOffLOD = scMap.ReadFloat();
                gClass1.id            = scMap.ReadInt();

                return(gClass1);
            }
Exemple #2
0
            public static Prop ReadProp(this SCMap scMap)
            {
                Prop prop = new Prop();

                prop.string_0  = scMap.ReadString();
                prop.position  = scMap.ReadVector3();
                prop.vector3_2 = scMap.ReadVector3();
                prop.vector3_3 = scMap.ReadVector3();
                prop.rotation  = Quaternion.identity;
                prop.unk0      = scMap.ReadVector3();
                return(prop);
            }
Exemple #3
0
            public static GClass0 ReadGClass0(this SCMap scMap)
            {
                GClass0 gClass0 = new GClass0();

                gClass0.texturePath = scMap.ReadString();
                gClass0.ramp        = scMap.ReadString();
                gClass0.position    = scMap.ReadVector3();
                float rotY = scMap.ReadFloat();

                gClass0.rotation        = Quaternion.Euler(0, rotY, 0);
                gClass0.velocity        = scMap.ReadVector3();
                gClass0.lifetimeFirst   = scMap.ReadFloat();
                gClass0.lifetimeSecond  = scMap.ReadFloat();
                gClass0.periodFirst     = scMap.ReadFloat();
                gClass0.periodSecond    = scMap.ReadFloat();
                gClass0.scaleFirst      = scMap.ReadFloat();
                gClass0.scaleSecond     = scMap.ReadFloat();
                gClass0.frameCount      = scMap.ReadFloat();
                gClass0.frameRateFirst  = scMap.ReadFloat();
                gClass0.frameRateSecond = scMap.ReadFloat();
                gClass0.stripCount      = scMap.ReadFloat();
                return(gClass0);
            }
Exemple #4
0
            public static LightingSettings ReadLightingSettings(this SCMap scMap)
            {
                LightingSettings lightingSettings = new LightingSettings();

                lightingSettings.bgTexturePath      = scMap.ReadString();
                lightingSettings.skyCubeMapPath     = scMap.ReadString();
                lightingSettings.envCubeMap         = scMap.ReadString();
                lightingSettings.lightingMultiplier = scMap.ReadFloat();
                lightingSettings.sunDirection       = scMap.ReadVector3();
                lightingSettings.sunAmbience        = scMap.ReadColorRGB();
                lightingSettings.sunColor           = scMap.ReadColorRGB();
                lightingSettings.shadowColor        = scMap.ReadColorRGB();
                lightingSettings.specularColor      = scMap.ReadColorRGBA();
                lightingSettings.bloom = scMap.ReadFloat();
                return(lightingSettings);
            }
Exemple #5
0
            public static WaterSettings ReadWaterSettings(this SCMap scMap)
            {
                WaterSettings waterSettings = new WaterSettings();

                waterSettings.hasWater = scMap.ReadByte() == 1;
                //ReadWater
                if (waterSettings.hasWater)
                {
                    waterSettings.waterElevationInv   = scMap.ReadFloat();
                    waterSettings.waterElevationDeep  = scMap.ReadFloat();
                    waterSettings.waterElevationAbyss = scMap.ReadFloat();
                }
                else
                {
                    //Skip & setDefault
                    scMap.ReadVector3();
                    waterSettings.waterElevationInv   = 17.5f;
                    waterSettings.waterElevationDeep  = 15f;
                    waterSettings.waterElevationAbyss = 2.5f;
                }
                return(waterSettings);
            }
Exemple #6
0
            public static Color ReadColorRGB(this SCMap scMap)
            {
                Vector3 vec3 = scMap.ReadVector3() * 100 / 255;

                return(new Color(vec3.x, vec3.y, vec3.z));
            }