亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? footballclass.java

?? netbean下開發(fā)的
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/*
 * FootballClass.java
 *
 * Created on 2007年6月3日, 下午10:13
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package hello;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import java.io.IOException;
import javax.microedition.lcdui.game.Sprite;
/**
 *
 * @author FXB
 */
//初步考慮,每200微妙刷新一次球的圖像
public class FootballClass {
    private int TimeDelay;
    private int TimeN = 0;
    //X方向的最大速度
    private static final float MAXX = 3;
    //地面的摩擦阻力
    private static final float GROUNDFORCE = 0.3f;
    //碰撞方向變化的精度
    private static final float MINX = 0.5f;
    
    private Sprite Football;    //足球精靈
    
    private float Football_X;   //足球當(dāng)前X坐標(biāo)
    private float Football_Y;   //足球當(dāng)前Y坐標(biāo)
    
    private float PreFootball_X;    //足球當(dāng)前幀的前一幀的X坐標(biāo)
    private float PreFootball_Y;    //足球當(dāng)前幀的前一幀的Y坐標(biāo)
    
    private float NextFootball_X;   //足球下一幀的X坐標(biāo)
    private float NextFootball_Y;   //足球下一幀的Y坐標(biāo)
    
    private float Football_R;   //足球的半徑
    
    private boolean Direction_Y = false;    //當(dāng)前足球的豎直運(yùn)動方向,ture為向上,false為向下
    private boolean Direction_X = false;    //當(dāng)前足球的水平運(yùn)動方向,ture為向左,false為向右
    
    private float Football_distance_X = 0.5f;      //前后兩幀X方向的距離,大于0,則是向右運(yùn)動,小于0,則是向左運(yùn)動
    private double Football_distanceR_Y ;      //前兩幀的距離和后兩幀的距離在Y方向上之差
    private double Football_diatanceR_Y_;
    private float Resistance_air;   //空氣阻力造成的距離差
    private float Force = 0;    //人頭頂足球的力度,5為無能量損失碰撞,789為增加能量,123為減能量。
    
    private float Football_H ;   //足球當(dāng)前的高度
    
    private int IsStrike = 0;   //碰撞類型標(biāo)記,0為無碰撞,1為左側(cè)碰撞,2為右側(cè)碰撞,3為地板碰撞,4為頭部碰撞
    
    public boolean state = true ;      //用來標(biāo)記當(dāng)前游戲的狀態(tài),如果state變?yōu)閒alse,則表明球觸到地面了,游戲應(yīng)該結(jié)束
    private FootballGameCanvas footballGameGanvas;
   
    /** Creates a new instance of FootballClass */
    public FootballClass(Sprite Football, float Football_X, float Football_Y ,
            double Football_ditanceR_Y, float Resistance_air,int TimeDelay,FootballGameCanvas footballGameGanvas) {
        this.TimeDelay = TimeDelay;
        this.footballGameGanvas = footballGameGanvas;
        
        
//        this.TimeN = 0;
        this.Football = Football;   //初始化足球精靈
        
        this.Football_X = Football_X;   //初始化足球的當(dāng)前X坐標(biāo)
        this.Football_Y = Football_Y;   //初始化足球的當(dāng)前Y坐標(biāo)
        
        this.Football_distanceR_Y = Football_ditanceR_Y;    //初始化前兩幀的距離和后兩幀的距離在Y方向上之差,重力越大,此值越大
        this.Football_diatanceR_Y_ = this.Football_distanceR_Y;

        this.PreFootball_X = Football_X;  //初始化足球的前一點(diǎn)X坐標(biāo)
        this.PreFootball_Y = Football_Y;   //初時化足球前一點(diǎn)坐標(biāo)的Y坐標(biāo)
        
        this.Resistance_air = Resistance_air;   //空氣阻力造成的距離差
                
                
    }
    
    //計算下一點(diǎn)的X坐標(biāo)
    public void cmpNext_X(){
        if(this.Football_distance_X < -MAXX){
            this.Football_distance_X = -MAXX;
        }else
            if(this.Football_distance_X > MAXX){
            this.Football_distance_X = MAXX;
            }
        this.NextFootball_X = this.Football_X + this.Football_distance_X;

    }
    
