Exemple #1
0
            public void Deserialize(DataSerializer s)
            {
                EnhancedMeteorStrike d = Singleton <EnhancedDisastersManager> .instance.container.MeteorStrike;

                deserializeCommonParameters(s, d);

                if (s.version <= 2)
                {
                    float daysPerFrame = Helper.DaysPerFrame;
                    for (int i = 0; i < d.meteorEvents.Length; i++)
                    {
                        d.meteorEvents[i].Enabled            = s.ReadBool();
                        d.meteorEvents[i].PeriodDays         = s.ReadInt32() * daysPerFrame;
                        d.meteorEvents[i].MaxIntensity       = (byte)s.ReadInt8();
                        d.meteorEvents[i].DaysUntilNextEvent = s.ReadInt32() * daysPerFrame;
                        d.meteorEvents[i].MeteorsFallen      = s.ReadInt32();
                    }
                }
                else
                {
                    for (int i = 0; i < d.meteorEvents.Length; i++)
                    {
                        d.meteorEvents[i].Enabled            = s.ReadBool();
                        d.meteorEvents[i].PeriodDays         = s.ReadFloat();
                        d.meteorEvents[i].MaxIntensity       = (byte)s.ReadInt8();
                        d.meteorEvents[i].DaysUntilNextEvent = s.ReadFloat();
                        d.meteorEvents[i].MeteorsFallen      = s.ReadInt32();
                    }
                }
            }
Exemple #2
0
        public override void CopySettings(EnhancedDisaster disaster)
        {
            base.CopySettings(disaster);

            EnhancedMeteorStrike d = disaster as EnhancedMeteorStrike;

            if (d != null)
            {
                Meteor1Enabled = d.Meteor1Enabled;
                Meteor2Enabled = d.Meteor2Enabled;
                Meteor3Enabled = d.Meteor3Enabled;
            }
        }
Exemple #3
0
            public void Serialize(DataSerializer s)
            {
                EnhancedMeteorStrike d = Singleton <EnhancedDisastersManager> .instance.container.MeteorStrike;

                serializeCommonParameters(s, d);

                for (int i = 0; i < d.meteorEvents.Length; i++)
                {
                    s.WriteBool(d.meteorEvents[i].Enabled);
                    s.WriteFloat(d.meteorEvents[i].PeriodDays);
                    s.WriteInt8(d.meteorEvents[i].MaxIntensity);
                    s.WriteFloat(d.meteorEvents[i].DaysUntilNextEvent);
                    s.WriteInt32(d.meteorEvents[i].MeteorsFallen);
                }
            }
Exemple #4
0
        public void CheckObjects()
        {
            if (ForestFire == null)
            {
                ForestFire = new EnhancedForestFire();
            }
            if (Thunderstorm == null)
            {
                Thunderstorm = new EnhancedThunderstorm();
            }
            if (Sinkhole == null)
            {
                Sinkhole = new EnhancedSinkhole();
            }
            if (Tsunami == null)
            {
                Tsunami = new EnhancedTsunami();
            }
            if (Tornado == null)
            {
                Tornado = new EnhancedTornado();
            }
            if (Earthquake == null)
            {
                Earthquake = new EnhancedEarthquake();
            }
            if (MeteorStrike == null)
            {
                MeteorStrike = new EnhancedMeteorStrike();
            }

            AllDisasters.Clear();
            AllDisasters.Add(ForestFire);
            AllDisasters.Add(Thunderstorm);
            AllDisasters.Add(Sinkhole);
            AllDisasters.Add(Tsunami);
            AllDisasters.Add(Tornado);
            AllDisasters.Add(Earthquake);
            AllDisasters.Add(MeteorStrike);
        }