当前位置:网站首页 > Java教程 > 正文

java蜘蛛纸牌教程



网络1713蔡炜明【组长】 6

网络1713高枫    【组员】 0

网络1713 蔡炜明

蜘蛛纸牌界面设计

游戏帮助栏、规则栏设计

网络1713 高枫

主要负责蜘蛛纸牌主类设计及Git的提交

该课程设计内容主要是模拟实现蜘蛛纸牌游戏,《蜘蛛纸牌》是由Oberon Games开发的一款休闲益智类游戏,该游戏已由Microsoft于2010年发行。同时该游戏也是Windows ME及后续版本所自带的小游戏,游戏目标是以最少的移动次数将牌面中的十叠牌以及待发的五副,共计八副牌整理移除。当所有牌都被移除整理之后,游戏获胜。

JAVA

GUI

1、实现了简单、正常、复杂三种不同难度的玩法

2、可以显示可行性操作

https://gitee.com/xmgghhh/projects

//方法:显示可移动的操作
public void showEnableOperator(){
        int x = 0;
        out: while (true){
            Point point = null;
            PKCard card = null;
            do{
                if (point != null){
     n++;
    }
                point = this.getLastCardLocation(n);
                while (point == null){
                    point = this.getLastCardLocation(++n);
                    if (n == 10) n = 0;
                    x++;
                    if (x == 10) break out;
                }
                card = (PKCard) this.table.get(point);
            }
            while (!card.isCardCanMove());
            while (this.getPreviousCard(card) != null
                    && this.getPreviousCard(card).isCardCanMove()){
                card = this.getPreviousCard(card);
            }
            if (a == 10){
    a = 0;
   }
            for (; a < 10; a++){
                if (a != n){
                    Point p = null;
                    PKCard c = null;
                    do{
                        if (p != null){
       a++;
      }
      p = this.getLastCardLocation(a);
                        int z = 0;
                        while (p == null){
                            p = this.getLastCardLocation(++a);
                            if (a == 10) a = 0;
                            if (a == n) a++;
                            z++;
                            if (z == 10) break out;
                        }
                        c = (PKCard) this.table.get(p);
                    }
                    while (!c.isCardCanMove());
                    if (c.getCardValue() == card.getCardValue() + 1){
                        card.flashCard(card);
                        try{
                            Thread.sleep(800);
                        }
                        catch (InterruptedException e){
                            e.printStackTrace();
                        }
                        c.flashCard(c);
                        a++;
                        if (a == 10){
       n++;
      }
                        break out;
                    }
                }
            }
            n++;
            if (n == 10){
    n = 0;
   }
            x++;
            if (x == 10){
    break out;
   }
        }
    }

小组成员自身能力有限导致了课设进行过程出现了许多问题,刚开始进度缓慢,在参考了许多网上的代码和其他同学的帮助后,才勉强完成任务,自身有很多不足,需要在以后的学习中慢慢改进。

需要注意的开发中的问题

1、像纸牌游戏菜单栏添加监视器及处理事件的方法的实现

2、帮助栏功能的实现

3、纸牌初始化、发牌、回收过程中的算法。

版权声明


相关文章:

  • java项目架构教程2024-12-20 19:18:05
  • java gui教程 pdf2024-12-20 19:18:05
  • java后端分离教程2024-12-20 19:18:05
  • java程序实训教程2024-12-20 19:18:05
  • java 46集教程2024-12-20 19:18:05
  • java默认使用教程2024-12-20 19:18:05
  • java开发程序教程2024-12-20 19:18:05
  • java教程百度云2024-12-20 19:18:05
  • java web jsp教程2024-12-20 19:18:05
  • java 的类 教程2024-12-20 19:18:05