Subversion Repositories AndroidProjects

Rev

Rev 127 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

package com.gebauz.pingK.common.game.gamestates;

import javax.microedition.khronos.opengles.GL10;

import com.gebauz.pingK.common.R;
import com.gebauz.pingK.common.framework.GLUtil;
import com.gebauz.pingK.common.framework.Sprite2D;
import com.gebauz.pingK.common.game.GameConsts;
import com.gebauz.pingK.common.game.MultitouchInput;
import com.gebauz.pingK.common.game.MultitouchInput.Finger;

public class LogoState extends BaseGameState
{
        private float mTimer = 0.0f;
       
        private Sprite2D mBackground;
       
        public LogoState()
        {
        }
       
        @Override
        public void init()
        {
                mBackground = new Sprite2D();
                mBackground.init(R.drawable.logo, 0.0f, 0.0f, GameConsts.VIRTUAL_SCREEN_WIDTH, GameConsts.VIRTUAL_SCREEN_HEIGHT);
                mBackground.pivotX = 0.0f;
                mBackground.pivotY = 0.0f;
        }
       
        @Override
        public void exit()
        {
                mBackground = null;
        }
       
        @Override
        public void onSurfaceChanged(int width, int height)
        {
                GLUtil.getGL().glViewport(0, 0, width, height);
        }
       
        @Override
        public void update(float deltaTime)
        {
                mTimer += deltaTime;
/*                      mTitle.update(deltaTime);*/
               
                Finger finger = MultitouchInput.getInstance().getTouchPointInside(0.0f, 0.0f, GameConsts.VIRTUAL_SCREEN_WIDTH, GameConsts.VIRTUAL_SCREEN_HEIGHT);
                if ((finger != null) || (mTimer > GameConsts.LOGO_TIMEOUT))
                {
                        // switch state
                        GameStateManager.getInstance().switchState("TitleState");
                }
               
                mBackground.update(deltaTime);
               
/*                      if (!mHelp.isActive())
                        {
                                mGameStartButton.update(deltaTime);
                                mOptionsButton.update(deltaTime);
                                mHelpButton.update(deltaTime);
                        }
                       
                        mHelp.update(deltaTime);*/

        }
       
        @Override
        public void render()
        {
        GL10 gl = GLUtil.getGL();

        gl.glClearColor(1.0f, 1.0f, 1.0f, 0.0f);
        gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);

                gl.glMatrixMode(GL10.GL_PROJECTION);
                gl.glLoadIdentity();
        gl.glOrthof(0, GameConsts.VIRTUAL_SCREEN_WIDTH-1.0f, GameConsts.VIRTUAL_SCREEN_HEIGHT-1.0f, 0, 0, 1);
       
        gl.glMatrixMode(GL10.GL_MODELVIEW);
       
        mBackground.render();

/*                      float alpha = GameServices.getRandomFloat(0.7f, 1.0f);
                        mTitle.setColor(GameConsts.PINGK_COLOR.x, GameConsts.PINGK_COLOR.y, GameConsts.PINGK_COLOR.z, alpha);
                mTitle.render();
                       
                mGameStartButton.render();
                        mOptionsButton.render();
                        mHelpButton.render();
                        mHelp.render();*/

        }
       
        @Override
        public boolean doFadeIn()
        {
                return true;
        }
       
        @Override
        public boolean doFadeOut()
        {
                return true;
        }


}