Balón Prisionero - Code Club World Projects

Anuncio
Scratch
2
BalónPrisionero
AllCodeClubsmustberegistered.Byregisteringyourclubwecanmeasureour
impact,andwecancontinuetoprovidefreeresourcesthathelpchildrenlearnto
code.Youcanregisteryourclubatcodeclubworld.org.
Introducción
Enesteproyectoaprenderásacrearunjuegodeplataformasenel
quetendrásqueesquivarbalonesenmovimientoyllegaralfinal
delnivel.
Listadetareasdelaactividad
FollowtheseINSTRUCTIONSonebyone
Pruebatuproyecto
ClickonthegreenflagtoTESTyourcode
Guardatuproyecto
MakesuretoSAVEyourworknow
1
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
2
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Paso1:Movimientosdelpersonaje
Empezaremosporcrearunpersonajequepuedamoversehaciala
derechaylaizquierda,yquepuedasubirseapostes.
Listadetareasdelaactividad
CreaunnuevoproyectodeScratchyborraelobjetogato
paraqueelproyectoestévacío.Puedesencontrarel
editoronlinedeScratchenjumpto.cc/scratch-new.
Paraesteproyecto,deberíasdetenerunacarpeta
llamada‘RecursosdelProyecto’,enlaqueencontrarásla
imagendefondoquenecesitas.Asegúratedequetienes
estacarpeta,ypreguntaallíderdelClubsinola
encuentras.
Cargalaimagen‘background.png’comonuevoescenario.
¡Tambiénpuedesañadirundibujoquehayashechotú!Si
vasadibujartupropionivel,asegúratedequelospostes
ylasplataformassondecoloresdiferentes,ydequehaya
unapuerta(oalgoparecido)alaqueeljugadortenga
quellegar.Tuproyectodeberíaparecerseaéste:
3
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Añadeunnuevoobjeto,queserátupersonaje.Esmejor
queescojasunobjetoquetengavariosdisfraces,así
podráscrearelefectodequeestácaminando.
Usaremoslasflechasdeltecladoparaqueelpersonajese
muevaendiferentesdirecciones.Cuandoeljugadorpulse
laflechaderecha,queremosqueelpersonajemirehacia
laderecha,déunospasosenesadirecciónycambieal
siguientedisfraz:
4
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Hazunapruebapresionandolabanderayacontinuación
manteniendopulsadalatecladerecha.¿Semueveel
personajehacialaderecha?¿Parecequeelpersonajeestá
caminando?
Paraqueelpersonajesemuevahacialaizquierda,
tendrásqueañadirotrobloque si dentrodelbucle por
siempre
.¡Recuerdaprobarelnuevocódigopara
asegurartedequefunciona!
Parasubirseaunposte,tupersonajedeberíamoverseun
pocohaciaarribasiemprequesepulselaflechaarribay
estétocandoelcolorcorrecto.Añadeestecódigoalbucle
porsiempre
detupersonaje:
Pruebalosmovimientosdetupersonaje:¿Puedessubirte
alospostesamarillosyllegaralfinaldelnivel?
5
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Guardatuproyecto
Reto:Acabarelnivel
¿Puedesañadirmáscódigoalpersonaje,paraquediga
algo si llegaalapuertamarrón?
Guardatuproyecto
Paso2:Gravedadysaltos
Vamosahacerquetupersonajesemuevadeformamásrealista
añadiendogravedadyhaciendoquepuedasaltar.
6
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Listadetareasdelaactividad
Puedequetehayasfijadoenquetupersonajepuede
salirsedelasplataformasyquedarsesuspendidoen
mediodelaire.Intentasalirtedeunaplataformaaver
quépasa.
Paraarreglaresto,vamosaañadirgravedadaljuego.
Creaunanuevavariableconelnombre gravedad .Si
quieres,puedesesconderestavariabledelescenario.
Añadeestenuevobloquedecódigo,quefijalagravedad
enunnúmeronegativo,ydeestamaneracambiala
coordenadaydelpersonajecontinuamente.
Presionalabanderayarrastraatupersonajehastala
partesuperiordelescenario.¿Quéocurre?¿Lagravedad
funcionacomoesperabas?
7
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
¡Lagravedadnodeberíahacercaeratupersonajedelas
plataformasodeunposte!Añadeunbloque si alcódigo
paraquelagravedadsólofuncionecuandoelpersonaje
estéenmediodelaire.Elcódigodegravedaddeberíaser
así:
Pruebalagravedadotravez.¿Secaetupersonajecuando
estáenunaplataformaoenunposte?¿Puedesdejarte
caerdelbordedelasplataformasalnivelinferior?
8
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Tambiénvamosahacerquetupersonajesaltecuandoel
jugadorpulselatecladeespacio.Unaformamuysencilla
dehacerestoesmoveralpersonajehaciaarribaunas
cuantasveces,usandoestecódigo:
Comolagravedadestáconstantementeempujandoatu
personaje4píxeleshaciaabajo,necesitarásindicarun
númerosuperiora4enelbloque cambiarypor(4) .
Cambiaelnúmerohastaqueteparezcabienlaalturaala
queelpersonajesalta.
Sipruebasestecódigoverásquefuncionabien,peroel
movimientonoesdemasiadofluido.Paraquelossaltos
parezcanmásnaturales,tendrásquemoveralpersonaje
encantidadescadavezmáspequeñas,hastaquedejede
saltar.
Paraconseguiresto,creaotravariablellamada alturade
salto
.Denuevo,puedesesconderestavariablesilo
prefieres.
Eliminaelcódigodesaltoquehasañadidoatupersonaje,
ysustitúyeloporéste:
9
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Estecódigohacequeelpersonajesemuevahaciaarriba
8píxeles,después7,5píxeles,después7píxeles,yasí
hastaqueelpersonajeacabedesaltar.Estoharáqueel
saltoparezcamuchomásfluido.
Cambiaelvalordeiniciodelavariable alturadesalto y
pruebahastaqueteparezcabienlaalturaalaqueel
personajesalta.
Guardatuproyecto
Reto:Saltomejorado
Hasconseguidoqueelpersonajesaltecadavezquese
presionalatecladeespacio,inclusosiestáenmediodel
aire.Puedeshacerunapruebamanteniendopulsadala
tecladeespacio.¿Puedesarreglaresto,paraqueel
personajesólopuedasaltar si estátocandouna
plataformaazul?
Guardatuproyecto
10
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Paso3:Esquivarlosbalones
Ahoraquehasconseguidoqueelpersonajesemueva,vamosaañadir
losbalonesqueelpersonajetendráqueesquivar.
Listadetareasdelaactividad
Creaunnuevoobjetobalón.Puedesescogereltipode
balónquemásteguste.
Cambiaeltamañodelbalónparaqueelpersonajepueda
saltarporencimadeél.Intentasaltarsobreelbalónpara
probarlo.
Añadeestecódigoalbalón:
11
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Estecódigocreaunnuevoclondelbalóncada3
segundos.Cadanuevobalónsedesplazaalolargodela
plataformasuperior.
Presionalabanderaparaprobarelcódigo.
Añademáscódigoalobjetobalónparaquelosbalonesse
muevanalolargodelastresplataformas.
12
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Paraterminar,¡necesitaráscódigoparacuandounbalón
toquealpersonaje!Añadeestecódigoalobjetobalón:
Tambiéntendrásqueañadirestecódigoalpersonaje,para
quevuelvaalprincipiocuandounbalónletoque:
Hazunapruebaconelpersonajeparaversivuelveal
principiocuandounbalónletoca.
13
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Guardatuproyecto
Reto:Balonesaleatorios
Todoslosbalonesquetupersonajetienequeesquivarson
iguales,ysiempreaparecencada3segundos.Intenta
mejorarlosbalones,paraque:
noseantodosiguales
aparezcandespuésdeuntiempoaleatorio
seandetamañoaleatorio
Guardatuproyecto
14
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Paso4:¡Láseres!
¡Vamosaañadirláseresparaqueseaunpocomásdifícilacabareljuego
!
Listadetareasdelaactividad
Añadeunnuevoobjetoaljuego,conelnombre‘Láser’.
Deberíatener2disfraces,llamados‘on’y‘off’.
Colocatunuevoláserdondequieras,entredos
plataformas.
Añadecódigoalláserparaquecambieentrelosdos
disfraces.
15
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Siloprefieres,puedes esperar untiempo alazar entre
elcambiodedisfraces.
Parafinalizar,añadecódigoalláserparaqueelmensaje
‘tocado’seenvíecuandoellásertoquealpersonaje.Este
códigoeselmismoqueelquehasañadidoalobjeto
balón.
Nonecesitasañadirmáscódigoalpersonaje,¡yasabelo
quetienequehacercuandoalgoletoca!
Pruebaeljuegoparaversierescapazdepasaratravés
delláser.Cambialostiemposenelcódigo esperar silos
láseressondemasiadofácilesodifíciles.
16
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Reto:Másobstáculos
Sitodavíacreesqueeljuegoesdemasiadofácil,puedes
añadirmásobstáculosalnivel.Puedesañadircualquier
cosa,perotedamosalgunasideas:
Unamariposavoladoraasesina;
Plataformasqueaparecenydesaparecen;
Pelotasdetenisquecaenyqueelpersonajedebe
evitar.
Inclusopodríascrearmásdeunfondo,yhacerqueel
personajepasealsiguientenivelcuandollegaalapuerta
marrón:
17
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Guardatuproyecto
18
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Reto:Gravedadmejorada
Hayotropequeñoerroreneljuego:lagravedadno
funcionasicualquierpartedetupersonajeestátocando
unaplataformaazul,¡inclusosucabeza!.Puedes
comprobarlosihacessubiralpersonajecasihastaarriba
deunposteydespuéslomueveshacialaizquierda.
¿Puedesarreglaresteerror?Parahacerlo,tienesque
cambiarelcolordelospantalonesdelpersonaje(entodos
losdisfraces)…
…yacontinuaciónsustituirelcódigo:
por:
¡Recuerdaprobarestasmejorasparaasegurartedeque
hasarregladoelerror!
19
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Guardatuproyecto
Reto:Másvidas
¿Puedesdaraljugador3 vidas ,enlugardesimplemente
devolverloalprincipiocadavez?Eljuegopodríafuncionar
así:
Eljugadorempiezacon3vidas;
Cuandoalgotocaaljugador,pierdeunaviday
vuelvealprincipio;
Sinolequedanvidas,eljuegoacaba.
Guardatuproyecto
20
©RaspberryPiFoundation.UKRegisteredCharity1129409.TheseprojectsareforuseoutsidetheUKonly.Moreinformationatwww.codeclubworld.org.
ThiscourseworkisdevelopedonGitHub,atwww.github.com/CodeClub.
Descargar