Minecraft 2D

Transcrição

Minecraft 2D
Python
2
Minecraft2D
AllCodeClubsmustberegistered.Byregisteringyourclubwecanmeasureour
impact,andwecancontinuetoprovidefreeresourcesthathelpchildrenlearnto
code.Youcanregisteryourclubatcodeclubworld.org.
Introdução
Nesteprojeto,vocêdesenharáefarámelhoriasnocódigodeuma
versão2DdoMinecraft.
Listadeatividade
SigaestasINSTRUÇÕESumaauma
Testeseuprojeto
CliquenabandeiraverdeparaTESTAR
Salveseuprojeto
Certifique-sedeSALVARseutrabalho
1
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Passo1:Jogandoojogo
ListadeAtividades
ExecuteoarquivoMinecraft2D.pyevocêveráumatela
queseparececomesta:
Seupersonageméocírculoamareloqueestaránoaltoe
doladoesquerdodasuateladejogo!Useassetaspara
movê-lopelomundo,que,comovocêpodever,écheiode
recursosdiferentes:sujeira(osquadradosmarrons),
grama(osquadradosverdes)eágua(osazuis).
Vocêpodepressionarabarradeespaçoparacoletar
recursos.Porexemplo,sevocêmoverparaumquadrado
deáguaepressionarabarradeespaço,vocêveráque
agoravocêtemmaiságuanoseuestoque.Pegueum
poucodecadatipoderecurso.
2
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Pressioneosnúmerosde1a4paracolocarumrecursono
mapa.Porexemplo,pressione3paracolocarmaiságua
nomapa.Issosóvaifuncionarsevocêtiveráguanoseu
estoque.
Vocêpodefabricarumitemmantendopressionadaatecla
Shiftepressionandoumnúmero.Esseprocessode
fabricaçãosignificaquevocêcombinaráitemsquevocêjá
tememseuestoqueparacriaroutrositemsnovos.Tente
manterpressionadaateclaShiftepressionaronúmero4
paracriarumnovotijolo(desdequevocêtenha2sujeiras
e1águanoseuestoque).
3
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Àmedidaemquevocêjoga,vocênotaráquevocêpode
manterapenasummáximode20unidadesdecada
recursonoseuestoque.Sevocêquiseraumentareste
limite,vocêpodemudarovalordeumavariável
chamada MAXTILES queestánoarquivovariables.py.
#aquantidademáximadecadarecursoquevocêpode
manternoseuestoque
#---------------------------------------------------MAXTILES=20
Mudeestenúmeroeclique2vezesnoarquivo
Minecraft.pyparaarmazenarumaquantiamaiordecada
recurso.
SalveSeuProjeto
4
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Desafio:Construaseumundo
Brinquecomojogoevejaoquevocêconsegueconstruir.
Vocêconsegueconstruirumacasa,comumjardimeum
lago?Umapiscina?Oquemaisvocêconseguecriar?
Aquitemosumexemplosimples:
SalveSeuProjeto
Passo2:Melhorandoovisual
Apenasterblocoscoloridosparacadarecursonãoémuitointeressante,
entãovamostentarmudarosgráficosdecadarecurso.
ListadeAtividades
NapastadeMinecraft2Dvocêveráqueexistemmuitas
imagens,umaparacadarecurso.Sevocêclicarcomo
botãodireitoemumadessasimagenseabrí-lanoeditor
deimagem,vocêpoderámudarográficodeumrecurso.
Aquitemosalgunsgráficosmelhoradosparaagrama.Eu
acrescenteidiferentestonsdegramaeatéalgumas
5
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
flores:
Salveaimagemecarreguenovamenteojogo.Vocêverá
onovográfico:
SalveSeuProjeto
6
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Desafio:Melhorandoográfico
Abraasimagensdesujeira,águaetijolo,evejasevocê
conseguemelhorarográficodestesrecursos.
SalveSeuProjeto
Desafio:Customizandoojogo
Abraoarquivodevariáveisvariables.pyevocêencontrará
algunscódigosparaconfiguraraimagemeaslegendas
paraajaneladejogo:
#otextodabarradetítulo/imagem
#---------------------------------pygame.display.set_caption('pygamewindow')
pygame.display.set_icon(pygame.image.load('player.png'))
Editeestas2linhasdecódigoparacustomizarojogo.
Lembre-sequesevocêmudaroíconeparaumnovo
arquivo,vocêteráquecriá-lo!
SalveSeuProjeto
Passo3:Acrescentandonovosrecursos
Vocêtemapenas4recursosnoseujogo;sujeria,grama,águaetijolo.
Vamosacrescentarmais!
7
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
ListadeAtividades
Vamosprimeiramentecriarumgráficoparaumnovo
recursochamado‘madeira’.Vocêpodefazerumacópiade
umaimagemquejáexisteerenomeá-la.Vocêpode
entãoeditarumaimagemparaqueelasepareçacom
madeira:
Quandovocêtiversuaimagemdemadeira,vocêpode
acrescentaresterecursoaoseujogo.Abraoarquivo
variables.pyeacrescentemadeiracomoumrecurso:
#variáveisrepresentandoosdiferentesrecursos
#---------------------------------------------DIRT=0
GRASS=1
WATER=2
BRICK=3
WOOD=4
8
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Nomesmoarquivo,existetambémumalistadetodosos
recursos.Vocêdeveacrescentarmadeiraaestalista
também:
#umalistadetodososrecursosdejogo
#--------------------------------------resources=[DIRT,GRASS,WATER,BRICK,WOOD]
Vocêtambémprecisaráconfiguraraimagemparao
recursomadeiranodicionáriodetexturas,destamaneira
ográficocorretoserámostrado:
#umdicionárioligandoosrecursoscomastexturas
#------------------------------------------------textures={
DIRT:
pygame.image.load('dirt.png'),
GRASS:
pygame.image.load('grass.png'),
WATER:
pygame.image.load('water.png'),
BRICK:
pygame.image.load('brick.png'),
WOOD:pygame.image.load('wood.png')
}
Notequevocêprecisaacrescentarumavírgula( , )
depoisdaimagemdotijolonalinhaacima.
Vocêpodetambémacrescentarmadeiraaodicionáriodo
estoque.Vocêpodeescolhercomquantasunidadede
madeiravocêiniciaojogo:
9
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
#Aquantidadedecadarecursoquevocêtemnoinício
dojogo
#---------------------------------------------------------inventory={
DIRT:10,
GRASS:10,
WATER:10,
BRICK:0,
WOOD:5
}
Sevocêrodarojogo,vocêveráqueagoravocêtem
madeiraquevocêpodecolocarnomapa,evocêverá
tambémquenoinício,aindanãoexistenenhuma
madeiranomapa:
Parainiciarojogocomalgumamadeira,vocêprecisa
editaroarquivoMinecraft2D.py.Abraoarquivoe
acrescentaaslinhasabaixo:
#pegueumnúmeroaleatórioentre0e9
randomNumber=random.randint(0,10)
#AGUAseonúmeroaleatóriofor1ou2
ifrandomNumberin[1,2]:
10
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
tile=WATER
#GRAMAseonúmeroaleatóriofor3ou4
elifrandomNumberin[3,4]:
tile=GRASS
#ACRESCENTEESSAS2LINHAS:MADEIRAseonúmero
aleatóriofor5
elifrandomNumberin[5]:
tile=WOOD
#casocontrárioseráSUJEIRA
else:
tile=DIRT
Vocêsabeoqueestecódigofaz?Paracadaespaçono
mapa,oprogramaescolheumnúmeroaleatórioentre0
e9.Semprequeonúmeroaleatóriofor5,serácolocada
madeiranomapa.Depoisquevocêacrescentareste
código,vocêverámadeiranoseujogo:
SalveSeuProjeto
11
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Desafio:Acrescentadorecursos
Useasintruçõesacimaparaacrescentarseuspróprios
recursos.Vocêpodeacrescentarlava,metal,areiaou
qualqueroutracoisaquevocêconseguirimaginar!
SalveSeuProjeto
Passo4:Criandonovosrecursos
Vocêpodeacrescentarmaisrecursosaoseujogoqueojogadorpoderá
terapenasseeleosfabricar.Vamoscriarumnovorecursochamado
prancha.Ojogadorpoderácombinar3unidadesdemadeiraparafazer
umalindapranchabrilhante!
ListadeAtividades
SigaasinstruçõesdoPasso3acimaparacriaronovo
recurso‘prancha’.Noentanto,garantaquenãoexista
nenhumapranchanoestoquedojogador,equenão
existanenhumapranchanomapanoiníciodojogo.
Parapermitirqueojogadorfabriquepranchasde
12
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
madeira,vocêprecisaráadicionarumaregrade
fabricaçãonoseujogo.Abraoarquivovariables.pye
acrescenteoseguintecódigoaodicionárioderegrasde
fabricação:
#regrasparafabricarnovosobjetos
#---------------------------------craft={
BRICK:{WATER:1,DIRT:2},
PLANK:{WOOD:3}
}
Estecódigodizaojogoqueumapranchapodesercriada
sehouver3madeirasnoestoquedojogador.Nãoesqueça
avírguladepoisdalinhaacima.
Vocêprecisargarantirqueojogadorsaibacomofabricar
pranchas,paraissoadicionenovasinstruçõesàlista:
#listadeintruções
#----------------instructions=[
"Minecraft2D",
"Instructions:",
"ARROWKEYS=move",
"SPACE=Pickuptile",
"NUMBERKEYS=Placetile",
"SHIFT+NUMBERKEYS=Craft
tile",
"",
"CraftingRules:",
"BRICK=2xDIRT+1xWATER",
"PLANK=3xWOOD"
]
13
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Sevocêcoletar3madeirasesegurarateclashifte
pressionar6,vocêveráumanovapranchanoseu
estoque.Apósistovocêpoderáadicionarapranchade
madeiraaoseumapa!
SalveSeuProjeto
Desafio:Desenvolvaseuprópriojogo
Useoquevocêaprendeuparafabricarseuspróprios
recursosesuaprópriasregrasdefabricação.Porexemplo,
vocêpoderiacriarregrasdefabricaçãoparaproduzirvidro
(apartirdeareia),diamante(apartirdevidro),ouárvores
(apartirdemadeira,águaesujeira).
SalveSeuProjeto
14
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.

