Posso melhorar os scripts python do Vol? [RESOLVIDO]

1. Posso melhorar os scripts python do Vol? [RESOLVIDO]

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 29/07/2016 - 01:11h

Galera eu estava meio entediado e fui procurar uns scripts aqui no site para ver se me dava algumas ideias e vi que muitos deles podem ser melhorados (um script que possui 10 linhas mas que dá para fazer em 2) ai me veio a questão... é certo alterar o scripts de outros usuários aqui do VoL ou deixo como está mesmo sabendo que há como melhorar?


  


2. MELHOR RESPOSTA

Samuel Leonardo
SamL

(usa XUbuntu)

Enviado em 29/07/2016 - 01:53h

ctw6av escreveu:
Eu adoraria mas não sei nada de linguagem C, o pouco que sei de python já está me ajudando a entender programação orientada a objetos, mas nada tão forte como C ainda.
...

Ué, mas quem disse fazer em C? Porque você não pega meu código e "traduz" pra Python? Daí você postaria na categoria do Python. Sò que isso exige um pouco de conhecimento com C, além de saber ponteiros, mas não acha um bom desafio não, tentar? :)


3. Re: Posso melhorar os scripts python do Vol?

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 29/07/2016 - 01:49h

Eu adoraria mas não sei nada de linguagem C, o pouco que sei de python já está me ajudando a entender programação orientada a objetos, mas nada tão forte como C ainda.




----------------------------------------------------------
A Internet... foi projetada no espírito da confiança. Nem os protocolos de rede
de comunicações nem o software que comanda os sistemas computacionais
conectados a rede foram arquitetados para operação num ambiente no qual estão sob
ataque.
----------------------------------------------------------


4. Re: Posso melhorar os scripts python do Vol? [RESOLVIDO]

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 29/07/2016 - 01:55h

Posso tentar! Passa o link de um que você considere fácil para quem não conhece C.







----------------------------------------------------------
A Internet... foi projetada no espírito da confiança. Nem os protocolos de rede
de comunicações nem o software que comanda os sistemas computacionais
conectados a rede foram arquitetados para operação num ambiente no qual estão sob
ataque.
----------------------------------------------------------


5. Re: Posso melhorar os scripts python do Vol?

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 29/07/2016 - 02:11h

Ótimo! parece um bom desafio já vou começar tentando entender umas 3 linhas que ficaram meio hard.





----------------------------------------------------------
A Internet... foi projetada no espírito da confiança. Nem os protocolos de rede
de comunicações nem o software que comanda os sistemas computacionais
conectados a rede foram arquitetados para operação num ambiente no qual estão sob
ataque.
----------------------------------------------------------


6. Re: Posso melhorar os scripts python do Vol? [RESOLVIDO]

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 29/07/2016 - 02:32h

Obrigado.





----------------------------------------------------------
A Internet... foi projetada no espírito da confiança. Nem os protocolos de rede
de comunicações nem o software que comanda os sistemas computacionais
conectados a rede foram arquitetados para operação num ambiente no qual estão sob
ataque.
----------------------------------------------------------


7. Re: Posso melhorar os scripts python do Vol? [RESOLVIDO]

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 29/07/2016 - 21:50h

O rascunho já está quase pronto, adicionei alguns níveis ao jogo.

Quer ver como está ficando?



----------------------------------------------------------
A Internet... foi projetada no espírito da confiança. Nem os protocolos de rede
de comunicações nem o software que comanda os sistemas computacionais
conectados a rede foram arquitetados para operação num ambiente no qual estão sob
ataque.
----------------------------------------------------------


8. Re: Posso melhorar os scripts python do Vol? [RESOLVIDO]

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 29/07/2016 - 22:49h

Lembrando que é só uma amostra dos níveis de 1 a 10, estou quase terminando o rascunho e o código está feio demais e sem comentários kkkk:

#!/usr/bin/env python3

from random import randint
import os

difficult = {'height': 10, 'width': 30}


