Maison >développement back-end >tutoriel php >Comment écrire un jeu autonome Snake en PHP
PHP peut écrire des jeux autonomes. La méthode d'implémentation est la suivante : créez d'abord un fichier « control.php » et « main.php » puis créez un fichier « tcs.php » ; via l'emplacement d'enregistrement de la session. Jouez simplement de manière autonome.
Le PHP peut-il être utilisé pour écrire des jeux ? Il doit y avoir des amis qui se posent de telles questions. La réponse est oui. Même si PHP manque encore d'écriture de jeux à grande échelle, il est encore possible d'écrire quelques petits jeux autonomes, comme des jeux occasionnels et des jeux intellectuels ! Cet article partage avec vous le code d'utilisation de PHP pour implémenter le jeu autonome Snake. L'idée principale est d'enregistrer la localisation au fil de la session. Il faut dire que l'idée est très astucieuse et je la recommande à tout le monde.
Snake Game est un jeu pour téléphone mobile autonome très classique, à la fois simple et jouable ; son gameplay simple et facile à jouer a été apprécié par de nombreux joueurs. Mangez des œufs en contrôlant la direction de la tête du serpent pour l'allonger et gagner des points. À l'ère de Nokia, il était populaire dans l'ensemble de l'industrie de la téléphonie mobile. Aujourd'hui, nous allons examiner l'alternative, comment utiliser PHP pour implémenter le jeu Snake
Sans plus tarder, voici le code :
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); ?>
Résumé : ce qui précède est l'intégralité du contenu. de cet article, j'espère qu'il pourra être utile à tout le monde. L'apprentissage aide.
Recommandations associées :
php Implémenter le développement WeChat pour obtenir des informations sur les utilisateurs
phpComment implémenter l'applet de code de vérification
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!