Estoy intentando hacer un sistema de rondas como Street fighter por ejemplo, pero entre que no tengo ni puta idea y voy bastante sobre la marcha y mirando la doc muy poco xD por qué veo que está explicado muy vagamente.
Cuál sería la manera más fácil?
Ahora mismo estoy haciendo lo siguiente, intento resumirlo:
- He creado una lista de jugadores en el GameManager para almacenar los jugadores que se van conectando y tenerlo en cada jugador local
- En la función RPC donde recibe daño el jugador -> llamo un evento pasando el número del jugador por parámetro (el 1 lado izq, 2 lado der)
- En dicho método del evento recorro la lista que he mencionado anteriormente y si el número de jugador es el mismo -> le sumo 1 muerte
- Tras esto, compruebo en el mismo método del evento para terminar la partida o reiniciar la ronda dependiendo si soy yo o no y la cantidad de "muertes"/rondas, lo hago recorriendo la supuesta lista
y en el método que se encargaría de reiniciar la ronda es donde reinicio el contador de la ronda y lo siguiente, para respawnear otra vez
if (PhotonNetwork.IsMasterClient) {
PhotonNetwork.DestroyAll();
}
spawnPlayer();
EDIT: se me olvidaba decir que no furula xd, cuando llega a 0 HP un jugador no se reinicia la ronda ni se respawnean y tampoco peta nada
#15454 y sabes si a ciencia cierta se ejecuta esa parte del código? Mete algún log para cerciorarte primero (si no lo has hecho ya) xD
#15455 Soy un puto gorila y no había llamado al evento para añadir los jugadores en la lista local en el Start() y desde el mismo evento llamo a otro evento que actualiza la lista local de cada jugador
La cosa es que ahora se llama al evento de reiniciar la ronda...
El caso es por ejemplo el jugador 1 sería el MasterClient, al "matar" al jugador 2 -> se reinicia la ronda y el jugador 1 se respawnea bien, la cosa es que el jugador 2 se respawnea 2 veces y el contador de ronda va rapidísimo y en el jugador 2 se ve la pantalla en negra, supongo que no encontrará camara :(, si mato a las 2 instancias se rompe todo xd
#15456 y si en vez de matar todo, reinicias valores y seteas posiciones y listo? Salvo que tengas una necesidad 100% real de destruir todo lo que haya y volver a crearlo, realmente un segundo round no tiene más que resetear las vidas y posiciones, hacer una cuenta atrás para que inicie el combate, y poco más xD
Lo había pensado de hacerlo de esa manera que me dices tú, pero soy un gorila y me había emperrado con destruir todo y tal, al final lo he hecho como has dicho tú y ya va. Gracias tote
Por cierto, he apoyado este kickstarter porque soy muy fan de Grant Abbitt: https://www.kickstarter.com/projects/bentristem/complete-drawing-course-learn-to-be-an-artist-from-scratch
Habrá que desempolvar la tableta y volver a marranear con el 2D.
Por si a alguien le interesa, son 10 pounds, unos 14€
#15465 Nooo, es un curso para aprender a dibujar con el gamedev como leitmotiv xD
Igual 28k es pasta, pero los cursos de esta gente suelen estar muy bien.
#15471 pues le ha faltado pedir que el candidato sepa componer musica y hacer mamadas hasta el final sin lagrimear.
Ole sus cojones