149 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			149 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3c.org/1999/xhtml"><head><title>Multi Gravity</title><style type='text/css'>
 | |
| body {
 | |
|   margin:0;
 | |
|   padding:0;
 | |
|   overflow:hidden;
 | |
|   }
 | |
| 
 | |
| div {
 | |
|   position:absolute;
 | |
|   left:-50px;
 | |
|   top:-50px;
 | |
|   width:50px;
 | |
|   height:50px;
 | |
|   }
 | |
| 
 | |
| #l {
 | |
|   top:0;
 | |
|   left:0;
 | |
|   height:100%;
 | |
|   width:100%;
 | |
|   z-index:2;
 | |
|   background:transparent;
 | |
|   }
 | |
| </style><script type='text/javascript'>
 | |
| paused=false
 | |
| oknbox=true
 | |
| 
 | |
| function getwh() {
 | |
| if (self.innerHeight) {
 | |
| h=self.innerHeight
 | |
| w=self.innerWidth
 | |
| }
 | |
| else if (document.documentElement && document.documentElement.clientHeight) {
 | |
| h=document.documentElement.clientHeight
 | |
| w=document.documentElement.clientHeight
 | |
| }
 | |
| else if (document.body) {
 | |
| h=document.body.clientHeight
 | |
| w=document.body.clientWidth
 | |
| }
 | |
| }
 | |
| 
 | |
| function gravity() {
 | |
| getwh()
 | |
| ah=h-50
 | |
| aw=w-50
 | |
| d=0
 | |
| for (i=0;i<num;i++) {
 | |
| if (y[i]<ah || spd[i]>-1) {
 | |
| if (f[i]) {
 | |
| spd[i]+=verticalspeed[i]
 | |
| y[i]+=spd[i]
 | |
| if (y[i]<ah) b[i].style.top=y[i]+"px"
 | |
| else {
 | |
| b[i].style.top=ah+"px"
 | |
| spd[i]-=verticalspeed[i]
 | |
| f[i]=false
 | |
| horizontalspeed[i]=horizontalspeed[i]/1.1
 | |
| }
 | |
| }
 | |
| else {
 | |
| spd[i]-=verticalspeed[i]
 | |
| y[i]-=spd[i]
 | |
| if (y[i]>ah) y[i]=ah
 | |
| if (spd[i]>0 && y[i]<=ah) b[i].style.top=y[i]+"px"
 | |
| else f[i]=true
 | |
| }
 | |
| if (r[i]) {
 | |
| x[i]+=horizontalspeed[i]
 | |
| if (x[i]<aw) b[i].style.left=x[i]+"px"
 | |
| else {
 | |
| r[i]=false
 | |
| horizontalspeed[i]=horizontalspeed[i]/1.2
 | |
| }
 | |
| }
 | |
| else {
 | |
| x[i]-=horizontalspeed[i]
 | |
| if (x[i]>0) b[i].style.left=x[i]+"px"
 | |
| else {
 | |
| r[i]=true
 | |
| horizontalspeed[i]=horizontalspeed[i]/1.2
 | |
| }
 | |
| }
 | |
| }
 | |
| else {
 | |
| horizontalspeed[i]=0
 | |
| d++
 | |
| }
 | |
| }
 | |
| document.title="Multi Gravity :: "+d+"/"+num
 | |
| t=setTimeout("gravity()",50)
 | |
| }
 | |
| 
 | |
| function newbox() {
 | |
| if (oknbox) {
 | |
| getwh()
 | |
| y[num]=-50
 | |
| x[num]=Math.floor(Math.random()*(w-49))
 | |
| spd[num]=0
 | |
| verticalspeed[num]=2
 | |
| horizontalspeed[num]=15
 | |
| f[num]=true
 | |
| rol=Math.floor(Math.random()*2)
 | |
| if (rol==0) r[num]=true
 | |
| else r[num]=false
 | |
| 
 | |
| b[num]=document.createElement("div")
 | |
| b[num].style.top=y[num]+"px"
 | |
| b[num].style.left=x[num]+"px"
 | |
| b[num].style.backgroundColor="rgb("+(Math.floor(Math.random()*100)+77)+","+(Math.floor(Math.random()*100)+77)+","+(Math.floor(Math.random()*100)+77)+")"
 | |
| document.body.appendChild(b[num])
 | |
| num++
 | |
| }
 | |
| nt=setTimeout("newbox()",1000)
 | |
| }
 | |
| 
 | |
| function pauseboxes() {
 | |
| if (!paused) {
 | |
| paused=true
 | |
| clearTimeout(t)
 | |
| oknbox=false
 | |
| }
 | |
| else {
 | |
| paused=false
 | |
| gravity()
 | |
| oknbox=true
 | |
| }
 | |
| }
 | |
| 
 | |
| function load() {
 | |
| l=document.createElement("div")
 | |
| l.id="l"
 | |
| l.onclick=pauseboxes
 | |
| document.body.appendChild(l)
 | |
| y=new Array()
 | |
| x=new Array()
 | |
| b=new Array()
 | |
| spd=new Array()
 | |
| verticalspeed=new Array()
 | |
| horizontalspeed=new Array()
 | |
| f=new Array()
 | |
| r=new Array()
 | |
| num=0
 | |
| newbox()
 | |
| gravity()
 | |
| }
 | |
| 
 | |
| window.onload=load
 | |
| </script></head><body></body></html> | 
