LIBGDX: Star.apk

LIBGDX: Star.apk


    90分钟写好的一个基于libgdx的android应用,有兴趣的 下载看看,也算这段时间研究libgdx的总结吧。。。版本需要2.1及其以上版本,由于cppblog.com附件后缀上传限制,下载 Star-Android.apk.7z后,请去掉.7z后缀,再安装,程序名称为--star。别忘记android手机的触屏功能哦。。。

    Mac下不知道怎么截屏,明天再上图吧~


Source Code:

  1  /**
  2   * file:   StarGame.java
  3   * author: codejie ([email protected])
  4   * date:   Jun 2, 2011 11:32:00 PM
  5    */
  6  package  com.jie.android.gdx.star;
  7 
  8  import  com.badlogic.gdx.Game;
  9  import  com.badlogic.gdx.Gdx;
 10  import  com.badlogic.gdx.InputProcessor;
 11  import  com.badlogic.gdx.graphics.GL10;
 12  import  com.badlogic.gdx.graphics.Texture;
 13  import  com.badlogic.gdx.math.MathUtils;
 14  import  com.badlogic.gdx.scenes.scene2d.Action;
 15  import  com.badlogic.gdx.scenes.scene2d.OnActionCompleted;
 16  import  com.badlogic.gdx.scenes.scene2d.Stage;
 17  import  com.badlogic.gdx.scenes.scene2d.actions.FadeTo;
 18  import  com.badlogic.gdx.scenes.scene2d.actions.MoveTo;
 19  import  com.badlogic.gdx.scenes.scene2d.actions.Parallel;
 20  import  com.badlogic.gdx.scenes.scene2d.actions.RotateTo;
 21  import  com.badlogic.gdx.scenes.scene2d.actions.ScaleTo;
 22  import  com.badlogic.gdx.scenes.scene2d.actors.Image;
 23 
 24  public   class  StarGame  extends  Game  implements  InputProcessor {
 25 
 26       /*  (non-Javadoc)
 27       * @see com.badlogic.gdx.ApplicationListener#create()
 28        */
 29      
 30       private  Stage stage  =   null ;
 31       private  Texture ballTexture  =   null ;
 32       private  Texture starTexture  =   null ;
 33      
 34      @Override
 35       public   void  create() {
 36           //  TODO Auto-generated method stub
 37          stage  =   new  Stage( 480 800 true );
 38          
 39          ballTexture  =   new  Texture(Gdx.files.internal( " data/ball.png " ));
 40          starTexture  =   new  Texture(Gdx.files.internal( " data/star.png " ));
 41          
 42          Gdx.input.setInputProcessor( this );
 43      }
 44 
 45       private   void  makeStar( boolean  star,  int  x,  int  y,  int  size) {
 46          Image img  =   null ;
 47          
 48           if  (star  ==   true ) {
 49              img  =   new  Image( " star " , starTexture);
 50          }
 51           else  {
 52              img  =   new  Image( " ball " , ballTexture);
 53               if (size  >   24 )
 54                  size  -=   24 ;
 55          }
 56          img.x  =  x;
 57          img.y  =  y;
 58          img.width  =  size;
 59          img.height  =  size;
 60          
 61           this .addAction(img);
 62          
 63          stage.addActor(img);        
 64      }
 65      
 66       private   void  addAction( final  Image img) {
 67          
 68           int  duration  =  MathUtils.random( 3 60 );
 69          MoveTo moveto  =  MoveTo.$(img.x,  800 , duration);
 70          moveto.setCompletionListener( new  OnActionCompleted() {
 71               public   void  completed(Action action) {
 72                  stage.removeActor(img);
 73              }
 74          });
 75          
 76           int  rotate  =  MathUtils.random( 360 );        
 77           float  scale  =  MathUtils.random( 0.5f 2.0f );
 78           float  fade  =  MathUtils.random( 1.0f );
 79          Action action  =  Parallel.$(
 80                  moveto,
 81                  ScaleTo.$(scale, scale, duration),
 82                  RotateTo.$(rotate, duration),
 83                  FadeTo.$(fade, duration)
 84                  );
 85          
 86          img.action(action);        
 87      }
 88      
 89       public   void  render() {
 90          Gdx.gl.glClearColor( 0 , 0 , 0 , 0 );
 91          Gdx.graphics.getGL10().glClear(GL10.GL_COLOR_BUFFER_BIT);
 92          
 93           float  delta  =  Gdx.graphics.getDeltaTime();
 94          
 95           int  roll  =  ( int )(delta  *   1000000 );
 96           if  (roll  %   15   ==   0 ) {
 97              makeStar(MathUtils.randomBoolean(), MathUtils.random( 0 480 ), MathUtils.random( 0 64 ), MathUtils.random( 10 64 ));
 98          }
 99          
100          stage.act(delta);
101          stage.draw();
102      }
103      
104       public   void  dispose() {
105          stage.dispose();
106          ballTexture.dispose();
107          starTexture.dispose();
108      }
109      
110      
111       /*  (non-Javadoc)
112       * @see com.badlogic.gdx.InputProcessor#keyDown(int)
113        */
114      @Override
115       public   boolean  keyDown( int  arg0) {
116           //  TODO Auto-generated method stub
117           return   false ;
118      }
119 
120       /*  (non-Javadoc)
121       * @see com.badlogic.gdx.InputProcessor#keyTyped(char)
122        */
123      @Override
124       public   boolean  keyTyped( char  arg0) {
125           //  TODO Auto-generated method stub
126           return   false ;
127      }
128 
129       /*  (non-Javadoc)
130       * @see com.badlogic.gdx.InputProcessor#keyUp(int)
131        */
132      @Override
133       public   boolean  keyUp( int  arg0) {
134           //  TODO Auto-generated method stub
135           return   false ;
136      }
137 
138       /*  (non-Javadoc)
139       * @see com.badlogic.gdx.InputProcessor#scrolled(int)
140        */
141      @Override
142       public   boolean  scrolled( int  arg0) {
143           //  TODO Auto-generated method stub
144           return   false ;
145      }
146 
147       /*  (non-Javadoc)
148       * @see com.badlogic.gdx.InputProcessor#touchDown(int, int, int, int)
149        */
150      @Override
151       public   boolean  touchDown( int  arg0,  int  arg1,  int  arg2,  int  arg3) {
152           //  TODO Auto-generated method stub
153           return   false ;
154      }
155 
156       /*  (non-Javadoc)
157       * @see com.badlogic.gdx.InputProcessor#touchDragged(int, int, int)
158        */
159      @Override
160       public   boolean  touchDragged( int  arg0,  int  arg1,  int  arg2) {
161           //  TODO Auto-generated method stub
162          
163          makeStar(MathUtils.randomBoolean(), arg0,  800   -  arg1, MathUtils.random( 10 64 ));
164          
165           return   false ;
166      }
167 
168       /*  (non-Javadoc)
169       * @see com.badlogic.gdx.InputProcessor#touchMoved(int, int)
170        */
171      @Override
172       public   boolean  touchMoved( int  arg0,  int  arg1) {
173           //  TODO Auto-generated method stub
174           return   false ;
175      }
176 
177       /*  (non-Javadoc)
178       * @see com.badlogic.gdx.InputProcessor#touchUp(int, int, int, int)
179        */
180      @Override
181       public   boolean  touchUp( int  arg0,  int  arg1,  int  arg2,  int  arg3) {
182           //  TODO Auto-generated method stub
183           return   false ;
184      }
185 
186  }
187 

你可能感兴趣的:(LIBGDX: Star.apk)