Beispiel #1
0
        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();
        }