首页 > 编程语言 >用JavaScript做超级玛丽小游戏

用JavaScript做超级玛丽小游戏

时间:2024-08-16 08:55:14浏览次数:13  
标签:function MAP JOY JavaScript 超级玛丽 小游戏 PAD key var

一、前言

前几天用JS实现扫雷和贪吃蛇(通过HTML的DOM节点实现基本界面,界面背景简单,交互简单)。比较复杂的是植物大战僵尸,不同的关卡设置单独的函数。所以还比较难。

超级玛丽通过canvas实现背景,交互很复杂,功能很多,JS代码完全是有汇编语言反编译成C语言,然后把C语言转换成JS实现的。完全使用原生JS实现超级玛丽或者魂斗罗还没有实现。思路:类似植物大战僵尸,设置英雄和不同的敌人是不同的类,不同的关卡设置不同的函数实现。难点:界面交互很多,游戏角色动画较多。理论上 CodeCombat 可以实现类似的效果,那么红白机游戏也可以实现。膜拜反编译汇编语言的大神。

话不多说,先上效果图

d8b5c72121fe4bcbb1d2083f14aa8f66.png

 f92555eaf1974371a510f363b662e0da.png

 二、代码实现


HTML结构代码

标签:function,MAP,JOY,JavaScript,超级玛丽,小游戏,PAD,key,var
From: https://blog.csdn.net/dp6558dfggbhhn_/article/details/141229978

相关文章

  • TypeScript 之 JavaScript文件类型检查
    启用对JavaScript文件的类型检查在TypeScript编译选项compilerOptions全部配置项中,可以通过以下2个属性配置JavaScriptSupport:allowJs是否允许编译JavaScript文件。默认值是false。在默认情况下,TypeScript编译器只处理.ts、.tsx和.d.ts文件,不会编译.js......
  • JavaScript 中,`'10' < '1'` 的结果为 `false`,原因
    在JavaScript中,'10'<'1'的结果为false,这是因为JavaScript在进行比较操作时,会将字符串按照字符编码进行比较,而不是将它们转换为数字。字符编码比较:字符串'10'的第一个字符是'1',而字符串'1'的第一个字符也是'1'。由于两个字符串的第一个字符相同,所以JavaScript......
  • C语言无脑小游戏三子棋程序
    #include<stdio.h>#include<time.h>#include<stdlib.h>#include<windows.h>#defineROW3#defineCOL3voidmenu();//菜单函数声明voidgame();//游戏函数声明voidInit_board(charboard[ROW][COL],introw,intcol);//棋盘初始化函数声明voidDisplay_board......
  • 使用dotenv保护JavaScript代码中的秘密信息
    把诸如apikey这种秘密信息写死的源代码里不可取,比如通常源代码会通过git仓库等进行管理,这样敏感信息就会被共享了。我们选择使用dotenv库把敏感信息配置在.env文件中,然后把.env文件添加到gitignore文件里,不上传到代码仓库。node程序启动后,会将.env文件里的配置项加载到进程对应......
  • JavaScript实现数组与树结构的相互转换
    1、将树结构数据转换为数组(按照树结构自上而下的顺序转换)树结构:树结构数据样例:代码转换://将树结构数据转换为数组treeNodes为树结构形式的数据functiontreeToArray(treeNodes){letresult=[];//递归函数traverse,用于处理单个节点functiontraverse(node......
  • QT翻金币小游戏
    目录QT翻金币小游戏效果展示图片视频实现代码main.cpp mymainwindow.hmymainwindow.cpp startscene.hstartscene.cppselectscene.cppplayscene.hplayscene.cpp mypushbutton.h mypushbutton.cppdataconfig.hdataconfig.cppQT翻金币小游戏效果展示图......
  • 使用 JavaScript 进行线性搜索
    一.介绍线性搜索,也称为顺序搜索,是一种用于在列表中查找特定值的简单搜索算法。它的工作原理是逐个检查列表中的每个元素,直到找到所需的值或到达列表的末尾。以下是线性搜索如何工作的逐步描述。**从头开始:**从列表的第一个元素开始。**比较各个元素:**将当前元素与目标值......
  • 汉诺塔小游戏
    1publicclasshanoitower{2publicstaticvoidmain(String[]args){34Towertower=newTower();5tower.move(6,'A','B','C');678}9}1011classTower{12//方法13//num表示移......
  • 【python】pygame开发小游戏原来如此简单,掌握这几步就可以快速上手
    ✨✨欢迎大家来到景天科技苑✨✨......
  • [Javascript] Create an Actor model in Javascript
    Referto:https://stately.ai/docs/actor-modelWhatdefinesan“actor”?​Actorsareindependent“live”objectsthatcancommunicatewitheachotherviaasynchronousmessagepassing.InXState,werefertothesemessagesas events.Anactorhasitsowni......