下载 >  游戏开发 >  其他 > 贪吃蛇小游戏c++实现

贪吃蛇小游戏c++实现

pc端贪吃蛇小游戏,c++语言编写,实现了贪吃蛇游戏的主要功能
2018-04-16 上传大小:2.38MB
分享
收藏 举报
C++版贪吃蛇游戏源代码

C++写的贪吃蛇游戏源代码,有非常详细的注释!

立即下载
C++游戏编程之贪吃蛇(新手向,大量注释)

C++win32窗口应用程序下的游戏工程,里面有很多注释,一般新手应该能学到些东西,注意不是MFC写的,学习游戏编程请尝试脱离MFC,这对你会有不少的好处~

立即下载
用Visual C++6.0开发的贪吃蛇游戏(含注释)

用C/C++开发的小游戏,内含注释,在Visual C++6.0中正常运行

立即下载
VS2017C++贪吃蛇代码及实验报告

本人用VS2017和C++写的贪吃蛇代码,运用方向键控制上下左右,具有不同果实,加速减速效果,同时有开始界面、暂停界面、结束界面和相应的BGM,另外还有存档和排行榜功能(并不是多用户)。同时附赠实验报告。

立即下载
c++ 贪吃蛇 代码

c++ 贪吃蛇小游戏 源代码 c++ 贪吃蛇小游戏 源代码 c++ 贪吃蛇小游戏 源代码 c++ 贪吃蛇小游戏 源代码

