Brazilian Modding Studio
Olá, seja bem vindo à Comunidade BMS!

Para se registrar no fórum, siga os passos:

1 - Clique em "Registrar-se" aqui em baixo;
2 - Aceite os termos de serviço;
3 - Escolha um nome de usuário e senha;
4 - Realize o login no fórum clicando em "Conectar-se".

Compartilhe
avatar
Mensagens Nível 4
Mensagens Nível 4
Mensagens : 266
Reputação : 38
Desde : 27/09/2015
Localização : Cps - SP
Link : goo.gl/BgNT9p
Ver perfil do usuário
  • Reputação da mensagem: 100% (2 votos)
em Seg 21 Dez 2015 - 0:23
Primeiro de tudo crie um GameObject e nomeie-o de ShowDano;

Depois crie um texto UI com nome ShowDanoTXT e coloque dentro do ShowDano. Assim tendo 2 objetos.



Depois adicione um canvas UI como component do ShowDanoTXT e deixe como na imagem abaixo. O canvas vai fazer seu texto UI ser renderizado na tela.



Apos crie um prefab vazio e arraste o ShowDano para dentro dele.



Depois crie um C# script assim:

Código:

using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class DanoShowSlider : MonoBehaviour {
 private float tempo=1f; // tempo maximo de queda
 private float velocidade=50; // velocidade de queda

 // Use this for initialization
 void Start () {
 }
 // Update is called once per frame
 void Update () {
 transform.Translate(Vector2.down * velocidade * Time.deltaTime); // faz descer
 tempo -= Time.deltaTime;
 if (tempo <= 0){
 DestroyObject(gameObject); // se o tempo acabar o objeto eh destruido
 }
 }
}
E coloque esse script no ShowDano



Depois crie mais um  C# script:

Código:


using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class showdamage : MonoBehaviour {
 private GameObject obj; // Objeto em que fica o script que guarda o valor de dano

 // Use this for initialization
 void Start () {
 obj = GameObject.Find("Vida"); // Nome do objeto em que fica o script que guarda o valor de dano
 var j = obj.GetComponent<GUIscript>(); // Variavel temporaria do script que guarda o valor de dano
 gameObject.GetComponent<Text>().text = "-" + j.danotxt.ToString(); // Setamos aqui o valor que eh para ser mostrado
 }
 
 // Update is called once per frame
 void Update () {
 
 }
}
E coloque no objeto ShowDanoTXT



Por fim crie o script de vida de seu personagem e uma Public void nele que vai fazer todo o trabalho:
Código:

[HideInSpector]
public int danotxt
public GameObject show; // Coloque aqui o Prefab que fizemos acima

// debaixo de Update(){...} coloque isso:

public void perdevida(int dano, int escudo){
 dano -= escudo; // o dano bruto menos o escudo de seu personagem. Se nao tiver escudo ponha 0.
 life -= dano; // A variavel life menos o dano que sobrou depois de descontar o escudo
 var X = Random.Range(-80.0f,80.0f); // Aqui ficam as distancias no eixo X em que os textos irao aparecer. Util para um nao ficar em cima do outro.
 GameObject.Instantiate(show,new Vector2(X,100),transform.rotation); // instancia o objeto
 danotxt = dano;
 }

Depois para chamar o metodo criado eh simples.
Código:


perdevida(dano,escudo);


Se fez tudo certo este eh o resultado final ( lembrando que voce pode estilizar todo este texto, trocando fontes etc... )


______________________________
Não importa o quão pequeno você
comece, apenas comece algo que
importa.


Mods cleo de minha autoria: https://db.tt/91oW1EWC
Jogos de minha autoria: nenhum por enquanto
ModLoader VIsual Editor WIP
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum