JS 写的贪吃蛇 无聊发帖散分

雨0_o辰 2010-05-24 05:08:46
加精
已下为 JS 部分代码 ,编写时间较短用了8个小时写的,还有部分 BUG 未解决,娱乐为辅,散分为主。
以下为网络地址:
http://www.needsee.com/game/html.html



<script type="text/javascript" language="javascript">
//--------------------------------
//----制作者: ║LZ↗雨辰║
//--制作时间: 2010年5月21日
//--制作用时: 8小时
//--------QQ: *********
//--------------------------------

var key=39; //键值 39右键 37左键 38上建 下键40
var trailId=''; //记录头部ID
var tailId=''; //记录尾部ID
var tailArray = new Array(); //ID 拆分的数组
var randomL=20; //随机数 左ID
var randomR=30; //随机数 右ID
var foodCount=5; //食物数量
var count=0; //食物累计
var times=200; //行进速度
var timeSpace=10; //速度递增值 注意:值必须大于等于1

function $(id){
return document.getElementById(id);
}

function run(){ //程序入口
d(); //程序主体
r();
$('txtTime').value = times; //行进速度显示
}

function r(){ //食物随机函数
var randomID = '';

randomL = Math.floor(Math.random()*52+1);
randomR = Math.floor(Math.random()*48+1);

if(count < foodCount){
randomID = randomL + '_' + randomR;

if($(randomID).style.background == 'white' && $(randomID).title == ''){
$(randomID).style.background = 'black';
$(randomID).title = '0';
count++;
}

}
}

function d(){
var left=0;
var right=0;
var up=0;
var down=0;

var oId='';

tailArray = tailId.split('_'); //0 为左边(-1 上 +1 下) 1 为右边(-1 左 +1 右)尾部ID拆分
//alert(tailId);
//------------------------------到此尾部开始

left = Number(tailArray[1]) - 1;
if(left >= 1){ //左边预算
var id = tailArray[0] + '_' + left;

if($(id).style.background != 'white' && $(id).title == ''){//0 食物
oId = id;
}
}
right = Number(tailArray[1]) + 1;
if(right <= 50){ //右边预算
var id = tailArray[0] + '_' + right;

if($(id).style.background != 'white' && $(id).title == ''){//0 食物
oId = id;
}
}
up = Number(tailArray[0]) - 1;
if(up >= 1){ //上边预算
var id = up + '_' + tailArray[1];

if($(id).style.background != 'white' && $(id).title == ''){//0 食物
oId = id;
}
}
down = Number(tailArray[0]) + 1;
if(down <= 55){ //下边预算
var id = down + '_' + tailArray[1];

if($(id).style.background != 'white' && $(id).title == ''){//0 食物
oId = id;
}
}
//alert(tailId);
$(tailId).style.background='white';//将先前尾部变色
tailId = oId;//记录预算尾部ID

//------------------------------到此尾部结束
//------------------------------到此头部开始

tailArray = trailId.split('_'); //0 为左边(-1 上 +1 下) 1 为右边(-1 左 +1 右)头部ID拆分

if(key == 37){//左
left = Number(tailArray[1]) - 1;
if(left >= 1){ //左边预算
var id = tailArray[0] + '_' + left;

if($(id).style.background == 'white' && $(id).title == ''){//0 食物
$(id).style.background = 'black';
$(id).title = '';
trailId = id;
}else if($(id).style.background == 'black' && $(id).title == '0'){
var ids = tailArray[0] + '_' + (left-1);
$(id).style.background = 'black';
$(id).title = '';
$(ids).style.background = 'black';
$(ids).title = '';
trailId = ids;
count--;
//times -= timeSpace;
times = times > timeSpace ? times - timeSpace : timeSpace;
}else{
$('butNewStart').style.display = 'block';
alert('Game Over !');
times = 600000;
}
}else{
$('butNewStart').style.display = 'block';
alert('Game Over !');
times = 600000;
}
}else if(key == 38){//上
up = Number(tailArray[0]) - 1;
if(up >= 1){ //上边预算
var id = up + '_' + tailArray[1];

if($(id).style.background == 'white' && $(id).title == ''){//0 食物
$(id).style.background = 'black';
$(id).title = '';
trailId = id;
}else if($(id).style.background == 'black' && $(id).title == '0'){
var ids = (up-1) + '_' + tailArray[1];
$(id).style.background = 'black';
$(id).title = '';
$(ids).style.background = 'black';
$(ids).title = '';
trailId = ids;
count--;
//times -= timeSpace;
times = times > timeSpace ? times - timeSpace : timeSpace;
}else{
$('butNewStart').style.display = 'block';
alert('Game Over !');
times = 600000;
}
}else{
$('butNewStart').style.display = 'block';
alert('Game Over !');
times = 600000;
}
}else if(key == 39){//右
right = Number(tailArray[1]) + 1;
if(right <= 50){ //右边预算
var id = tailArray[0] + '_' + right;

if($(id).style.background == 'white' && $(id).title == ''){//0 食物
$(id).style.background = 'black';
$(id).title = '';
trailId = id;
}else if($(id).style.background == 'black' && $(id).title == '0'){
var ids = tailArray[0] + '_' + (right+1);
$(id).style.background = 'black';
$(id).title = '';
$(ids).style.background = 'black';
$(ids).title = '';
trailId = ids;
count--;
//times -= timeSpace;
times = times > timeSpace ? times - timeSpace : timeSpace;
}else{
$('butNewStart').style.display = 'block';
alert('Game Over !');
times = 600000;
}
}else{
$('butNewStart').style.display = 'block';
alert('Game Over !');
times = 600000;
}
}else if(key == 40){//下
down = Number(tailArray[0]) + 1;
if(down <= 55){ //下边预算
var id = down + '_' + tailArray[1];

if($(id).style.background == 'white' && $(id).title == ''){//0 食物
$(id).style.background = 'black';
$(id).title = '';
trailId = id;
}else if($(id).style.background == 'black' && $(id).title == '0'){
var ids = (down+1) + '_' + tailArray[1];
$(id).style.background = 'black';
$(id).title = '';
$(ids).style.background = 'black';
$(ids).title = '';
trailId = ids;
count--;
//times -= timeSpace;
times = times > timeSpace ? times - timeSpace : timeSpace;
}else{
$('butNewStart').style.display = 'block';
alert('Game Over !');
times = 600000;
}
}else{
$('butNewStart').style.display = 'block';
alert('Game Over !');
times = 600000;
}
}
//------------------------------到此头部结束

setTimeout('run()',times);
}