Documentos relacionados

Baixar PDF - Languages

Baixar PDF - Languages All Code Clubs must be registered. By registering your club we can measure our impact, and we can continue to provide free resources that help children learn to code. You can register your club at ...

Leia mais

Baixar PDF

Baixar PDF All Code Clubs must be registered. By registering your club we can measure our impact, and we can continue to provide free resources that help children learn to code. You can register your club at ...

Leia mais

Caça fantasmas

Caça fantasmas Fazer com que os fantasmas apareçam com uma frequência menor; Fazer os fantasmas menores. Teste seu jogo algumas vezes até que você esteja satisfeito com o nível de dificuldade.

Leia mais

Jogo da Memória

Jogo da Memória All Code Clubs must be registered. By registering your club we can measure our impact, and we can continue to provide free resources that help children learn to code. You can register your club at ...

Leia mais

Arte em ASCII

Arte em ASCII Execute o arquivo clicando em Run -> Run Module . Você verá outra janela aparecer, que é o Shell do Python. Esse é o lugar onde seu programa vai rodar. Se tudo funcionou como esperado, você verá ...

Leia mais

Secret Messages

Secret Messages All Code Clubs must be registered. By registering your club we can measure our impact, and we can continue to provide free resources that help children learn to code. You can register your club at ...

Leia mais

Baixar PDF

Baixar PDF © Raspberry Pi Foundation. UK Registered Charity 1129409. These projects are for use outside the UK only. More information at www.codeclubworld.org. This coursework is developed on GitHub, at www.g...

Leia mais