public void InitialiseP1(FrontEnd.ButtonInfo buttonInfo, int inShowStyle)
        {
            this.SetDefaults();
            sparklesPosition = 0;
            Zobject.ZobjectInfo info = new Zobject.ZobjectInfo();
            info.position    = buttonInfo.position;
            info.texture     = buttonInfo.texture;
            normalTexture    = info.texture;
            info.startState  = ZobjectState.kZobjectHidden;
            info.isMapObject = false;
            zobject.Initialise(info);
            zobject.SetShowStyle(inShowStyle);
            zobject.SetThrobSize(0.1f);
            zobject.SetThrobTime(0.16f);
            position = buttonInfo.position;
            if (buttonInfo.texture != null)
            {
                width  = (float)(buttonInfo.texture).pixelsWide;
                height = (float)(buttonInfo.texture).pixelsHigh;
            }

            if (Globals.g_main.usingTextureResolution == TextureResolutionEnum.kTextureResolution_High)
            {
                width  /= 2.0f;
                height /= 2.0f;
            }


            goToScreen = buttonInfo.goToScreen;
            zobject.SetAtlas(null);
            //buttonInfo.textureLabel = null;
            if (buttonInfo.textureLabel != null)
            {
                if (zobjectLabel == null)
                {
                    zobjectLabel = new Zobject();
                }

                info.texture = buttonInfo.textureLabel;
                zobjectLabel.Initialise(info);
                zobjectLabel.SetShowStyle(inShowStyle);
            }
        }
        public void FirstInitialisation(ZRaceMeterData inData)
        {
            Globals.Assert(inData.numTeams <= (int)Enum.kMaxNumTeams);
            numTeams = inData.numTeams;
            Zobject.ZobjectInfo info = new Zobject.ZobjectInfo();
            info.isMapObject = false;
            info.startState  = ZobjectState.kZobjectShown;
            info.position    = inData.position;
            for (int team = 0; team < numTeams; team++)
            {
                if (pMarker[team] == null)
                {
                    pMarker[team] = new Zobject();
                }

                info.texture = null;
                (pMarker[team]).Initialise(info);
                (pMarker[team]).SetAtlas(inData.atlas);
                (pMarker[team]).SetSubTextureId(inData.subtextureId[team]);
                pMarker[team].myAtlasBillboard.SetRenderQueue(11000);
                pMarker[team].myAtlasBillboard.myObject.layer = LayerMask.NameToLayer("guistuff");
            }

            if (pRaceTrack == null)
            {
                pRaceTrack          = new Zobject();
                pRaceTrackLowerHalf = new Zobject();
            }

            info.texture = null;
            pRaceTrack.Initialise(info);
            pRaceTrack.SetAtlas(inData.atlas);
            pRaceTrack.SetSubTextureId(1);
            pRaceTrackLowerHalf.Initialise(info);
            pRaceTrackLowerHalf.SetAtlas(inData.atlas);
            pRaceTrackLowerHalf.SetSubTextureId(2);
            pRaceTrack.myAtlasBillboard.SetRenderQueue(11000);
            pRaceTrackLowerHalf.myAtlasBillboard.SetRenderQueue(11000);
            pRaceTrack.myAtlasBillboard.myObject.layer          = LayerMask.NameToLayer("guistuff");
            pRaceTrackLowerHalf.myAtlasBillboard.myObject.layer = LayerMask.NameToLayer("guistuff");
        }
        public void AddLabelP1P2(ZAtlas inTex, int inSubTextureId, CGPoint inOffset)
        {
            labelOffset = inOffset;
            if (zobjectLabel == null)
            {
                zobjectLabel = new Zobject();
            }

            Zobject.ZobjectInfo info = new Zobject.ZobjectInfo();
            info.texture    = null;
            info.startState = ZobjectState.kZobjectHidden;
            zobjectLabel.Initialise(info);
            zobjectLabel.SetAtlas(inTex);
            zobjectLabel.SetSubTextureId(inSubTextureId);
            zobjectLabel.SetShowStyle(zobject.showStyle);
            zobjectLabel.SetHideStyle(zobject.hideStyle);
            zobjectLabel.SetWaitToShow(zobject.waitToShow);
            CGPoint labePos = Utilities.CGPointMake(position.x + labelOffset.x, position.y + labelOffset.y);

            zobjectLabel.SetScreenPosition(labePos);
            zobjectLabel.SetState(ZobjectState.kZobjectHidden);
        }