第六篇 Scrum冲刺博客

一、站立式会议

1.1 会议照片

1.2成员工作情况

成员 昨天已完成的工作 今天计划完成的工作 工作中遇到的困难
马文辉 完成练习模式下游戏的正式体验 实现添加素材到练习模式 未遇到问题
卢力衔 练习模式体验不错 设计闯关模式的页面,线程监控拼图完成情况 线程和顺序执行的代码之间的协调
张朝阳 实现点击按钮跳转 无所事事,上传全部代码 无能为力
张龙伟 基本完成了所有代码并上传 给代码添加更多注释,方便后续与游戏模块的整合,进行两分钟的倒计时跟两分钟顺序计时,发现顺序计时的BUG,修改后解决掉了这个BUG 在上传时失败,用了许多方法,不知道是哪里出现了问题,最后只能交给队友帮助上传
周勇铨 计算成绩(30%);闯关结束显示成绩,并让用户输入名字(20%);录入本地文件并显示前10(0%) 计算成绩;闯关结束显示成绩,并让用户输入名字;录入本地文件并显示前10 无法跟其他模块同时运行

二、项目燃尽图

三、代码/文档签入记录

3.1 代码签入

3.2 Issue链接

成员 Issue链接
马文辉 添加练习图片
卢力衔 闯关模式
张朝阳 主界面
张龙伟 计时模块
周勇铨 排行榜

3.2 CodeReview代码规范文档

四、最新程序/模块

4.1 程序代码

package cn.homework.view;

import javax.swing.JFrame;
import javax.swing.JButton;
import java.awt.BorderLayout;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JPanel;
import javax.imageio.ImageIO;
import javax.swing.BoxLayout;
import java.awt.Color;
import java.awt.Dimension;

import javax.swing.UIManager;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.Image;

import javax.swing.border.EmptyBorder;

import cn.homework.util.CountClock;
import cn.homework.util.SwingConsole;
import cn.homework.util.TimeFormat;
import cn.homework.util.image.ImageView;
import cn.homework.util.panel.MyPanel;
import cn.homework.util.panel.OperationPanel;
import cn.homework.view.LIANXI_view.CtnGame;
import cn.homework.view.LIANXI_view.Tomenu;

import java.awt.Toolkit;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.SwingConstants;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.image.BufferedImage;
import java.io.*;
import java.util.Random;
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;


/**
 * 
 * 闯关界面实现
 *
 */
public class CHUANGGUAN_view extends JFrame{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	CountClock cc;
	
	MyPanel jpanelTime = new MyPanel();
	MyPanel jpanelButton = new MyPanel();
	
	private JPanel root;
	private TimeFormat time;
	
	private Image[] imageArr;
	private int imageArrIndex;
	
	private int levelPoint;
	private int userPoiont;
	
	private int pattern;
	private static volatile boolean StartGameFlag;

	public void setStartGameFlag(boolean startGameFlag) {
		StartGameFlag = startGameFlag;
	}

	private int Level;
	
	private boolean QuitGameFlag;
	private int initTime = 0;
	
	ImageView previewArea = new ImageView();
	OperationPanel operateArea;
	
	//每关递增的时间
	public final int INCREASE_TIME = 30;
	
