Compare commits
24 Commits
ecad7fbb35
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
| ba3fa2d0b0 | |||
| 6d19c01b0d | |||
| f1e117e6f8 | |||
| ccb25dafb0 | |||
| 2c1dde5a87 | |||
| 5d166e8f9f | |||
| 5ac09b53ae | |||
| a6d3aa2147 | |||
| 1955cbbdd2 | |||
| a8dc73a7c5 | |||
| 0f5e44fb52 | |||
| 426e254a61 | |||
| 49e772da91 | |||
| 8b42668100 | |||
| eeb335ea4d | |||
| 6031c632b4 | |||
| 42b5a04400 | |||
| 30f94c2112 | |||
| 172e9c0567 | |||
| a99a3ef68e | |||
| 1b0b90b091 | |||
| ed2594b287 | |||
| fb34b0bc52 | |||
| e1a47ae1d5 |
@@ -0,0 +1,32 @@
|
||||
CENA pinto_acha_cobra
|
||||
P Eita, um baú totalmente estranho no meio \ndessa masmorra muito perigosa.
|
||||
P Baús são legais. Com certeza deve ter \nalgo legal dentro. Vou ver o que tem nele..
|
||||
P Vixe, uma cobra!
|
||||
C Tenha calma pequeno pinto. \nEu não sou uma cobra má.
|
||||
P Por que eu deveria acreditar em você?
|
||||
C Porque o meu nome é Python! Cobras \ncom esse nome são confiáveis...
|
||||
P Tipo aquela linguagem \nde programação?!?!
|
||||
C Isso mesmo!
|
||||
P Eu não quero \nfazer programa!!!
|
||||
C Volte aqui pintinho, eu \nnão vou fazer você programar!
|
||||
CENA pinto_acha_cobra END
|
||||
|
||||
CENA pinto_foge_cobra
|
||||
P Ainda bem que eu já passei por aqui!
|
||||
C Que lugar estranho! \nNo baú era melhor.
|
||||
C Não sei para onde esse pinto foi...
|
||||
CENA pinto_foge_cobra END
|
||||
|
||||
CENA pinto_acha_arma
|
||||
P Nossa, outro baú muito perigoso \nnessa masmorra. Vou abrir!
|
||||
P Isso com certeza vai servir!
|
||||
C Eu achei você!
|
||||
CENA pinto_acha_arma END
|
||||
|
||||
CENA pinto_mata_cobra
|
||||
P Daqui não tem como errar...
|
||||
C Vou te pegar!
|
||||
C AHHHHHHHHHHHH!
|
||||
P Parece que agora eu não \nsou o "pequeno pinto", né?
|
||||
P Vou voltar a explorar essa masmorra maneira
|
||||
CENA pinto_mata_cobra END
|
||||
@@ -1,58 +1,487 @@
|
||||
"""
|
||||
module docs
|
||||
"""
|
||||
import re
|
||||
import turtle as tl
|
||||
|
||||
from time import sleep as pause
|
||||
|
||||
from menus import main_menu
|
||||
|
||||
def cena1():
|
||||
"""Scene 1"""
|
||||
pass
|
||||
def ler_falas(file: str) -> dict[str: list[str]]:
|
||||
pattern_inicio: str = r"CENA ([\w ]+)\s?"
|
||||
pattern_fim: str = r"CENA ([\w ]+) END\s?"
|
||||
|
||||
def cena2():
|
||||
"""Scene 2"""
|
||||
pass
|
||||
falas = dict()
|
||||
|
||||
def cena3():
|
||||
"""Scene 3"""
|
||||
pass
|
||||
with open(file, "r", encoding="utf-8") as arquivo:
|
||||
atual = ""
|
||||
lendo = True
|
||||
|
||||
def cena4():
|
||||
"""Scene 4"""
|
||||
pass
|
||||
|
||||
def cena5():
|
||||
"""Scene 5"""
|
||||
pass
|
||||
linha = arquivo.readline()
|
||||
while linha != "":
|
||||
|
||||
inicio = re.search(pattern_inicio, linha)
|
||||
fim = re.search(pattern_fim, linha)
|
||||
|
||||
if inicio:
|
||||
atual = inicio.group()[5:-1]
|
||||
linha = arquivo.readline()
|
||||
lendo = True
|
||||
continue
|
||||
elif fim:
|
||||
lendo = False
|
||||
continue
|
||||
if lendo == False:
|
||||
linha = arquivo.readline()
|
||||
continue
|
||||
else:
|
||||
if falas.get(atual) == None:
|
||||
falas[atual] = []
|
||||
linha = linha.replace("\\n", "\n")
|
||||
falas[atual].append((linha[0], linha[2:-1]))
|
||||
linha = arquivo.readline()
|
||||
return falas
|
||||
|
||||
def lerp(inicial: tl.Vec2D, final: tl.Vec2D, t: float) -> tl.Vec2D:
|
||||
return inicial + (final - inicial) * t
|
||||
|
||||
# Função de movimento com troca de sprite
|
||||
def goto_animado(personagem: tl.Turtle, x: float, y: float, sprites: list[str], passos: int = 10):
|
||||
posicao_inicial: tl.Vec2D = personagem.pos()
|
||||
posicao_final: tl.Vec2D = tl.Vec2D(x, y)
|
||||
|
||||
for posicao in range(passos):
|
||||
personagem.shape(sprites[posicao%len(sprites)]) #shape(sprites[posicao % 2]) # Alterna os sprites
|
||||
|
||||
personagem.goto(lerp(posicao_inicial, posicao_final, 1/(passos + 1) * posicao)) # Move a tartaruga
|
||||
|
||||
# Funcao para fazer as falas dos personagens
|
||||
def falas(personagem: tl.Turtle, text: str, tempo: float = 3) -> None:
|
||||
fala.goto(personagem.pos())
|
||||
fala.left(45)
|
||||
fala.fd(50)
|
||||
fala.color("white")
|
||||
fala.write(text,False,font=("arial",10,"normal"))
|
||||
|
||||
pause(tempo)
|
||||
|
||||
count = 0
|
||||
while count <= 3:
|
||||
fala.undo()
|
||||
count += 1
|
||||
|
||||
def falar_do_roteiro(roteiro: list[tuple[str, str]], index: int, tempo: float = 3):
|
||||
if roteiro[index][0] == "P":
|
||||
falas(pinto, roteiro[index][1], tempo)
|
||||
elif roteiro[index][0] == "C":
|
||||
falas(cobra, roteiro[index][1], tempo)
|
||||
return index + 1
|
||||
|
||||
|
||||
def pinto_acha_cobra() -> str:
|
||||
"""
|
||||
Roteiro da cena 1:
|
||||
Lugar misterioso com um baú. O pinto entra na cena. "Eita, um baú totalmente estranho no meio dessa masmorra super perigosa."
|
||||
"Baús são legais. Com certeza deve ter algo legal dentro. Vou ver o que tem nele." - Diz o pinto.
|
||||
O pinto vai até o baú e tenta abrir ele.
|
||||
O baú abre e sai uma cobra de dentro.
|
||||
"Vixe, uma cobra!" - Diz o pinto se afastando do baú.
|
||||
"Tenha calma pequeno pinto. Eu não sou uma cobra má." - Diz a cobra saindo do baú.
|
||||
"Por que eu deveria acreditar em você?" - Diz o pinto se afastando.
|
||||
"Porque o meu nome é Python! Cobras com esse nome são confiáveis..." - Diz a cobra.
|
||||
"Tipo aquela linguagem de programação?" - Pergunta o pinto.
|
||||
"Isso mesmo!" - Responde a cobra.
|
||||
"Eu não quero fazer programa!!!" - Diz o pinto enquanto sai de cena
|
||||
"Volte aqui pintinho, eu não vou fazer você programar!" - Diz a acobra correndo atrás do pinto.
|
||||
Ambos saem de cena.
|
||||
"""
|
||||
|
||||
cena = "pinto_acha_cobra"
|
||||
index = 0
|
||||
|
||||
terminou = "não"
|
||||
|
||||
tl.addshape("sprites/fundos/fundo_1_bau_fechado.gif")
|
||||
bgpic.shape("sprites/fundos/fundo_1_bau_fechado.gif")
|
||||
|
||||
tl.addshape("sprites/personagens/pinto_.gif")
|
||||
pinto.shape("sprites/personagens/pinto_.gif")
|
||||
|
||||
pinto.goto(-281, -89)
|
||||
pinto.showturtle()
|
||||
|
||||
pinto.goto(-132, -89)
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
pinto.goto(28, -89)
|
||||
pinto.goto(31, -16)
|
||||
|
||||
pause(2)
|
||||
|
||||
tl.addshape("sprites/fundos/fundo_1_bau_aberto.gif")
|
||||
bgpic.shape("sprites/fundos/fundo_1_bau_aberto.gif")
|
||||
|
||||
pause(1)
|
||||
|
||||
tl.addshape("sprites/personagens/_cobra.gif")
|
||||
cobra.shape("sprites/personagens/_cobra.gif")
|
||||
|
||||
cobra.goto(31, 53)
|
||||
cobra.showturtle()
|
||||
|
||||
pinto.goto(-160, -132)
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
|
||||
cobra.goto(-3, -62)
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
|
||||
pinto.goto(-242, -164)
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
|
||||
cobra.goto(-55, -108)
|
||||
index = falar_do_roteiro(falas_dict[cena], index, tempo = 4)
|
||||
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
|
||||
tl.addshape("sprites/personagens/_pinto.gif")
|
||||
|
||||
count = 0
|
||||
while count <= 4:
|
||||
pinto.shape("sprites/personagens/_pinto.gif")
|
||||
pause(0.15)
|
||||
pinto.shape("sprites/personagens/pinto_.gif")
|
||||
pause(0.15)
|
||||
count += 1
|
||||
|
||||
pinto.shape("sprites/personagens/_pinto.gif")
|
||||
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
|
||||
pause(0.5)
|
||||
|
||||
pinto.goto(-281, -89)
|
||||
pinto.hideturtle()
|
||||
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
cobra.goto(-281, -89)
|
||||
cobra.hideturtle()
|
||||
|
||||
pause(2)
|
||||
|
||||
terminou = "sim"
|
||||
if terminou == "sim":
|
||||
return "Finalizou cena"
|
||||
else:
|
||||
return "Nao conseguiu finalizar a cena"
|
||||
|
||||
|
||||
def pinto_foge_cobra() -> str:
|
||||
"""
|
||||
Roteiro da cena 2:
|
||||
Um lugar da masmorra sombria. Esse lugar tem mais de uma saída. Tem paredes e obstáculos.
|
||||
O pinto aparece correndo da cobra. "Ainda bem que eu já passei por aqui!" - Diz ele.
|
||||
O pinto então passa pelos lugares certos e vai na direção de cima.
|
||||
Enquanto isso a cobra chega no lugar e fica "perdida". "Que lugar estranho! No baú era melhor." - Diz ela.
|
||||
Não sabendo para onde foi o pinto, ela diz - "Não sei para onde esse pinto foi..."
|
||||
Então ela vai para baixo.
|
||||
Ambos fora de cena.
|
||||
"""
|
||||
|
||||
cena = "pinto_foge_cobra"
|
||||
index = 0
|
||||
|
||||
terminou = "não"
|
||||
|
||||
tl.addshape("sprites/fundos/fundo_2.gif")
|
||||
bgpic.shape("sprites/fundos/fundo_2.gif")
|
||||
|
||||
tl.addshape("sprites/personagens/_pinto.gif")
|
||||
pinto.shape("sprites/personagens/_pinto.gif")
|
||||
|
||||
pinto.goto(286, -26)
|
||||
pinto.showturtle()
|
||||
|
||||
pinto.goto(2, -28)
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
|
||||
tl.addshape("sprites/personagens/pinto_.gif")
|
||||
pinto.shape("sprites/personagens/pinto_.gif")
|
||||
|
||||
pinto.goto(-1, 298)
|
||||
pinto.hideturtle()
|
||||
|
||||
tl.addshape("sprites/personagens/_cobra.gif")
|
||||
cobra.shape("sprites/personagens/_cobra.gif")
|
||||
|
||||
cobra.goto(286, -26)
|
||||
cobra.showturtle()
|
||||
|
||||
cobra.goto(2, -28)
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
|
||||
tl.addshape("sprites/personagens/cobra_.gif")
|
||||
|
||||
count = 0
|
||||
while count <= 4:
|
||||
cobra.shape("sprites/personagens/cobra_.gif")
|
||||
pause(0.15)
|
||||
cobra.shape("sprites/personagens/_cobra.gif")
|
||||
pause(0.15)
|
||||
count += 1
|
||||
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
|
||||
cobra.shape("sprites/personagens/cobra_.gif")
|
||||
|
||||
cobra.goto(1, -285)
|
||||
cobra.hideturtle()
|
||||
|
||||
pause(2)
|
||||
|
||||
terminou = "sim"
|
||||
if terminou == "sim":
|
||||
return "Finalizou cena"
|
||||
else:
|
||||
return "Nao conseguiu finalizar a cena"
|
||||
|
||||
def pinto_acha_arma() -> str:
|
||||
"""
|
||||
Roteiro da cena 3:
|
||||
Nessa cena o pinto chega em uma nova sala estranha com um baú.
|
||||
"Nossa, outro baú muito perigoso nessa masmorra. Vou abrir!" - Diz o pinto indo em direção ao baú.
|
||||
O pinto vai até o baú e após abrir ele, acha um lança-chamas.
|
||||
"Isso com certeza vai servir!" - Diz ele segurando a arma e indo para uma outra sala.
|
||||
O pinto na outra sala vai para a sala da esquerda.
|
||||
A cobra sai debaixo e fala - "Eu achei você!" - Depois ela vai para a sala.
|
||||
A cobra segue o pinto. Todos saem de cena.
|
||||
"""
|
||||
|
||||
cena = "pinto_acha_arma"
|
||||
index = 0
|
||||
|
||||
terminou = "não"
|
||||
|
||||
tl.addshape("sprites/fundos/fundo_3_bau_fechado.gif")
|
||||
bgpic.shape("sprites/fundos/fundo_3_bau_fechado.gif")
|
||||
|
||||
tl.addshape("sprites/personagens/pinto_.gif")
|
||||
pinto.shape("sprites/personagens/pinto_.gif")
|
||||
pinto.hideturtle()
|
||||
|
||||
pinto.goto(0, -352)
|
||||
pinto.showturtle()
|
||||
pinto.goto(0, -16)
|
||||
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
|
||||
|
||||
tl.addshape("sprites/fundos/fundo_3_bau_aberto.gif")
|
||||
bgpic.shape("sprites/fundos/fundo_3_bau_aberto.gif")
|
||||
|
||||
tl.addshape("sprites/objetos/lancachamas.gif")
|
||||
lanca_chamas.shape("sprites/objetos/lancachamas.gif")
|
||||
|
||||
lanca_chamas.goto(0, 64)
|
||||
|
||||
lanca_chamas.showturtle()
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
lanca_chamas.hideturtle()
|
||||
|
||||
tl.addshape("sprites/personagens/_pinto_flamer.gif")
|
||||
pinto.shape("sprites/personagens/_pinto_flamer.gif")
|
||||
|
||||
pause(1)
|
||||
|
||||
pinto.goto(0, -352)
|
||||
|
||||
|
||||
# OUTRA SALA ----------------------------------------------------------------------------------------
|
||||
|
||||
|
||||
tl.addshape("sprites/fundos/fundo_2.gif")
|
||||
bgpic.shape("sprites/fundos/fundo_2.gif")
|
||||
|
||||
pinto.hideturtle()
|
||||
pinto.goto(0, 352)
|
||||
pinto.showturtle()
|
||||
|
||||
pinto.goto(0, 0)
|
||||
|
||||
pinto.goto(-352, 0)
|
||||
|
||||
tl.addshape("sprites/personagens/_cobra.gif")
|
||||
cobra.shape("sprites/personagens/_cobra.gif")
|
||||
|
||||
cobra.hideturtle()
|
||||
cobra.goto(0, -352)
|
||||
cobra.showturtle()
|
||||
|
||||
cobra.goto(0, 0)
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
cobra.goto(-352, 0)
|
||||
|
||||
pause(2)
|
||||
|
||||
terminou = "sim"
|
||||
if terminou == "sim":
|
||||
return "Finalizou cena"
|
||||
else:
|
||||
return "Nao conseguiu finalizar a cena"
|
||||
|
||||
def pinto_mata_cobra() -> str:
|
||||
"""
|
||||
Roteiro da cena 4:
|
||||
O pinto com a sua arma chega na nova sala da masmorra e fica mirando para a porta esperando a cobra.
|
||||
"Daqui não tem como errar..." - Diz o pinto.
|
||||
A cobra chega na sala indo em direção ao pinto. "Vou te alcançar!" Diz ela.
|
||||
Com a cobra se aproximando do pinto. O pinto aperta o gatilho e sai uma rajada de fogo na cobra; ela morre cremada.
|
||||
"Parece que agora eu não sou o 'pequeno pinto', né?" Diz o pinto.
|
||||
O pinto deixa o lança chamas no chão.
|
||||
"Vou voltar a explorar essa masmorra legal." Diz o pinto.
|
||||
Ele sai da cena.
|
||||
"""
|
||||
|
||||
cena = "pinto_mata_cobra"
|
||||
index = 0
|
||||
|
||||
terminou = "não"
|
||||
|
||||
tl.addshape("sprites/fundos/fundo_4.gif")
|
||||
bgpic.shape("sprites/fundos/fundo_4.gif")
|
||||
|
||||
tl.addshape("sprites/personagens/_pinto_flamer.gif")
|
||||
pinto.shape("sprites/personagens/_pinto_flamer.gif")
|
||||
|
||||
pinto.hideturtle()
|
||||
pinto.goto(290, -123)
|
||||
pinto.showturtle()
|
||||
|
||||
pinto.goto(-134, -121)
|
||||
|
||||
tl.addshape("sprites/personagens/pinto_flamer_.gif")
|
||||
pinto.shape("sprites/personagens/pinto_flamer_.gif")
|
||||
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
|
||||
tl.addshape("sprites/personagens/_cobra.gif")
|
||||
cobra.shape("sprites/personagens/_cobra.gif")
|
||||
|
||||
cobra.hideturtle()
|
||||
cobra.goto(290, -123)
|
||||
|
||||
cobra.showturtle()
|
||||
cobra.goto(150, -121)
|
||||
|
||||
index = falar_do_roteiro(falas_dict[cena], index)
|
||||
|
||||
cobra.goto(5, -121)
|
||||
|
||||
tl.addshape("sprites/objetos/fogo.gif")
|
||||
fogo.shape("sprites/objetos/fogo.gif")
|
||||
|
||||
fogo.goto(-50, -121)
|
||||
fogo.showturtle()
|
||||
|
||||
index = falar_do_roteiro(falas_dict[cena], index, tempo=1.5)
|
||||
|
||||
pause(1.5)
|
||||
|
||||
tl.addshape("sprites/personagens/_cobra_burnt.gif")
|
||||
cobra.shape("sprites/personagens/_cobra_burnt.gif")
|
||||
|
||||
fogo.hideturtle()
|
||||
|
||||
index = falar_do_roteiro(falas_dict[cena], index, tempo = 1)
|
||||
|
||||
index = falar_do_roteiro(falas_dict[cena], index, tempo=4.5)
|
||||
|
||||
tl.addshape("sprites/personagens/pinto_.gif")
|
||||
pinto.shape("sprites/personagens/pinto_.gif")
|
||||
|
||||
tl.addshape("sprites/objetos/lancachamas.gif")
|
||||
lanca_chamas.shape("sprites/objetos/lancachamas.gif")
|
||||
|
||||
lanca_chamas.goto(-112, -131)
|
||||
lanca_chamas.showturtle()
|
||||
|
||||
pinto.goto(-297, -112)
|
||||
pinto.hideturtle()
|
||||
|
||||
pause(2)
|
||||
|
||||
terminou = "sim"
|
||||
if terminou == "sim":
|
||||
return "Finalizou cena"
|
||||
else:
|
||||
return "Nao conseguiu finalizar a cena"
|
||||
|
||||
def main() -> None:
|
||||
"""
|
||||
Funcao main que chama as funcoes de cada cena da animacao
|
||||
"""
|
||||
|
||||
scene_num = int(input(main_menu)) # input para saber qual cena ver
|
||||
|
||||
def main():
|
||||
"""...main function duh"""
|
||||
scene_num = int(input(main_menu))
|
||||
while scene_num != 6:
|
||||
if scene_num == 1:
|
||||
cena1()
|
||||
pinto_acha_cobra()
|
||||
elif scene_num == 2:
|
||||
cena2()
|
||||
pinto_foge_cobra()
|
||||
elif scene_num == 3:
|
||||
cena3()
|
||||
pinto_acha_arma()
|
||||
elif scene_num == 4:
|
||||
cena4()
|
||||
elif scene_num == 5:
|
||||
cena5()
|
||||
pinto_mata_cobra()
|
||||
elif scene_num == 5: # adicionado para verificar cenas da animacao sem pausa
|
||||
pinto_acha_cobra()
|
||||
pinto_foge_cobra()
|
||||
pinto_acha_arma()
|
||||
pinto_mata_cobra()
|
||||
else:
|
||||
print("Cena não disponível")
|
||||
print("Cena nao disponivel")
|
||||
|
||||
scene_num = int(input(main_menu))
|
||||
|
||||
exit() # sair do programa caso escolha a opcao 6
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
# spawna a tela com suas config
|
||||
tl.setup(600,600,None,None)
|
||||
tl.bgcolor("black")
|
||||
tl.title("A Lenda de Javi, O Grande pinto")
|
||||
|
||||
# Variaveis usadas para definir fundos, personagens, objetos e falas
|
||||
bgpic = tl.Turtle()
|
||||
bgpic.up()
|
||||
|
||||
|
||||
tl.setup(600,600,None,None) #spawna a tela
|
||||
draw = tl.Turtle() #coloca a tartaruga principal de desenho
|
||||
pinto = tl.Turtle(visible=False)
|
||||
pinto.up()
|
||||
|
||||
|
||||
cobra = tl.Turtle(visible=False)
|
||||
cobra.up()
|
||||
|
||||
|
||||
fogo = tl.Turtle(visible=False)
|
||||
fogo.up()
|
||||
|
||||
|
||||
lanca_chamas = tl.Turtle(visible=False)
|
||||
lanca_chamas.up()
|
||||
|
||||
|
||||
fala = tl.Turtle(visible=False)
|
||||
fala.up()
|
||||
|
||||
falas_dict = ler_falas("falas.txt")
|
||||
|
||||
index = 0
|
||||
|
||||
main() #chamando funcao principal
|
||||
|
||||
tl.mainloop()
|
||||
|
||||
|
||||
|
||||
@@ -1,16 +1,13 @@
|
||||
main_menu = """
|
||||
|
||||
Animações de <Insira os nomes dos autores aqui>
|
||||
Animacoes de Guilherme Aleixo, Kaio Henrique, Brasilicio Henrique
|
||||
|
||||
Cenas:
|
||||
1. Título da cena 1
|
||||
2. Título da cena 2
|
||||
3. Título da cena 3
|
||||
4. Título da cena 4
|
||||
5. Título da cena 5
|
||||
1. Pinto acha a cobra
|
||||
2. Pinto foge da cobra
|
||||
3. Pinto acha uma arma
|
||||
4. Pinto mata a cobra
|
||||
5. Ver todas cenas acima em sequencia
|
||||
6. Sair
|
||||
|
||||
Escolha o número da sua senha:
|
||||
"""
|
||||
|
||||
print(main_menu)
|
||||
Escolha o numero da cena: """
|
||||
@@ -0,0 +1,43 @@
|
||||
Roteiro da cena 1:
|
||||
> Lugar misterioso com um baú. O pinto entra na cena. "Eita, um baú totalmente estranho no meio dessa masmorra super perigosa."
|
||||
"Baús são legais. Com certeza deve ter algo legal dentro. Vou ver o que tem nele." - Diz o pinto.
|
||||
O pinto vai até o baú e tenta abrir ele.
|
||||
O baú abre e sai uma cobra de dentro.
|
||||
"Vixe, uma cobra!" - Diz o pinto se afastando do baú.
|
||||
"Tenha calma pequeno pinto. Eu não sou uma cobra má." - Diz a cobra saindo do baú.
|
||||
"Por que eu deveria acreditar em você?" - Diz o pinto se afastando.
|
||||
"Porque o meu nome é Python! Cobras com esse nome são confiáveis..." - Diz a cobra.
|
||||
"Tipo aquela linguagem de programação?" - Pergunta o pinto.
|
||||
"Isso mesmo!" - Responde a cobra.
|
||||
"Eu não quero fazer programa!!!" - Diz o pinto enquanto sai de cena
|
||||
"Volte aqui pintinho, eu não vou fazer você programar!" - Diz a acobra correndo atrás do pinto.
|
||||
Ambos saem de cena.
|
||||
|
||||
|
||||
Roteiro da cena 2:
|
||||
> Um lugar da masmorra sombria. Esse lugar tem mais de uma saída. Tem paredes e obstáculos.
|
||||
O pinto aparece correndo da cobra. "Ainda bem que eu já passei por aqui!" - Diz ele.
|
||||
O pinto então passa pelos lugares certos e vai na direção de cima.
|
||||
Enquanto isso a cobra chega no lugar e fica "perdida". "Que lugar estranho! No baú era melhor." - Diz ela.
|
||||
Não sabendo para onde foi o pinto, ela diz - "Não sei para onde esse pinto foi..."
|
||||
Então ela vai para baixo.
|
||||
Ambos fora de cena.
|
||||
|
||||
Roteiro da cena 3:
|
||||
> Nessa cena o pinto chega em uma nova sala estranha com um baú.
|
||||
"Nossa, outro baú muito perigoso nessa masmorra. Vou abrir!" - Diz o pinto indo em direção ao baú.
|
||||
O pinto vai até o baú e após abrir ele, acha um lança-chamas.
|
||||
"Isso com certeza vai servir!" - Diz ele segurando a arma e indo para uma outra sala.
|
||||
O pinto na outra sala vai para a sala da esquerda.
|
||||
A cobra sai debaixo e fala - "Eu achei você!" - Depois ela vai para a sala.
|
||||
A cobra segue o pinto. Todos saem de cena.
|
||||
|
||||
Roteiro da cena 4:
|
||||
> O pinto com a sua arma chega na nova sala da masmorra e fica mirando para a porta esperando a cobra.
|
||||
"Daqui não tem como errar..." - Diz o pinto.
|
||||
A cobra chega na sala indo em direção ao pinto. "Vou te alcançar!" Diz ela.
|
||||
Com a cobra se aproximando do pinto. O pinto aperta o gatilho e sai uma rajada de fogo na cobra; ela morre cremada.
|
||||
"Parece que agora eu não sou o 'pequeno pinto', né?" Diz o pinto.
|
||||
O pinto deixa o lança chamas no chão.
|
||||
"Vou voltar a explorar essa masmorra legal." Diz o pinto.
|
||||
Ele sai da cena.
|
||||
@@ -1 +0,0 @@
|
||||
{"modelVersion":2,"piskel":{"name":"bau","description":"","fps":12,"height":64,"width":64,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,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\"}]}"],"hiddenFrames":[""]}}
|
||||
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 88 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
Before Width: | Height: | Size: 858 B |
|
After Width: | Height: | Size: 924 B |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 6.7 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 6.7 KiB |
|
After Width: | Height: | Size: 5.4 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 6.7 KiB |
|
After Width: | Height: | Size: 5.4 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 6.7 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
After Width: | Height: | Size: 5.6 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
After Width: | Height: | Size: 5.6 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
@@ -1 +0,0 @@
|
||||
{"modelVersion":2,"piskel":{"name":"wall tile 64x64","description":"","fps":12,"height":64,"width":64,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAIRJREFUeF7t1QERADAMArHi33SFfOagHBm7+Fv8/hOABsQTQCBeAJ8gAgjEE0AgXgArgAAC8QQQiBfACiCAQDwBBOIFsAIIIBBPAIF4AawAAgjEE0AgXgArgAAC8QQQiBfACiCAQDwBBOIFsAIIIBBPAIF4AawAAgjEE0AgXgArgECdwANo2ABBrP9ggQAAAABJRU5ErkJggg==\"}]}","{\"name\":\"Layer 1 (imported)\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAzdJREFUeF7tWzFSwzAQxCmSKpO8Aipo4EPhNelS5VfQhAp+kUmTpIEZDZsZ1ix7ciYw+ExjYsuSvLe6W52k5nGxeL9K/NekB2C9XndiwPPTU+HN/cPDRfhzPB5LvePxuFwv1V6THoDVavUjA2ABWORwOBSLvL2+luvt3V0VA7g+/OZKHAN2u9237U6n03If73Mh9B/3m/QAYAgw4kCILY/7YIDyAao+rhe/mRl8X/kAxwTUo8qdfEB6AJzFeSw5BlQ5hkBhZoBjmLP8yQdwFFCU7y0A6YVQegC6CiEXt3kM/pbPcIqR9UFnJdg7AJRyUvFZOW5WWlHd4PSB8+qTyaQUedlsyhX6hL+Lv6elA/jD0gAQCMXfFlEKy4VNjuMqrjulx8+jvgbtne0D/j0A6cNgegCiOiAaX9X8vtbHuPZq61Plwz7AdSg6OYl23LUXrceVawHAHwInF/WurkH3vLa9aDRhPQC9MgCgfMC58ZUzOk46j0ajUmS73ZarYlx0qClmoB+SAUpyRoeAkp7/BgAlbBQAbDk3xmez2RdLq/JRwF17Tqi1fMBfALDf78t3zOfzK/z/awCkF0LpAYiuC9QqvK5ZXDem8ZydLecBovWE1wV6D4BDzMVVjq/sxFxmxrXPz9kgXaVzeC6QBgC3RAbkXXx1DHAWd6k47kfXsGnnAux0eg8AW8ZZGuV5Xd5lZ3muoGahjil4DgZc39xEXynlrA/oPQDphVB6ALBFhuOq26OjBpoLl2qPkIvjrl72KahP7WFCP057hAYAPvfjKaSV1lZris4VMxOiUYMt7eYG1QxIBwDPBlV8VhZyu7ui+/W6KkclzNQ+xvDqcJSivQNATXtrvXRUQLGS432HtavGtcrQ5gNQYW8BSC+E0gPAK0OsoJxAiipCLoex7aKLeq/WV6mMVGs2mA4A3i4Pi0TPAUQzN44BTrGpxAzX6+YAXL51XiAtAHwSJLrPzvkItS6PDFKtxTj7zBZ1irKlBDEE0gKwXC6/nBlSuTXsxGTtre672WBUATqLOwaw72idGRoACDIAYxaIRrU+3nPL7rXZXMWw2uxwE2VAbwFIL4UHAIbT47mPz38A7j3+abKb7okAAAAASUVORK5CYII=\"}]}"],"hiddenFrames":[""]}}
|
||||
@@ -1 +0,0 @@
|
||||
{"modelVersion":2,"piskel":{"name":"wall tile","description":"","fps":12,"height":32,"width":32,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAiZJREFUWEfNVzFywjAQlCmgYvhFqEITPkReQ0fFr0hDKvILhgqaZFYz61kvd46hMWpsjHS3uttbnZrPzea3jDia/X6fAvg6HMrHej0Y3u12K9PptDyyrtntdh0AMABD1+u1/JxO5X21CgFwHp4cDuByubT/zefzapcD9jFqBLgQH+gc7wCgEdB5nIsnwfBdI+AgMEe/tSlQx0TpAIbmggAcsDuvEXhpEnpuuYNnIuPEJB9aDtCZ5lNDTtJE3HA+eKhns1n5Ph4rn+iYfnrLMMqZAmCONddOOv6OooZ1r8mBKF9a71k1PCJAtNEpQzhByJ4hWbYuShN5AF51OPBfvig0Xh2TyaScz+cO8EgDFAxsdAAoeTQCNO5hXywW1amOIZFTP68jRH4WZITrk9iImMw1NSCaE+qA54r5YohdTLKq4Eb6quOuCqhqrIgox3qs6v+uokOq6i4CThI44FnucsqqYMSitVTOt+UyDNT4SoiOiLnqa6mcF9oRZcqpqWKrph0WvtWWTI1hkbI2y7eGP0qNipZWwx0AtmSZQW+3or7Oq8OJqQpLAJ3j2GUzC2kfydg7ZkdzRsbxSch7AXaN8DghNZxRV6z5j1p0rteoqpC19wIYiu4Akbjoaejrsg1wgy4GFQAvIVHP5gb1LIdAZYYp33SYyXiz3W7rzQgTqFZoIimj+h5JmR7BCs7n+rz2ZhQBwM4wMln23iGTWT9HonnjV8HYN6M/5UR8NbtaJLAAAAAASUVORK5CYII=\"}]}"],"hiddenFrames":[""]}}
|
||||