//开始 初始位置
function Start(id1,id2,id3){
trailId=id3;
tailId=id1;
times=200;
key=39;
count=0;

$(id1).style.background='black';
$(id2).style.background='black';
$(id3).style.background='black';

$('txtTime').value = times;
$('butStart').disabled = 'false';

run();
}

//重新开始
function newStart(){
$('butNewStart').style.display = 'none';

for(var i=1 ; i<=55 ; i++){
for(var j=1 ; j<=50 ; j++){
$(i+'_'+j).style.background='white';
$(i+'_'+j).title = '';
}
}
Start('1_1','1_2','1_3');
}

function jumpPage(){
if(event.keyCode == 37){//左
if(key != 39){
key=37;
}
}
if(event.keyCode == 38){//上
if(key != 40){
key=38;
}
}
if(event.keyCode == 39){//右
if(key != 37){
key=39;
}
}
if(event.keyCode == 40){//下
if(key != 38){
key=40;
}
}
}
document.onkeydown=jumpPage;
</script>
...全文
7168 364 打赏 收藏 举报
写回复
用AI写文章
364 条回复
切换为时间正序
请发表友善的回复…
发表回复
zucc_sjj 2010-06-04
  • 打赏
  • 举报
回复
牛人啊。。
chcdcailang 2010-06-03
  • 打赏
  • 举报
回复
大强!
扯0 2010-06-03
  • 打赏
  • 举报
回复
牛X 顶...
lubinnet 2010-06-03
  • 打赏
  • 举报
