Letters 是個很有意思的聯機小游戲,其實非常簡單,就是大家可以搶字母來拼自己喜歡的單詞,每天上去都會看到一群類此不疲的玩家。
一時心血來潮仿寫了一個單機版的:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> 字母漂移 </TITLE>
<META NAME="Author" CONTENT="emu">
<META NAME="Keywords" CONTENT="game">

<SCRIPT LANGUAGE="JavaScript" defer>
<!--
var isIE=!!document.all;

function checkMouseMove(event)
{

if (window.activeElement)
{
var elm = window.activeElement;
elm.style.left = event.clientX-elm.innerX;
elm.style.top = event.clientY-elm.innerY;
}
}

function releaseMouse(event)
{

if (window.activeElement)
{
activeElement.newX = event.clientX-activeElement.innerX;
activeElement.newY = event.clientY-activeElement.innerY;
window.activeElement = null;
}
}

function drag(event)
{
if (event.button>1) return;
var elm = isIE?event.srcElement:event.target;
window.activeElement = elm;
elm.oldX = elm.offsetLeft;
elm.oldY = elm.offsetTop;
elm.innerX = event.clientX - elm.oldX;
elm.innerY = event.clientY - elm.oldY;
}


function slideTo(id,x,y)
{
var d=5
var e = document.getElementById(id);
var l = e.style.left?parseInt(e.style.left):0;
var t = e.style.top?parseInt(e.style.top):0;
if(Math.abs(l-x)<=d && Math.abs(t-y)<=d) return;
if(l!=x) e.style.left=l+(l<x?d:-d)
if(t!=y) e.style.top=t+(t<y?d:-d)
if(e.timer) clearTimeout(e.timer)
e.timer=setTimeout("slideTo("+id+","+x+","+y+")",3)
}
setInterval("slide()",300);

function slide()
{
slideTo(Math.floor(Math.random()*26),Math.floor(Math.random()*670+15),Math.floor(Math.random()*470+15))
}
//-->
</SCRIPT>
</HEAD>

<style>
b{
}{position:absolute;cursor:pointer;font-size:20}</style>
<BODY onmousemove="checkMouseMove(event)" onmouseup="releaseMouse(event)" oncontextmenu="return false" onselect="return false" ondblclick="return false">
<div style="background-color:yellow;width:700;height:500;overflow:hidden">

<SCRIPT>
var n=104;
for(var i=0;i<n;i++)
document.write('<b onmousedown="drag(event)" id="'+i+'" style="left:'+Math.floor(Math.random()*670+15)+';top:'+Math.floor(Math.random()*470+15)+';color:#'+(Math.floor(Math.random()*(1<<24))|(1<<23)).toString(16)
+'" onbeforselect="return false">'+String.fromCharCode(i%26+65)+'</b>');
</SCRIPT>
</div>
</BODY>
</HTML>
看起來也似模似樣了呵呵。至少比Letters 單機版要有可玩性,更不要說體積只有它的幾十分只一了。
直接拷貝下來保存為html文件,或者點擊這里下載。在IE6和Firefox1.5下面同過。
運行效果如下:
一時心血來潮仿寫了一個單機版的:




















































































看起來也似模似樣了呵呵。至少比Letters 單機版要有可玩性,更不要說體積只有它的幾十分只一了。
直接拷貝下來保存為html文件,或者點擊這里下載。在IE6和Firefox1.5下面同過。
運行效果如下: