CIFP-Jose-luis-Garci / ReturnToEarth

1 stars 1 forks source link

Programar cambio de personaje #36

Open AlejandroLechon opened 2 years ago

alhgo commented 2 years ago

Ya que Sergio me ha contactado por este tema, le pongo de responsable. Comento por aquí lo que le he dicho por mensaje:

Creo que lo más práctico es crear un prefab con cada personaje (que incluya todo: scripts, animaciones, animator, etc) y un array de GameObjects donde ponemos todos. Ahora solo queda que el usuario elija uno, que es elegir una "clave" de ese array. Esa elección la guardamos como variable int estática en el GameManager y cada vez que cargamos una escena instanciamos el personaje elegido, "sacándolo" del array de GameObjects

Ahora queda la pregunta de ¿cómo se cambia de personaje? en un menú inicial o en un menú del juego. En ambos casos el proceso es similar:

Como siempre, os ayudo con el código si empezáis a subirlo al repositorio

alhgo commented 2 years ago

Después de hablar con Sergio me quedó más claro de la mecánica: los personajes están instanciados desde el inicio y el usuario los cambia de forma similar al GTA. Lo que propongo aquí es que cada personaje tenga su script de Player Manager (que puede ser el mismo para todos si tienen las mismas animaciones y mecánicas), pero desactivado. Cuando hacemos click en un botón de la UI, desactivamos el script del personaje que estamos manejando, activamos del del seleccionado (y por tanto empezará a responder) y movemos la cámara hasta él (con suavizado para que no sea brusca)

alhgo commented 2 years ago

En la escena de pruebas ya hay un script operativo, que usa los sprites de cambio de personaje. Funciona con arrays. Si se lleva a la escena hay que crear 5 cámaras virtuales (una para cada personaje y otra de transición). Todas, junto con los personajes y los sprites hay que llevarlas a los arrays del script para que funcione. De momento, funciona con los números del teclado numérico del 0 al 3 (al hacerlo en mi mac no puedo usar las flechas del gamepad), pero en clase probaremos a vincularlo al Gamepad. Faltaría añadir algún sonidito

AlejandroLechon commented 2 years ago

Perfecto. Muchas gracias por la rápida respuesta Álvaro. Nos ponemos con ello. Gracias!

El lun, 24 ene 2022 a las 19:47, Álvaro Holguera @.***>) escribió:

En la escena de pruebas ya hay un script operativo, que usa los sprites de cambio de personaje. Funciona con arrays. Si se lleva a la escena hay que crear 5 cámaras virtuales (una para cada personaje y otra de transición). Todas, junto con los personajes y los sprites hay que llevarlas a los arrays del script para que funcione. Faltaría añadir algún sonidito

— Reply to this email directly, view it on GitHub https://github.com/CIFP-Jose-luis-Garci/ReturnToEarth/issues/36#issuecomment-1020426709, or unsubscribe https://github.com/notifications/unsubscribe-auth/AVSGJKH3D5MMCJOIUSVTJMDUXWNEXANCNFSM5I5JXQJA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you authored the thread.Message ID: @.***>