    //確定當(dāng)前運(yùn)動的方向,分兩個方向,向上or向下
    public void isDirection_Y(){
        if(this.Football_Y <= this.PreFootball_Y){
            this.Direction_Y = true;
        }else
            this.Direction_Y = false;
    }
    
    //計算下一點(diǎn)的Y坐標(biāo)
    public void cmpNext_Y(){
        this.isDirection_Y();

        if(this.Direction_Y){
            this.NextFootball_Y = 2*this.Football_Y - this.PreFootball_Y + (float)this.Football_distanceR_Y + this.Resistance_air; 
        }
        else{
            this.NextFootball_Y = 2*this.Football_Y - this.PreFootball_Y + (float)this.Football_distanceR_Y - this.Resistance_air;
        }

    }
    
        //如果檢測到碰撞,并且類項為0,無碰撞,則調(diào)用這個函數(shù)
    public boolean strikeNo(){
        this.cmpNext_X();
        this.cmpNext_Y();
        return true;
    }
    
        //顯示足球當(dāng)前幀 ,并且對數(shù)據(jù)進(jìn)行更新,
    public void displayFootball(){

            if(this.NextFootball_Y>this.footballGameGanvas.getmyHeight()-5-this.Football.getHeight()/2){
//                if(this.NextFootball_X>this.footballGameGanvas.getmyWidth()-10-this.Football.getWidth()/2){
//                    this.Football.setRefPixelPosition((int)this.footballGameGanvas.getmyWidth()-10-this.Football.getWidth()/2,
//                            (int)this.NextFootball_Y);
//                }else if(this.NextFootball_X<10+this.Football.getWidth()/2){
//                    this.Football.setRefPixelPosition((int)(10+this.Football.getWidth()/2),
//                            (int)this.NextFootball_Y);
//                }else
//                    this.Football.setRefPixelPosition((int)this.NextFootball_X,(int)this.NextFootball_Y);
//
//        }else{
//                if(this.NextFootball_X>this.footballGameGanvas.getmyWidth()-10-(this.Football.getWidth()/2)){
//                    this.NextFootball_X = this.PreFootball_X;
//                    this.NextFootball_Y = this.PreFootball_Y;
//                    System.out.println(this.footballGameGanvas.getmyWidth()-10-(this.Football.getWidth()/2));
//                     System.out.println(this.NextFootball_X);
//                    System.out.println("ssssssssssssssssssss");
//                    this.Football.setRefPixelPosition((int)this.footballGameGanvas.getmyWidth()-10-this.Football.getWidth()/2,
//                            (int)this.footballGameGanvas.getmyHeight()-5-this.Football.getHeight()/2);
//                }else {
//                            if(this.NextFootball_X<10+this.Football.getWidth()/2){
//                            
//                                this.NextFootball_X = this.PreFootball_X;
//                                this.NextFootball_Y = this.PreFootball_Y;
//                                System.out.println("tttttttttttttttttt");
//                                this.Football.setRefPixelPosition((int)(10+this.Football.getWidth()/2),
//                                        (int)this.footballGameGanvas.getmyHeight()-5-this.Football.getHeight()/2);
//                            }else{
                                this.Football.setRefPixelPosition((int)this.NextFootball_X,
                                        (int)this.footballGameGanvas.getmyHeight()-3-this.Football.getHeight()/2);
//                                System.out.println("vvvvvvvvvvvvvvvvvvvv");
////                            }
//                        }
        }else
            this.Football.setRefPixelPosition((int)this.NextFootball_X,(int)this.NextFootball_Y);
            
//        this.Football.setRefPixelPosition((int)this.NextFootball_X,
//                            (int)this.NextFootball_Y);
        this.updata_XY();
    }
    
       //更新XY的坐標(biāo)點(diǎn)各值,包括當(dāng)前,以前和以后的坐標(biāo)
//    private int TimeM=0;
    public void updata_XY(){
        
        //使球旋轉(zhuǎn)起來
        if(this.TimeN*this.TimeDelay > -(40/this.Football_distance_X)  && this.Football_distance_X < 0){
            this.Football.nextFrame();
            this.TimeN = 0;
        }else if(this.TimeN*this.TimeDelay > 40/this.Football_distance_X && this.Football_distance_X > 0){
            this.Football.prevFrame();
            this.TimeN = 0;
        }

        this.TimeN++;
        
        
        this.PreFootball_X = this.Football_X;
        this.PreFootball_Y = this.Football_Y;
        
        this.Football_X = this.NextFootball_X;
        this.Football_Y = this.NextFootball_Y;
  
    }
    
