欢迎来到天天文库
浏览记录
ID:42783660
大小:18.47 KB
页数:6页
时间:2019-09-21
《贪吃蛇最新源代码》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、电脑配置清单石材线条组装电脑importjava.awt.*;importjava.awt.event.*;publicclassGreedSnake//主类{publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubnewMyWindow();}}classMyPanelextendsPanelimplementsKeyListener,Runnable//自定义面板类,继承了键盘和线程接口{Buttonsnake[];//定
2、义蛇按钮intshu=0;//蛇的节数intfood[];//食物数组booleanresult=true;//判定结果是输还是赢Threadthread;//定义线程staticintweix,weiy;//食物位置booleant=true;//判定游戏是否结束intfangxiang=0;//蛇移动方向intx=0,y=0;//蛇头位置MyPanel(){setLayout(null);snake=newButton[20];food=newint[20];thread=newThread(t
3、his);for(intj=0;j<20;j++){food[j]=(int)(Math.random()*99);//定义20个随机食物}weix=(int)(food[0]*0.1)*60;//十位*60为横坐标weiy=(int)(food[0]%10)*40;//个位*40为纵坐标for(inti=0;i<20;i++){snake[i]=newButton();}add(snake[0]);snake[0].setBackground(Color.black);snake[0].addKe
4、yListener(this);//为蛇头添加键盘监视器snake[0].setBounds(0,0,10,10);setBackground(Color.cyan);电脑配置清单石材线条组装电脑}publicvoidrun()//接收线程{while(t){if(fangxiang==0)//向右{try{x+=10;snake[0].setLocation(x,y);//设置蛇头位置if(x==weix&&y==weiy)//吃到食物{shu++;weix=(int)(food[shu]*0.1
5、)*60;weiy=(int)(food[shu]%10)*40;repaint();//重绘下一个食物add(snake[shu]);//增加蛇节数和位置snake[shu].setBounds(snake[shu-1].getBounds());}thread.sleep(100);//睡眠100ms}catch(Exceptione){}}elseif(fangxiang==1)//向左{try{x-=10;snake[0].setLocation(x,y);if(x==weix&&y==we
6、iy){shu++;weix=(int)(food[shu]*0.1)*60;weiy=(int)(food[shu]%10)*40;repaint();add(snake[shu]);snake[shu].setBounds(snake[shu-1].getBounds());}thread.sleep(100);}电脑配置清单石材线条组装电脑catch(Exceptione){}}elseif(fangxiang==2)//向上{try{y-=10;snake[0].setLocation(x,
7、y);if(x==weix&&y==weiy){shu++;weix=(int)(food[shu]*0.1)*60;weiy=(int)(food[shu]%10)*40;repaint();add(snake[shu]);snake[shu].setBounds(snake[shu-1].getBounds());}thread.sleep(100);}catch(Exceptione){}}elseif(fangxiang==3)//向下{try{y+=10;snake[0].setLocat
8、ion(x,y);if(x==weix&&y==weiy){shu++;weix=(int)(food[shu]*0.1)*60;weiy=(int)(food[shu]%10)*40;repaint();add(snake[shu]);snake[shu].setBounds(snake[shu-1].getBounds());}thread.sleep(100);}catch(Exceptione){}}intnum1=shu;while(num1>1)//判断是
此文档下载收益归作者所有