public Grid() { GridBlocks = new GridBlockCollection(true); GridObjects = new GridObjectCollection(); GridObjectDefinitions = new GridObjectDefinitionCollection(); Thins = new ThinCollection(); Tiles = new TileCollection(true); Triggers = new TriggerCollection(true); Pools = new PoolCollection(); }
public Grid(Grid grid) { GridBlocks = grid.GridBlocks; Thins = grid.Thins; Tiles = grid.Tiles; Triggers = new TriggerCollection(false); foreach (Trigger t in grid.Triggers) { Trigger nTrigger = new Trigger { Duration = null, Cooldown = new Interval(2000, false), Enabled = t.Enabled, EndAngle = t.EndAngle, InitialState = t.InitialState, IsFromValhalla = t.IsFromValhalla, MaxAngleRate = t.MaxAngleRate, MaxRate = t.MaxRate, MoveCeiling = t.MoveCeiling, MoveFloor = t.MoveFloor, MoveRooftop = t.MoveRooftop, NextTrigger = t.NextTrigger, NextTriggerTiming = t.NextTriggerTiming, OffHeight = t.OffHeight, OffSound = t.OffSound, OffText = t.OffText, OnHeight = t.OnHeight, OnSound = t.OnSound, OnText = t.OnText, Position = new Vector3(t.Position.X, t.Position.Y, t.Position.X), Random = t.Random, ResetTimer = t.ResetTimer, SlideAmount = t.SlideAmount, SlideAxis = t.SlideAxis, Speed = t.Speed, StartAngle = t.StartAngle, CurrentState = TriggerState.Inactive, Team = t.Team, TextureOff = t.TextureOff, TextureOn = t.TextureOn, TriggerId = t.TriggerId, TriggerType = t.TriggerType, X0 = t.X0, X1 = t.X1, X2 = t.X2, X3 = t.X3, X4 = t.X4, Y0 = t.Y0, Y1 = t.Y1, Y2 = t.Y2, Y3 = t.Y3, Y4 = t.Y4 }; Triggers.Add(nTrigger); } BalanceShrine = new Shrine(grid.BalanceShrine.Team, grid.BalanceShrine.ShrineId, grid.BalanceShrine.Power, grid.BalanceShrine.CurrentBias); ChaosShrine = new Shrine(grid.ChaosShrine.Team, grid.ChaosShrine.ShrineId, grid.ChaosShrine.Power, grid.ChaosShrine.CurrentBias); OrderShrine = new Shrine(grid.OrderShrine.Team, grid.OrderShrine.ShrineId, grid.OrderShrine.Power, grid.OrderShrine.CurrentBias); GameName = grid.GameName; GridFilename = grid.GridFilename; GridId = grid.GridId; MaxPlayers = grid.MaxPlayers; MiscFilename = grid.MiscFilename; Name = grid.Name; Pools = new PoolCollection(); foreach (Pool p in grid.Pools) { Pools.Add(new Pool(p)); } ShortGameName = grid.ShortGameName; TimeLimit = grid.TimeLimit; TriggerFilename = grid.TriggerFilename; WorldFilename = grid.WorldFilename; ExpBonus = grid.ExpBonus; }