|
发表于 13-6-2006 01:10 AM
|
显示全部楼层
你必须先学好 scripting langauge
我朋友的 Dota Homer 是一个很成功的例子 |
|
|
|
|
|
|
|
发表于 21-7-2006 10:34 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 22-7-2006 12:45 AM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 24-7-2006 04:43 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 24-7-2006 04:59 PM
|
显示全部楼层
你愿意写,小章鱼就愿意玩
只是为何不用 Flash ? |
|
|
|
|
|
|
|
发表于 30-7-2006 08:14 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 30-7-2006 08:16 PM
|
显示全部楼层
对不起火弧的用户。。这要用IE/maxthon 的。。
- <style>
- .bg
- {
- background-color:#000000;
- }
- .info
- {
- position:absolute;
- color:#ffffff;
- background-color:#000000;
- font-size:5pt;
- width:120px;
- height:20px;
- border-style:none;
- }
- .star
- {
- color:#ffffff;
- position:absolute;
- left:34 ;
- top:34;
- font-size:1pt;
- }
- .player
- {
- position:absolute;
- color:#ffffff;
- font-size:32pt;
- font-family:Wingdings 3;
-
- }
- .bullet
- {
- position:absolute;
- color:#ff0000;
- font-size:12pt;
-
- }
- .enemy
- {
- position:absolute;
- color:#775544;
- font-family:Wingdings;
- font-size:32pt;
- }
- .hpbar
- {
- position:absolute;
- left:20px;
- top:520px;
- height:5px;
- width:200px;
- background-color:#990000;
- font-size:1pt;
- }
- .measurer
- {
- position:absolute;
- color:#0000ff;
- z-index:100;
- }
- </style>
- <div class=bg id=bg />
- <input type=text id=info class=info />
- <div class=info style=left:20px;top:500px;font-size:10pt;>Score: </div>
- <input type=text id=score class=info style=left:120px;top:500px;font-size:10pt; value=0 />
- <div class=player id=player>Y</div>
- <div class=hpbar id=hpbar></div>
- <body style="background-color:#444455;"/>
- <div class=measurer id='m1'>.</div>
- <div class=measurer id='m2'>.</div>
- <script>
- var bgwidth=1000,bgheight=520; //Background
- var starmax=20; //Star particle number
- var sx=new Array(); var sy=new Array(); //Star array
- var xmouse=250,ymouse=250; //Mouse position
- var px=250,py=250; //player position
- var vx=0.2,vy=0.2; // player velocity
- var bulletmax=9; //bullet number
- var bx=new Array(); var by=new Array(); //Bullet array
- var firingindex=0;
- var enemymax=20; //enemy number
- var ex=new Array(); var ey=new Array(); //enemy array
- var egethit=new Array();
- var score=0;
- var currentlevel=1;
- var hp=200;
- var gettinghit=0;
- var timecounter=0;var timecounter2=0;
- var timer1=setInterval("movestar()",41);
- var timer2=setInterval("movetarget()",9);
- var timer3;
- var timer4=setInterval("animateenemy()",10);
- var timer5;
- var timer6;
- initialize();
- function initialize()
- {
- //Star
- for (var i=0;i<starmax;i++)
- {
- document.write("<div class=star id=star"+i+" >.</div>" );
- }
-
- //Bullet
- for (var i=0;i<bulletmax;i++)
- {
- document.write("<div class=bullet id=bullet"+i+" style=top:-50px>|</div>" );
- bx[i]=0; by[i]=0;
- }
-
- //Enemy
- for (var i=0;i<enemymax;i++)
- {
- document.write("<div class=enemy id=enemy"+i+" style=top:-50px>i</div>" );
- ex[i]=Math.random()*bgwidth;
- ey[i]=((Math.random()*bgheight)/5) - 150;
- egethit[i]=0;
-
- }
-
- document.getElementById('bg').style.width=bgwidth;
- document.getElementById('bg').style.height=bgheight;
- distributestar();
-
- }
- function distributestar()
- {
- for (var i=0;i<starmax;i++)
- {
- sx[i]=Math.random()*bgwidth;
- sy[i]=Math.random()*bgheight;
-
- var obj=document.getElementById('star'+i);
- obj.style.left = sx[i];
- obj.style.top = sy[i];
- }
- }
- function movestar()
- {
-
- for (var i=0;i<starmax;i++)
- {
-
- sy[i]+=i % 5+1;
-
- if (sy[i]>bgheight)
- {
- sx[i]=Math.random()*bgwidth;
- sy[i]=0;
- }
-
- var obj=document.getElementById('star'+i);
- obj.style.left = sx[i];
- obj.style.top =sy[i];
-
- }
- }
- function collision(x1,x2,y1,y2, r1,r2)
- {
- if ( (x1+r1)>(x2-r2) && (x1-r1)<(x2+r2) && (y1+r1)>(y2-r2) && (y1-r1)<(y2+r2) )
- {
- return 1;
- }
- return 0;
- }
- function movebullet()
- {
- for (var i=0;i<bulletmax;i++)
- {
- if (by[i]>-15)
- {
- by[i]-=5;
- var obj=document.getElementById('bullet'+i);
- obj.style.left = bx[i];
- obj.style.top =by[i];
-
-
- for( j=0;j<enemymax;j++)
- {
- if (collision(bx[i],ex[j],by[i],ey[j],5,25) &&!egethit[j] ) //bullet hit enemy
- {
- egethit[j]=1;
- enemygethit(j,i);
-
- }
- }
-
- }
- }
-
- if (by[firingindex-1]<=-15)
- {
- clearInterval(timer3);
- firingindex=0;
- }
- }
- function fire()
- {
- if (firingindex==0)
- {
- clearInterval(timer3);
- timer3=setInterval("movebullet()",4);
- }
-
- bx[firingindex]=px;
- by[firingindex]=py;
- var obj=document.getElementById('bullet'+firingindex);
- obj.style.left = bx[firingindex];
- obj.style.top =by[firingindex];
- firingindex+=1;
- firingindex=firingindex%bulletmax;
- }
- function getxy()
- {
-
- var p=event.clientX + " " +event.clientY;
-
-
- document.getElementById('info').value=p;
-
- xmouse=event.clientX;
- ymouse=event.clientY;
- }
- function movetarget()
- {
-
- vx-=(px-xmouse)/(bgwidth);
- vy-=(py-ymouse)/(bgheight);
-
- vx*=0.97;
- vy*=0.97;
-
-
- px+=vx;
- py+=vy;
-
-
- var player=document.getElementById('player');
- player.style.left=px-15;
- player.style.top=py-15;
-
- }
- function animateenemy()
- {
-
- if (currentlevel==1)
- {
- enemymax=5;
- }
- else if (currentlevel==2)
- {
- enemymax=10;
- }
-
-
-
- for (var i=0;i<enemymax;i++)
- {
-
- ey[i]+=3;
- ex[i]+=Math.random()*4-2;
-
- if (ey[i]>bgheight)
- {
- ex[i]=Math.random()*bgwidth;
- ey[i]=0;
- }
-
- //Collision with enemy player
- if (collision(ex[i],px,ey[i],py,15,15) && !gettinghit )
- {
- gettinghit=1;
- timer5 = setInterval("playergethit()",50);
- }
-
-
- var obj=document.getElementById('enemy'+i);
- obj.style.left = ex[i]-15;
- obj.style.top =ey[i]-10;
-
-
- }
-
-
- }
- function playergethit()
- {
- timecounter+=1;
- if (timecounter % 2 ==0)
- {
- document.getElementById('player').style.color="#ff0000"
- hp-=5;
- }
- else
- {
- document.getElementById('player').style.color="#ffffff"
- }
-
- if (timecounter>10)
- {
- timecounter=0;
- clearInterval(timer5);
- gettinghit=0;
-
- }
-
- if (hp<=0)
- {
- clearInterval(timer5);
- gameover();
- }
- else
- {
- document.getElementById("hpbar").style.width=hp;
-
- }
-
- }
- function enemygethit(eindex,bindex)
- {
-
- timecounter2=0;
- clearInterval(timer6);
- egethit[eindex]=0;
- by[bindex]=-11;
- ex[eindex]=Math.random()*bgwidth;
- ey[eindex]=-50;
-
- document.getElementById('bullet'+bindex).style.top=by[bindex];
-
- }
- function gameover()
- {
- alert("Game OVER!!");
- gettinghit=0;
- document.getElementById('player').style.color="#ffffff"
- }
- document.onmouseup = fire;
- document.onmousemove=getxy;
- </script>
复制代码
[ 本帖最后由 tensaix2j 于 30-7-2006 08:19 PM 编辑 ] |
|
|
|
|
|
|
|
发表于 2-8-2006 09:56 PM
|
显示全部楼层
tensaix2j 赞!很有速度感。
小章鱼自愧不如……
可是分数遗漏了吧?呵呵 |
|
|
|
|
|
|
|
发表于 9-3-2007 04:35 PM
|
显示全部楼层
huh?
原帖由 tensaix2j 于 30-7-2006 08:16 PM 发表
对不起火弧的用户。。这要用IE/maxthon 的。。
<style>
.bg
{
background-color:#000000;
}
.info
{
position:absolute;
color:#ffffff;
background-color:#000000;
font-size:5 ...
这个能CONNECT LAN 的吗?小妹需要做一个别NETWORKING PROJECT, 各位有甚么IDEA吗? |
|
|
|
|
|
|
|
发表于 29-6-2007 11:03 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 29-6-2007 11:25 PM
|
显示全部楼层
原帖由 exiang 于 13-6-2006 01:10 AM 发表 
你必须先学好 scripting langauge
我朋友的 Dota Homer 是一个很成功的例子
Dota Homer? 有没有Screen Shot ?? 没办法加入玩。
最近看了一个简单的Online Game, 用Web Browser玩的。是一个不错的Web Base游戏。
travian.com
[ 本帖最后由 belon_cfy 于 29-6-2007 11:30 PM 编辑 ] |
|
|
|
|
|
|
| |
本周最热论坛帖子
|