Backgammon est un jeu de réflexion que tout le monde connaît très bien, et il existe de nombreux logiciels de jeu associés. Ici, je vous présente solennellement une nouvelle version purement en ligne de Backgammon. Elle utilise ASP comme environnement de développement, elle est donc très populaire sur Internet. . Il n'est pas nécessaire de télécharger un logiciel client pour jouer des batailles, tant que vous disposez d'un navigateur. Vous pouvez également jouer à ce jeu sur un réseau local.
Pour ASP, je ne veux pas trop expliquer. J'en ai déjà beaucoup dit dans les articles précédents.
Le processus du jeu est le suivant : nous nous connectons d'abord, puis nous pouvons choisir le champ de bataille. Il y a cinq champs de bataille tels que Vénus, Jupiter, Mercure, Mars et Saturne. Si vous pensez que vous êtes un maître, vous pouvez choisir. Vénus, sinon vous pouvez choisir les autres dans l'ordre. La planète sert de champ de bataille. S'il n'y a pas de challenger sur cette planète, vous devez vous inscrire en tant que challenger, et d'autres pourront alors rivaliser avec vous. Bien sûr, si la guerre éclate sur toutes les planètes, il faudra attendre un peu.
Si vous vous connectez en tant que challenger, vous pouvez attendre que d'autres vous combattent. Si vous vous connectez en tant qu'attaquant, vous pouvez rapidement lancer une bataille avec le challenger. Après le début de la bataille, le meneur du ring prend la tête avec les noirs, puis l'attaquant effectue le mouvement, et ainsi de suite. Lorsque la décision finale sera prise, des invites correspondantes apparaîtront.
Le site comporte plusieurs fichiers principaux :
Fichier de connexion Index.asp :
Fichier intermédiaire Index0.asp :
Fichier de correspondance Match.asp :
Back0.jpg white0.jpg black0.jpg Les fichiers graphiques utilisés au milieu font respectivement référence à l'échiquier, aux pierres blanches et aux pierres noires, comme indiqué ci-dessous :
Lors de l'initialisation du programme, divisez l'échiquier en plusieurs tables, placez-y l'image de fond pour former un échiquier, puis après avoir placé une pièce d'échecs, remplacez l'image par la pièce blanche ou noire correspondante.
Jetons d'abord un œil au fichier de connexion :
<%@ Langage=VBScript %>
<HTML>
<TÊTE>
<META NAME=GENERATOR Content=Microsoft Visual Studio 6.0>
<titre>Star Wars : Concours Cinq Fils ! </titre>
</TÊTE>
<CORPS>
<p align=center><font size=6>Star Wars</font></P>
<bordure du tableau=1 largeur=80% align=centre>
<tr><td>Planète</td><td>Challenge</td><td>Battle</td><td>Attack</td></tr>
<tr>
<td>Vénus</td>
<td>
<%
si application(first1)= alors
%>
<form action=index0.asp?flag=First1 method=post>
<INPUT id=text1 nom=txtFirst1 taille=10><INPUT id=submit1 nom=submit1
type=valeur de soumission=Entrée>
</formulaire>
<%
autre
application réponse.write (first1)
finir si
%>
</td>
<td>Guerre</td>
<td>
<%
si application (seconde1) = alors
%>
<form action=index0.asp?flag=second1 method=post>
<INPUT id=text1 nom=txtSecond1 taille=10><INPUT id=submit1
nom=soumettre1 type=valeur de soumission=Entrée>
</formulaire>
<%
autre
application réponse.write (Deuxième1)
finir si
%>
</td>
</tr>
<tr>
<td>Jupiter</td>
<td>
<%
si application(first2)= alors
%>
<form action=index0.asp?flag=First2 method=post>
<INPUT id=text1 nom=txtFirst2 taille=10><INPUT id=submit1 nom=submit1
type=valeur de soumission=Entrée>
</formulaire>
<%
autre
application réponse.write (first2)
finir si
%>
</td>
<td>Guerre</td>
<td>
<%
si application(seconde2)= alors
%>
<form action=index0.asp?flag=second2 method=post>
<INPUT id=text1 nom=txtSecond2 taille=10><INPUT id=submit1
nom=soumettre1 type=valeur de soumission=Entrée>
</formulaire>
<%
autre
application réponse.write (Second2)
finir si
%>
</td>
</tr>
<tr>
<td>Vénus</td>
<td>
<%
si application(first3)= alors
%>
<form action=index0.asp?flag=First3 method=post>
<INPUT id=text1 nom=txtFirst3 taille=10><INPUT id=submit1 nom=submit1
type=valeur de soumission=Entrée>
</formulaire>
<%
autre
application réponse.write (first3)
finir si
%>
</td>
<td>Guerre</td>
<td>
<%
si application(seconde3)= alors
%>
<form action=index0.asp?flag=second3 method=post>
<INPUT id=text1 nom=txtSecond3 taille=10><INPUT id=submit1
nom=soumettre1 type=valeur de soumission=Entrée>
</formulaire>
<%
autre
application réponse.write (Second3)
finir si
%>
</td>
</tr>
<tr>
<td>Vénus</td>
<td>
<%
si application(first4)= alors
%>
<form action=index0.asp?flag=First4 method=post>
<INPUT id=text1 nom=txtFirst4 taille=10><INPUT id=submit1 nom=submit1
type=valeur de soumission=Entrée>
</formulaire>
<%
autre
application réponse.write (first4)
finir si
%>
</td>
<td>Guerre</td>
<td>
<%
si application(seconde4)= alors
%>
<form action=index0.asp?flag=second4 method=post>
<INPUT id=text1 nom=txtSecond4 taille=10><INPUT id=submit1
nom=soumettre1 type=valeur de soumission=Entrée>
</formulaire>
<%
autre
application réponse.write (Second4)
finir si
%>
</td>
</tr>
<tr>
<td>Vénus</td>
<td>
<%
si application(first5)= alors
%>
<form action=index0.asp?flag=First5 method=post>
<INPUT id=text1 nom=txtFirst5 taille=10><INPUT id=submit1 nom=submit1
type=valeur de soumission=Entrée>
</formulaire>
<%
autre
application réponse.write (first5)
finir si
%>
</td>
<td>Guerre</td>
<td>
<%
si application(seconde5)= alors
%>
<form action=index0.asp?flag=second5 method=post>
<INPUT id=text1 nom=txtSecond5 taille=10><INPUT id=submit1
nom=soumettre1 type=valeur de soumission=Entrée>
</formulaire>
<%
autre
application réponse.write (Second5)
finir si
%>
</td>
</tr>
</tableau>
</CORPS>
</HTML>
Ce fichier n'a pas besoin d'être trop expliqué, c'est juste un grand tableau dans lequel tout le monde peut accéder à partir de là. Si un certain emplacement a été utilisé, il deviendra le nom du héros et les connexions répétées ne sont pas autorisées. Entrez après vous être connecté
index0.asp, il s'agit d'un fichier d'échange intermédiaire, dans lequel certaines variables sont traitées et attribuées, puis match.asp est saisi pour le match officiel. Jetons un coup d'œil au contenu de index0.asp :
<%@ Langage=VBScript %>
<%
si Request.Form(txt & request.querystring(flag))<> alors
'réponse.écrivez !
session(nice)=Request.Form(txt & request.querystring(flag))
'response.write session (belle) &
'application réponse.write (request.querystring (drapeau))
si application(request.querystring(flag))= alors
application (request.querystring (flag)) = session (nice)
session (classe) = droite (request.querystring (drapeau), 1)
si left(request.querystring(flag),1)=f alors
application (session (nice)) = faux
elseif left(request.querystring(flag),1)=s alors
application (session (nice)) = faux
application (application (première et session (classe))) = vrai
finir si
Réponse.Redirection match.asp
finir si
finir si
%>
<HTML>
</HTML>
Dans ce programme, session (nice) est utilisée pour enregistrer votre nom de connexion. Il sera utilisé dans de nombreux processus futurs pour distinguer de nombreux utilisateurs. Si vous entrez depuis la position du maître de piste, vos droits sont
d'abord, sinon, utilisez session(class) pour enregistrer dans quel champ de bataille il se trouve, Jinmu
L'eau, le feu et la terre sont représentés respectivement par 1, 2, 3, 4 et 5, car plusieurs champs de bataille peuvent se battre en même temps. S'ils ne peuvent pas être distingués correctement, cela peut conduire au chaos. application(session(nice)) est une variable logique qui utilise true ou false pour indiquer si vous pouvez jouer aux échecs. Si c'est faux, vous devez en attendre un. Si c'est vrai, vous pouvez jouer aux échecs. Ce n'est qu'après que deux personnes sont entrées sur un champ de bataille que le challenger peut jouer aux échecs, et seulement après que le challenger a produit une pièce, l'attaquant peut jouer aux échecs. Une fois que vous êtes prêt, entrez dans le champ Concours. Veuillez consulter le fichier match.asp.
<html>
<tête>
<meta http-equiv=Content-Type content=text/html; charset=gb2312>
<meta name=GENERATOR content=Microsoft FrontPage 4.0>
<meta name=ProgId content=FrontPage.Editor.Document>
<META http-equiv=refresh content=3>
<titre>Concours Renju...</titre>
</tête>
<%
Response.Write Challenger : & application (première & session (classe))
& attaque : & application (deuxième & session
(classe))
si Request.QueryString(pos)<> alors
application (pos & session (class) & Request.QueryString (pos))
= vrai
finir si
%>
<corps>
<%
'Réponse.Écrire une application (aaa)
si application(first & session(class))=session(nice) alors
couleur = noir
si Request.QueryString(pos)<> alors
si session(dernière)= alors session(dernière)=abc
si session (dernière) <> Request.QueryString (pos) alors
application (application (première et session (classe))) = faux
si application (seconde et session (classe)) <> alors application
(application (seconde et session (classe))) = vrai
session (dernière) = Request.QueryString (pos)
FIN SI
finir si
autre
si application(seconde & session(class))=session(nice) alors
couleur = blanc
si Request.QueryString(pos)<> alors
'si session(dernière)= alors session(dernière)=abc
si session (dernière) <> Request.QueryString (pos) alors
application (application (première et session (classe))) = vrai
application(application(seconde et session(classe)))=false
session (dernière) = Request.QueryString (pos)
FIN SI
finir si
autre
si application (seconde & session (classe)) = alors
application (seconde et session (classe)) = session (nice)
couleur = blanc
si Request.QueryString(pos)<> alors
si session(dernière)= alors session(dernière)=abc
si session (dernière) <> Request.QueryString (pos) alors
application (application (première et session (classe))) = vrai
application(application(seconde et session(classe)))=false
session (dernière) = Request.QueryString (pos)
FIN SI
finir si
autre
couleur=
finir si
finir si
finir si
Response.Write <table width=400 height=400 border=0 cellpacing=0
remplissage de cellules = 0>
pour i=1 à 16
Réponse.Write <tr>
pour j=1 à 16
si application(pos & session(class) & cstr(i) & _ & cstr(j))=
alors
application (couleur & session (classe) & _ & Request.QueryString
(pos))=couleur
Response.Write <td largeur=25 hauteur=25>
'response.write application(application(première et session(classe)))
si application (session (nice)) = true alors
réponse.write <a href=match.asp?pos= & cstr(i) & _ & cstr(j)
& ><img border=0 src=back0.jpg largeur=25 hauteur=25></a>
autre
réponse.write <img border=0 src=back0.jpg width=25 height=25>
finir si
réponse.write </td>
autre
Response.Write <td largeur=25 hauteur=25><img border=0 src= &
application(couleur & session(classe) & _ & cstr(i) & _ & cstr
(j)) & 0.jpg largeur=25 hauteur=25></td> & chr(13)
finir si
suivant
Réponse.Write </tr>
suivant
Réponse.Write </table>
'Juge gagnant ou perdant
si application(first & session(class))=session(nice) alors
m=noir
h=blanc
autre
h=noir
m=blanc
finir si
'Jugement horizontal-
pour i=1 à 15
gagner = faux
perte = faux
cinq_moi=0
cinq_he=0
pour j=1 à 15
si application(couleur & session(classe) & _ & cstr(i) & _ & cstr
(j))=m alors
cinq_moi=cinq_moi+1
cinq_he=0
application elseif (couleur & session (classe) & _ & cstr (i) & _ &
cstr(j))=h alors
cinq_moi=0
cinq_he=cinq_he+1
autre
cinq_moi=0
cinq_he=0
finir si
si five_me=5 alors
gagner = vrai
perte = faux
sortie pour
sinon si five_he=5 alors
gagner = faux
perte = vrai
sortie pour
finir si
suivant
si vous gagnez ou perdez, sortez pour
suivant
si je gagne alors
réponse.écrire Vous gagnez !
application (application (première et session (classe))) = faux
application(application(seconde et session(classe)))=false
finir si
si perte alors
réponse.write Désolé, vous avez perdu !
application (application (première et session (classe))) = faux
application(application(seconde et session(classe)))=false
finir si
'Jugement de la direction des colonnes |
pour j=1 à 15
gagner = faux
perte = faux
cinq_moi=0
cinq_he=0
pour i=1 à 15
si application (couleur & session (classe) & _ & cstr (i) & _ & cstr
(j))=m alors
cinq_moi=cinq_moi+1
cinq_he=0
elseif application(couleur & session(classe) & _ & cstr(i) & _ &
cstr(j))=h alors
cinq_moi=0
cinq_he=cinq_he+1
autre
cinq_moi=0
cinq_he=0
finir si
si five_me=5 alors
gagner = vrai
perte = faux
sortie pour
sinon si five_he=5 alors
gagner = faux
perte = vrai
sortie pour
finir si
suivant
si vous gagnez ou perdez, sortez pour
suivant
si je gagne alors
réponse.écrire Vous gagnez !
application (application (première et session (classe))) = faux
application(application(seconde et session(classe)))=false
finir si
si perte alors
réponse.write Désolé, vous avez perdu !
application (application (première et session (classe))) = faux
application(application(seconde et session(classe)))=false
finir si
'Jugement oblique/
pour i=1 à 11
gagner = faux
perte = faux
cinq_moi=0
cinq_he=0
pour j=i+4 à 1 pas -1
si application(couleur & session(classe) & _ & cstr(j) & _ & cstr
(i+5-j))=m alors
cinq_moi=cinq_moi+1
cinq_he=0
application elseif (couleur & session (classe) & _ & cstr (j) & _ &
cstr(i+5-j))=h alors
cinq_moi=0
cinq_he=cinq_he+1
autre
cinq_moi=0
cinq_he=0
finir si
si five_me=5 alors
gagner = vrai
perte = faux
sortie pour
sinon si five_he=5 alors
gagner = faux
perte = vrai
sortie pour
finir si
suivant
si vous gagnez ou perdez, sortez pour
suivant
si je gagne alors
réponse.écrire Vous gagnez !
application (application (première et session (classe))) = faux
application(application(seconde et session(classe)))=false
finir si
si perte alors
réponse.write Désolé, vous avez perdu !
application (application (première et session (classe))) = faux
application(application(seconde et session(classe)))=false
finir si
'Jugement oblique/
pour i=1 à 11
gagner = faux
perte = faux
cinq_moi=0
cinq_he=0
pour j=12-i à 15
si application (couleur & session (classe) & _ & cstr (13-ij) & _
& cstr(j))=m alors
cinq_moi=cinq_moi+1
cinq_he=0
application elseif (couleur & session (classe) & _ & cstr (13-ij)
& _ & cstr(j))=h alors
cinq_moi=0
cinq_he=cinq_he+1
autre
cinq_moi=0
cinq_he=0
finir si
si five_me=5 alors
gagner = vrai
perte = faux
sortie pour
sinon si five_he=5 alors
gagner = faux
perte = vrai
sortie pour
finir si
suivant
si vous gagnez ou perdez, sortez pour
suivant
si je gagne alors
réponse.écrire Vous gagnez !
application (application (première et session (classe))) = faux
application(application(seconde et session(classe)))=false
finir si
si perte alors
réponse.write Désolé, vous avez perdu !
application (application (première et session (classe))) = faux
application(application(seconde et session(classe)))=false
finir si
%>
</corps>
</html>
S'il n'y a pas de pièce d'échecs à un certain point, ajoutez une hyper connexion et placez une pièce d'échecs d'une couleur différente en fonction de la différence entre le challenger et l'attaquant. Le dernier paragraphe est utilisé pour juger des gains et des pertes et est divisé en directions horizontale, colonne et deux diagonales. Vous pouvez le comprendre en regardant le contenu spécifique.
La dernière chose dont je veux parler est global.asa, qui est un fichier principal du site. Afin de laisser la position aux autres après avoir quitté le jeu d'échecs, vous devez ajouter du code à sesison_onend pour le traitement, comme suit :
<langage de script=vbscript runat=serveur>
sous-application_onstart
session.timeout=1
fin du sous
sous session_onstart
si application(num)= alors
application (numéro) = 0
finir si
application(num)=application(num)+1
fin du sous
</script>
<langage de script=vbscript runat=serveur>
sous session_onend
si application(num)= alors
application (numéro) = 0
finir si
application (num) = application (num) -1
si application (first1) = session (nice) alors
application(premier1)=
sinon si application (second1) = session (nice) alors
application(seconde1)=
sinon si application (first2) = session (nice) alors
application(premier2)=
sinon si application (second2) = session (nice) alors
application(seconde2)=
sinon si application (first3) = session (nice) alors
application(premier3)=
sinon si application (second3) = session (nice) alors
application(seconde3)=
sinon si application (first4) = session (nice) alors
application(premier4)=
sinon si application (second4) = session (nice) alors
application(seconde4)=
sinon si application (first5) = session (nice) alors
application(premier5)=
sinon si application (second5) = session (nice) alors
application(seconde5)=
finir si
pour i=1 à 15
pour j=1 à 15
application(couleur & session(classe) & _ & cstr(i) & _ & cstr
(J))=
application(pos & session(class) & cstr(i) & _ & cstr(j))=
suivant
suivant
application (session (nice)) =
fin du sous
</script>
Ci-dessus sont quelques fichiers principaux, vous pouvez essayer. Quoi, tu veux jouer au Go ? Changez simplement l'échiquier.