天哪!几行js代码就可以实现拳皇小游戏

开发 前端
今天,我们用原生JS实现一个拳皇人物位置控制的小效果。话不多说,我们赶紧来看下如何实现吧!

 前言

今天,我们用原生JS实现一个拳皇人物位置控制的小效果。话不多说,我们赶紧来看下如何实现吧!

效果

[[383071]]

(非静止八神)

分别按W、S、A、D键可实现位置移动,并且效果真实。

源码

html与css很简单,主要是js中有几点需要注意的。

<!DOCTYPE html> 
<html lang="en"
<head> 
 <meta charset="UTF-8"
 <title>游戏动作控制(设计模式)</title> 
 <style> 
  *{ 
   margin: 0; 
   padding: 0; 
  } 
  html{ 
   height:100%; 
   background: url('images/bg.jpg'no-repeat; 
   background-size:100% 100%;  
  } 
  #site{ 
   height: 100%; 
  } 
  img{ 
   position: absolute
   bottom: 50px; 
   width: 200px; 
   height: 350px; 
  } 
 </style> 
</head> 
<body> 
 <div id="site"
  <img src="images/YAGAMI/stand.gif" alt="" id="MC" data-name="n1"
 </div> 
</body> 
<script type="text/javascript"
 var pl=document.getElementById("MC"); 
 var i=1; 
   
 // 行为表 
 var skill={ 
  "n1":{ 
   "d1":function(){ 
   console.log("前进"); 
   play.getImg().src="images/YAGAMI/advance.gif" 
   play.getImg().style.left=i+"px" 
   }, 
   "d2":function(){ 
   console.log("后退"); 
   play.getImg().src="images/YAGAMI/retreat.gif" 
   }, 
   "d3":function(){ 
   console.log("站立"); 
   play.getImg().src="images/YAGAMI/stand.gif" 
   }, 
   "d4":function(){ 
   console.log("暴起"); 
   play.getImg().src="images/YAGAMI/bq.gif" 
   } 
 
  } 
 } 
 //键位表 
 var active={ 
  "68":"d1"
  "65":"d2"
  "83":"d3"
  "87":"d4" 
 } 
   
  // 操作 
 function set(obj,key){ 
  if(!active[key])return
  return function(){ 
   var name=obj.getName(); 
   skill[name][active[key]](); 
  } 
 } 
   
  // 创建一个Play类 
 function Play(pl){ 
  var imgNade =pl; 
  var name=pl.getAttribute("data-name"); 
  this.getImg=function(){ 
   return imgNade; 
  } 
  this.getName=function(){ 
   return name
  } 
 } 
 var play=new Play(pl); 
   
  // 按下 
 document.onkeydown=function(e){ 
  i+=10; 
  var key=e.keyCode; 
  var fu=set(play,key); 
  if(fu){ 
   fu(); 
  } 
 } 
</script> 
</html> 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68.
  • 69.
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
  • 75.
  • 76.
  • 77.
  • 78.
  • 79.
  • 80.
  • 81.
  • 82.
  • 83.
  • 84.
  • 85.
  • 86.
  • 87.
  • 88.
  • 89.
  • 90.
  • 91.
  • 92.
  • 93.
  • 94.
  • 95.
  • 96.
  • 97.
  • 98.
  • 99.

源码地址

源码如下,大家可以按照这个思路丰富下效果,实现一个完整的拳皇游戏。

https://github.com/maomincoding/game_kz.git

结语

谢谢阅读,希望没有浪费您的时间。这篇文章篇幅较短,主要是给大家实现一个小效果。

 

责任编辑:姜华 来源: 前端历劫之路
相关推荐

2022-08-14 16:15:52

Python机器学习大数据

2020-09-26 21:41:30

进度条Python代码

2022-03-01 15:26:29

漏洞网络攻击

2024-01-07 16:56:59

Python人工智能神经网络

2022-10-17 07:16:08

SQL机器学习AI

2022-04-13 14:20:00

技术睡眠装置

2022-08-25 21:41:43

ArkUI鸿蒙

2018-07-19 06:07:22

物联网安全物联网IOT

2021-12-24 09:52:59

代码开发工具

2018-03-01 15:00:15

Oracle数据中心云计算

2015-07-10 11:18:19

2018-12-03 08:04:25

负载均衡机器流量

2020-11-19 08:00:03

打工人离职工作

2021-02-23 12:30:21

VS CodeGithub代码

2022-02-28 17:57:44

云迁移云计算

2018-11-27 09:21:41

负载均衡机器Session

2022-02-28 22:58:04

云迁移IT开发

2017-02-13 09:33:32

2020-04-24 14:33:34

JSfor...of编程语言

2022-08-04 13:55:08

拼数字小游戏鸿蒙
点赞
收藏

51CTO技术栈公众号