立即下载
调用ACLLib库+MVC设计模式的单人版贪吃蛇小游戏(C语言实现

C语言编写的调用ACLLib函数库单人版贪吃蛇小游戏,运用MVC设计模式(三部分Model,View, Control),代码可重用,修改为双人版甚至多人版,附有有设计思路文档,代码注释。

立即下载
贪吃蛇(C++(Qt),源代码)

才看了几节Qt教程于是就过来作死玩了,说实话感觉自己动手做一个东西,有时效果不比静静地看教程差,光是看教程让我感觉心里很虚,经常想:“如果我以后做的工程里要用到这个知识点,我能不能想起来?”,于是做了个贪吃蛇让自己心底踏实一点。贪吃蛇本来以为会是很简单的东西,然而实际上还是花了我好几个小时,很大一部分得“归功于”我的多维数组有个概念没搞懂,说实话直到现在还没搞懂,于是很多地方强行把多维数组拆成一维数组,既增加了代码量又降低了可读性。这次的贪吃蛇在高内聚低耦合上做的不是很好,比上次C#写的井字棋差些。朝外看看天都已经亮了,我又想起了我经常对别人说的那句“程序员要爱惜自己的身体”。。。

立即下载
用shell编写的贪吃蛇游戏(升级版)

#!/bin/bash function DetectInput //判断输入的数据,控制方向 { while [[ 1 ]] do c="" read -n 1 c //读取输入的字母 echo -ne "\r \r" //清除输入的字母 if [[ $c == "a" || $c == "j" || $c == "A" || $c == "J" ]] then kill -36 $pidShowSnake //改变贪吃蛇的运动轨迹 elif [[ $c == "w" || $c == "i" || $c == "W" || $c == "I" ]] then kill -37 $pidShowSnake elif [[ $c == "d" || $c == "l" || $c == "D" || $c == "L" ]] then kill -38 $pidShowSnake elif [[ $c == "s" || $c == "k" || $c == "S" || $c == "K" ]] then kill -39 $pidShowSnake elif [[ $c == "q" || $c == "Q" ]] then echo Quit. ......................... .......................

立即下载
Android游戏_贪吃蛇源码(java实现

文件是整个安卓工程包,包含源码和全部配置文件。该游戏以Google源码为基础,加入了暂停功能,另新增了5个界面,用以提升用户体验。源码的解释可参考本人的博客。http://blog.csdn.net/kuaiguixs/article/details/52035847

立即下载
C语言实现贪吃蛇(可选择有墙或穿墙功能)

纯手工打造,蛇身用链表实现,链表底层数据操作分离放在lish.c中,可配置是否可以穿墙、初始蛇长、初始边界宽高等,共计600行代码。

立即下载
自己用java制作贪吃蛇小游戏

import java.awt.*; import javax.swing.*; import java.awt.event.*; import java.util.*; public class snate extends JFrame implements KeyListener,Runnable { JLabel j; Canvas j1; public static final int canvasWidth = 200; public static final int canvasHeight = 300; public static final int nodeWidth = 10; public static final int nodeHeight = 10; //SnakeModel se=null; //222222 // boolean[][] matrix; LinkedList nodeArray = new LinkedList();//表 Node food;//节点 int maxX; int maxY; int direction = 2; boolean running = false; int timeInterval = 200; double speedChangeRate = 0.75; boolean paused = false; int score = 0; int countMove = 0; // UP and DOWN should be even // RIGHT and LEFT should be odd public static final int UP = 2; public static final int DOWN = 4; public static final int LEFT = 1; public static final int RIGHT = 3; snate() { super(); //setSize(500,400); Container c=getContentPane(); j=new JLabel("Score:"); c.add(j,BorderLayout.NORTH); j1=new Canvas(); j1.setSize(canvasWidth+1,canvasHeight+1); j1.addKeyListener(this); c.add(j1,BorderLayout.CENTER); JPanel p1 = new JPanel(); p1.setLayout(new BorderLayout()); JLabel j2; j2 = new JLabel("PageUp, PageDown for speed;", JLabel.CENTER); p1.add(j2, BorderLayout.NORTH); j2 = new JLabel("ENTER or R or S for start;", JLabel.CENTER); p1.add(j2, BorderLayout.CENTER); j2 = new JLabel("SPACE or P for pause",JLabel.CENTER); p1.add(j2, BorderLayout.SOUTH); c.add(p1,BorderLayout.SOUTH); addKeyListener(this); pack(); setResizable(false); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); // begin(); // //2222222 // this.gs = gs; this.maxX = maxX; this.maxY = maxY; // initial matirx matrix = new boolean[maxX][]; for(int i=0; i<maxX; ++i){ matrix[i] = new boolean[maxY]; Arrays.fill(matrix[i],false); } // initial the snake int initArrayLength = maxX > 20 ? 10 : maxX/2; for(int i = 0; i < initArrayLength; ++i){ int x = maxX/2+i; int y = maxY/2; nodeArray.addLast(new Node(x, y)); matrix[x][y] = true; } food = createFood(); matrix[food.x][food.y] = true; } public void keyPressed(KeyEvent e) { if(e.getKeyCode()==KeyEvent.VK_UP) { //se.changeDirection(SnakeModel.UP); } if(e.getKeyCode()==KeyEvent.VK_DOWN) { //se.changeDirection(SnakeModel.DOWN); } if(e.getKeyCode()==KeyEvent.VK_LEFT) { //se.changeDirection(SnakeModel.LEFT); } if(e.getKeyCode()==KeyEvent.VK_RIGHT) { //se.changeDirection(SnakeModel.RIGHT); } if(e.getKeyCode()==KeyEvent.VK_R||e.getKeyCode()==KeyEvent.VK_S||e.getKeyCode()==KeyEvent.VK_ENTER) { } } public void keyTyped(KeyEvent e) {} public void keyReleased(KeyEvent e) {} public void repaint() { Graphics g = j1.getGraphics(); //背景 g.setColor(Color.red); g.fillRect(0,0,canvasWidth,canvasHeight); //蛇 //g.setColor(Color.BLUE); } public void paint(Graphics g) { g.setColor(Color.red); g.fillRect(10,10,10,10); } // //222222 // public void changeDirection(int newDirection){ if (direction % 2 != newDirection % 2){ direction = newDirection; } } public boolean moveOn(){ Node n = (Node)nodeArray.getFirst(); int x = n.x; int y = n.y; switch(direction){ case UP: y--; break; case DOWN: y++; break; case LEFT: x--; break; case RIGHT: x++; break; } if ((0 <= x && x < maxX) && (0 <= y && y < maxY)){ if (matrix[x][y]){ if(x == food.x && y == food.y){ nodeArray.addFirst(food); int scoreGet = (10000 - 200 * countMove) / timeInterval; score += scoreGet > 0? scoreGet : 10; countMove = 0; food = createFood(); matrix[food.x][food.y] = true; return true; } else return false; } else{ nodeArray.addFirst(new Node(x,y)); matrix[x][y] = true; n = (Node)nodeArray.removeLast(); matrix[n.x][n.y] = false; countMove++; return true; } } return false; } public void run(){ running = true; while (running){ try{ Thread.sleep(timeInterval); } catch(Exception e){ break; } if(!paused){ if (moveOn()){ gs.repaint(); } else{ JOptionPane.showMessageDialog( null, "you failed", "Game Over", JOptionPane.INFORMATION_MESSAGE); break; } } } running = false; } private Node createFood(){ int x = 0; int y = 0; do{ Random r = new Random(); x = r.nextInt(maxX); y = r.nextInt(maxY); }while(matrix[x][y]); return new Node(x,y); } public void speedUp(){ timeInterval *= speedChangeRate; } public void speedDown(){ timeInterval /= speedChangeRate; } public void changePauseState(){ paused = !paused; } public String toString(){ String result = ""; for(int i=0; i<nodeArray.size(); ++i){ Node n = (Node)nodeArray.get(i); result += "[" + n.x + "," + n.y + "]"; } return result; } } class Node{ int x; int y; Node(int x, int y){ this.x = x; this.y = y; } } public static void main(String[] args) { //Graphics g=j1.getGraphics(); snate s=new snate(); //s.draw_something(g); //s.setVisible(true); } }

立即下载
基于Java的游戏“贪吃蛇的设计和实现

基于Java的游戏“贪吃蛇的设计和实现附带全部源码附带毕业设计全部文档开题报告任务书,论文,答辩ppt,中期检查,外文翻译

立即下载
JAVA贪吃蛇游戏设计说明书开题报告

1.课程设计目的 《JAVA程序设计》是计算机相关专业的必修专业基础课程,其实践性、应用性很强。实践教学环节是必不可少的一个重要环节。本课程的程序设计专题实际是计算机相关专业学生学习完《JAVA程序设计》课程后,进行的一次全面的综合训练,JAVA程序设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及其在网络开发中的广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。

立即下载
基于c语言实现贪吃蛇游戏,很有趣的小游戏

基于c语言实现的贪吃蛇游戏,很有趣的小游戏。WASD控制方向,Q退出,R重新开始,支持排行榜。

立即下载
VBA开发的贪吃蛇小游戏

VBA开发的贪吃蛇小游戏,使用VBA开发,调用Win API函数实现循环

立即下载
Android十个经典游戏例子-开源代码(播放器,贪吃蛇等)

Android十个经典游戏例子-开源代码(播放器,贪吃蛇等)

立即下载
c#写的贪吃蛇小游戏及代码,适合初学者

c#写的贪吃蛇小游戏及代码,适合初学者,包括源代码,是用vs2010写的,有等级和不同果实不同速度的改变

立即下载
用eclipse写的贪吃蛇(java)

用Eclipse写的贪吃蛇项目,很经典的面向对象的小游戏

立即下载
Unity5 贪吃蛇小游戏源码

完整的贪吃蛇源码,带游戏场景资源 欢迎学习

立即下载
用pygame实现贪吃蛇游戏(源码)

贪吃蛇源码(用python的pygame模块实现),可以实现蛇的移动,吃食,碰撞判断等功能

立即下载
关闭
img

spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
点击完成任务获取下载码
输入下载码
为了良好体验,不建议使用迅雷下载
img

贪吃蛇小游戏c++实现

会员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0
为了良好体验,不建议使用迅雷下载
VIP下载
您今日下载次数已达上限(为了良好下载体验及使用,每位用户24小时之内最多可下载20个资源)

积分不足!

资源所需积分/C币 当前拥有积分
您可以选择
开通VIP
4000万
程序员的必选
600万
绿色安全资源
现在开通
立省522元
或者
购买C币兑换积分 C币抽奖
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
为了良好体验,不建议使用迅雷下载
确认下载
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
为了良好体验,不建议使用迅雷下载
VIP和C币套餐优惠
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
确认下载
下载
您还未下载过该资源
无法举报自己的资源

兑换成功

你当前的下载分为234开始下载资源
你还不是VIP会员
开通VIP会员权限,免积分下载
立即开通

你下载资源过于频繁,请输入验证码

您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:webmaster@csdn.net!

举报

若举报审核通过,可返还被扣除的积分

  • 举报人:
  • 被举报人:
  • *类型:
    • *投诉人姓名:
    • *投诉人联系方式:
    • *版权证明:
  • *详细原因: