PUBLICIDADE
Este código tem nota
9

Autor

marinheiro

Wellington Marinheiro

membro deste maio de 2008

Tags

Compartilhe e guarde

  • Rec6
  • StumbleUpon
  • ueba
  • linkk
  • dihitt
  • linkloko
  • linkto
  • Technorati
  • Simpy
  • del.icio.us
  • Faves: Fave It!

PUBLICIDADE

Enquete

Como você fará para aprender HTML5 / CSS3?

Jogo da forca em ASP


Jogo da forca completo com seleção de nivel de dificuldade (facil, medio e difícil).
Bem interessante.
<%
Function NovaPalavra()
	session("chutes")=""
	If request.form("nome")="" Then
		session("jogador")= "Anônimo"
		session("nivel") =  request.form("nivel")
	Else
		session("jogador")=request.form("nome")
		session("nivel") =  request.form("nivel")
	End if
	If request.queryString("Nome")<> "" Then 
		session("jogador")=request.queryString("Nome")
		session("nivel") =  request.queryString("niv")

	End if
	arq = session("nivel") & ".txt"
	
	Randomize()
	Dim objFSO, objFile, I, iRandom, tmpalav
	Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
	Set objFile = objFSO.OpenTextFile(Server.MapPath(arq))
	qlin=0
	do while Not objFile.AtEndOfStream
		qlin=qlin+1
		objFile.SkipLine
	loop
'	response.write qlin
	iRandom = Int(qlin * Rnd + 1)
	' abre novamente no inicio
	Set objFile = objFSO.OpenTextFile(Server.MapPath(arq))
	For I = 1 to iRandom - 1
		objFile.SkipLine
	Next
	palav=Split(objFile.ReadLine,";")
	tmpalav = UCase(palav(0))
	session("signif") = palav(1)
	objFile.Close
	Set objFile = Nothing
	Set objFSO = Nothing

	NovaPalavra = tmpalav
End Function 

Function CalculateGuess(stpalav)
	Dim sRot
	Dim I
	sRot = ""
	If InStr(1, stpalav, Chr(32), 1) Or InStr(1, stpalav, Chr(45), 1) Then
		For I = 1 to Len(stpalav)
			Select Case Asc(Mid(stpalav, I, 1))
				Case 32
					sRot = sRot & " "
				Case 45
					sRot = sRot & "-"
				Case Else
					sRot = sRot & "_"
			End Select
		Next
	Else
		sRot = String(Len(stpalav), "_")
	End If
	CalculateGuess = sRot
End Function 

Function UpsRots(stpalav, sRot, scarater)
	Dim tmpalav
	tmpalav = ""
	For I = 1 to Len(stpalav)
		If Mid(stpalav, I, 1) = scarater Then
			tmpalav = tmpalav & scarater
		Else
			tmpalav = tmpalav & Mid(sRot, I, 1)
		End If
	Next	
	UpsRots = tmpalav
End Function 


Dim iStat, partidas, erros, acertos
Dim stpalav, sRot
Dim arralet
Dim scarater

Dim tmpalav, I

partidas = Session("partidas")
erros = Session("erros")
acertos = Session("acertos")
iStat = Session("iStat")
stpalav = Session("stpalav")
sRot = Session("Guess")
arralet = Session("arralet")
chutes = Session("chutes")
scarater = Request.QueryString("letter")

chutes=chutes & scarater & "&nbsp;"
session("chutes")=chutes

