public BitDoorState(ArtObjectInstance artObject) { ServiceHelper.InjectServices((object)this); this.AoInstance = artObject; switch (artObject.ArtObject.ActorType) { case ActorType.FourBitDoor: case ActorType.TwoBitDoor: case ActorType.SixteenBitDoor: case ActorType.EightBitDoor: case ActorType.OneBitDoor: this.BitTexture = this.CMProvider.Global.Load <Texture2D>("Other Textures/glow/GLOWBIT"); this.AntiBitTexture = this.CMProvider.Global.Load <Texture2D>("Other Textures/glow/GLOWBIT_anti"); break; case ActorType.ThirtyTwoBitDoor: this.BitTexture = this.CMProvider.Global.Load <Texture2D>("Other Textures/glow/small_glowbit"); this.AntiBitTexture = this.CMProvider.Global.Load <Texture2D>("Other Textures/glow/small_glowbit_anti"); break; default: this.BitTexture = this.CMProvider.Global.Load <Texture2D>("Other Textures/glow/code_machine_glowbit"); this.AntiBitTexture = this.CMProvider.Global.Load <Texture2D>("Other Textures/glow/code_machine_glowbit_anti"); for (int index = 0; index < 64; ++index) { this.SixtyFourOffsets[index] /= 16f; } break; } this.RumbleSound = this.CMProvider.CurrentLevel.Load <SoundEffect>("Sounds/MiscActors/Rumble"); this.sLightUp = this.CMProvider.CurrentLevel.Load <SoundEffect>("Sounds/Zu/DoorBitLightUp"); this.sFadeOut = this.CMProvider.CurrentLevel.Load <SoundEffect>("Sounds/Zu/DoorBitFadeOut"); this.ExpectedViewpoint = FezMath.AsViewpoint(FezMath.OrientationFromDirection(FezMath.MaxClamp(Vector3.Transform(Vector3.UnitZ, this.AoInstance.Rotation)))); this.lastBits = 0; this.InitBitPlanes(); }