FINALIZAÇÃO QUASE FINALIZADA EM TORNO DE SEU FINAL DO FINAL

This commit is contained in:
Brasilicio Henrique Campos Rêgo 2025-03-06 20:45:52 -03:00
parent 49e772da91
commit 426e254a61
2 changed files with 106 additions and 44 deletions

123
main.py
View File

@ -2,11 +2,12 @@
module docs module docs
""" """
import turtle as tl import turtle as tl
from time import sleep as pause from time import sleep as pause
from menus import main_menu from menus import main_menu
# Funcao para fazer as falas dos personagens
def falas(personagem: tl.Turtle, text: str, tempo: float = 3) -> None: def falas(personagem: tl.Turtle, text: str, tempo: float = 3) -> None:
fala.goto(personagem.pos()) fala.goto(personagem.pos())
fala.left(45) fala.left(45)
@ -17,12 +18,13 @@ def falas(personagem: tl.Turtle, text: str, tempo: float = 3) -> None:
pause(tempo) pause(tempo)
count = 0 count = 0
while count < 4: while count <= 3:
fala.undo() fala.undo()
count += 1 count += 1
def pinto_acha_cobra() -> None: 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." 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. "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 pinto vai até o baú e tenta abrir ele.
@ -77,39 +79,53 @@ def pinto_acha_cobra() -> None:
pinto.goto(-242, -164) pinto.goto(-242, -164)
falas(pinto, "Por que eu deveria acreditar em você?") falas(pinto, "Por que eu deveria acreditar em você?")
cobra.goto(-75, -108) cobra.goto(-55, -108)
falas(cobra, "Porque o meu nome é Python! Cobras\ncom esse nome são confiáveis...") falas(cobra, "Porque o meu nome é Python! Cobras\ncom esse nome são confiáveis...", tempo = 4)
falas(pinto, "Tipo aquela linguagem\nde programação?") falas(pinto, "Tipo aquela linguagem\nde programação?!?!")
falas(cobra, "Isso mesmo!") falas(cobra, "Isso mesmo!", tempo = 1.5)
falas(pinto, "Eu não quero\nfazer programa!!!")
tl.addshape("sprites/personagens/_pinto.gif") 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") pinto.shape("sprites/personagens/_pinto.gif")
pause(1) falas(pinto, "Eu não quero\nfazer programa!!!")
pause(0.5)
pinto.goto(-281, -89) pinto.goto(-281, -89)
pinto.hideturtle() pinto.hideturtle()
falas(cobra, "Volte aqui pintinho, eu\nnão vou fazer você programar!") falas(cobra, "Volte aqui pintinho, eu\nnão vou fazer você programar!")
cobra.goto(-132,-89) cobra.goto(-281, -89)
cobra.hideturtle() cobra.hideturtle()
pause(2) pause(2)
terminou = "sim" terminou = "sim"
if terminou == "sim": if terminou == "sim":
return return "Finalizou cena"
else:
return "Nao conseguiu finalizar a cena"
def pinto_foge_cobra(): 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. 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 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. 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. 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. Então ela vai para baixo.
Ambos fora de cena. Ambos fora de cena.
""" """
@ -126,7 +142,7 @@ def pinto_foge_cobra():
pinto.showturtle() pinto.showturtle()
pinto.goto(2, -28) pinto.goto(2, -28)
falas(pinto, "Ainda bem que eu já passei por aqui") falas(pinto, "Ainda bem que eu já passei por aqui!")
tl.addshape("sprites/personagens/pinto_.gif") tl.addshape("sprites/personagens/pinto_.gif")
pinto.shape("sprites/personagens/pinto_.gif") pinto.shape("sprites/personagens/pinto_.gif")
@ -144,6 +160,17 @@ def pinto_foge_cobra():
falas(cobra, "Que lugar estranho!\nNo baú era melhor.") falas(cobra, "Que lugar estranho!\nNo baú era melhor.")
tl.addshape("sprites/personagens/cobra_.gif") 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
falas(cobra, "Não sei para onde esse pinto foi...")
cobra.shape("sprites/personagens/cobra_.gif") cobra.shape("sprites/personagens/cobra_.gif")
cobra.goto(1, -285) cobra.goto(1, -285)
@ -153,10 +180,13 @@ def pinto_foge_cobra():
terminou = "sim" terminou = "sim"
if terminou == "sim": if terminou == "sim":
return return "Finalizou cena"
else:
return "Nao conseguiu finalizar a cena"
def pinto_acha_arma() -> None: def pinto_acha_arma() -> str:
""" """
Roteiro da cena 3:
Nessa cena o pinto chega em uma nova sala estranha com um baú. 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ú. "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. O pinto vai até o baú e após abrir ele, acha um lança-chamas.
@ -169,11 +199,9 @@ def pinto_acha_arma() -> None:
terminou = "não" terminou = "não"
tl.addshape("sprites/fundos/fundo_3_bau_fechado.gif") tl.addshape("sprites/fundos/fundo_3_bau_fechado.gif")
tl.addshape("sprites/fundos/fundo_3_bau_aberto.gif")
bgpic.shape("sprites/fundos/fundo_3_bau_fechado.gif") bgpic.shape("sprites/fundos/fundo_3_bau_fechado.gif")
tl.addshape("sprites/personagens/pinto_.gif") tl.addshape("sprites/personagens/pinto_.gif")
tl.addshape("sprites/personagens/_pinto.gif")
pinto.shape("sprites/personagens/pinto_.gif") pinto.shape("sprites/personagens/pinto_.gif")
pinto.hideturtle() pinto.hideturtle()
@ -182,10 +210,14 @@ def pinto_acha_arma() -> None:
pinto.goto(0, -16) pinto.goto(0, -16)
falas(pinto, "Nossa, outro baú muito perigoso\nnessa masmorra. Vou abrir!") falas(pinto, "Nossa, outro baú muito perigoso\nnessa masmorra. Vou abrir!")
tl.addshape("sprites/fundos/fundo_3_bau_aberto.gif")
bgpic.shape("sprites/fundos/fundo_3_bau_aberto.gif") bgpic.shape("sprites/fundos/fundo_3_bau_aberto.gif")
tl.addshape("sprites/objetos/lancachamas.gif") tl.addshape("sprites/objetos/lancachamas.gif")
lanca_chamas.shape("sprites/objetos/lancachamas.gif") lanca_chamas.shape("sprites/objetos/lancachamas.gif")
lanca_chamas.goto(0, 64) lanca_chamas.goto(0, 64)
lanca_chamas.showturtle() lanca_chamas.showturtle()
@ -199,8 +231,10 @@ def pinto_acha_arma() -> None:
pinto.goto(0, -352) pinto.goto(0, -352)
# OUTRA SALA ---------------------------------------------------------------------------------------- # OUTRA SALA ----------------------------------------------------------------------------------------
tl.addshape("sprites/fundos/fundo_2.gif") tl.addshape("sprites/fundos/fundo_2.gif")
bgpic.shape("sprites/fundos/fundo_2.gif") bgpic.shape("sprites/fundos/fundo_2.gif")
@ -220,16 +254,20 @@ def pinto_acha_arma() -> None:
cobra.showturtle() cobra.showturtle()
cobra.goto(0, 0) cobra.goto(0, 0)
falas(cobra, "Eu achei você!") falas(cobra, "Eu achei você!", tempo = 1.8)
cobra.goto(-352, 0) cobra.goto(-352, 0)
pause(2) pause(2)
terminou = "sim" terminou = "sim"
if terminou == "sim": if terminou == "sim":
return return "Finalizou cena"
else:
return "Nao conseguiu finalizar a cena"
def pinto_mata_cobra() -> None: 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. 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. "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. A cobra chega na sala indo em direção ao pinto. "Vou te alcançar!" Diz ela.
@ -239,8 +277,8 @@ def pinto_mata_cobra() -> None:
"Vou voltar a explorar essa masmorra legal." Diz o pinto. "Vou voltar a explorar essa masmorra legal." Diz o pinto.
Ele sai da cena. Ele sai da cena.
""" """
terminou = "não"
terminou = "não"
tl.addshape("sprites/fundos/fundo_4.gif") tl.addshape("sprites/fundos/fundo_4.gif")
bgpic.shape("sprites/fundos/fundo_4.gif") bgpic.shape("sprites/fundos/fundo_4.gif")
@ -251,6 +289,7 @@ def pinto_mata_cobra() -> None:
pinto.hideturtle() pinto.hideturtle()
pinto.goto(290, -123) pinto.goto(290, -123)
pinto.showturtle() pinto.showturtle()
pinto.goto(-134, -121) pinto.goto(-134, -121)
tl.addshape("sprites/personagens/pinto_flamer_.gif") tl.addshape("sprites/personagens/pinto_flamer_.gif")
@ -263,6 +302,7 @@ def pinto_mata_cobra() -> None:
cobra.hideturtle() cobra.hideturtle()
cobra.goto(290, -123) cobra.goto(290, -123)
cobra.showturtle() cobra.showturtle()
cobra.goto(150, -121) cobra.goto(150, -121)
@ -287,8 +327,8 @@ def pinto_mata_cobra() -> None:
fogo.hideturtle() fogo.hideturtle()
falas(pinto, 'Parece que agora eu não\nsou o "pequeno pinto", né?') falas(pinto, 'Parece que agora eu não\nsou o "pequeno pinto", né?', tempo = 4.5)
falas(pinto, "Vou voltar a explorar essa masmorra legal 😁.") falas(pinto, "Vou voltar a explorar essa masmorra maneira.")
tl.addshape("sprites/personagens/pinto_.gif") tl.addshape("sprites/personagens/pinto_.gif")
pinto.shape("sprites/personagens/pinto_.gif") pinto.shape("sprites/personagens/pinto_.gif")
@ -306,11 +346,17 @@ def pinto_mata_cobra() -> None:
terminou = "sim" terminou = "sim"
if terminou == "sim": if terminou == "sim":
return return "Finalizou cena"
else:
return "Nao conseguiu finalizar a cena"
def main() -> None: def main() -> None:
"""...main function duh""" """
scene_num = int(input(main_menu)) Funcao main que chama as funcoes de cada cena da animacao
"""
scene_num = int(input(main_menu)) # input para saber qual cena ver
while scene_num != 6: while scene_num != 6:
if scene_num == 1: if scene_num == 1:
pinto_acha_cobra() pinto_acha_cobra()
@ -320,28 +366,41 @@ def main() -> None:
pinto_acha_arma() pinto_acha_arma()
elif scene_num == 4: elif scene_num == 4:
pinto_mata_cobra() 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: else:
print("Cena não disponível") print("Cena nao disponivel")
scene_num = int(input(main_menu)) scene_num = int(input(main_menu))
if __name__ == "__main__": exit() # sair do programa caso escolha a opcao 6
tl.setup(600,600,None,None) #spawna a tela if __name__ == "__main__":
# spawna a tela com suas config
tl.setup(600,600,None,None)
tl.bgcolor("black") tl.bgcolor("black")
tl.title("A Lenda de Javi, O Grande pinto") tl.title("A Lenda de Javi, O Grande pinto")
bgpic = tl.Turtle() #coloca a tartaruga principal de desenho # Variaveis usadas para definir fundos, personagens, objetos e falas
bgpic = tl.Turtle()
bgpic.up() bgpic.up()
pinto = tl.Turtle(visible=False) pinto = tl.Turtle(visible=False)
pinto.up() pinto.up()
cobra = tl.Turtle(visible=False) cobra = tl.Turtle(visible=False)
cobra.up() cobra.up()
fogo = tl.Turtle(visible=False) fogo = tl.Turtle(visible=False)
fogo.up() fogo.up()
lanca_chamas = tl.Turtle(visible=False) lanca_chamas = tl.Turtle(visible=False)
lanca_chamas.up() lanca_chamas.up()
@ -350,6 +409,8 @@ if __name__ == "__main__":
fala.up() fala.up()
main() main() #chamando funcao principal
tl.mainloop() tl.mainloop()

View File

@ -1,12 +1,13 @@
main_menu = """ main_menu = """
Animações de Guilherme Aleixo, Kaio Henrique, Brasilicio Henrique Animacoes de Guilherme Aleixo, Kaio Henrique, Brasilicio Henrique
Cenas: Cenas:
1. Pinto acha a cobra 1. Pinto acha a cobra
2. Pinto foge da cobra 2. Pinto foge da cobra
3. Pinto acha uma arma 3. Pinto acha uma arma
4. Pinto mata a cobra 4. Pinto mata a cobra
5. Ver todas cenas acima em sequencia
6. Sair 6. Sair
Escolha o número da cena: """ Escolha o numero da cena: """