def building_map(level):
""" Return a map 10x20 if no value is given """
height = level['height']
width = level['width']
matrix = []
for line in range(height):
if line == 0 or line == height - 1:
matrix.append(['#'] * width)
elif line == 1:
matrix.append([' '] * width)
matrix[line][0] = '#'
matrix[line][-1] = '#'
else:
matrix.append(['@'] * width)
matrix[line][0] = '#'
for x in range(width):
matrix[line][randint(1, width - 1)] = ' '
matrix[line][-1] = '#'
matrix[-2][width // 2] = ' '
matrix[-3][width // 2] = ' '
matrix[-1][width // 2 - 1] = '|'
matrix[-1][width // 2] = ' '
matrix[-1][width // 2 + 1] = '|'
matrix[1][1] = '*'

return matrix


def drawing_map(world):
for line in range(len(world)):
for column in range(len(world[line])):
if column != len(world[line]) - 1:
print('{}'.format(world[line][column]), end='')
else:
print('{}'.format(world[line][column]), end='\n')


for levels in range(1, 11):
mapp = building_map(difficult)
os.system('clear')
drawing_map(mapp)
print('Level: {}'.format(levels))
input('Hit enter to the next Level: ')

difficult['height'] += 3
difficult['width'] += 9

print('\n\t\tYou win!!!\n')




----------------------------------------------------------
A Internet... foi projetada no espírito da confiança. Nem os protocolos de rede
de comunicações nem o software que comanda os sistemas computacionais
conectados a rede foram arquitetados para operação num ambiente no qual estão sob
ataque.
----------------------------------------------------------


9. Re: Posso melhorar os scripts python do Vol? [RESOLVIDO]

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 30/07/2016 - 00:21h

Vou testar em uma Vm aqui para ver esse erro.





----------------------------------------------------------
A Internet... foi projetada no espírito da confiança. Nem os protocolos de rede
de comunicações nem o software que comanda os sistemas computacionais
conectados a rede foram arquitetados para operação num ambiente no qual estão sob
ataque.
----------------------------------------------------------


10. Re: Posso melhorar os scripts python do Vol? [RESOLVIDO]

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 30/07/2016 - 00:38h

Ainda estou criando os movimentos mais está sendo um grande desafio ^_^






----------------------------------------------------------
A Internet... foi projetada no espírito da confiança. Nem os protocolos de rede
de comunicações nem o software que comanda os sistemas computacionais
conectados a rede foram arquitetados para operação num ambiente no qual estão sob
ataque.
----------------------------------------------------------


11. Re: Posso melhorar os scripts python do Vol? [RESOLVIDO]

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 30/07/2016 - 00:56h

Vou sim... bom ao menos tentar irei kkkk






----------------------------------------------------------
A Internet... foi projetada no espírito da confiança. Nem os protocolos de rede
de comunicações nem o software que comanda os sistemas computacionais
conectados a rede foram arquitetados para operação num ambiente no qual estão sob
ataque.
----------------------------------------------------------


12. Re: Posso melhorar os scripts python do Vol? [RESOLVIDO]

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 30/07/2016 - 01:38h

Ufa!! Terminei só falta arrumar a bagunça agora... Testa ai! Lembrando que "r" recarrega o mapa conservando o local que o boneco está!

O mapa 10 é complicado hein!!!

#!/usr/bin/env python3

from random import randint
import os

difficult = {'height': 10, 'width': 30}
y, x = 1, 1


def building_map(level):
height = level['height']
width = level['width']
matrix = []
for line in range(height):
if line == 0 or line == height - 1:
matrix.append(['#'] * width)
elif line == 1:
matrix.append([' '] * width)
matrix[line][0] = '#'
matrix[line][-1] = '#'
else:
matrix.append(['#'] * width) # Objetos de dentro
matrix[line][0] = '#'
for n in range(width):
matrix[line][randint(1, width - 1)] = ' '
matrix[line][-1] = '#'
matrix[1][0] = '>'
matrix[-2][width // 2] = ' '
matrix[-3][width // 2] = ' '
matrix[-1][width // 2 - 1] = '|'
matrix[-1][width // 2] = ' '
matrix[-1][width // 2 + 1] = '|'

return matrix


def drawing_map(world):
global y, x
os.system('clear')
world[y][x] = '$'
for line in range(len(world)):
for column in range(len(world[line])):
if column != len(world[line]) - 1:
print('{}'.format(world[line][column]), end='')
else:
print('{}'.format(world[line][column]), end='\n')


def redraw():
global y, x, mapp
mapp[y][x] = "$"
mapp = building_map(difficult)
drawing_map(mapp)


mapp = building_map(difficult)
drawing_map(mapp)


def move():
global y, x, mapp
key = input('Move: ')
if key == 'w' and mapp[y - 1][x] == ' ':
mapp[y][x] = ' '
y -= 1

if key == 'd' and mapp[y][x + 1] == ' ':
mapp[y][x] = ' '
x += 1

if key == 's' and mapp[y + 1][x] == ' ' or mapp[y + 1][x] == '_':
mapp[y][x] = ' '
y += 1

if key == 'a' and mapp[y][x - 1] == ' ':
mapp[y][x] = ' '
x -= 1

if key == 'r':
redraw()

for levels in range(1, 10):
try:
while mapp[y][x] != mapp[-1][difficult['width'] // 2]:
print('Level: {}'.format(levels))
move()
drawing_map(mapp)

os.system('clear')
print('\t\t\n\nCongratulations... read to the next?')
y, x = 1, 1
os.system('sleep 2')
difficult['height'] += 3
difficult['width'] += 9
levels += 1
mapp = building_map(difficult)
drawing_map(mapp)
except KeyboardInterrupt:
print('\rIncompleto...')
exit(0)

print('You win!!!')
exit()




----------------------------------------------------------
A Internet... foi projetada no espírito da confiança. Nem os protocolos de rede
de comunicações nem o software que comanda os sistemas computacionais
conectados a rede foram arquitetados para operação num ambiente no qual estão sob
ataque.
----------------------------------------------------------



01 02 03



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts