21

所属分类:android开发
开发工具:Java
文件大小:7546KB
下载次数:14
上传日期:2012-05-27 18:02:24
上 传 者艾米喵喵
说明:  java编写的eclipse下的编写的射击类游戏——《抢滩登陆》安卓平台下
(prepared under the preparation of java eclipse shooting games- the " beach landing" Andrews platform)

文件列表:
21\21\Sample21_1\.classpath (380, 2012-05-06)
21\21\Sample21_1\.project (846, 2010-10-17)
21\21\Sample21_1\.settings\org.eclipse.jdt.core.prefs (629, 2012-05-06)
21\21\Sample21_1\AndroidManifest.xml (764, 2010-10-15)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\Activity_GL_Demo$1$1.class (1046, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\Activity_GL_Demo$1$2.class (2104, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\Activity_GL_Demo$1.class (2482, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\Activity_GL_Demo.class (4028, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\BuildConfig.class (329, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\CollectionUtil.class (3255, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\Constant.class (5930, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\DrawBall.class (4697, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\DrawCelestial.class (2666, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\DrawCircle.class (3360, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\DrawCube.class (3354, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\DrawCylinder.class (3904, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\DrawLandForm.class (2992, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\DrawLightBall.class (4486, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\DrawLightCylinder.class (4253, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\DrawPanel.class (1962, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\DrawTaper.class (4522, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\DrawTextureRect.class (2048, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\DrawWater.class (3170, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\GLGameView$SceneRenderer$1.class (1076, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\GLGameView$SceneRenderer.class (9522, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\GLGameView.class (7196, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\LogicalBullet.class (5622, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\LogicalLandTank.class (3512, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\LogicalWaterTank.class (2967, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\PackageCannon.class (4833, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\PackageCannonEmplacement.class (1712, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\PackageLandTank.class (2260, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\PackageLandTankWheel.class (1779, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\PackageLighthouse.class (2902, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\PackageWaterTank.class (2101, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\PackageWaterTankBody.class (3555, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\R$attr.class (316, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\R$drawable.class (1613, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\R$id.class (572, 2012-05-06)
21\21\Sample21_1\bin\classes\wyf\jsl\lb\R$layout.class (425, 2012-05-06)
... ...

package wyf.jsl.lb; import static wyf.jsl.lb.Constant.*; public class ThreadMenu extends Thread { SurfaceViewMenu mv; int afterCurrentIndex;//动画播放完后的当前菜单图片数组索引 public ThreadMenu(SurfaceViewMenu mv,int afterCurrentIndex) { this.mv=mv; this.afterCurrentIndex=afterCurrentIndex; } @Override public void run() { for(int i=0;i<=TOTAL_STEPS;i++)//循环指定的步数完成动画 { mv.changePercent=PERCENT_STEP*i;//计算此步的占动画的百分比 mv.initMenu();//初始化各个位置的值 if(mv.anmiState==1)//如果状态是1,则向右移 { //根据当前百分比计算当前菜单的位置,大小 mv.currentSelectX=mv.currentSelectX+(BIGWIDTH+MENU_SPAN)*mv.changePercent; mv.currentSelectY=mv.currentSelectY+(BIGHEIGHT-SMALLHEIGHT)*mv.changePercent; mv.currentSelectWidth=BIGWIDTH-(BIGWIDTH-SMALLWIDTH)*mv.changePercent; mv.currentSelectHeight=BIGHEIGHT-(BIGHEIGHT-SMALLHEIGHT)*mv.changePercent; //向右移之后,紧邻当前菜单的左侧菜单项要变大,下面要计算 mv.leftWidth=SMALLWIDTH+(BIGWIDTH-SMALLWIDTH)*mv.changePercent; mv.leftHeight=SMALLHEIGHT+(BIGHEIGHT-SMALLHEIGHT)*mv.changePercent; } else if(mv.anmiState==2)//如果状态是2,则向左移 { //根据当前百分比计算当前菜单的位置,大小 mv.currentSelectX=mv.currentSelectX-(SMALLWIDTH+MENU_SPAN)*mv.changePercent; mv.currentSelectY=mv.currentSelectY+(BIGHEIGHT-SMALLHEIGHT)*mv.changePercent; mv.currentSelectWidth=BIGWIDTH-(BIGWIDTH-SMALLWIDTH)*mv.changePercent; mv.currentSelectHeight=BIGHEIGHT-(BIGHEIGHT-SMALLHEIGHT)*mv.changePercent; //向左移之后,紧邻当前菜单的右侧菜单项要变大,下面要计算 mv.rightWidth=SMALLWIDTH+(BIGWIDTH-SMALLWIDTH)*mv.changePercent; mv.rightHeight=SMALLHEIGHT+(BIGHEIGHT-SMALLHEIGHT)*mv.changePercent; } //计算出紧邻左侧的菜单的位置 mv.leftX=mv.currentSelectX-MENU_SPAN-mv.leftWidth; mv.leftY=mv.currentSelectY+(mv.currentSelectHeight-mv.leftHeight);//犯过错 //计算出紧邻右侧的菜单的位置 mv.rightX=mv.currentSelectX+mv.currentSelectWidth+MENU_SPAN; mv.rightY=mv.currentSelectY+(mv.currentSelectHeight-mv.rightHeight);//犯过错 mv.repaint(); try { Thread.sleep(ANMI_TIMESPAN); } catch(Exception e) { e.printStackTrace(); } }//for结束 mv.anmiState=0; mv.currentIndex=afterCurrentIndex; mv.initMenu(); mv.repaint(); }//run结束 }

近期下载者

相关文件


收藏者