php实现贪吃蛇小游戏
2018-10-15 17:57
阅读:580
贪吃蛇游戏是经典手机游戏,既简单又耐玩。通过控制蛇头方向吃蛋,使得蛇变长,从而获得积分。在诺基亚时代,风靡整个手机界,今天我们来看看另类的,如何使用php来实现贪吃蛇小游戏
废话不多说,代码奉上:
control.php
<!DOCTYPE html> <html> <head> <meta charset=utf-8/> </head> <body> <a href=control.php?a=up>上<a/><?session_start(); echo $_SESSION[count];?>分<br/> <a href=control.php?a=left>左<a/><a href=control.php?a=right>右<a/><br/> <a href=control.php?a=down>下<a/> <? 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=control.php name=top/> <frame src=./tcs.php name=menu/> </frameset> </html>tcs.php
<?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); ?>上一篇:php如何实现不借助IDE快速定位行数或者方法定义的文件和位置
下一篇:The specified CGI application misbehaved by not returning a complete set of HTTP headers
评论
亲,登录后才可以留言!