If scarater = "" or iStat > 6 Then
	stpalav = NovaPalavra()
	sRot = CalculateGuess(stpalav)
	iStat = 0
	arralet = Array(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
Else
	If 65 <= Asc(scarater) AND Asc(scarater) <= 90 Then
		arralet(Asc(scarater) - 65) = 1
	End If
	For n=193 To 195
		If Asc(scarater)=n Then arralet(Asc(scarater)-167)=1 'posicao 26 a 28
	Next
	If Asc(scarater)=199 Then arralet(Asc(scarater)-170)=1 'posicao 29
	If Asc(scarater)=201 Then arralet(Asc(scarater)-171)=1 'posicao 30
	If Asc(scarater)=202 Then arralet(Asc(scarater)-171)=1 'posicao 31
	If Asc(scarater)=205 Then arralet(Asc(scarater)-173)=1 'posicao 32
	If Asc(scarater)=211 Then arralet(Asc(scarater)-178)=1 'posicao 33
	If Asc(scarater)=212 Then arralet(Asc(scarater)-178)=1 'posicao 34
	If Asc(scarater)=213 Then arralet(Asc(scarater)-178)=1 'posicao 35
	If Asc(scarater)=218 Then arralet(Asc(scarater)-182)=1 'posicao 36
	

	' If letter guessed is in the secret stpalav then update guess
	' otherwise increase iStat amount by 1
	If InStr(1, stpalav, scarater, 1) Then
		sRot = UpsRots(stpalav, sRot, scarater)
	Else
		iStat = iStat + 1
	End If
End If
%>
<LINK  href="css/css.css" type="text/css" rel=stylesheet>
<%
response.write "<center><div id='tudo'>"
response.write "<IMG SRC='titulo.gif' BORDER='0' ALT=''><BR>"
response.write "<span class='t2b'>Jogador: " & session("jogador") & "</span> - "
response.write "Nível: " & session("nivel") & "<HR>"
Response.Write "<IMG SRC=""hang_" & iStat + 1 & ".gif"" BORDER=0><BR><BR>" & vbCrLf

For I = 1 to Len(sRot)
	If LCase(Mid(sRot, I, 1)) = " " Then
		Response.Write "<IMG SRC=""lb_" & "~" & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20>&nbsp;"
	Else
		Response.Write "<IMG SRC=""lb_" & LCase(Mid(sRot, I, 1)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20>&nbsp;"
	End If		
Next

Response.Write "<BR><BR>" & vbCrLf

If iStat >=5 Then 	Response.Write "<div id='aviso'>Significado:<B>" & session("signif") &"</B></div>"

If iStat >= 6 Then
	Response.Write "Que pena, voce não acertou. A palavra era: <B>" & UCase(stpalav) & "</B><BR>"
'	Response.Write "<div id='aviso'><B>Significado:</B>&nbsp;" & session("signif") &"</div>"
	Response.Write "Tentativas: " & session("chutes")
	Response.Write "<BR>Jogar novamente? <A HREF='forca.asp?Nome=" & session("jogador") & "&niv=" & session("nivel")& "'>Sim</A>&nbsp;&nbsp;<A HREF='index.asp'>Não</A><BR>"
	iStat = 7
	partidas=partidas+1
	erros=erros+1

Else
	If sRot = stpalav Then
		Response.Write "Parabéns, voce acertou !!!<BR>"
'		Response.Write "<div id='aviso'><B>Significado:</B>&nbsp;" & session("signif") &"</div>"
		Response.Write "Tentativas: " & session("chutes")
		Response.Write "<BR>Jogar novamente? <A HREF='forca.asp?Nome=" & session("jogador") & "&niv=" & session("nivel")& "'>Sim</A>&nbsp;&nbsp;<A HREF=""index.asp"">Não</A><BR>"
		iStat = 7
		acertos=acertos+1


	Else
		For I = 65 to 90
			If arralet(I - 65) = 0 Then
				Response.Write "<A HREF='forca.asp?letter=" & Chr(I) & "&niv=" & session("nivel")&"'><IMG SRC=lb_" & LCase(Chr(I)) & ".gif BORDER='0' WIDTH='20' HEIGHT='20'></A>"
			Else
				Response.Write "<IMG SRC=""lr_" & LCase(Chr(I)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20>"
			End If
		Next
		response.write "<br>"
		For a = 193 to 195
			If arralet(a - 167) = 0 Then
				Response.Write "<A HREF=""forca.asp?letter=" & Chr(a) & """><IMG SRC=""lb_" & LCase(Chr(a)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20></A>"
			Else
				Response.Write "<IMG SRC=""lr_" & LCase(Chr(a)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20>"
			End If
		Next

		For e = 201 to 202
			If arralet(e - 171) = 0 Then
				Response.Write "<A HREF=""forca.asp?letter=" & Chr(e) & """><IMG SRC=""lb_" & LCase(Chr(e)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20></A>"
			Else
				Response.Write "<IMG SRC=""lr_" & LCase(Chr(e)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20>"
			End If
		Next
			
			If arralet(205 - 173) = 0 Then
				Response.Write "<A HREF=""forca.asp?letter=" & Chr(205) & """><IMG SRC=""lb_" & LCase(Chr(205)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20></A>"
			Else
				Response.Write "<IMG SRC=""lr_" & LCase(Chr(205)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20>"
			End If
	
		For o = 211 to 213
			If arralet(o - 178) = 0 Then
				Response.Write "<A HREF=""forca.asp?letter=" & Chr(o) & """><IMG SRC=""lb_" & LCase(Chr(o)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20></A>"
			Else
				Response.Write "<IMG SRC=""lr_" & LCase(Chr(o)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20>"
			End If
		Next

			If arralet(218 - 182) = 0 Then
				Response.Write "<A HREF=""forca.asp?letter=" & Chr(218) & """><IMG SRC=""lb_" & LCase(Chr(218)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20></A>"
			Else
				Response.Write "<IMG SRC=""lr_" & LCase(Chr(218)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20>"
			End If

			If arralet(199 - 170) = 0 Then
				Response.Write "<A HREF=""forca.asp?letter=" & Chr(199) & """><IMG SRC=""lb_" & LCase(Chr(199)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20></A>"
			Else
				Response.Write "<IMG SRC=""lr_" & LCase(Chr(199)) & ".gif"" BORDER=0 WIDTH=20 HEIGHT=20>"
			End If

		Response.Write "<BR>" & vbCrLf
	End If
End If

Session("partidas") = partidas
Session("acertos") = acertos
Session("erros") = erros
Session("iStat") = iStat
Session("stpalav") = stpalav
Session("Guess") = sRot
Session("arralet") = arralet
If (Session("acertos"))= "" Then Session("acertos")=0
If (Session("erros"))= "" Then Session("erros")=0
If (Session("partidas"))= "" Then Session("partidas")=1
response.write "<hr>Acertos: " & Session("acertos") & " - Erros: " & Session("erros")
response.write "<br><A HREF='index.asp'>Inicial</A>"

response.write "</center>"

%>

ArquivoTipoTamanhoHits 
forca.zipArquivo ZIP203,8 Kb270Baixar o Arquivo
Sim   Não   Este código foi útil para você?
NotaComentário
9
nightmore comentou em 17/5/2008

Faltando um arquivo

Pessoal, este arquivo que tem pra baixar é faltando o arquivo fácil.txt, pois quando abro o site pra rodar o jogo, no nivel medio e maximo abre normalmente, só o nivel fácil nao abre.
Regras:
Os comentários seguem as seguintes regras:
  • Todos os comentários são enviados por membros cadastrados no site.
  • A pontuação de comentários de conteúdo do próprio membro não serão computados.
  • Os comentários serão pré-aprovados, porém a equipe do site revisará o conteúdo de todos os comentários podendo ser invalidados (inclusive a pontuação).
  • Os comentários precisam ter, obrigatóriamente, coerência sobre o conteúdo que será comentado.
  • O membro que atingir 5 comentários invalidados não poderá mais comentar dentro do site. Com isso o membro não poderá mais ganhar pontos com comentários.
  • Há um limite de 10 comentários por dia para cada membro.
  • Qualquer comentário após ter sido publicado poderá ser retirado através da opção ( denunciar)

Comente

     (ainda não tem cadastro? clique aqui!)


Máximo de 30 caracteres

Máximo de 255 caracteres
 

R&W Consulting - Soluções Web Hospedagem UOL HOST PagSeguro - solução para pagamentos online
© 2006-2009 R&W Informática Ltda. - Todos os direitos reservados.