精华内容
下载资源
问答
  • C#制作小游戏

    热门讨论 2011-09-22 16:08:56
    手把手教你用C#制作小游戏,尤其适用于初学者由理论上升为实践所用,强力推荐哦
  • 易语言制作单机小游戏

    热门讨论 2011-08-01 04:01:42
    易语言制作单机小游戏 有几十款小游戏源码在里头、
  • 十一、攀登不止小游戏制作 制作微信小游戏大致流程与微信小程序、Web类似,不同的在于是组件的使用。我们此节需要完成的小游戏需求为: 小球触碰矩形块会跳跃或攀爬 小球触碰顶部或底部游戏结束 点击屏幕将会使小球...

    十一、攀登不止小游戏制作

    制作微信小游戏大致流程与微信小程序、Web类似,不同的在于是组件的使用。我们此节需要完成的小游戏需求为:

    • 小球触碰矩形块会跳跃或攀爬
    • 小球触碰顶部或底部游戏结束
    • 点击屏幕将会使小球朝着该方向移动
    • 小球进行跳跃时分数会增加
    • 矩形块在游戏运行过程中自动下沉
    • 游戏结束停止游戏出现按钮可以重新开始游戏

    教程目录

    一、iVX简介
    二、基础
    三、界面介绍
    四、WebApp 基础可视组件
    五、Web App 基础可视组件属性
    六、WebApp 二手信息站点页面制作
    七、功能性组件与事件逻辑
    八、后台与数据库
    九、二手信息站点后台完成
    十、小程序实战

    游戏效果如下:

    11.1 完成矩形块自动下沉

    首先我们创建一个微信 2D小游戏:

    创建完毕后,我们点击矩形组件在小游戏中创建一个矩形:

    创建完矩形后,点击对象树中的矩形对象,更改宽高属性为 16,使其更美观:

    更改完后由于我们需要矩形块自动下沉,使用物理世界让矩形块拥有物理属性;拥有物理属性的矩形块将会将会受到重力的影响进行下沉。在前台中添加物理世界,并且将矩形块添加到物理世界中:


    需要使矩形块拥有物理属性还需要重要的一步,点击矩形1组件,在左侧的组件栏中点击物体组件进行添加:

    添加完物体组件后,点击物体组件物体1,在属性中更改阻尼值,更改阻尼值可以使该物体的阻力发生改变,使其下沉变快或者变慢;在这里我们将阻尼值设置为 1,使其在进行下沉时速度放缓:

    更改完后,在游戏运行中该矩形块将会与小球发生碰撞,我们此时应该更改矩形块的质量为 99,使其难以被小球的碰撞发生移动:

    除了质量外,我们还需固定旋转角度,使其禁止发生旋转偏移:

    最后改变该矩形块的颜色为红色:

    此时点击预览,该红色矩形块将会缓慢进行下沉:

    11.2 完成小球在矩形块上跳跃

    点击椭圆组件,在矩形块上添加一个小球设置小球的宽高为16,并且添加物体组件:


    添加完成后我们还需要为椭圆1其改变质量,使其对矩形组件的影响最小:


    此时我们在前台创建两个数值变量,一个为记录小球碰撞的组件标志命名为触碰组件,另一个为排除组件,排除组件用于排除不跳跃的矩形块,为接下来的制作做准备:


    接下来我们为矩形添加一个事件,该事件用作判断椭圆1组件触碰到的矩形类别。设置事件为触碰触发,触发后为矩形边路进行赋值:


    在此我们将该矩形的背景色更改为红色,在此我们规定:红色矩形块的目标值为1、橙色矩形块的目标值为2、蓝色矩形块的目标值为3、绿色矩形块的目标值为4。

    设置之后我们在物理世界中创建一个触发器,用触发器定时响应跳跃内容:


    接下来我们点击触发器,使其能够进行自动播放:


    对该触发器设置一个事件,事件触发后开始判断当前触碰的物体值是不是排除外的目标,如果不是给该椭圆组件下的物体组件添加一个垂直的速度,该速度为负数,设置为负数将会使该物体有一个向上的力,此时即可完成小球跳跃效果:

    但是预览小游戏后,我们发现该小球一直都会超顶部跳跃:

    这是因为我们设置了碰撞值在跳跃后并没有进行置零,并且还需要为其增加一个条件,判断触碰矩形变量值不能为 0,这样就完成了小球跳跃后只执行一次向上的作用力:

    完成该部分后我们复制 3 个矩形块1,设置为橙、蓝、绿的背景色:

    此时我们重命名矩形块的名称,让其有辨识度:

    接下来在对应矩形的事件中,将对触碰矩形变量赋值的动作值按照橙色矩形块的目标值为2、蓝色矩形块的目标值为3、绿色矩形块的目标值为4 的规则进行修改,在此以橙色矩形块的事件为例:


    接着我们手动更改排除组件变量的值为 2:

    此时小球若碰到 2 代表的橙色矩形块将不会进行跳跃。

    11.3 完成小球的移动

    此时我们需要将小球移动到黄色矩形块上演示黄色矩形块不进行跳动。在此我们在前台添加事件,当鼠标或手指按下某个位置时使小球朝着该方向平移。我们先创建一个变量命名为按下x,该变量用于记录按下的 x 坐标:


    之后在事件中为其赋值:


    完成后,我们判断按下的位置在小球的左侧还是右侧,若在左侧小球则往左侧移动,若在右侧小球则往右侧移动。判断按下未知是否在小球左侧还是右侧只需要使用小球 x 坐标减去按下位置的 x 值,结果为负数则表示按下在右侧,若按下位置的值为正数则表示按下的位置在小球的左侧,之后在设置一个数值变量命名为方向,值 1 表示往左侧移动,值 2 表示往右侧进行移动:


    接下来在触发器中进行判断,方向为 1 则椭圆 x 坐标减少值,方向为 2 则椭圆 x 坐标增加值:

    此时即可完成小球移动:

    11.4 完成矩形重复生成

    此时这些矩形会一直下降,接下来我们需要矩形到达底部后自动在顶部进行创建。在底部创建一个矩形,命名为底部,添加物体组件固定其位置:

    接下来为所有跳跃矩形设置一个碰撞事件,当矩形到达底部后自动调整 y 值位置,在此设置 y 值为 36,在此以红色矩形为例:

    现在我们可以创建多个矩形,完成界面的编排。复制多个矩形,使用鼠标移动到对应的位置:

    随后即可完成矩形自动创建:

    最后创建一个变量名为随机 x ,使每次矩形复位后重新生成 x 位置值游戏将更多趣味性:

    11.4 完成分数计数

    接下来我们添加分数记录需要创建一个变量命名为分数,当小球进行一次跳跃时我们就为其分数加一:

    在触发器的小球跳跃的事件中,添加动作将分数进行增加:


    我们再到前台中创建两个文本,用于分数的显示,并且在分数增加的动作中设置一个文本的内容为分数变量的值:

    11.5 设置随机不可跳跃矩形

    设置随机不可跳跃矩形我们需要使用一个时间变量,在界面中添加一个时间变量以及一个数值变量命名为记录时间用于时间记录:

    在前台中添加一个事件,当界面进行资源加载时记录一个时间秒数:


    接下来我们在触发器中判断记录当前时间减去记录时间是否大于 10 秒,若大于则给排除组件赋值一个随机数,该随机数最小为 1 最小为 4,此时即可完成随机排除组件标志:


    此时还需要注意在进行随机组件排除后,还需记录时间变量重新设置值方便排除组件变量之后值的随机变换:


    此时为了方便给玩家知道当前排除的组件,我们在触发器中设置几个条件,当排除组件值等于 1、2、3、4值时给与底部矩形块一个颜色值,使其可以用作提示:

    11.6 设置触碰底部游戏结束

    当小球掉到底部时游戏提示游戏结束,我们给底部设置一个事件,当触碰小球暂停物理世界以及触发器:

    此时将会停止该游戏物理世界级触发器运行事件:

    停止游戏后我们应该出现停止游戏的文本,并且有一个重新开始按钮。在页面中增加文本与按钮组件:

    我们此时对其应该设置隐藏,点击可见按钮即可:


    随后在停止游戏时将其开启可见:

    随后为重新开始按钮其添加重启事件,首先将文本设置隐藏:


    随后使物理世界、触发器重新播放、分数归零、小球位置重置:

    最后增加游戏复杂度,复制底部重命名为顶部,此时顶部矩形将会拥有底部事件,我们只需要在触发器中增加顶部改变其排除组件的颜色即可:

    最后即可完成游戏效果。

    展开全文
  • 用Processing制作小游戏1

    千次阅读 2019-10-23 20:10:39
    好久没有练习Processing了,今天尝试用Processing制作了一个计时摘苹果得分的小游戏。 初始界面如下,左上角显示的是得分,右上角显示的是倒计时,一局30S。 游戏中,用键盘的WASD移动手的图标至苹果得20分,触碰到...

    简介

    好久没有练习Processing了,今天尝试用Processing制作了一个计时摘苹果得分的小游戏。

    初始界面如下,左上角显示的是得分,右上角显示的是倒计时,一局30S。

    在这里插入图片描述

    游戏中,用键盘的WASD移动手的图标至苹果得20分,触碰到炸弹扣20分,分数变化后,会同时刷新苹果和炸弹的位置。

    在这里插入图片描述

    倒计时结束后,游戏停止,跳出得分界面。

    在这里插入图片描述

    代码

    需要在代码的data文件夹中放入字体和图片,压缩包的下载链接在下方。字体在Processing工具栏创建字体中选择自己喜欢的。

    在这里插入图片描述

    下载链接:https://pan.baidu.com/s/1R0sCXPGuZRABjNbYJLudmw

    提取码:fquw

    int x = 500;
    int y = 500;  //手部初始坐标
    float apple_x = 150;
    float apple_y = 300;  //苹果初始坐标
    float bomb_x = 500;
    float bomb_y = 300;  //炸弹初始坐标
    PFont font;
    int a = 0;  //初始分数
    int b;  
    int c = 600;
    PImage tree;
    PImage apple;
    PImage hand;
    PImage bomb;
    
    void setup() {
      size(650,650);
      tree = loadImage("tree.jpg");
      apple = loadImage("apple.jpg");
      hand = loadImage("hand.jpg");
      bomb = loadImage("bomb.jpg");
      font = loadFont("SitkaDisplay-48.vlw");  //选择字体
    }
    
    void draw() {
      frameRate(20);  //运行帧数
      background(tree);
      move();  //定义键盘的控制按键
      image(hand,x,y);
      image(apple,apple_x,apple_y);
      image(bomb,bomb_x,bomb_y);
      over();
      font();
      if(sqrt((apple_x - x)*(apple_x - x)+(apple_y - y)*(apple_y - y)) < 25) {
        apple();
        bomb();
        a += 20;  //计算手与苹果的距离判断触碰苹果得分
      }
      if(sqrt((bomb_x - x)*(bomb_x - x)+(bomb_y - y)*(bomb_y - y)) < 25) {
        apple();
        bomb();
        a -= 20;  //计算手与炸弹的距离判断触碰炸弹减分
      }
      //saveFrame("frames/####.png"); 
    }
    
    void move(){
      if(keyPressed) {
        if(key == 'a' && x != 0) {
          x -= 10;
        }
        if(key == 'd' && x != 600) {
          x += 10;
        }
        if(key == 'w' && y != 0) {
          y -= 10;
        }
        if(key == 's' && y != 600) {
          y += 10;
        }
        if(key == 'q') {
          exit();
        }
      }
    }
    
    void apple() {
      apple_x = random(50,550);
      apple_y = random(50,400);  //随机刷新苹果位置
    }
    
    void bomb() {
      bomb_x = random(50,550);
      bomb_y = random(50,400);  //随机刷新炸弹位置
    }
    
    void font() {
      textFont(font);
      fill(0);
      text(a,10,50);
      text(b,550,50);  //显示得分和倒计时
    }
    
    void over() {    
      c -= 1;
      b = c/20;  //计时
      if(c == 0) {
        fill(20,40,240);
        noStroke();
        rect(100,400,450,60);
        textFont(font);
        fill(0);
        String s = "your score is";
        text(s,110,440);
        text(a,450,440);  //显示得分界面
        stop();
      }
    }
    

    本人菜鸟,发现错误,欢迎指出,谢谢大家。

    展开全文
  • 使用pygame制作贪吃蛇小游戏

    万次阅读 多人点赞 2021-03-17 18:46:31
    使用pygame制作贪吃蛇小游戏开发基本思路效果展示具体实施步骤制作窗口,插入音频与图片绘制蛇与果实 开发基本思路 1、制作窗口,插入音频与图片 2、绘制蛇与果实 3、按键控制 4、生成食物 5、结束判断 效果展示 ...

    开发基本思路

    1、制作窗口,插入音频与图片
    2、绘制蛇与果实
    3、按键控制
    4、生成食物
    5、结束判断

    效果展示

    在这里插入图片描述

    具体实施步骤

    (本程序基于Python3.9.1编写)

    制作窗口,插入音频与图片

    首先要导入需要的模块。

    import pygame
    import sys
    import random
    from pygame.locals import *
    

    其后进行初始化,初始化混音器是为添加背景音乐做准备。

    #初始化
    pygame.init()        #初始化pygame
    pygame.mixer.init()  #初始化混音器
    

    下一步我们来制作游戏窗口。先定义好你需要的窗口的大小,再给窗口起一个标题。

    #制作窗口
    playSurface = pygame.display.set_mode((800,800))  #定义窗口大小
    pygame.display.set_caption("贪吃蛇")  #定义标题
    

    到此,一个窗口就设置好啦!
    在这里插入图片描述

    之后我们来给游戏加上合适的背景音乐,这里的(-1)表示让背景音乐循环播放。

    #添加音乐
    pygame.mixer.music.load("贪吃蛇背景音乐.mp3")
    pygame.mixer.music.play(-1)
    

    再定义一个结束游戏的函数,为后面判断游戏结束条件时做铺垫。

    #结束游戏
    def gameover():
        pygame.quit()   #退出pygame窗口
        sys.exit()      #退出程序
    

    最后再来设置一下蛇与食物的颜色

    #颜色设置
    snakeBody_color = pygame.Color(0,255,0) #绿色
    food_color = pygame.Color(255,0,0) #红色
    

    下面我们进入主函数

    绘制蛇与果实

    先设置好果实初始位置,蛇头的初始位置,这个蛇初始有几段身体。蛇的每段身体与果实我们把它设置为20*20像素的小方格。

    def main():
     	#绘制蛇与果实
        snakePosition = [200,200]                       #蛇头位置
        snakeBodys = [[200,200],[180,200],[160,200]]    #蛇身位置
        foodPosition = [500,500]        #果实位置
    

    其后设置关于果实个数、蛇的速度、初始方向等变量。后面的代码可以看到果实吃掉后foodTotal变为0,用于生成新的果实。而foodNumber 则是用来在后面控制蛇的速度的,每吃一定数量的果实,蛇便增加一次速度,同时foodNumber值回到1 。

    	time_clock = pygame.time.Clock() #定义一个变量来控制速度
    	foodTotal = 1                   #果实数量
    	foodNumber = 1                  #用于增加速度的变量
        direction = 'right'             #初始方向向右
        changeDirection = direction     #定义一个改变方向的变量,按键
    
        speed = 4  #定义初始速度
    

    下面我们来写一段死循环,除了被动触发死亡条件或者主动关闭游戏窗口,程序会一直在循环内运行。

    按键控制

    循环内要先获取两个事件,一是主动退出事件。当程序运行时点击右上角叉号,会跳出循环结束游戏。若没有退出事件,大家会发现想要主动退出是实现不了的。

    	while True:
            for event in pygame.event.get():   #从队列中获取事件
    
                #退出事件
                if event.type == QUIT:
                    pygame.quit()
                    sys.exit()
    

    第二个事件便是按键事件,用来控制蛇的移动方向。按下上下左右键或者W S A D键来实现蛇的转向。按esc键实现程序的退出。

                #按键事件
                elif event.type == KEYDOWN:
                    if event.key == K_RIGHT or event.key == K_d:
                        changeDirection = 'right'
    
                    if event.key == K_LEFT or event.key == K_a:
                        changeDirection = 'left'
                        
                    if event.key == K_UP or event.key == K_w:
                        changeDirection = 'up'
                        
                    if event.key == K_DOWN or event.key == K_s:
                        changeDirection = 'down'
    
                    if event.key == K_ESCAPE:
                        pygame.event.post(pygame.event.Event(QUIT))
    

    但我们要注意,贪吃蛇的游戏里是不可以180度大转弯的,若要实现反方向移动需要按下两次相同反方向键。

            #防止蛇反方向移动
            if changeDirection == 'right' and not direction == 'left':
                direction = changeDirection
                
            if changeDirection == 'left' and not direction == 'right':
                direction = changeDirection
                
            if changeDirection == 'up' and not direction == 'down':
                direction = changeDirection
                
            if changeDirection == 'down' and not direction == 'up':
                direction = changeDirection
    

    按下方向键后,自然是根据相应方向来调整蛇头移动方向了。

            #根据方向移动蛇头
            if direction == 'right':
                snakePosition[0] += 20
                
            if direction == 'left':
                snakePosition[0] -= 20
                
            if direction == 'up':
                snakePosition[1] -= 20
                
            if direction == 'down':
                snakePosition[1] += 20
    

    生成食物

    接下来我们先设定每走一格蛇的身体就增长一格,若没吃到食物则身体减少一格。

            snakeBodys.insert(0, list(snakePosition))  #增加蛇的长度
            
            #判断是否吃到食物
            if snakePosition[0] == foodPosition[0] and snakePosition[1] == foodPosition[1]:
                foodTotal = 0
            else:
                snakeBodys.pop()  #每次将最后一个单位的蛇身去除列表
    

    当食物被吃掉后,再重新生成新的食物,但同时要编写代码防止食物生成在蛇的身上。这里调用random来实现食物的随机生成。

            #重新生成食物
            if foodTotal == 0:
                x = random.randrange(1,40)
                y = random.randrange(1,40)
                foodPosition = [int(x*20), int(y*20)]
                foodTotal = 1
                foodNumber += 1    
                
            #防止食物生成在蛇身上
            for body in snakeBodys[1:]:
                if foodPosition[0] == body[0] and foodPosition[1] == body[1]:
                    foodTotal = 0
                    foodNumber -=1
    

    死亡设置

    贪吃蛇一共有两种被动死亡的方法。一是蛇头触碰到窗口的边缘,二是蛇头碰到了蛇身。这里我们就用到了开始的时候定义的游戏结束的函数。

            #超出边框结束游戏
            if snakePosition[0] > 800 or snakePosition[0] < 0:
                gameover()
                
            elif snakePosition[1] > 800 or snakePosition[1] < 0:
                gameover()
                
            #碰到身体结束游戏
            for body in snakeBodys[1:]:
                if snakePosition[0] == body[0] and snakePosition[1] == body[1]:
                    gameover()
    

    以上就是主体部分,下面要在while循环内完成其他设置。

    其他设置

    首先为设置好的窗口填上好看的背景图片。有人会疑惑为什么不在设置窗口的时候就把背景填上,其实阿齐最开始就是那么做的,但这就出现了bug。由于背景没有在while循环内不断刷新,小蛇移动的过程中尾巴会无限拉长,非常恐怖。所以我们把背景在这里设置好,并画出小蛇与果实。

            #绘制游戏背景
            background = pygame.image.load("河海大学校标.jpg")
            playSurface.blit(background,(0,0))
            pygame.display.update()
    
            #画出蛇与果实
            for position in snakeBodys:
                pygame.draw.rect(playSurface,snakeBody_color, Rect(position[0], position[1], 20, 20))
                pygame.draw.rect(playSurface, food_color, Rect(foodPosition[0], foodPosition[1], 20, 20))
                
                pygame.display.flip()  #更新显示到屏幕表面
    

    下面是速度的设置,小蛇会在每吃到4个果实,速度+1 ,初始速度前面已经设为4 。

            #设置递增速度
            if foodNumber % 5 ==0:
                speed += 1
                foodNumber = 1
                
            # 控制游戏速度
            time_clock.tick(speed)
    

    最后,我们再设置一个入口函数,到此整个程序就完成啦。

    #入口函数
    if __name__ == "__main__":
        main()
    

    整体代码

    import pygame
    import sys
    import random
    from pygame.locals import *
    
    #初始化
    pygame.init()        #初始化pygame
    pygame.mixer.init()  #初始化混音器
    
    #制作窗口
    playSurface = pygame.display.set_mode((800,800))  #定义窗口大小
    pygame.display.set_caption("贪吃蛇")  #定义标题
    
    #添加音乐
    pygame.mixer.music.load("贪吃蛇背景音乐.mp3")
    pygame.mixer.music.play(-1)
    
        
    #结束游戏
    def gameover():
        pygame.quit()   #退出pygame窗口
        sys.exit()      #退出程序
        
    
    #颜色设置
    snakeBody_color = pygame.Color(0,255,0) #绿色
    food_color = pygame.Color(255,0,0) #红色
    
    
    def main():
    
        time_clock = pygame.time.Clock() #定义一个变量来控制速度
        
        #绘制蛇与果实
        snakePosition = [200,200]                       #蛇头位置
        snakeBodys = [[200,200],[180,200],[160,200]]    #蛇身位置
        foodPosition = [500,500]        #果实位置
        foodTotal = 1                   #果实数量
        foodNumber = 1                  #用于增加速度的变量
        direction = 'right'             #初始方向向右
        changeDirection = direction     #定义一个改变方向的变量,按键
    
        speed = 4  #定义初始速度
    
        while True:
            for event in pygame.event.get():   #从队列中获取事件
    
                #退出事件
                if event.type == QUIT:
                    pygame.quit()
                    sys.exit()
    
                #按键事件
                elif event.type == KEYDOWN:
                    if event.key == K_RIGHT or event.key == K_d:
                        changeDirection = 'right'
    
                    if event.key == K_LEFT or event.key == K_a:
                        changeDirection = 'left'
                        
                    if event.key == K_UP or event.key == K_w:
                        changeDirection = 'up'
                        
                    if event.key == K_DOWN or event.key == K_s:
                        changeDirection = 'down'
    
                    if event.key == K_ESCAPE:
                        pygame.event.post(pygame.event.Event(QUIT))
    
            #防止蛇反方向移动
            if changeDirection == 'right' and not direction == 'left':
                direction = changeDirection
                
            if changeDirection == 'left' and not direction == 'right':
                direction = changeDirection
                
            if changeDirection == 'up' and not direction == 'down':
                direction = changeDirection
                
            if changeDirection == 'down' and not direction == 'up':
                direction = changeDirection
    
            #根据方向移动蛇头
            if direction == 'right':
                snakePosition[0] += 20
                
            if direction == 'left':
                snakePosition[0] -= 20
                
            if direction == 'up':
                snakePosition[1] -= 20
                
            if direction == 'down':
                snakePosition[1] += 20
    
            snakeBodys.insert(0, list(snakePosition))  #增加蛇的长度
            
            #判断是否吃到食物
            if snakePosition[0] == foodPosition[0] and snakePosition[1] == foodPosition[1]:
                foodTotal = 0
            else:
                snakeBodys.pop()  #每次将最后一个单位的蛇身去除列表
    
            #重新生成食物
            if foodTotal == 0:
                x = random.randrange(1,40)
                y = random.randrange(1,40)
                foodPosition = [int(x*20), int(y*20)]
                foodTotal = 1
                foodNumber += 1    
                
            #防止食物生成在蛇身上
            for body in snakeBodys[1:]:
                if foodPosition[0] == body[0] and foodPosition[1] == body[1]:
                    foodTotal = 0
                    foodNumber -=1
    
            #设置递增速度
            if foodNumber % 5 ==0:
                speed += 1
                foodNumber = 1
                
            #绘制游戏背景
            background = pygame.image.load("河海大学校标.jpg")
            playSurface.blit(background,(0,0))
            pygame.display.update()
    
            #画出蛇与果实
            for position in snakeBodys:
                pygame.draw.rect(playSurface,snakeBody_color, Rect(position[0], position[1], 20, 20))
                pygame.draw.rect(playSurface, food_color, Rect(foodPosition[0], foodPosition[1], 20, 20))
    
            pygame.display.flip()  #更新显示到屏幕表面
    
            #超出边框结束游戏
            if snakePosition[0] > 800 or snakePosition[0] < 0:
                gameover()
                
            elif snakePosition[1] > 800 or snakePosition[1] < 0:
                gameover()
                
            #碰到身体结束游戏
            for body in snakeBodys[1:]:
                if snakePosition[0] == body[0] and snakePosition[1] == body[1]:
                    gameover()
    
            # 控制游戏速度
            time_clock.tick(speed)
    
            
    #入口函数
    if __name__ == "__main__":
        main()
    

    要注意的是,小伙伴们选好的背景音乐与背景图片,要与此程序放入同一个文件夹,并将此文件夹放到c盘哦!这样就不用了再去找路径来调用图片或音频啦。

    同时此代码已在Github上开源:https://github.com/Yours-Qi/Gluttonous-Snake

    喜欢的小伙伴记得支持阿齐一下鸭!相互学习,多多指教!

    展开全文
  • C# 游戏制作 | ✨ 简易文字小游戏

    万次阅读 多人点赞 2021-04-14 11:18:14
    简易文字小游戏 在学习了一些C#的基础知识后就要做一些小东西来练练手,就比如本文所介绍的一个通过用VS中的C#写的一个简易文字小游戏 这个小游戏只由一个脚本完成,主要是用来拿C#中的一些基础知识完成,比如此...

    简易文字小游戏

    在学习了一些C#的基础知识后就要做一些小东西来练练手,就比如本文所介绍的一个通过用VS中的C#写的一个简易文字小游戏
    这个小游戏只由一个脚本完成,主要是用来拿C#中的一些基础知识完成,比如此脚本中用到的较多的if语句、结构体struct、枚举enum、静态方法staic等。
    在这里插入图片描述

    有兴趣的小伙伴可以自行设置剧情,体验一次游戏小策划的感觉,嘿嘿~
    比较适合新手开始用C#的一个小检验,还是挺有趣的,效果图如下:
    在这里插入图片描述
    在这里插入图片描述

    下面简单地介绍一下脚本大题内容(其实都是很基础的东西,大佬不喜勿喷哦@_@)

    脚本一开始定义了一个枚举,用来定义装备的类型,然后有一个结构体是用定义游戏中某件装备的具体属性,然后在Program类中定义了一些角色拥有的属性。
    然后第一个方法CreateCharacter,是在Main函数里第一个执行的,是用来创建玩家角色的一个方法,在该方法中定义了一些随机属性,让每一次创建角色的时候都会有所不同(这也是大多数游戏的乐趣所在)。
    创建完角色之后就到了我们的第一个游戏场景——

    展开全文
  • 用java制作小游戏:小恐龙跑酷

    千次阅读 2019-04-12 22:31:52
    用java制作小游戏:小恐龙跑酷 插入链接与图片 运行图片:( 第一次做游戏,画风比较丑哈!最左边的就是主角小恐龙了,中间的是障碍物仙人掌,右边的小狗也是障碍物,右上角的是分数条) 图片: 以下是Java工程中的...
  • Unity,小游戏开发。 本篇文章对童年经典小游戏——炸弹超人进行制作和解析。不知道有没有勾起你童年的回忆呢!快来和我一起制作这个童年经典的小游戏吧! 敬请品尝!
  • Easyx小游戏制作教程

    千次阅读 2021-01-04 00:25:22
    益智小游戏拼图制作3.经典小游戏Easyx制作酷炫贪吃蛇4. 回味童年经典项目----扫雷实现5.C++面向对象编程之 flappyBird 程序设计6.超级无敌回味经典 + 巩固编程知识项目 俄罗斯方块7. 链表学习之 雷霆战机 项目8....
  • 如何用python制作小游戏

    千次阅读 2020-03-25 16:52:24
    基于这个逻辑大家也可以写一个属于自己游戏哦。 最后的效果图: 如果想了解更多关于python的应用,可以私信我,不管你是零基础还是有基础都可以获取到自己相对应的学习礼包!包括Python软件工具和2019最新入门到...
  • 1、Python猜拳小游戏代码:2、import random #导入随机模块3、4、num = 15、yin_num = 06、shu_num = 07、while num 2:12、 print('不能出大于2的值')13、 else:14、 data = ['石头', '剪刀', '布']15、 ...
  • matlab 手把手教你制作五子棋小游戏

    万次阅读 多人点赞 2019-03-24 11:02:12
    想把以前写过的小游戏出一款详细教程呀 这两天发现五子棋有个简单的写法 虽然说有点弊端但这个程序真的很简单呀 一共只有70多行 相信大家就算没有基础多查多看也能学会吧嗯哒
  • 简单小游戏制作过程

    千次阅读 2019-09-17 20:11:38
    小游戏制作 1:创造一个窗口 2:1)棋牌类游戏(使用贴图) 1:写一个能将图片加载成位图的头文件 2:需要一个屏幕绘制的全局函数(最好使用双缓冲消除闪烁) 3:由键盘事件或鼠标事件进行游戏制作(一般是由键盘...
  • 利用jQuery实现拼图游戏: 代码结构 引入CSS 1.<link rel="stylesheet" href="css/index.css"> 引入JS <script type="text/javascript" src="js/jquery.min.js"></script> <script type...
  • 本文主要介绍如何用Python设计一个经典小游戏:猜大小。在这个游戏中,将用到前面我介绍过的所有内容:变量的使用、参数传递、函数设计、条件控制和循环等,做个整体的总结和复习。游戏规则:初始本金是1000元,默认...
  • 学习SCRATCH制作迷宫小游戏

    千次阅读 2018-06-14 15:43:35
    小朋友在社团中用SCRATCH创作自己小游戏
  • c++制作小游戏--雷电

    万次阅读 多人点赞 2015-07-01 10:05:18
    最近无聊,于是用c++实现了一个小游戏--雷电,貌似运行的还不错,贴图和声效也是Duang!Duang!的。整个项目我也会给出下载链接,有兴趣的可以编译运行一下,用到了C++11的新特性,最好是使用vs2013编译。 游戏说明: ...
  • 微信H5游戏是商家做宣传推广优先选择的方式,一个优质的小游戏,既能娱乐大众,又能宣传企业品牌,为商家增加网站流量。为此,很多商家都会想做一个h5游戏进行宣传推广自己的品牌、产品,那么微信h5游戏怎么制作呢,...
  • 下载W3Cschool手机App,0基础随时随地学编程导语这又将是一个不定期更新的系列~~~本系列主要将使用到python的pygame模块来教大家制作一些小游戏,每期制作一个。最后都会打包成.exe文件分享给大家~~~So,对于只想玩...
  • 端午节用MATLAB制作一款龙舟小游戏

    万次阅读 多人点赞 2021-06-14 11:29:13
    没找到合适的背景就自己画了个,大家如果有更好看的可以换一下。。。 步骤 1 创建Axes及图片导入 窗口创建: Mainfig=figure('units','pixels','position',[50 100 760 400],... 'Numbertitle','off','menubar','...
  • c++制作小游戏——扫雷

    千次阅读 2018-07-18 09:17:06
    #include&lt;ctime&gt; #include&lt;cstdlib&gt; #include&lt;iostream&gt; #include&lt;cstring&gt; using namespace std; int map[12][12]; int derection[3]={0,1,... int coun...
  • Java桌球小游戏(兴趣制作

    千次阅读 多人点赞 2019-05-19 21:54:09
    桌球小游戏 两张图片放在src的同级目录下 版本一、出现窗口 package cn.xjion.game; /** * 出现窗口 * @author xjion * */ import java.awt.*; import javax.swing.*; //继承窗口类 public class Ball...
  • MATLAB制作贪吃蛇小游戏(可选择游戏难度)

    千次阅读 多人点赞 2019-05-16 22:57:27
    这两天感觉自己无所事事,事情多但是学不下去,于是就想自己写一下贪吃蛇的小游戏来放松一下自己自己根据网上的教程学了一下用MATLAB制作贪吃蛇小游戏,并进行了小小的改进,可以实现游戏难度的选择。 同时跟大家...
  • CocosCreator如何制作微信小游戏

    万次阅读 2018-01-29 18:05:13
    CocosCreator在1.8版本开始,就支持一键发布微信程序,下面是详细的发布步骤: 1、在微信公众平台下载微信开发者工具; 地址:https://mp.weixin.qq.com/debug/wxagame/dev/devtools/download.html?t=2018115,...
  • 用Python制作好玩的小游戏

    万次阅读 2019-08-10 08:55:58
    游戏也能学习Python!
  • matlab 手把手教你制作贪吃蛇小游戏

    千次阅读 多人点赞 2020-04-04 23:07:05
    function snake %axis set.............................................................. axis equal len=40; axis(0.5+[0,len,0,len]) set(gca,'xtick',[],'ytick',[],'xcolor','w','ycolor','w') ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 112,415
精华内容 44,966
关键字:

怎么自己制作小游戏