[Duvida]Como fazer uma barra de vida usando o canvas?obs:so a parte de diminuir a barra
2 participantes
Página 1 de 1
[Duvida]Como fazer uma barra de vida usando o canvas?obs:so a parte de diminuir a barra
Eai galera mais uma vez aqui pedindo ajuda, dessa vez em uma barra de vida usando o canvas e scripts, alguem poderia me ajudar?
hellkiller- Mestre
- PONTOS : 4032
REPUTAÇÃO : 170
Áreas de atuação : Programação em C#,
Modelagem,
GameArt.
Respeito as regras :
Re: [Duvida]Como fazer uma barra de vida usando o canvas?obs:so a parte de diminuir a barra
Neste vídeo o Paulo faz um sistema idêntico mas o dele é de sede/fome:
A partir de 1hr 3min;
A partir de 1hr 3min;
Stipp- Avançado
- PONTOS : 3618
REPUTAÇÃO : 102
Idade : 25
Áreas de atuação : Programação: C#, VB.NET, PHP e outras.
Modelagem: Blender.
Respeito as regras :
Re: [Duvida]Como fazer uma barra de vida usando o canvas?obs:so a parte de diminuir a barra
Vlw amigo!
hellkiller- Mestre
- PONTOS : 4032
REPUTAÇÃO : 170
Áreas de atuação : Programação em C#,
Modelagem,
GameArt.
Respeito as regras :
Re: [Duvida]Como fazer uma barra de vida usando o canvas?obs:so a parte de diminuir a barra
Assim cara, não sei se do modo que ele ensinou vai funcionar no meu script, esse aqui:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using System;
public class FomeSede : MonoBehaviour
{
public RectTransform barfome;
private Vector3 startSize;
public float fome;
public float sede;
public int fomecheio = 100;
public int sedecheio = 100;
public float estamina;
public int estaminacheio = 100;
public int HpCheio = 100;
public float Hp = 100;
public Texture fomeTexture;
public Texture sedeTexture;
public Texture EstaminaTexture;
public Texture HpTexture;
public Texture Contorno;
public
// Use this for initialization
void Start()
{
fome = fomecheio;
sede = sedecheio;
Hp = HpCheio;
estamina = estaminacheio;
startSize = barfome.localScale;
Cursor.visible = false;
}
// Update is called once per frame
void Update()
{
if (sede > 2)
{
sede -= (Time.deltaTime) / 240;
}
if (fome > 2)
{
fome -= (Time.deltaTime) / 240;
}
if (estamina > 2)
{
estamina -= (Time.deltaTime) / 400;
}
if (fome >= fomecheio)
{
fome = fomecheio;
}
else if (fome <= 0)
{
fomecheio = 0;
}
if (sede >= sedecheio)
{
sede = sedecheio;
}
else if (sede <= 0)
{
sedecheio = 0;
}
if (estamina >= estaminacheio)
{
estamina = estaminacheio;
}
else if (estamina <= 0)
{
estaminacheio = 0;
}
if (Hp >= HpCheio)
{
Hp = HpCheio;
}
else if (Hp <= 0)
{
HpCheio = 0;
}
if (fome <= 3)
{
perdeHp();
}
if (sede <= 3)
{
perdeHp();
}
if (estamina <= 3)
{
perdeHp();
}
if (Hp <= 2)
{
}
}
void OnGUI()
{
GUI.DrawTexture(new Rect(93,600,Screen.width/15.4f/fomecheio*fome,Screen.height/40), fomeTexture);
// GUI.DrawTexture(new Rect(94,600,Screen.width/15.4f/fomecheio*fome,Screen.height/40), Contorno);
GUI.DrawTexture(new Rect(204,600,Screen.width/15.4f/sedecheio*sede,Screen.height/40), sedeTexture);
// GUI.DrawTexture(new Rect(202,600,Screen.width/15.4f/sedecheio*sede,Screen.height/40), Contorno);
GUI.DrawTexture(new Rect(1403,600,Screen.width/15.4f/HpCheio*Hp,Screen.height/40), HpTexture);
// GUI.DrawTexture(new Rect(1403,600,Screen.width/15.4f/HpCheio*Hp,Screen.height/40), Contorno);
GUI.DrawTexture(new Rect(1293,600,Screen.width/15.4f/estaminacheio*estamina,Screen.height/40), EstaminaTexture);
// GUI.DrawTexture(new Rect(1293,600,Screen.width/15.4f/sedecheio*sede,Screen.height/40), Contorno);
}
void perdeHp()
{
Hp -= (Time.deltaTime) / 2f;
}
public void RecuperaHp()
{
{
if (Hp <= 98)
{
Hp += (Time.deltaTime) / 0.005f;
}
}
}
}
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using System;
public class FomeSede : MonoBehaviour
{
public RectTransform barfome;
private Vector3 startSize;
public float fome;
public float sede;
public int fomecheio = 100;
public int sedecheio = 100;
public float estamina;
public int estaminacheio = 100;
public int HpCheio = 100;
public float Hp = 100;
public Texture fomeTexture;
public Texture sedeTexture;
public Texture EstaminaTexture;
public Texture HpTexture;
public Texture Contorno;
public
// Use this for initialization
void Start()
{
fome = fomecheio;
sede = sedecheio;
Hp = HpCheio;
estamina = estaminacheio;
startSize = barfome.localScale;
Cursor.visible = false;
}
// Update is called once per frame
void Update()
{
if (sede > 2)
{
sede -= (Time.deltaTime) / 240;
}
if (fome > 2)
{
fome -= (Time.deltaTime) / 240;
}
if (estamina > 2)
{
estamina -= (Time.deltaTime) / 400;
}
if (fome >= fomecheio)
{
fome = fomecheio;
}
else if (fome <= 0)
{
fomecheio = 0;
}
if (sede >= sedecheio)
{
sede = sedecheio;
}
else if (sede <= 0)
{
sedecheio = 0;
}
if (estamina >= estaminacheio)
{
estamina = estaminacheio;
}
else if (estamina <= 0)
{
estaminacheio = 0;
}
if (Hp >= HpCheio)
{
Hp = HpCheio;
}
else if (Hp <= 0)
{
HpCheio = 0;
}
if (fome <= 3)
{
perdeHp();
}
if (sede <= 3)
{
perdeHp();
}
if (estamina <= 3)
{
perdeHp();
}
if (Hp <= 2)
{
}
}
void OnGUI()
{
GUI.DrawTexture(new Rect(93,600,Screen.width/15.4f/fomecheio*fome,Screen.height/40), fomeTexture);
// GUI.DrawTexture(new Rect(94,600,Screen.width/15.4f/fomecheio*fome,Screen.height/40), Contorno);
GUI.DrawTexture(new Rect(204,600,Screen.width/15.4f/sedecheio*sede,Screen.height/40), sedeTexture);
// GUI.DrawTexture(new Rect(202,600,Screen.width/15.4f/sedecheio*sede,Screen.height/40), Contorno);
GUI.DrawTexture(new Rect(1403,600,Screen.width/15.4f/HpCheio*Hp,Screen.height/40), HpTexture);
// GUI.DrawTexture(new Rect(1403,600,Screen.width/15.4f/HpCheio*Hp,Screen.height/40), Contorno);
GUI.DrawTexture(new Rect(1293,600,Screen.width/15.4f/estaminacheio*estamina,Screen.height/40), EstaminaTexture);
// GUI.DrawTexture(new Rect(1293,600,Screen.width/15.4f/sedecheio*sede,Screen.height/40), Contorno);
}
void perdeHp()
{
Hp -= (Time.deltaTime) / 2f;
}
public void RecuperaHp()
{
{
if (Hp <= 98)
{
Hp += (Time.deltaTime) / 0.005f;
}
}
}
}
hellkiller- Mestre
- PONTOS : 4032
REPUTAÇÃO : 170
Áreas de atuação : Programação em C#,
Modelagem,
GameArt.
Respeito as regras :
Tópicos semelhantes
» como criar uma barra de vida?
» Como deixar a barra de vida fixa??
» fazer o player perde vida e sua barra de vida descer conforme o dano
» Como Faz pra barra de vida aparecer de uma cena pra outra?
» [Dúvida] Como fazer uma barra de rolagem para botões com a função GUI
» Como deixar a barra de vida fixa??
» fazer o player perde vida e sua barra de vida descer conforme o dano
» Como Faz pra barra de vida aparecer de uma cena pra outra?
» [Dúvida] Como fazer uma barra de rolagem para botões com a função GUI
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos