连连看.NET 1.41全部源码

博主发布连连看.NET 1.41全部源码,今日做最后修正,删除了废代码。核心算法已多次讲解,绘图关键是ScreenDraw类。博主表示目前能力有限,若没有好的合作和创意,将专心工作。认为游戏重点是算法,向来共享作品。
llk_clss_g.png
这个是游戏源码类视图;

这个是全部源码[LLK1.41_FullSources.rar],今日做过最后一次修正;发布源码是因为朋友的要求还有工作上的事情,晚上也想好好休息休息;我想我这次的发布,我也可以轻松两天了。

更新:删除了一些废代码,从最初到现在整个程序是动过多次手术的组合品;高手免看,因为这个东西不上您的档次;菜鸟也免看,以免乱码误人子弟。

代码结构很简单,核心算法已经做过多次讲解;剩下的只是控制部分,你能做的比我更好,绘图的部分关键是ScreenDraw类,模拟双缓冲和翻页,这个是听着玄乎实际是挺简单的玩意,自己看,看完了有什么感想,不必告诉我了,我自己感想也多;除了LineManager,其他的都是些无关紧要的类,废掉那些一样是连连看,而且更稳定;

我虽然一直对游戏很有兴趣,但目前能力还有限,不光是程序,重要的还有美术,创意,实在做过太多抄袭的事情,腻了,如果没有好的合作伙伴和新的创意,只好专心忙工作,休息时间好好休息;挺想找个有兴趣的合作。

现在我一直支持博客园,虽然还没捐过钱,(目前还在试用期,没余钱);我还是喜欢blog文化,这里不要出现论坛风气,这个游戏发布以来得到很多朋友的支持和反馈,我尽能力解决所有使用的问题,这段期间的休息时间已经全部用上,有不少回复者提到游戏的源码,我认为这个不是重点,这个游戏的重点就是它的算法,我相信谁都可以到Form上画个图片,写个事件,本质不了解拿到源码起什么作用呢?换做我,我宁愿要算法,换做你,甚至不屑一顾,因为这个玩意对您来说实在是简单;

我向来做的东西都共享,无论是哪次的作品,包括asp反编码的算法,只是不在这里罢了;真心希望某些人改改风气,记住自己学的东西才是能拥有的东西。

转载于:https://www.cnblogs.com/Chinasf/archive/2005/06/07/169767.html

java连连看代码 import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.ArrayList; import javax.swing.*; public class Game extends JFrame{ private int num[][]; //实现数组 private JButton gamebutton[][]; //游戏Button组 private Container cont; //内容面板 private JLabel timelabel; //时间标签 private JButton play; //开始游戏按钮 private JButton exit; //退出按钮 private JButton replay; //重新开始按钮 private JButton back; //返回主界面按钮 private JComboBox choice;//游戏等级 private JButton chongle; //游戏按钮重列 private JPanel gamepanel; //游戏按钮面板 private JPanel panel; //开始游戏面板 private int time=0; //时间记录 private Time T; //记时线程 private Thread t=new Thread(T); //记时线程 private int shu=1; //记录获取游戏按钮事件的个数 private int x=0,y=0,a=0,b=0;//按钮的坐标 private JButton button1=null,button2=null;//点击了的按钮 private boolean can;//能否消除 private int lvx,lvy; //游戏等级数组标列数 private int framex,framey; //框架大小 private int again=1;//记录重列次数 public Game(){ itincomponent(); } private void itincomponent(){ //设置面板属性 if(cont!=null) cont.removeAll(); this.setSize(500, 500); this.setLocationRelativeTo(null); //获取内容面板 cont=this.getContentPane(); //开始和退出按钮 panel=new JPanel(); play=new JButton("开始游戏"); choice=new JComboBox(); choice.addItem("低级"); choice.addItem("中级"); choice.addItem("高级"); choice.setSelectedItem("低级"); exit=new JButton("退出游戏"); panel.add(choice); panel.add(play); panel.add(exit); cont.add(panel,"South"); exit.addActionListener(new Exit());//结束事件监听 play.addActionListener(new Play());//开始事件监听 this.setResizable(false); this.setVisible(true); this.setDefaultCloseOperation(EXIT_ON_CLOSE); } ////获得新的面板 private void p(){ //设置面板属性 this.setSize(framex, framey); this.setLocationRelativeTo(null); //获取内容面板 cont=this.getContentPane(); //开始和退出按钮 panel=new JPanel(); exit=new JButton("退出游戏"); replay=new JButton("重新开始"); back=new JButton("返回主界面"); chongle=new JButton("重列"); panel.add(chongle); panel.add(replay); panel.add(exit); panel.add(back); cont.add(panel,"South"); exit.addActionListener(new Exit());//结束事件监听 replay.addActionListener(new Playbutton());//重新开始事件监听 back.addActionListener(new Back());//返回主界面事件监听 chongle.addActionListener(new Chongle());//重列事件监听 //时间面板 timelabel=new JLabel("游戏时间:"+time+"s",JLabel.CENTER); cont.add(timelabel,"North"); //生成游戏操作面板 gamepanel=new JPanel(); gamepanel.setLayout(new GridLayout(lvx,lvy,3,3)); //设置为表格布局 for (int i = 0; i < lvx; i++) { for (int j = 0; j <lvy; j++) { if(gamebutton[i][j].isVisible()){ gamebutton[i][j].setIcon(new ImageIcon(num[i][j]+".jpg")); } gamepanel.add(gamebutton[i][j]); gamebutton[i][j].addActionListener(new Gamebutton()); } } cont.add(gamepanel, "Center"); this.setResizable(false); this.setVisible(true); this.setDefaultCloseOperation(EXIT_ON_CLOSE); }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值