Skip to content

Instantly share code, notes, and snippets.

@lrlucena
Last active October 14, 2017 02:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lrlucena/c9cdf319c5b935ed7e67e0fbde624774 to your computer and use it in GitHub Desktop.
Save lrlucena/c9cdf319c5b935ed7e67e0fbde624774 to your computer and use it in GitHub Desktop.
use "jerimum"
largura = jogo.largura div 20
altura = jogo.altura div 20
img_fundo = Imagem("grama.jpg")
img_cobra = Imagem("cobra.png")
img_comida = Imagem("comida.png")
cobra_x = largura div 4
cobra_y = altura div 2
var cobra := [(cobra_x, cobra_y), (cobra_x-1, cobra_y), (cobra_x-2, cobra_y)]
var comida := (largura div 2, altura div 2)
var direção := (1, 0)
var fim_de_jogo := falso
atualize()
se [0, largura].contém(cobra.cabeça.primeiro) ou
[0, altura].contém(cobra.cabeça.segundo) ou
cobra.cauda.contém(cobra.cabeça) ou
fim_de_jogo então
fim_de_jogo := verdadeiro
senão
direção :=
se Teclado.TECLA_PARA_BAIXO então ( 0, 1)
senãose Teclado.TECLA_PARA_CIMA então ( 0,-1)
senãose Teclado.TECLA_PARA_ESQUERDA então (-1, 0)
senãose Teclado.TECLA_PARA_DIREITA então ( 1, 0)
senão direção
fim
nova_cabeça = (cobra.cabeça.primeiro + direção.primeiro,
cobra.cabeça.segundo + direção.segundo)
cobra := nova_cabeça :: cobra
se cobra.cabeça == comida então
comida := (aleatório(largura), aleatório(altura))
senão
cobra := cobra.pegue(cobra.tamanho - 1)
fim
fim
fim
desenhe()
img_fundo.desenhe(0,0,0)
para c em cobra faça
img_cobra.desenhe(c.primeiro * 20, c.segundo * 20, 5)
fim
img_comida.desenhe(comida.primeiro * 20, comida.segundo * 20, 3)
fim
Jogo.iniciar("Cobra", 640, 480, atualize, desenhe, 10)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment