Compare commits

..

24 Commits

Author SHA1 Message Date
20241144010036 ba3fa2d0b0 ajeitando a merda de guilherme ¯\_(ツ)_/¯ 2025-03-10 10:17:33 -03:00
20241144010020 6d19c01b0d Consertar OUTRA fala 2025-03-07 17:39:07 -03:00
20241144010020 f1e117e6f8 Consertar fala na primeira cena 2025-03-07 17:14:47 -03:00
20241144010020 ccb25dafb0 Merge branch 'main' of https://gitea.mange.ifrn.edu.br/20241144010020/animafinal 2025-03-07 17:07:18 -03:00
20241144010020 2c1dde5a87 Adicionar leitura de arquivo 2025-03-07 17:07:12 -03:00
20241144010013 5d166e8f9f Merge branch 'main' of https://gitea.mange.ifrn.edu.br/20241144010020/animafinal 2025-03-07 16:48:18 -03:00
20241144010013 5ac09b53ae final V3 QuickV 2025-03-07 16:47:32 -03:00
20241144010020 a6d3aa2147 Remover teste.py 2025-03-07 15:18:04 -03:00
20241144010020 1955cbbdd2 Adicionar goto_animado e lerp 2025-03-07 15:06:54 -03:00
20241144010020 a8dc73a7c5 Merge pull request 'Merge roteiro em main' (#1) from roteiro into main 2025-03-07 18:03:44 +00:00
20241144010020 0f5e44fb52 Adicionar roteiro 2025-03-07 14:19:11 -03:00
20241144010036 426e254a61 FINALIZAÇÃO QUASE FINALIZADA EM TORNO DE SEU FINAL DO FINAL 2025-03-06 20:45:52 -03:00
20241144010013 49e772da91 FINAL EFING UPDATE FINAL 2 2025-03-06 18:02:51 -03:00
20241144010013 8b42668100 FINAL EFING UPDATE 2025-03-06 17:43:56 -03:00
20241144010013 eeb335ea4d semi Final Fix 2025-03-06 16:17:54 -03:00
20241144010013 6031c632b4 start of code 2025-03-06 14:08:18 -03:00
20241144010036 42b5a04400 PASTAS CAIOOO 2025-03-06 13:40:30 -03:00
20241144010013 30f94c2112 fix images 2025-03-06 13:31:25 -03:00
20241144010036 172e9c0567 add img brasil 2025-03-06 13:18:05 -03:00
20241144010013 a99a3ef68e PIIINTO FLAMEJANTE 2025-03-06 09:24:53 -03:00
20241144010013 1b0b90b091 cena 3 cenario 2025-02-28 17:18:54 -03:00
20241144010013 ed2594b287 Merge branch 'main' of https://gitea.mange.ifrn.edu.br/20241144010020/animafinal 2025-02-28 16:19:21 -03:00
20241144010013 fb34b0bc52 novos sprites 2025-02-28 16:19:13 -03:00
Kaio Henrique Lopes Teixeira e1a47ae1d5 baus e cena 1 nn terminada 2025-02-27 17:53:26 -03:00
37 changed files with 541 additions and 44 deletions
+32
View File
@@ -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
+459 -30
View File
@@ -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?"
falas = dict()
with open(file, "r", encoding="utf-8") as arquivo:
atual = ""
lendo = True
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 cena2():
"""Scene 2"""
pass
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
def cena3():
"""Scene 3"""
pass
# 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)
def cena4():
"""Scene 4"""
pass
count = 0
while count <= 3:
fala.undo()
count += 1
def cena5():
"""Scene 5"""
pass
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")
tl.setup(600,600,None,None) #spawna a tela
draw = tl.Turtle() #coloca a tartaruga principal de desenho
# Variaveis usadas para definir fundos, personagens, objetos e falas
bgpic = tl.Turtle()
bgpic.up()
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()
+7 -10
View File
@@ -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: """
+43
View File
@@ -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.
File diff suppressed because one or more lines are too long
-1
View File
@@ -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":[""]}}
Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 858 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 924 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

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
View File
@@ -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":[""]}}