	//图片数组,起始难度,起始时间
	public CHUANGGUAN_view(Image[] imageArr, int pattern, TimeFormat time) {
		
		root = (JPanel)this.getContentPane();
		
		this.imageArr = imageArr;
		this.imageArrIndex = 0;
		
		this.pattern = pattern;
		
		this.time = time;
		this.levelPoint = 10;
		this.userPoiont = 0;
		this.StartGameFlag = false;
		this.QuitGameFlag = false;
		this.Level = 1;
		this.setTitle("Level-" + Level);
		
		init();
		
		//开启校验进程
		new Thread( new Runnable() {
			@Override
			public void run() {
				while(QuitGameFlag == false)
				{
					if(StartGameFlag == true)
					{
						
						try {
							Thread.sleep(1000);
						} catch (InterruptedException e) {
							// TODO Auto-generated catch block
							e.printStackTrace();
						}
						if( operateArea.check() == true ) {
							cc.setStopCountFlag(true);
							
							Object[] options = { "继续", "返回" };
							
							int flag = JOptionPane.showOptionDialog(null, "拼图完成", "选择",
									JOptionPane.DEFAULT_OPTION, JOptionPane.DEFAULT_OPTION,
									null, options, options[0]);
							if(Level == 7)
							{
								JOptionPane.showMessageDialog(null, "恭喜!成功通关 ", "通关 ", JOptionPane.DEFAULT_OPTION);
								exit();
								break;
							}
							//选择返回选项
							if(flag == 0)
								update();
							else {
								exit();
								break;
							}
							
						} else {
							
							//计时停止标志为true
							if(cc.getTime() == "00:00")
							{
								JOptionPane.showMessageDialog(null, "超时警告 ", "失败 ", JOptionPane.ERROR_MESSAGE);
								exit();
								break;
								
							}
						}
					}
				}
				
			}
		}).start();
	}
	
	public void exit()
	{
		cc.setStopCountFlag(true);
		
		StartGameFlag = false;
		dispose();
		
		PINTU window = new PINTU();
		
		SwingConsole.run(window.PINTU);
	}
	
	JLabel poiontArea = new JLabel();
	JPanel top = new MyPanel();
	JPanel buttom = new MyPanel();
	
	public void init() {
		
		previewArea.setImage(imageArr[imageArrIndex]);
		
		operateArea = new OperationPanel((BufferedImage)imageArr[imageArrIndex], pattern);
		
		//初始化计时器
		cc = new CountClock(time, jpanelTime, jpanelButton, CountClock.CHUANGGUAN, operateArea);
		
		cc.init();
		
		JButton back = new JButton("返回");
		back.setPreferredSize(new Dimension(100, 100));
		back.addActionListener(new Tomenu());
		
		poiontArea.setText("此关分数 :" + levelPoint + "    " + "玩家分数:" + userPoiont);
		top.setLayout(new GridLayout(1, 4, 10, 0));
		
		top.add(jpanelTime);
		top.add(jpanelButton);
		top.add(poiontArea);
		top.add(back);
		
		root.add(top, BorderLayout.NORTH);
		
		buttom.setLayout(new GridLayout(1, 2));
		buttom.add(previewArea);
		buttom.add(operateArea);
		
		root.add(buttom);
		
	}

	public void update() {
		Level++;
		this.setTitle("Level-" + Level);
		imageArrIndex++;
		
		time.addSec(INCREASE_TIME);
		userPoiont += levelPoint + cc.getTime_Min()*10;
		levelPoint += 10;
		poiontArea.setText("此关分数 :" + levelPoint + "    " + "玩家分数:" + userPoiont);
		pattern++;
		
		previewArea.setImage(imageArr[imageArrIndex]);
		buttom.remove(operateArea);
		operateArea = new OperationPanel((BufferedImage)imageArr[imageArrIndex], pattern);
		operateArea.setListener(true);
		buttom.add(operateArea);
		
		root.updateUI();
		root.repaint();
		cc.setTime(time);
		cc.setStopCountFlag(false);
	}
	
	class Tomenu implements ActionListener {

		@Override
		public void actionPerformed(ActionEvent e) {
			QuitGameFlag = true;
			cc.setStopCountFlag(true);
			
			dispose();
			
			PINTU window = new PINTU();
			
			SwingConsole.run(window.PINTU);			
		}
	}
	
	
	
}

4.2 运行截图

五、每人每日总结

成员 小结
马文辉 又要完成开发又要撰写随笔,好累
卢力衔 线程:没想到吧
张朝阳 上午把我能写出的代码全部上交完了,更多的也写不出来了,只能交给队里的大佬(深知我菜)。帮队员搞了半天上传代码工作却没上传成功。晚上搞了搞操作系统实验。
张龙伟 吃了不会英语的亏?上传代码一直失败,最后只能寻求帮助
周勇铨 考虑问题要周全,考虑到问题的方方面面

猜你喜欢

转载自www.cnblogs.com/Mhuihui/p/12977190.html