怎样做小游戏挖金子(VC,源码1)

  《挖金子》这个游戏,以前就玩过,网上见到是FLASH做的。FLASH做的游戏,很棒,足以让人对脚本语言刮目相看。最近我用vc做了一个,基本实现了功能。但代码写得粗糙,有几处很笨拙。我还是想贴出来,大家讨论吧。(使用了原游戏的图片资源,纯属学习,无商业用途,特此声明)

先看一下完成后的截图:

屏幕菜单:

游戏主画面:

过关后的道具选择画面:

失败后的画面:

画面很粗糙:)但功能都实现了。这样的一个小游戏涉及哪些要点呢?从框架上讲,包括游戏流程控制,用户操作响应,图像、动画显示,这几点是所有游戏都涉及的。从功能上讲,要处理地图加载,图像旋转,碰撞检测,胜负判断,还有按钮、文字等游戏元素。

明白了这个游戏所涉及的内容,就可以把各个问题逐个解决,直至制作完成。整个制作过程,关键是思路,源码不重要。明白了思路,就等于掌握了根本。掌握根本,这是最好的。看源码的目的,也是要“看出编写者的思路”,不是看他的运行结果。况且,我的代码注释也不多。

我会在以后的文章中,逐一介绍各个制作环节,并贴出源码。大家讨论。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
黄金矿工是一个经典的小游戏,以下是它的基本代码实现: HTML代码: ``` <canvas id="canvas" width="800" height="600"></canvas> ``` JS代码: ``` var canvas = document.getElementById("canvas"); var context = canvas.getContext("2d"); var background = new Image(); background.src = "background.png"; var goldminer = new Image(); goldminer.src = "goldminer.png"; var hook = new Image(); hook.src = "hook.png"; var gold = new Image(); gold.src = "gold.png"; var hook_x = 400; var hook_y = 60; var gold_x = 0; var gold_y = 0; var hook_speed = 10; var gold_speed = 5; var hook_direction = 1; var gold_direction = 1; function draw() { context.drawImage(background, 0, 0); context.drawImage(goldminer, 20, 460); context.drawImage(hook, hook_x, hook_y); context.drawImage(gold, gold_x, gold_y); if (hook_direction == 1) { hook_x += hook_speed; if (hook_x > 680) { hook_direction = -1; } } else { hook_x -= hook_speed; if (hook_x < 120) { hook_direction = 1; } } if (gold_direction == 1) { gold_y += gold_speed; if (gold_y > 400) { gold_direction = -1; } } else { gold_y -= gold_speed; if (gold_y < -40) { gold_direction = 1; } } if (hook_x > gold_x && hook_x < gold_x + 50 && hook_y > gold_y && hook_y < gold_y + 50) { gold_direction = -1; } requestAnimationFrame(draw); } requestAnimationFrame(draw); ``` 以上代码实现了黄金矿工的基本玩法,即控制钩子上下移动抓取金子金子的运动轨迹和方向是随机的。你可以在代码中自定义游戏的背景、角色和元素图片,并根据需要修改移动速度和碰撞检测等相关参数。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值