回复
很好很强大
damon08708 2010-06-03
  • 打赏
  • 举报
回复
单打独斗单打独斗地对地导弹地对地导弹地对地导弹的
老高呀 2010-06-03
  • 打赏
  • 举报
回复
我也来看看
zgbj999 2010-06-02
  • 打赏
  • 举报
回复
无聊看贴接分
tang768168 2010-06-02
  • 打赏
  • 举报
回复
强大到不行,。
skyctr 2010-06-02
  • 打赏
  • 举报
回复
为接分而来
lrjlovezyt 2010-06-02
  • 打赏
  • 举报
回复
看不懂,正在学习中
zhleii 2010-06-02
  • 打赏
  • 举报
回复
厉害 厉害
salombuth 2010-06-02
  • 打赏
  • 举报
回复
orz
fengwfe 2010-06-02
  • 打赏
  • 举报
回复
mark
幻想的天涯 2010-06-01
  • 打赏
  • 举报
回复
学习一下。。。
youaway 2010-06-01
  • 打赏
  • 举报
回复
可惜依然未结贴
taoge2121 2010-06-01
  • 打赏
  • 举报
回复
看不懂啊!
咿呀大河马 2010-06-01
  • 打赏
  • 举报
回复
接分啊 LZ大牛
zhztsinghua 2010-06-01
  • 打赏
  • 举报
回复
强大的楼主
chenjianbo2007 2010-06-01
  • 打赏
  • 举报
回复
感谢楼主
coder2010 2010-06-01
  • 打赏
  • 举报
回复
无聊!接分
加载更多回复(344)
内容概要:本文基于Matlab/Simulink平台,对电励磁同步电机在异步牵入、稳态运行及能耗制动三个阶段的全周期动态特性进行建模仿真与系统研究。研究构建了完整的电机数学模型与仿真系统,重点分析了电机从异步启动到同步运行的过渡过程、稳态运行时的电磁与机械性能,以及执行能耗制动时的减速特性与能量耗散机理。通过仿真,揭示了励磁电流、负载转矩与转速在不同工况下的动态响应规律与耦合关系,为电机的控制策略设计与性能优化提供了理论依据和数据支持。; 适合人群:具备电机学、电力电子与电力拖动基础知识的电气工程及相关专业的研究生、科研人员与工程技术人员。; 使用场景及目标:①研究电励磁同步电机的启动特性,解决异步牵入过程不稳定或失败的问题;②分析电机在不同负载下的稳态运行性能,优化运行效率;③设计和验证能耗制动策略,精确控制制动过程的减速时间和能量消耗。; 阅读建议:在学习过程中,应结合电机的基本原理,深入理解仿真模型中各模块(如电机本体、励磁控制、负载模型)的搭建逻辑,并通过调整仿真参数(如励磁电压、负载大小)来观察和分析系统动态响应,以加深对电机全周期运行特性的理解。
内容概要:通过介绍短时倒谱(Cepstrogram)计算方法,开展时-倒频分析研究,深入探讨倒谱分析机理、短时倒谱构建逻辑及时-倒频分析的内涵。文中系统对比了时-倒频分析与全局倒谱、传统时频分析方法的差异,阐明其在卷积特征解耦、非平稳信号跟踪、微弱周期特征增强及多维特征融合方面的技术优势,并分析其在语音识别、机械故障诊断、音频处理和非平稳时序信号分析中的典型应用,同时指出其在分辨率、计算复杂度等方面的局限性并提出优化方向。; 适合人群:具备一定信号处理或数据分析基础,从事机械、通信、声学或自动化等领域研究的研发人员及研究生。; 使用场景及目标:① 掌握短时倒谱与时-倒频分析的理论基础与实现方法;② 应用于语音信号处理、机械设备故障诊断、音频相似性检测等工程实践;③ 对比传统方法,提升对复杂非平稳信号中隐含周期特征的识别能力; 阅读建议:此资源以Matlab代码实现为核心,强调理论与实践结合,建议读者在理解核心算法原理的基础上,动手运行代码并调试参数,结合具体应用场景深化对方法适用性与局限性的认识。

7,776

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