nnie.html
来自「梦想世界虚拟社区」· HTML 代码 · 共 844 行 · 第 1/2 页
HTML
844 行
<HTML>
<HEAD>
<TITLE>MAIN FRAME</TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
var score=0 //score
var startFLG=-1 //start flag
var gameFLG=0 //game play flag
var timerID = null //timer ID
var INT = 25 //interval (ms)
var X=100 //my chr X
var Y=256
var IX=0 //my chr right move
var IY=0 // down
var DX=0 // left
var DY=0 // up
var IIX=0 // right speed up
var DDX=0 // left
var spCOUNT=0 //LAYER COUNTER
var mySP=0 //my chr COUNT
var blSP=0 //block COUNT
var coSP=0 //coin COUNT
var jmpFLG=0 //jump flag
var stepFLG=0 //my chr step flag
var tmLMT=1000 //time limit
var timeC=0 //time count
var mv1=-1 //moving block flag 1
var mvH1=0 // HIT flag 1
var ofs1=0 //offset 1
var blockX = new Array(99) //block X
var blockY = new Array(99) // Y
var coinX = new Array(99) //coin X
var coinY = new Array(99) // Y
var coinF = new Array(99) // null FLAG
var kiX = new Array(9) //mushroom X
var kiY = new Array(9) // Y
var kiF = new Array(9) // null FLAG
var kiDX = new Array(9) // DX
var imgs = new Array(20) //image data
imgs[0]=new Image();imgs[0].src="boy1c.gif"
imgs[1]=new Image();imgs[1].src="boy2c.gif"
imgs[2]=new Image();imgs[2].src="boy4c.gif"
imgs[3]=new Image();imgs[3].src="boy3c.gif"
imgs[4]=new Image();imgs[4].src="boy5c.gif"
imgs[5]=new Image();imgs[5].src="coin.gif"
imgs[6]=new Image();imgs[6].src="null.gif"
imgs[7]=new Image();imgs[7].src="kinoko.gif"
//IE check
systm=""
ver=navigator.appVersion
len=ver.length
for(iln=0;iln<len;iln++) if(ver.charAt(iln)=="(") break
systm = ver.charAt(iln+1).toUpperCase()
//---------------------------------------------------------
// main function
//---------------------------------------------------------
//main function
function interval1(){
clearTimeout(timerID)
timeC=timeC-1
parent.scr.document.forms[0].elements[1].value = timeC
if (timeC==0){stopG()}
//moving block write
ofs1=ofs1+mv1*4
if (ofs1<=-192){mv1=1}
if (ofs1>=0){mv1=-1}
spMOV(1,blockX[0]*32,blockY[0]*32+ofs1)
stepFLG=stepFLG+1;if (stepFLG>=2){stepFLG=0}
if(X<100){X=100;IX=0;DX=0}
if(X>1699){X=1699;IX=0;DX=0;stopG()}
DX=DX+DDX;if (DX>8){DX=8;DDX=0}else{if (DX<0){DX=0;DDX=0}}
IX=IX+IIX;if (IX>8){IX=8;DDX=0}else{if (IX<0){IX=0;IIX=0}}
X=X+IX-DX
if (jmpFLG!=0){Y=Y-DY;if (Y>=300){Y=300;jmpFLG=0};DY=DY-1}
parent.scr.document.forms[0].elements[0].value = score
if (IX-DX<0){
if (jmpFLG==0){imgchg(mySP,3+stepFLG)}else{imgchg(mySP,4)}
}else{
if (IX-DX>0){
if (jmpFLG==0){imgchg(mySP,1+stepFLG)}else{imgchg(mySP,2)}
}else{
if (jmpFLG==0){imgchg(mySP,0)}else{imgchg(mySP,2)}
}
}
kmove()
hitCHK(X,Y)
getCHK(X,Y)
atCHK(X,Y)
spMOV(mySP,X,Y)
sc2(X-100)
if (Y>=300){stopG()}
if (mvH1==1){Y=Y+4}
if (gameFLG==1){timerID = setTimeout("interval1()",INT)}
}
//---------------------------------------------------------
// sub functions
//---------------------------------------------------------
//CLICK START
function startG(){
document.onkeydown = keyDown
document.onkeyup = keyUp
if (systm!="C"){
document.captureEvents(Event.KEYDOWN|Event.KEYUP)
document.layers["starter"].moveTo(-1000,-1000)
document.layers["CLRmes"].moveTo(0,0)
document.layers["GMOmes"].moveTo(0,0)
document.layers["TMOmes"].moveTo(0,0)
}else{
starter.style.posTop = -1000
starter.style.posLeft = 150
CLRmes.style.posTop = -1000
GMOmes.style.posTop = -1000
TMOmes.style.posTop = -1000
}
for (ia=blSP+1; ia<coSP+1; ia++){
imgchg(ia,5)
coinF[ia-blSP-1]=0
}
for (ia=0; ia<6; ia++){
imgchg(coSP+ia+1,7)
kiF[ia]=0
kiDX[ia]=-4
}
BGMSTART()
gameFLG=1
score=0
DDX=0;IIX=0;DX=0;IX=0
timeC=tmLMT
parent.scr.document.forms[0].elements[0].value = score
parent.scr.document.forms[0].elements[0].value = tmLMT
X=100;Y=256
timerID = setTimeout("interval1()",1)
}
//GAME STOP
function stopG(){
clearTimeout(timerID)
if (timeC<=0){
if (systm!="C"){
document.layers["TMOmes"].moveTo(0,1050)
}else{
TMOmes.style.posTop = 50
TMOmes.style.posLeft = 20+X
}
}else{
if (X>=1699){
if (systm!="C"){
document.layers["CLRmes"].moveTo(0,1050)
}else{
CLRmes.style.posTop = 50
CLRmes.style.posLeft = 50+X
}
}else{
if (systm!="C"){
document.layers["GMOmes"].moveTo(0,1050)
}else{
GMOmes.style.posTop = 50
GMOmes.style.posLeft = 20+X
}
}
}
gameFLG=0
startFLG=0
if (systm!="C"){
document.layers["starter"].moveTo(0,0)
}else{
starter.style.posTop = 100
starter.style.posLeft = 50+X
}
BGMSTOP()
}
function BGMSTOP(){
if (systm == "C"){
BG.outerHTML = "<div id='BG'></DIV>"
}else{
document.embeds[0].stop()
}
}
function BGMSTART(){
if (systm == "C"){
BG.outerHTML = "<div id='BG'><BGSOUND LOOP='-1' SRC='Soul_Food.mid'></DIV>"
}else{
document.embeds[0].stop()
document.embeds[0].play(true)
}
}
//LAYER SETUP
function spINI(spX,spY,spIMG){
if (systm!="C"){
document.write("<LAYER LEFT="+spX+" TOP="+spY+"><IMG SRC='"+spIMG+"'></LAYER>")
}else{
with (document) {
write("<IMG SRC='"+spIMG+"' STYLE='position:absolute'>")
images[spCOUNT].style.posLeft = spX
images[spCOUNT].style.posTop = spY
}
}
spCOUNT=spCOUNT+1
}
//LAYER MOVE
function spMOV(spNO,spX,spY){
if (systm!="C"){
document.layers[0].layers[spNO].moveTo(spX,spY)
}else{
document.images[spNO].style.posLeft = spX
document.images[spNO].style.posTop = spY
}
}
//IMAGE CHANGE
function imgchg(imgNo,dataNo){
if (systm!="C"){
document.layers[0].layers[imgNo].document.images[0].src=imgs[dataNo].src
}else{
document.images[imgNo].src=imgs[dataNo].src
}
}
//SCROLL
function sc2(scr2){
if (systm!="C"){
document.layers[0].left=-scr2
}else{
window.scroll(scr2,0)
}
}
//ON KEY DOWN
function keyDown(DnEvents){
if (systm != "C"){
k=DnEvents.which
if (k == 54){IIX=2} // 6
if (k == 52){DDX=2} // 4
if (k == 90){if (jmpFLG==0){DY=15;jmpFLG=1}} //Z
if (k == 122){if (jmpFLG==0){DY=15;jmpFLG=1}} //z
}else{
k=window.event.keyCode
if (k == 102){IIX=2} // 6
if (k == 100){DDX=2} // 4
if (k == 54){IIX=2} // 6
if (k == 52){DDX=2} // 4
if (k == 39){IIX=2} // Right
if (k == 37){DDX=2} // Left
if (k == 90){if (jmpFLG==0){DY=15;jmpFLG=1}} //Z
if (k == 122){if (jmpFLG==0){DY=15;jmpFLG=1}} //z
}
}
//ON KEY UP
function keyUp(UpEvents){
if (systm != "C"){
k=UpEvents.which
if (k == 54){IIX=-2}
if (k == 52){DDX=-2}
if (k == 90){if (DY>0){DY=DY/2}} //Z
if (k == 122){if (DY>0){DY=DY/2}} //z
}else{
k=window.event.keyCode
if (k == 102){IIX=-2} // 6
if (k == 100){DDX=-2} // 4
if (k == 54){IIX=-2} // 6
if (k == 52){DDX=-2} // 4
if (k == 39){IIX=-2} // Right
if (k == 37){DDX=-2} // Left
if (k == 90){if (DY>0){DY=DY/2}} //Z
if (k == 122){if (DY>0){DY=DY/2}} //z
}
}
//BLOCK SETUP
function bs(bx,by){
blockX[spCOUNT-1]=bx;blockY[spCOUNT-1]=by
spINI(bx*32,by*32,'block.gif')
}
//COIN SETUP
function cs(cx,cy){
coinX[spCOUNT-blSP-1]=cx;coinY[spCOUNT-blSP-1]=cy
spINI(cx*32+8,cy*32+8,'coin.gif')
}
//MUSHROOM SETUP
function ki(kx,ky){
kiX[spCOUNT-coSP-1]=kx*32;kiY[spCOUNT-coSP-1]=ky*32
spINI(kx*32,ky*32,'kinoko.gif')
}
//MUSHROOM MOVE
function kmove(){
kiX[0]=kiX[0]+kiDX[0]
if (kiX[0]<=6*32+8){kiDX[0]=4}else{if (kiX[0]>=8*32){kiDX[0]=-4}}
if (X>9*32+100){kiF[0]=0;imgchg(coSP+1+0,7)}
kiX[1]=kiX[1]+kiDX[1]
if (kiX[1]<=11*32){kiDX[1]=4}else{if (kiX[1]>=13*32){kiDX[1]=-4}}
if (X>14*32+100){kiF[1]=0;imgchg(coSP+1+1,7)}
kiX[2]=kiX[2]+kiDX[2]
if (kiX[2]<=19*32){kiDX[2]=4}else{if (kiX[2]>=21*32-4){kiDX[2]=-4}}
if (X>22*32+100){kiF[2]=0;imgchg(coSP+1+2,7)}
if (X<19*32-300){kiF[2]=0;imgchg(coSP+1+2,7)}
kiX[3]=kiX[3]+kiDX[3]
if (kiX[3]<=24*32){kiDX[3]=4}else{if (kiX[3]>=26*32){kiDX[3]=-4}}
if (X>27*32+100){kiF[3]=0;imgchg(coSP+1+3,7)}
if (X<24*32-300){kiF[3]=0;imgchg(coSP+1+3,7)}
kiX[4]=kiX[4]+kiDX[4]
if (kiX[4]<=32*32){kiDX[4]=4}else{if (kiX[4]>=33*32){kiDX[4]=-4}}
if (X>34*32+100){kiF[4]=0;imgchg(coSP+1+4,7)}
if (X<32*32-300){kiF[4]=0;imgchg(coSP+1+4,7)}
kiX[5]=kiX[5]+kiDX[5]
if (kiX[5]<=45*32){kiDX[5]=4}else{if (kiX[5]>=46*32){kiDX[5]=-4}}
if (X>47*32+100){kiF[5]=0;imgchg(coSP+1+5,7)}
if (X<45*32-300){kiF[5]=0;imgchg(coSP+1+5,7)}
for (ik=0; ik<6; ik++){
spMOV(coSP+1+ik,kiX[ik],kiY[ik])
}
}
//HIT CHECK
function hitCHK(hx,hy){
tmpGND=0;tmpGn=0;mvH1=0
ltFLG=0
rtFLG=0
lfFLG=0
rfFLG=0
a0FLG=0
for (ia=0; ia<blSP+1; ia++){
tmpHIT=0;tmpLT=0;tmpRT=0;tmpLF=0;tmpRF=0;tmpBD=0
tmpXa=blockX[ia]*32;tmpXb=tmpXa+31
tmpYa=blockY[ia]*32;tmpYb=tmpYa+31
if (ia==0){tmpYa=tmpYa+ofs1;tmpYb=tmpYb+ofs1}
tmphx=hx+31;tmphy=hy+31
//Ltop
if (hx>=tmpXa){
if (hx<=tmpXb){
if (hy>=tmpYa){
if (hy<=tmpYb){
tmpHIT=1;tmpLT=1
}
}
}
}
//Rtop
if (tmphx>=tmpXa){
if (tmphx<=tmpXb){
if (hy>=tmpYa){
if (hy<=tmpYb){
tmpHIT=1;tmpRT=1
}
}
}
}
//Lfoot
if (hx>=tmpXa){
if (hx<=tmpXb){
if (tmphy>=tmpYa){
if (tmphy<=tmpYb){
tmpHIT=1;tmpLF=1
}
}
}
}
//Rfoot
if (tmphx>=tmpXa){
if (tmphx<=tmpXb){
if (tmphy>=tmpYa){
if (tmphy<=tmpYb){
tmpHIT=1;tmpRF=1
}
}
}
}
if (hx+4>=tmpXa){
if (hx+4<=tmpXb){
if (tmphy+1>=tmpYa){
if (tmphy+1<=tmpYb){
tmpGND=1;tmpGn=ia
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?