⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 feiji_canvas.java~458~

📁 JAVA的手机游戏
💻 JAVA~458~
📖 第 1 页 / 共 4 页
字号:
        for(int i=0;i<daoju_shuzu.length;i++){
            if(daoju_shuzu[i][4]!=0){
                if(panduan_pengzhuang(feiji_ziji_x,feiji_ziji_y,feiji_ziji_W,feiji_ziji_H,daoju_shuzu[i][0],daoju_shuzu[i][1],daoju_shuzu[i][5],daoju_shuzu[i][6])){
                    switch(daoju_shuzu[i][4]){
                    case 1:
                        feiji_ziji_zidan_weili+=10;
                        daoju_shuzu[i][4]=0;
                        break;
                    }
                }
            }
            break;
        }
    }

    void next_pengzhuang_npc_zidan_ziji(){//npc的子弹碰自己
        for(int i=0;i<npc_zidan_shuzu.length;i++){
            if(npc_zidan_shuzu[i][4]!=0){
                if(panduan_pengzhuang(npc_zidan_shuzu[i][0],npc_zidan_shuzu[i][1],npc_zidan_shuzu[i][5],npc_zidan_shuzu[i][6],feiji_ziji_x,feiji_ziji_y,feiji_ziji_W,feiji_ziji_H)){
                    feiji_ziji_hp-=npc_zidan_shuzu[i][4];
                    npc_zidan_shuzu[i][4]=0;
                }
                break;
            }
        }
    }

    void paint_pengzhuang_ziji_zidan_feiji(Graphics g){//自己的子弹碰敌机
        for(int i=0;i<feiji_ziji_zidan_shuzu.length;i++){
            for(int j=0;j<npc_feiji_shuzu.length;j++){
                if(feiji_ziji_zidan_shuzu[i][5]!=0&&npc_feiji_shuzu[j][5]!=0){
                    if(panduan_pengzhuang(feiji_ziji_zidan_shuzu[i][0],feiji_ziji_zidan_shuzu[i][1],feiji_ziji_zidan_W,feiji_ziji_zidan_H,npc_feiji_shuzu[j][0],npc_feiji_shuzu[j][1],npc_feiji_shuzu[i][10],npc_feiji_shuzu[i][11])){
                        npc_feiji_shuzu[j][4]-=feiji_ziji_zidan_shuzu[i][4];
                        if(npc_feiji_shuzu[j][4]<=0){
                            switch(npc_feiji_shuzu[j][5]){
                            case 1:
                                npc_feiji_shuzu[j][5]=0;
                                g.setClip(npc_feiji_shuzu[j][0],npc_feiji_shuzu[j][1],33,29);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]-4*33,npc_feiji_shuzu[j][1],0);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]-5*33,npc_feiji_shuzu[j][1],0);
                                break;
                            case 4:
                                npc_feiji_shuzu[j][5]=0;
                                g.setClip(npc_feiji_shuzu[j][0]+14,npc_feiji_shuzu[j][1]+15,33,29);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]+14-3*33,npc_feiji_shuzu[j][1]+15,0);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]+14-4*33,npc_feiji_shuzu[j][1]+15,0);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]+14-5*33,npc_feiji_shuzu[j][1]+15,0);
                                for(int k=0;k<daoju_shuzu.length;k++){
                                    if(daoju_shuzu[k][4]==0){
                                        daoju_shuzu[k][0]=npc_feiji_shuzu[j][0]+20;
                                        daoju_shuzu[k][1]=npc_feiji_shuzu[j][1]+20;
                                        daoju_shuzu[k][2]=1;
                                        daoju_shuzu[k][3]=1;
                                        daoju_shuzu[k][4]=1;
                                        daoju_shuzu[k][5]=19;
                                        daoju_shuzu[k][6]=19;
                                        break;
                                    }
                                }
                                break;
                            case 5:
                            npc_feiji_shuzu[j][5]=0;
                            g.setClip(npc_feiji_shuzu[j][0]+14,npc_feiji_shuzu[j][1]+15,33,29);
                            g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-0*33,npc_feiji_shuzu[j][1]+22,0);
                            g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-1*33,npc_feiji_shuzu[j][1]+22,0);
                            g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-2*33,npc_feiji_shuzu[j][1]+22,0);
                            g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-3*33,npc_feiji_shuzu[j][1]+22,0);
                            g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-4*33,npc_feiji_shuzu[j][1]+22,0);
                            g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-5*33,npc_feiji_shuzu[j][1]+22,0);
                            win=true;
                            break;
                            }
                        }
                        feiji_ziji_zidan_shuzu[i][5]=0;
                        g.setClip(feiji_ziji_zidan_shuzu[i][0]-7,feiji_ziji_zidan_shuzu[i][1]-8,33,29);
                        g.drawImage(baozha,feiji_ziji_zidan_shuzu[i][0]-7-0*33,feiji_ziji_zidan_shuzu[i][1]-8,0);
                        g.drawImage(baozha,feiji_ziji_zidan_shuzu[i][0]-7-1*33,feiji_ziji_zidan_shuzu[i][1]-8,0);
                    }
                }
            }
        }
        for(int i=0;i<feiji_ziji_zidan_paopao_shuzu.length;i++){
            for(int j=0;j<npc_feiji_shuzu.length;j++){
                if(feiji_ziji_zidan_paopao_shuzu[i][5]!=0&&npc_feiji_shuzu[j][5]!=0){
                    if(panduan_pengzhuang(feiji_ziji_zidan_paopao_shuzu[i][0],feiji_ziji_zidan_paopao_shuzu[i][1],feiji_ziji_zidan_paopao_W,feiji_ziji_zidan_paopao_H,npc_feiji_shuzu[j][0],npc_feiji_shuzu[j][1],npc_feiji_shuzu[i][10],npc_feiji_shuzu[i][11])){
                        npc_feiji_shuzu[j][4]-=feiji_ziji_zidan_paopao_shuzu[i][4];
                        if(npc_feiji_shuzu[j][4]<=0){
                            switch(npc_feiji_shuzu[j][5]){
                            case 1:
                                npc_feiji_shuzu[j][5]=0;
                                g.setClip(npc_feiji_shuzu[j][0],npc_feiji_shuzu[j][1],33,29);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]-4*33,npc_feiji_shuzu[j][1],0);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]-5*33,npc_feiji_shuzu[j][1],0);
                                break;
                            case 4:
                                npc_feiji_shuzu[j][5]=0;
                                g.setClip(npc_feiji_shuzu[j][0]+14,npc_feiji_shuzu[j][1]+15,33,29);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]+14-3*33,npc_feiji_shuzu[j][1]+15,0);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]+14-4*33,npc_feiji_shuzu[j][1]+15,0);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]+14-5*33,npc_feiji_shuzu[j][1]+15,0);
                                for(int k=0;k<daoju_shuzu.length;k++){
                                    if(daoju_shuzu[k][4]==0){
                                        daoju_shuzu[k][0]=npc_feiji_shuzu[j][0]+20;
                                        daoju_shuzu[k][1]=npc_feiji_shuzu[j][1]+20;
                                        daoju_shuzu[k][2]=1;
                                        daoju_shuzu[k][3]=1;
                                        daoju_shuzu[k][4]=1;
                                        daoju_shuzu[k][5]=19;
                                        daoju_shuzu[k][6]=19;
                                        break;
                                    }
                                }
                                break;
                            case 5:
                                npc_feiji_shuzu[j][5]=0;
                                g.setClip(npc_feiji_shuzu[j][0]+14,npc_feiji_shuzu[j][1]+15,33,29);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-0*33,npc_feiji_shuzu[j][1]+22,0);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-1*33,npc_feiji_shuzu[j][1]+22,0);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-2*33,npc_feiji_shuzu[j][1]+22,0);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-3*33,npc_feiji_shuzu[j][1]+22,0);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-4*33,npc_feiji_shuzu[j][1]+22,0);
                                g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-5*33,npc_feiji_shuzu[j][1]+22,0);
                                win=true;
                                break;
                            }
                        }
                        feiji_ziji_zidan_paopao_shuzu[i][5]=0;
                        g.setClip(feiji_ziji_zidan_paopao_shuzu[i][0]-5,feiji_ziji_zidan_paopao_shuzu[i][1]-3,33,29);
                        g.drawImage(baozha,feiji_ziji_zidan_shuzu[i][0]-5-0*33,feiji_ziji_zidan_shuzu[i][1]-3,0);
                        g.drawImage(baozha,feiji_ziji_zidan_shuzu[i][0]-5-1*33,feiji_ziji_zidan_shuzu[i][1]-3,0);
                    }
                }
            }
        }
    }

    void paint_daoju(Graphics g){
        for(int k=0;k<daoju_shuzu.length;k++){
            if(daoju_shuzu[k][4]!=0){
                g.setClip(daoju_shuzu[k][0],daoju_shuzu[k][1],daoju_shuzu[k][5],daoju_shuzu[k][6]);
                g.setColor(0xffff00);
                g.fillArc(daoju_shuzu[k][0],daoju_shuzu[k][1]+3,daoju_shuzu[k][5],daoju_shuzu[k][6]-6,0,360);
            }
        }
    }

    void next_daoju_yidong(){
        int b=Math.abs(r.nextInt()%3+1)-2;
        for(int i=0;i<daoju_shuzu.length;i++){
            switch(daoju_shuzu[i][4]){
            case 1:
                daoju_shuzu[i][0]-=b*daoju_shuzu[i][2];
                daoju_shuzu[i][1]-=b*daoju_shuzu[i][3];
                break;
            }
        }
        for(int i=0;i<daoju_shuzu.length;i++){
            if(daoju_shuzu[i][4]!=0){
                if(daoju_shuzu[i][0]<=-30||daoju_shuzu[i][0]>=200||daoju_shuzu[i][1]<=-30||daoju_shuzu[i][1]>=250){
                    daoju_shuzu[i][4]=0;
                }
            }
        }
    }

    void next_ziji_feijishifoucunhuo(){//自己飞机是否存活
        if(feiji_ziji_hp<=0){
            feiji_ziji_cunzai=false;
        }
    }

    void next_youxijieshu(){
        if(feiji_ziji_cunzai==false){
            game_state=game_state_over;
        }
    }

    void paint_gaishang(Graphics g){//盖上它,蓝的
        g.setClip(0,0,500,500);
        g.setColor(0x0000ff);
        g.fillRect(screen_W,0,getWidth()-screen_W,getHeight());
        g.fillRect(0,screen_H,getWidth(),getHeight()-screen_H);
    }

    void paint_game_over(Graphics g){
        g.setClip(0,0,500,500);
        g.setColor(0xff0000);
        g.fillRect(0,0,screen_W,screen_H);
        g.setColor(0x000000);
        g.drawString("GAME OVER",50,50,0);
        g.drawString("按左软件去开始界面",30,80,0);
    }

    void paint_fanglei(Graphics g){
        if(fanglei==true){
        for(int i=0;i<npc_zidan_shuzu.length;i++){
            if(npc_zidan_shuzu[i][4]!=0){
                npc_zidan_shuzu[i][4]=0;
            }
        }
        for(int j=0;j<npc_feiji_shuzu.length;j++){
            if(npc_feiji_shuzu[j][5]!=0){
                npc_feiji_shuzu[j][4]-=100;
                if(npc_feiji_shuzu[j][4]<=0){
                    switch(npc_feiji_shuzu[j][5]){
                    case 1:
                        npc_feiji_shuzu[j][5]=0;
                        g.setClip(npc_feiji_shuzu[j][0],npc_feiji_shuzu[j][1],33,29);
                        g.drawImage(baozha,npc_feiji_shuzu[j][0]-4*33,npc_feiji_shuzu[j][1],0);
                        g.drawImage(baozha,npc_feiji_shuzu[j][0]-5*33,npc_feiji_shuzu[j][1],0);
                        break;
                    case 4:
                        npc_feiji_shuzu[j][5]=0;
                        g.setClip(npc_feiji_shuzu[j][0]+14,npc_feiji_shuzu[j][1]+15,33,29);
                        g.drawImage(baozha,npc_feiji_shuzu[j][0]+14-3*33,npc_feiji_shuzu[j][1]+15,0);
                        g.drawImage(baozha,npc_feiji_shuzu[j][0]+14-4*33,npc_feiji_shuzu[j][1]+15,0);
                        g.drawImage(baozha,npc_feiji_shuzu[j][0]+14-5*33,npc_feiji_shuzu[j][1]+15,0);
                        for(int k=0;k<daoju_shuzu.length;k++){
                            if(daoju_shuzu[k][4]==0){
                                daoju_shuzu[k][0]=npc_feiji_shuzu[j][0]+20;
                                daoju_shuzu[k][1]=npc_feiji_shuzu[j][1]+20;
                                daoju_shuzu[k][2]=1;
                                daoju_shuzu[k][3]=1;
                                daoju_shuzu[k][4]=1;
                                daoju_shuzu[k][5]=19;
                                daoju_shuzu[k][6]=19;
                                break;
                            }
                        }
                        break;
                    case 5:
                        npc_feiji_shuzu[j][5]=0;
                        g.setClip(npc_feiji_shuzu[j][0]+14,npc_feiji_shuzu[j][1]+15,33,29);
                        g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-0*33,npc_feiji_shuzu[j][1]+22,0);
                        g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-1*33,npc_feiji_shuzu[j][1]+22,0);
                        g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-2*33,npc_feiji_shuzu[j][1]+22,0);
                        g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-3*33,npc_feiji_shuzu[j][1]+22,0);
                        g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-4*33,npc_feiji_shuzu[j][1]+22,0);
                        g.drawImage(baozha,npc_feiji_shuzu[j][0]+31-5*33,npc_feiji_shuzu[j][1]+22,0);
                        win=true;
                        break;
                    }
                }
            }
        }
        g.setClip(0,0,500,500);
        g.setColor(0xffffff);
        g.fillRect(0,0,screen_W,screen_H);
        feiji_ziji_lei--;
        fanglei=false;
        }
    }

    protected void paint(Graphics g) {
        paint_cls(g);
        paint_bejing(g);
        if(win==true){
            game_state=game_state_win;
        }
        switch(game_state){
        case game_state_start:
            g.setClip(0,0,500,500);
            g.setColor(0x00ff00);
            g.fillRect(0,0,screen_W,screen_H);
            g.setColor(0x000000);
            g.drawString("按左软件开始游戏",30,40,0);
            g.drawString("游戏中按左软件是雷",30,80,0);
            break;
        case game_state_over:
            paint_game_over(g);
            break;
        case game_state_run:
            paint_pengzhuang_ziji_zidan_feiji(g);
            paint_feiji_ziji_zidan(g);
            paint_feiji_ziji(g);
            paint_feiji_ziji_zidan_paopao(g);
            paint_npc_feiji(g);
            paint_daoju(g);
            paint_npc_zidan(g);
            paint_pengzhuang_feiji_feiji(g);
            paint_fanglei(g);
            g.setClip(0,0,500,500);
            g.setColor(0x00ff00);
            g.drawString("生命:"+feiji_ziji_hp,110,10,0);
            g.setColor(0x7f0000);
            g.drawString("雷:"+feiji_ziji_lei,150,10,0);
            break;
        case game_state_win:
            g.setClip(0,0,500,500);
            g.setColor(0x00ff00);
            g.fillRect(0,0,screen_W,screen_H);
            g.setColor(0x000000);
            g.drawString("恭喜你胜利了",30,40,0);
            g.drawString("按左软件去开始界面",30,80,0);
            break;
        }
        paint_gaishang(g);
    }

    public void run() {
        while (true) {
            try {
                switch(game_state){
                case game_state_run:
                    st = System.currentTimeMillis();
                    beijing += beijing_speed;
                    jishuqi_time++;
                    logic();
                    repaint();
                    et = System.currentTimeMillis();
                    if (et-st<WT){
                        try {
                            t.sleep(WT-(et-st));
                        }catch(Exception e){}
                    }
                  break;
                }
            }catch(Exception e){}
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -