public Tank(Game g, Vector3 p)
            : base(g, p)
        {
            controlState = new TankControlState();
            wheelrotations[0] = 0;
            wheelrotations[1] = 0;
            wheelrotations[2] = 0;
            wheelrotations[3] = 0;

            cdrawer = new ColliderDrawer(g, this.getCollidable());
        }
        public override void LoadContent(ContentManager contentMan)
        {
            Matrix shapeTransform = Matrix.Identity;
            model = loadedModels[type];

            switch (type)
            {
                case 0:
                    collide = new AARectangleCollidable(this.position, 485);
                    this.position.Y += 220;
                    shapeTransform =  Matrix.CreateScale(130) * Matrix.CreateTranslation(this.position);
                    break;
                case 1:
                    collide = new CircleCollidable(this.position, 265);
                    this.position.Y += 253;
                    shapeTransform = Matrix.CreateScale(100) * Matrix.CreateRotationX((float)Math.PI / 2) * Matrix.CreateTranslation(this.position);
                    break;
                case 2:
                    collide = new CircleCollidable(this.position, 165);
                    this.position.Y += 190;
                    shapeTransform = Matrix.CreateScale(80) * Matrix.CreateRotationX((float)Math.PI / 2) * Matrix.CreateTranslation(this.position);
                    break;
            }

            boneOriginTransforms = new Matrix[model.Bones.Count];
            for (int i = 0; i < model.Bones.Count; i++)
            {
                boneOriginTransforms[i] = model.Bones[i].Transform * shapeTransform;
            }

            tex = loadedTextures[textype];

            colliderDrawer = new ColliderDrawer(this.game, this.getCollidable());
        }