Proyecto juego de disparos y niveles.
Boy a comentar un juego que empece a
hacerlo y al final me canse de trabajarlo y lo colge en https://gamejolt.com.
El juego se llama “dos y campeon”.
Me inspire para hacerlo viendo unas
imágenes por la televisión de una torre subterránea, quise hacer
un juego de disparos mobiendome por una ambientación de túneles,
arcos, escaleras en un ambiente subterráneo y me puse hacer pruebas
con terrenos con unity.
Y empezaron las primeras dificultades
cuando inicias un proyecto de videojuego nuevo.
Yo no tengo problemas ahora mismo para
animar un personaje y por teclado se balla moviendo por la pantalla
ni tengo problemas para ponerle un escript para que dispare, bamos me
defiendo asta hay lo suficiente.
Cuando modele el terreno con unity todo
bien pero al poner mi personaje en pantalla y ejecutarlo haciendo las
primeras pruebas, pues la gravedad empezó hacerme cosas extrañas,
el personaje caía en la zona del suelo con normalidad pero en la
zona hundida donde se formaba la primera cueva se quedaba como
flotando en el aire o cayendo botando como si estuviese en la
gravedad de un viaje a la luna.
Perdía mucho tiempo también haciendo
pruebas y pruebas , y al final solo me concentre en este juego en el
tema de empezar a poder cambiar de niveles cuando por ejemplo pasa
por un sitio o toca algo, y a trabajar algunos scripts en c# sobre
esto.
Me canse del tema subterráneo y decidí
hacer el juego en terreno llano, entonces pensé en un ambiente de
fabricas para jugar también con las luces y la ambientación.
En algún tutorial de unity vi imágenes
de unos molinos o turbinas girando y haciendo unas sombras de las
aspas sobre el suelo muy chulas, y como para aprender primero hay que
copiar lo que esta bien echo, eso me aconsejaron profesionales del
sector pues me puse hacer el efecto en el juego y a poner un script
para hacer el giro de las aspas, consegi hacer el efecto, pero no lo
pulí, si no no lo acabaría nunca, empiezas a tocar y a retocar y no
acabarías nunca, al final el juego era acumular puntos para la
pantalla final de “ juego completado”, lo podía alargar asta 100
o 1000 puntos, pero no pude.
Las paredes las hice con blender, y
también quise hacer las turbinas y las aspas , pero modelar con
blender si solo sabes lo justo también tiene tela, al final combine
mis dos herramientas de trabajo blender y unity.
Para girar las aspas puse este script
en C#
-----------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class aspa : MonoBehaviour {
// Use this for initialization
void Start () {
//transform.rotation =
Quaternion.Euler (0,45, 0);
}
// Update is called once per frame
void Update () {
// Es la rotacion de Angulos de
Euler en grados.
transform.Rotate (new Vector3 (33 *
Time.deltaTime, 0, 0), Space.Self);
}
}
--------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------
Pongo el enlace del juego para que lo
podáis probar directamente, no se instala nada, es como ver un vídeo
de youtube con el que podéis interactuar.
🔻🔻🔻🔻🔻🔻🔻🔻🔻🔻🔻🔻🔻🔻🔻🔻🔻🔻🔻🔻🔻🔻
🔺🔺🔺🔺🔺🔺🔺🔺🔺🔺🔺🔺🔺🔺🔺🔺🔺🔺🔺🔺
Pongo también algún script para
cambiar de nivel o de escena,
En este de aquí cuando el reloj de
tiempo llega a cero, se pone a cero, se rinicia otra vez el mismo
nivel del juego, u otro si lo hacemos y lo añadimos,
private float tiempo = 8f;
empieza a contar hacia cero desde 8
private float tiempo = 40f;
empieza acontar hacia cero desde 40
private float tiempo = 100f;
empieza acontar hacia cero desde 100
Application.LoadLevel (1); casi
al final del script puse esta linea y me funciona.
}
}
}
}
}
hay que cerrar con llaves, yo estoy aprendiendo,
practicando habeces pierdo los nervios , abriendo, cerrando,
poniendo, quitando, llaves
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;///
///
////////////////////////7777777777777777777777777puestoyo
ahoraaaaaaaaa sin esto no ba
///
public class reiniciojuego :
MonoBehaviour {
public Text contador1;
public Text fin1;
private float tiempo = 8f;
// Use this for initialization
void Start () {
contador1.text = " " +
tiempo;
fin1.enabled = false;
}
// Update is called once per frame
void Update ()
{
tiempo -= Time.deltaTime;
contador1.text = " " +
tiempo.ToString ("f0");
if (tiempo <= 0) {
contador1.text = "0";
fin1.enabled = true;
{
//void OnTriggerEnter(Collider other) {
//if (other.gameObject.CompareTag
("ogri2 (1)CAMPEONNNNNNNNNNNNNNNNNNN")){
Destroy (gameObject, 0.0f);
{
Application.LoadLevel (1);
}
}
}
}
No hay comentarios:
Publicar un comentario