    //根據(jù)傳入的精靈和傳入精靈的類項來檢測碰撞,并更新IsStrike值
    //碰撞類型標(biāo)記,0為與天花板碰撞,1為左側(cè)碰撞,2為右側(cè)碰撞,3為地板碰撞,4為頭部碰撞
    public boolean isStrike(Sprite SpriteElse,int type){
        if(this.Football.collidesWith(SpriteElse , true )){
            switch(type){
                case 0:
                    this.strikeNext_Zero();
                    System.out.println("天花板碰撞");

                    break;
                case 1:
                    this.strikeNext_One();
                    System.out.println("左側(cè)碰撞");
                    break;
                case 2:
                    this.strikeNext_Two();
                    System.out.println("右側(cè)碰撞");
                    break;
                case 3:
                    //當(dāng)無y方向的運(yùn)動時,足球的x方向運(yùn)動也將停止
                    if( (this.Football_Y-this.PreFootball_Y) >=0 &&
                            (this.Football_Y-this.PreFootball_Y)<=this.Football_distanceR_Y*2){
                        this.Football_distance_X = 0;
                        this.Football_distanceR_Y = 0;
                        this.state = false;     //球掉落在地上,引發(fā)游戲over
                    }else
                    {
//                    System.out.println(this.Football_Y-this.PreFootball_Y);
//                    System.out.println(this.Football_distanceR_Y-this.Resistance_air);
                        this.strikeNext_Three();
                    System.out.println("地板碰撞");
                    }

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线综合+亚洲+欧美中文字幕| 成人h版在线观看| 欧美日韩1234| 美女视频黄 久久| 精品久久久久久无| 国产成人精品三级麻豆| 国产精品动漫网站| 色噜噜狠狠成人中文综合| 亚洲mv在线观看| 精品日韩一区二区三区| 国产米奇在线777精品观看| 国产精品久久久久影院亚瑟| 在线观看视频一区二区| 日本不卡在线视频| 中文字幕av一区二区三区高 | 免费观看日韩电影| 久久日韩粉嫩一区二区三区| 91亚洲精品一区二区乱码| 天天综合天天综合色| 国产日韩欧美精品综合| 欧美日韩性生活| 国产精品亚洲成人| 夜夜嗨av一区二区三区| 精品88久久久久88久久久| 91浏览器在线视频| 美女被吸乳得到大胸91| 国产精品美日韩| 欧美一区二区精美| 99精品热视频| 国精产品一区一区三区mba桃花| 国产三级精品三级在线专区| 欧洲人成人精品| 国产精品91一区二区| 亚洲永久免费视频| 久久综合久色欧美综合狠狠| 色播五月激情综合网| 国产一区视频导航| 亚洲成人av中文| 国产精品国产三级国产aⅴ无密码| 欧美日韩一区在线观看| 高清在线不卡av| 人人精品人人爱| 亚洲天堂2014| 久久久久久毛片| 欧美精品久久99久久在免费线| 国产成人亚洲综合a∨婷婷| 亚洲一区二区免费视频| 中文字幕在线一区免费| 亚洲精品在线电影| 欧美日韩精品二区第二页| 波多野结衣在线一区| 黄页网站大全一区二区| 天天亚洲美女在线视频| 一区二区三区欧美久久| 国产网站一区二区| 日韩美女一区二区三区四区| 在线观看一区二区视频| av一区二区不卡| 成人国产精品免费观看动漫| 黑人巨大精品欧美黑白配亚洲| 日韩精品一级二级 | 国产精品色哟哟网站| 日韩欧美一二三| 日韩欧美一级精品久久| 欧美美女网站色| 欧美日韩亚洲高清一区二区| 欧美性受xxxx| 在线观看区一区二| 日本福利一区二区| 91蝌蚪porny成人天涯| 99在线精品视频| 99久久精品免费看国产| 91在线观看污| 一本色道久久加勒比精品 | 亚洲一区二区五区| 中文字幕综合网| 1区2区3区国产精品| 中文字幕日本乱码精品影院| 欧美国产丝袜视频| 国产精品看片你懂得| 欧美激情一区二区在线| 国产精品麻豆网站| 中文字幕一区二区三区乱码在线| 欧美激情一区二区三区四区 | 在线观看欧美日本| 精品视频在线免费看| 欧美日韩一区精品| 欧美一区欧美二区| 精品欧美乱码久久久久久1区2区| 久久综合九色综合97婷婷| 久久蜜桃香蕉精品一区二区三区| 国产日韩精品久久久| 中文字幕在线不卡国产视频| 亚洲三级在线免费| 亚洲mv大片欧洲mv大片精品| 久久爱www久久做| 国产成人免费视频网站| 成人动漫视频在线| 欧美怡红院视频| 欧美一区二区性放荡片| 久久精品视频网| 国产精品白丝在线| 日韩综合小视频| 国产乱子伦视频一区二区三区| 国产成人欧美日韩在线电影| 粗大黑人巨茎大战欧美成人| 91美女片黄在线| 日韩视频免费观看高清在线视频| 国产亚洲欧美日韩在线一区| 综合久久国产九一剧情麻豆| 肉肉av福利一精品导航| 国产91丝袜在线播放0| 色av一区二区| 久久久亚洲欧洲日产国码αv| 亚洲三级电影全部在线观看高清| 日本美女视频一区二区| av电影天堂一区二区在线观看| 欧美日韩日日摸| 国产肉丝袜一区二区| 亚洲成人一二三| 成人免费精品视频| 在线成人免费视频| 中文字幕一区三区| 免费成人性网站| 日本二三区不卡| 欧美国产精品一区二区三区| 日本伊人色综合网| 色综合久久久久久久久| 欧美videossexotv100| 一区二区三区在线视频免费观看| 裸体健美xxxx欧美裸体表演| 色欧美88888久久久久久影院| 精品国产成人系列| 亚洲v中文字幕| 97久久超碰精品国产| 久久婷婷色综合| 日韩成人dvd| 欧美三级资源在线| 亚洲欧美日韩久久精品| 国产成人在线视频免费播放| 欧美一区中文字幕| 亚洲图片欧美色图| 99精品视频在线观看| 国产网红主播福利一区二区| 精品中文字幕一区二区| 欧美精品丝袜久久久中文字幕| 亚洲欧美在线观看| 国产成人av一区| xfplay精品久久| 久久激情综合网| 91精品国产乱码| 天堂va蜜桃一区二区三区漫画版| 99热精品一区二区| 国产精品免费观看视频| 国产999精品久久久久久绿帽| 精品99999| 激情综合网av| 日韩女优av电影在线观看| 视频在线观看国产精品| 欧美日韩五月天| 午夜成人免费电影| 91麻豆精品国产91久久久久| 亚洲午夜电影在线| 欧美精品777| 日韩一区精品视频| 日韩欧美国产高清| 激情欧美一区二区| 久久综合九色欧美综合狠狠| 黄色成人免费在线| 久久天天做天天爱综合色| 国内一区二区在线| 2021久久国产精品不只是精品| 久久97超碰国产精品超碰| 日韩精品一区二区三区三区免费| 日韩电影免费在线看| 精品免费国产二区三区| 久久精品国产成人一区二区三区 | 国产不卡在线播放| 欧美—级在线免费片| 成人看片黄a免费看在线| 国产精品成人免费精品自在线观看| 99国产欧美久久久精品| 一区二区三区欧美激情| 欧美日韩成人在线一区| 日本网站在线观看一区二区三区| 欧美一级夜夜爽| 国产成人av电影免费在线观看| 中文字幕乱码久久午夜不卡| 色综合久久九月婷婷色综合| 亚洲一区二区三区国产| 日韩欧美二区三区| 国产黑丝在线一区二区三区| 亚洲人吸女人奶水| 制服丝袜亚洲色图| 国产精品综合网| 亚洲激情自拍视频| 欧美一级二级三级蜜桃| 国产成人在线免费观看| 亚洲人成小说网站色在线| 欧美精品在线观看播放|