手机
当前位置:查字典教程网 >脚本专栏 >hta >HTANoid 用hta编写的一个经典的游戏
HTANoid 用hta编写的一个经典的游戏
摘要:Thisgameisnotfinished.Thepurposewasjusttoshowyouthatyoucandosomegraphi...

This game is not finished. The purpose was just to show you that you can do some graphical things without having to use external pictures.

If you want to develop this game, please submit your updates.

File Name : htanoid.hta

Requirement : IE 6 ?

Author : Jean-Luc Antoine

Submitted : 17/05/2002

Category : Other

效果图:

HTANoid 用hta编写的一个经典的游戏1

实现代码:

复制代码 代码如下:

<html xmlns:v="urn:schemas-microsoft-com:vml" XMLNS:t="urn:schemas-microsoft-com:time">

<head>

<HTA:APPLICATION

APPLICATIONNAME="HTAnoid"

BORDER="thick" | "dialog" | "none" | "thin"

BORDERSTYLE="normal" | "complex" | "raised" | "static" | "sunken"

CAPTION="yes" CONTEXTMENU="yes"

ID="oHTA" alert(oHTA.applicationName);

INNERBORDER="yes" MAXIMIZEBUTTON="yes" MINIMIZEBUTTON="yes"

NAVIGABLE="no" SCROLL="no" SCROLLFLAT="no"

SELECTION="yes" SHOWINTASKBAR="yes" SINGLEINSTANCE="no"

SYSMENU="yes" VERSION="0.5"

WINDOWSTATE="normal" | "maximize" | "minimize">

<script language=vbscript>

Option explicit

Const C_ScreenW=400

Const C_NbX=12

Const C_NbY=10

Dim Terrain(10,12)

Dim RaqX,RaqW,Playing,BalleX,BalleY

Dim DirBX,DirBY'Direction balle X,Y

Dim BordDroit

BordDroit=C_ScreenW-32

Sub Document_onKeyPress()

Select Case UCase(Chr(Window.Event.keyCode))

Case "P"

Msgbox "pause"

'Window.ClearTimeOut

End Select

End Sub

Sub Document_onClick()

Playing=True

'document.title="click " & window.event.button

End Sub

Sub Document_onMouseMove()

RaqX=window.event.clientX-RaqW'.shiftKey .keyCode .ctrlKey .button .altKey

If RaqX<16 Then RaqX=16'Mur gauche

If RaqX+RaqW>BordDroit Then RaqX=BordDroit-RaqW

Raquette.style.Left=RaqX

If Not Playing Then

BalleX=RaqX+RaqW/2

Balle.Style.Left=BalleX

End If

End Sub

Sub DrawLevel(n)

Dim k,x,y

set k=document.getElementById("Raquette")

For y=0 To C_NbY

For x=0 To C_NbX

Terrain(y,x)=0'Nb de coups restant à porter

Next

Next

Select Case n

Case 1

'Bricks

For y=0 To 5

For x=0 To C_NbX

k.insertAdjacentHTML "beforeBegin","<TABLE & 102+14*y & ";left=" & 16+27*x _

& ";width=25;height=10;' bgcolor=" & Array("silver","red","yellow","blue","magenta","lightgreen")(y) & "><TR><TD></TD></TR></TABLE>"

Next

Next

End Select

Randomize

BalleY=400

DirBX=Int(Rnd()*3)+1

DirBY=0-(Int(Rnd()*4)+1)

End Sub

Sub Init

Dim x,y,k

Window.MoveTo screen.Width/2-200,0

Window.ReSizeTo C_ScreenW,484

RaqW=Int(Replace(Raquette.style.width,"pc","")*1.6)

'Lives Left

set k=document.getElementById("Raquette")

'CreateElement + insertAdjacentElement

For x=0 To 2

k.insertAdjacentHTML "beforeBegin","<v:group & 16+x*30 _

& ";width:15pc;height:5pc;'><v:roundrect fillcolor=red><v:fill type='gradient'/></v:roundrect>" _

& "<v:rect strokecolor=black><v:fill type='gradient' color=#4682b4 focus=0.2 /></v:rect></v:group>"

Next

DrawLevel 1

Playing=False

window.setTimeout "Gere",10

End Sub

Sub Gere

If Playing Then

'Déplacement de la balle

If DirBX>0 Then

If BalleX+DirBX>BordDroit-10 Then DirBX=0-DirBx

Else

If BalleX+DirBX<16 Then DirBX=0-DirBx

End If

If DirBY>0 Then

If BalleY+DirBY>400 Then DirBY=0-DirBY

Else

If BalleY+DirBY<50 Then DirBY=0-DirBY

End If

BalleX=BalleX+DirBX

BalleY=BalleY+DirBY

Balle.Style.Left=BalleX

Balle.Style.Top=BalleY

Else

document.title=Now

End If

window.setTimeout "Gere",10

End Sub

</script>

<STYLE TYPE="text/css">

<!--

v:*{behavior:url(#default#VML);}

t:*{behavior:url(#default#time2)}

BODY{

font-family: "Verdana, Arial, Helvetica, sans-serif";

background-color=#003159;

color:#0000FF;

font-size: 8pt;

}

TABLE,TD{

border:'0pix groove';

cursor:W-resize;

}

.score{

color:white;

font-size: 10pt;

}

-->

</STYLE>

</head>

<body topmargin=0 leftmargin=0 rightmargin=0 onload="vbscript:init">

<>

<CENTER><font size=2 color=red><b>HIGH SCORE</b></font><br><table cellspacing=0 width=100%><tr><td width=50% align=center>

<div id=Score class=score>1234</div></td><td><div id=HighScore class=score>123400</div></td></tr></table></CENTER>

<>

<table width=100% height=420 cellspacing=0 cellpadding=0>

<tr height=14><td colspan=3>

<v:rect>

<v:fill type="gradient" color=white color2=darkgray focus=3.3 />

</v:rect>

</td></tr>

<tr height=100%><td width=15>

<v:rect strokecolor="#666666" strokeweight="2pt">

<v:stroke dashstyle="dashdot" />

<v:fill type="gradient" angle="-90" color2=white color=darkgray focus=3.3 />

</v:rect>

</td>

<td width=100%>

<v:oval id="balle" fillcolor=#009999 strokecolor=#0066FF id=boule>

<v:fill type=gradientradial color2=white focusposition=0.3,0.3 focussize=0.01,0.01 />

</v:oval>

<v:group id=Raquette>

<v:roundrect fillcolor=red>

<v:fill type='gradient'/></v:roundrect>

<v:rect strokecolor=black>

<v:fill type='gradient' color=#4682b4 focus=0.2 /></v:rect>

</v:group>

</td>

<td align=right>

<v:rect strokecolor="#666666" strokeweight="2pt">

<v:stroke dashstyle="dashdot" />

<v:fill type="gradient" angle="-90" color2=white color=darkgray focus=3.3 />

</v:rect>

</td></tr>

</table>

</body>

</html>

原文:http://www.interclasse.com/scripts/htanoid.php

【HTANoid 用hta编写的一个经典的游戏】相关文章:

hta编写的常用工具箱(常用工具快捷方式等)

NCC Tools(never code counter tools) V1.0.1发布代码-代码统计工具

用hta做的好玩的小程序(固定在桌面)

用来猜后台的HTA小程序

MyHTML Player release v1.1

hta编写的软件管理工具0.1(IE7.0测试通过)

用vbs在 HTA 内对脚本进行编码的方法

hta实现的定时关机小程序

用hta[javascript]写的定时重启或关机的小工具

winXP下用VBS写的代码编辑器

精品推荐
分类导航