php实现贪吃蛇小游戏
php  /  管理员 发布于 7年前   578
贪吃蛇游戏是经典手机游戏,既简单又耐玩。通过控制蛇头方向吃蛋,使得蛇变长,从而获得积分。在诺基亚时代,风靡整个手机界,
今天我们来看看另类的,如何使用php来实现贪吃蛇小游戏
废话不多说,代码奉上:
control.php
<!DOCTYPE html><html>
<head>
<meta charset="utf-8"/> </head>
<body>
上
<?php
session_start();
echo $_SESSION['count'];?>分左 右 下
switch($_GET['a']){
case "up";
$_SESSION['con']="up";
break;
case "down":
$_SESSION['con']="down";
break;
case "left":
$_SESSION['con']="left";
break;
case "right":
$_SESSION['con']="right";
break;
}
?>
</body>
</html>
main.php
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-9"/>
<meta http-equiv="refresh" content="0.5"/>
</head>
<frameset rows="95,*" border="1" noresize >
<frame src="https:/article/control.php" name="top"/>
<frame src="https:/article/./tcs.php" name="menu"/>
</frameset></html></pre><p>
tcs.php
</p><pre>
<?php
session_start();
$_SESSION['ud'];
$_SESSION['lr'];
$im = imagecreatetruecolor(300,300);
$blue = imagecolorallocate($im,0,0,255);
$red = imagecolorallocate($im,255,0,0);
$c1 = imagecolorallocate($im,200,200,200);
imagefill($im,0,0,$c1);
if(!isset($_SESSION['a'])&&!isset($_SESSION['b'])){
$_SESSION['a'] =rand(0,290);
$_SESSION['b'] =rand(0,290);
}
if(isset($_SESSION['a'])&&isset($_SESSION['b'])){
imagerectangle($im,$_SESSION['a'],$_SESSION['b'],$_SESSION['a']+10,$_SESSION['b']+10,$red);
}
if(abs(($_SESSION['lr']-$_SESSION['a']))<=5&&abs($_SESSION['ud']-$_SESSION['b'])<=5){
unset($_SESSION['a']);
unset($_SESSION['b']);
$_SESSION['count']++;
}
switch($_SESSION['con']){
case "up";
if($_SESSION['ud']>10)
$_SESSION['ud']-=10;
else
$_SESSION['ud']=0;
break;
case "down":
if($_SESSION['ud']<=280)
$_SESSION['ud']+=10;
else
$_SESSION['ud']=290;
break;
case "left":
if($_SESSION['lr']>10)
$_SESSION['lr']-=10;
else
$_SESSION['lr']=0;
break;
case "right":
if($_SESSION['lr']<=280)
$_SESSION['lr']+=10;
else
$_SESSION['lr']=290;
break;
}
for($i=0;$i<=$_SESSION['count'];$i++){
switch($_SESSION['con']){
case "up":
$_SESSION['udnext'] = $_SESSION['ud']+10*$i;
imagerectangle($im,$_SESSION['lr'],$_SESSION['udnext'],$_SESSION['lr']+10,$_SESSION['udnext']+10,$blue);
// imagerectangle($im,$_SESSION['lr'],$_SESSION['udtime'][time()-$i],$_SESSION['lr']+10,$_SESSION['udtime'][time()-$i]+10,$blue);
break;
case "down":
$_SESSION['udnext'] = $_SESSION['ud']-10*$i;
imagerectangle($im,$_SESSION['lr'],$_SESSION['udnext'],$_SESSION['lr']+10,$_SESSION['udnext']+10,$blue);
// imagerectangle($im,$_SESSION['lr'],$_SESSION['udtime'][time()+$i],$_SESSION['lr']+10,$_SESSION['udtime'][time()+$i]+10,$blue);
break;
case "left":
$_SESSION['lrnext'] = $_SESSION['lr']+10*$i;
imagerectangle($im,$_SESSION['lrnext'],$_SESSION['ud'],$_SESSION['lrnext']+10,$_SESSION['ud']+10,$blue);
// imagerectangle($im,$_SESSION['lrtime'][time()-$i],$_SESSION['ud'],$_SESSION['lrtime'][time()-$i]+10,$_SESSION['ud']+10,$blue);
break;
case "right":
$_SESSION['lrnext'] = $_SESSION['lr']-10*$i;
imagerectangle($im,$_SESSION['lrnext'],$_SESSION['ud'],$_SESSION['lrnext']+10,$_SESSION['ud']+10,$blue);
// imagerectangle($im,$_SESSION['lrtime'][time()+$i],$_SESSION['ud'],$_SESSION['lrtime'][time()+$i]+10,$_SESSION['ud']+10,$blue);
break;
}
//imagerectangle($im,$_SESSION['lr'],$_SESSION['ud'],$_SESSION['lr']+10,$_SESSION['ud']+10,$blue);
}
header("Content-Type: image/jpeg");
imagejpeg($im);
imagedestroy($im); ?>
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号