SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida :D
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
TROCAR DE CENA QUANDO O DEBUGLOG APARECER
Queria saber como destruir objetos que tenham uma tag especifica.
[TUTORIAL] Tirar Print da Tela do Jogo
Script de pegar um item/coletável pressionando a tecla ''E''
Cidade 3D,Pedido
Dúvida sobre a licença Personal Unity
é possivel criar uma animação para multiplos objetos?
[TUTORIAL] Sistema de fome, sede, barra de vida, barra de estamina, itens e dano por queda
Builds unitywebgl estão causando o erro Exception memory out of bounds IOS
[RESOLVIDO] Quero usar um WaitForSeconds porem não consigo.
Erro na Unity Manager
[TUTORIAL] MENU PRINCIPAL - UNITY 5 (5.3 ou superior) (Com UI)
[TUTORIAL] AI Enemy 2.0 + animações ( Jogos de terror )
O QUE FAZER PARA O PERSONAGEM DETECTAR O TERRAIN ?
Calcular força do impacto recebido pelo objeto
[____SUGESTÕES PARA O FÓRUM____]
fiz um jogo na unity mas nao consigo entrar no executavel
linha do canvas e as ancoras não aparecem no unity
[RESOLVIDO] Sistema de vida (corações)
Unity3D - Meu boneco fica girando no eixo Y sem parar, parece o sonic
como desativar objeto aleatório de uma array
Como Fazer para uma partícula aparecer por um período de tempo e sumir?
Como fazer os jogos terem relevância?
Randomizar um sprite!
[DUVIDA]alguém que entende de marketing pode ajudar?
Como fazer o persogem após bater ele impulsione na posição oposta
DOTS - ECS + JOBS + Burst!
The freddy krueger's pie (Game)
Por que a rotação do Box Collider não está certa?
Como fazer o onTriggerEnter carregar uma cena?
[RESOLVIDO] Erro de carregamento no Android
botoes e texturas
Como fazer o inimigo atirar projétil na direção do jogador? por favor
Materiais e texturas em otimização
[TUTORIAL] Unity 3D - NavMesh
visual code dando erro
Como resolver problema com lag por conta de sprites Instanciados? Mesmo destruindo em 2f
Usar o mouse?
Objeto em movimento bate no box collider e fica tremendo até bugar a cena?
Facebook SDK "launcher:checkReleaseDuplicateClasses"
Como abrir portas/gavetas com click do mouse, usando raycast!
Alguém sabe o nome desse efeito?
Ajuda - Como crio um botão touch usando o Bolt visual Scripting
as luzes diminuem mt o fps no android, alguma dica de como melhorar isso?
click mouse
RigidBody Agarrando no BoxCollider [Mobile 3D]
Como alterar informações de objeto UI
Desconectar jogador após acabar o tempo de jogo utilizando a rede - Bolt
quero adicionar mais colisores a esse script de movimentação
SEM CURSOR EM JOGO.
Conexão entre app Android e internet.
CURSOR DO MOUSE NÃO DESAPARECE AO CLICAR EM "JOGAR" NO MENU
Script não funcionando
Destruir um objeto ao colidir com o componente dele.
RigidBodyFPSController não carrega o script, é do pacote standard assets
Preciso saber matemática para programar?
[RESOLVIDO] Prefab com altura diferente na Scene
Problema com os FPS do jogo
pq da erro ao tentar mover arquivo para unity
[RESOLVIDO] Como saber se um Transform está se movendo?
Problema com animaç]ao de fechar porta ao clicar com mouse raycast
Fala Pessoal! saiu um trailer da sequência do meu jogo Project Lazarus parte 2
Exportação do SketchUp para Unity
[RESOLVIDO] Como fazer com que os valores do bool sejam iguais ao da lista?
[RESOLVIDO] Trocar valor de variável apos X segundos que ativar o triggercollider
PEGADAS DO PLAYER QUE APARECEM APÓS ANDAR SOBRE UMA ÁREA "ÚMIDA". UNITY 2D
[RESOLVIDO] Erro com Facebook SDK
Como deixar touch apenas 50% da tela (código que estou usando)
terreno plano pesa muito em mobile?
Dúvida sobre o script de Mover Objetos
Duvida sobre um sistema de Lap Timer junto com o box collider!
Como passar cena sem perder o que conseguiu em outra?
[RESOLVIDO] OverlapBox detectar colisão
APK trava com Admob
[Lançado] TapNav: Vaporwave Edition já está disponível!
[RESOLVIDO] Tentando implementar sons no Character Controller
como posso criar um filtro de cor igual post processing?
[RESOLVIDO] Problema com movimentação do Joystick
[RESOLVIDO] Inimigo aparecer depois de certa ação
Como redirecionar o usuário pelo app do Facebook?
[TUTORIAL] Codificar e Decodificar Numeros
Como fazer esse mesmo código usando ScriptableObject?
[RESOLVIDO] Pontuação na Unity 3D!
[RESOLVIDO] Unity 2018.2.17 Problemas com o Package Manager
BARRA DE ENERGIA NÃO RESETA QUANDO O PLAYER RENASCE.
[RESOLVIDO] Erro no pacote do Unity Ads
Fazer o personagem apontar na direção do movimento
QUE ? Porque não funcionou ? :(
Personagem da AS, animações do mixamo dão erro ao usar avatar do personagem.
[RESOLVIDO] Meus personagens não iniciam animação no jogo compilado, o que pode ser ?
Como deixar touch apenas 50% da tela
Sistema de tiro teleguiado
[TUTORIAL] Script para jogo FPS Mobile
[RESOLVIDO] Como faço para o personagem entrar e sair do carro?
[RESOLVIDO] Como salvar itens da fase?
Oque é API?
Salvar dados unity
NavMesh em uma esfera
[TUTORIAL] Dicas Para Otimização de Código
Hoje à(s) 12:07 pm
Hoje à(s) 12:04 pm
Hoje à(s) 11:24 am
Hoje à(s) 12:27 am
Hoje à(s) 12:24 am
Ontem à(s) 10:38 pm
Ontem à(s) 11:58 am
Ontem à(s) 10:44 am
Ontem à(s) 9:24 am
Seg Set 28, 2020 10:07 pm
Seg Set 28, 2020 8:46 pm
Seg Set 28, 2020 8:15 pm
Seg Set 28, 2020 10:35 am
Dom Set 27, 2020 11:22 pm
Dom Set 27, 2020 11:00 pm
Dom Set 27, 2020 10:50 pm
Dom Set 27, 2020 10:55 am
Sab Set 26, 2020 5:03 pm
Sab Set 26, 2020 4:16 pm
Sab Set 26, 2020 2:26 pm
Sab Set 26, 2020 11:12 am
Sab Set 26, 2020 10:18 am
Sab Set 26, 2020 8:11 am
Qui Set 24, 2020 9:16 pm
Qui Set 24, 2020 1:14 pm
Qui Set 24, 2020 12:10 pm
Qui Set 24, 2020 10:13 am
Qui Set 24, 2020 6:10 am
Qua Set 23, 2020 11:56 pm
Qua Set 23, 2020 9:12 pm
Qua Set 23, 2020 8:53 pm
Qua Set 23, 2020 3:11 pm
Qua Set 23, 2020 8:23 am
Qua Set 23, 2020 1:44 am
Ter Set 22, 2020 9:12 pm
Ter Set 22, 2020 11:37 am
Seg Set 21, 2020 10:54 pm
Seg Set 21, 2020 9:07 pm
Seg Set 21, 2020 4:47 pm
Dom Set 20, 2020 9:37 pm
Dom Set 20, 2020 12:59 am
Sab Set 19, 2020 6:30 pm
Sab Set 19, 2020 6:04 pm
Sab Set 19, 2020 4:51 pm
Sab Set 19, 2020 10:24 am
Sab Set 19, 2020 10:21 am
Sab Set 19, 2020 10:03 am
Sab Set 19, 2020 2:30 am
Sex Set 18, 2020 10:13 pm
Sex Set 18, 2020 8:14 am
Sex Set 18, 2020 8:09 am
Qui Set 17, 2020 2:36 pm
Qui Set 17, 2020 10:07 am
Qua Set 16, 2020 11:22 pm
Qua Set 16, 2020 5:31 pm
Qua Set 16, 2020 12:10 pm
Qua Set 16, 2020 12:02 am
Ter Set 15, 2020 11:33 pm
Ter Set 15, 2020 11:32 pm
Ter Set 15, 2020 5:28 pm
Ter Set 15, 2020 11:52 am
Ter Set 15, 2020 6:13 am
Seg Set 14, 2020 3:51 pm
Seg Set 14, 2020 3:41 pm
Seg Set 14, 2020 11:06 am
Seg Set 14, 2020 10:12 am
Seg Set 14, 2020 9:14 am
Seg Set 14, 2020 3:21 am
Seg Set 14, 2020 3:11 am
Dom Set 13, 2020 1:07 am
Sab Set 12, 2020 8:01 pm
Sab Set 12, 2020 6:34 pm
Sab Set 12, 2020 6:32 pm
Sab Set 12, 2020 2:28 pm
Sab Set 12, 2020 2:15 pm
Sab Set 12, 2020 1:20 pm
Sab Set 12, 2020 12:28 pm
Sab Set 12, 2020 1:37 am
Sex Set 11, 2020 7:08 pm
Sex Set 11, 2020 4:30 pm
Sex Set 11, 2020 4:26 pm
Sex Set 11, 2020 1:59 pm
Sex Set 11, 2020 1:40 pm
Qui Set 10, 2020 8:39 pm
Qui Set 10, 2020 6:26 pm
Qui Set 10, 2020 1:01 pm
Qui Set 10, 2020 2:19 am
Qui Set 10, 2020 2:08 am
Qui Set 10, 2020 1:51 am
Qua Set 09, 2020 10:03 pm
Qua Set 09, 2020 5:43 pm
Qua Set 09, 2020 6:21 am
Ter Set 08, 2020 10:47 pm
Ter Set 08, 2020 8:47 pm
Ter Set 08, 2020 12:59 pm
Ter Set 08, 2020 9:55 am
Seg Set 07, 2020 10:41 pm
Seg Set 07, 2020 9:32 pm
Seg Set 07, 2020 9:11 pm
cafezinho71
cafezinho71
Magnatah
JohnRambo
JohnRambo
gersoneson
JulioWinchester
cafezinho71
be2244
BatataBugada54321
FelipeSouza11
ViniciusTKH
Gabriel M
Gabriel M
Antônio T
Dhryeel
NKKF
BatataBugada54321
Shidote
Giwn
JulioWinchester
Th2y
thales.ulisses
AndryelBlanco
LúcioHenrique098
brizaloka
Magnatah
Callyde Jr
glauco
Th2y
Fagner
Th2y
speedluk
Fagner
MarcosSchultz
mitonoo
Wily
Magnatah
marcio21
TioUV
MarcosSchultz
diegopds
Lohmz
JulioWinchester
Magnatah
Magnatah
Magnatah
ProBrStalker
BatataBugada54321
NKKF
NKKF
FelipeSouza11
Magnatah
bruno700mb
darkrj
Magnatah
Ricardito
Magnatah
Magnatah
fantastic137
SamonBR
Callyde Jr
Fagner
Th2y
Shidote
ViniciusTKH
TioUV
MarcosSchultz
MarcosSchultz
MarcosSchultz
mateusschw
MayLeone
KurotamaXIII
Ploleo
RodriGO3477
PacienteZERO
Fagner
BlesseD
zhentox
MarcosSchultz
MarcosSchultz
Fagner
SauloeArthur
ProBrStalker
Callyde Jr
tautologias357
MarcosSchultz
MarcosSchultz
MarcosSchultz
Callyde Jr
bruno700mb
Callyde Jr
JulioWinchester
FlavinGiroflex
merike11
TioUV
Weslley
GattiMene
Magnatah

BARRA DE ENERGIA NÃO RESETA QUANDO O PLAYER RENASCE.

Ir em baixo

DÚVIDA BARRA DE ENERGIA NÃO RESETA QUANDO O PLAYER RENASCE.

Mensagem por ViniciusTKH em Qui Set 10, 2020 11:52 am

Quando o player respawna a barra de vida reseta, mas a barra de energia não, ou seja, ele continua como estava antes do player morrer.
Gostaria de alguma solução para este problema. 
Código:
//Scripit responsável pelos elementos de UI

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

public class UIManager : MonoBehaviour
{
    public Slider barraEnergia;
    public static UIManager instance;
    private WaitForSeconds carregamentoEnergia = new WaitForSeconds(0.1f);
    private Coroutine carregando;

    public Slider healthUI;
    public Image playerImage;
    public Text playerName;
    public Text livesText;

    public GameObject enemyUI;
    public Slider enemySlider;
    public Text enemyName;
    public Image enemyImage;

    public float enemyUITime = 4f;

    private float enemyTimer;
    private Player player;

    private void Awake()
    {
        instance = this;
    }

    // Start is called before the first frame update
    void Start()
    {
        player = FindObjectOfType<Player>();

        //Define o número máximo da barra de vida.
        healthUI.maxValue = player.maxHealth;

        //Quantidade de vida atual.
        healthUI.value = healthUI.maxValue;

        //Nome do Player em cima da barra de vida.
        playerName.text = player.playerName;

        //Foto do Player.
        playerImage.sprite = player.playerImage;

        //Número de vidas do PLayer.
        AtualizarVidas();

        //Quantidade de energia atual do Player.
        player.energiaAtual = player.energiaMax;

        //Barra de energia do Player cheia.
        barraEnergia.maxValue = player.energiaMax;

        //Barra de energia cheia.
        barraEnergia.value = player.energiaMax;
    }

    // Update is called once per frame
    void Update()
    {
        enemyTimer += Time.deltaTime;
        if(enemyTimer >= enemyUITime)
        {
            enemyUI.SetActive(false);
            enemyTimer = 0;
        }
    }

    //Função que atualiza os valores na barra de vida do Player.
    public void AtualizaBarra(int quantidade)
    {
        healthUI.value = quantidade;
    }


    //Função responsável por atualizar os valores da barra de vida do Inimigo.
    public void AtualizarBarraInimigo(int maxHealth, int currentHealth, string name, Sprite image)
    {
        enemySlider.maxValue = maxHealth;
        enemySlider.value = currentHealth;
        enemyName.text = name;
        enemyImage.sprite = image;

        enemyTimer = 0;

        enemyUI.SetActive(true);
    }

    //Função que atualiza o número de vidas na tela.
    public void AtualizarVidas()
    {
        livesText.text = "x " + FindObjectOfType<GameManager>().vidas.ToString();
    }

    //Função responsável por fazer a quantidade de energia diminuir na barra de energia.
    public void UsarEnergia(int quantidade)
    {
      if (player.energiaAtual - quantidade >= 0)
        {
            player.energiaAtual -= quantidade;
            barraEnergia.value = player.energiaAtual;

            if (carregando != null)
                StopCoroutine(carregando);

            carregando = StartCoroutine(CarregandoEnergia());
        }
        else
        {
            Debug.Log("Sem Energia!");
        }
    }

    private IEnumerator CarregandoEnergia()
    {
        yield return new WaitForSeconds(2f);

        while(player.energiaAtual < player.energiaMax)
        {
            player.energiaAtual += player.energiaMax / 75;
            barraEnergia.value = player.energiaAtual;
            yield return carregamentoEnergia;
        }

        carregando = null;
    }
}

Código:
using System.Collections;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using UnityEngine;

public class Player : MonoBehaviour
{
    private float h;
    private float z;

    public float velocidadeMax = 4;
    public float forcaPulo = 400;
    public float minHeight, maxHeight;
    public int maxHealth;
    public string playerName;
    public Sprite playerImage;
    public int energiaAtual;
    public int energiaMax;

    private int vidaAtual;
    private float velocidadeAtual;
    private Rigidbody rb;
    private Animator anim;
    private Transform verificaChao;
    private bool noChao;
    private bool estaMorto = false;
    private bool estaParaDireita = true;
    private bool pulo = false;

    public float distanciaDash = 15f;
    bool emDash;
    float duplaTecla;
    KeyCode ultimaTecla;

    // Start is called before the first frame update
    void Start()
    {
        rb = GetComponent<Rigidbody>();
        anim = GetComponent<Animator>();
        verificaChao = gameObject.transform.Find("VerificaChao");
        velocidadeAtual = velocidadeMax;
        vidaAtual = maxHealth;
        energiaAtual = energiaMax;
    }

    // Update is called once per frame
    void Update()
    {
        noChao = Physics.Linecast(transform.position, verificaChao.position, 1 << LayerMask.NameToLayer("Ground"));

        //Animação.
        anim.SetBool("OnGround", noChao);
        anim.SetBool("Dead", estaMorto);

        //Pulo do personagem.
        if (Input.GetButtonDown("Jump") && noChao)
        {
            pulo = true;
        }

        //Animação de ataque.
        if (Input.GetButtonDown("Fire1"))
        {
            anim.SetTrigger("Attack");
        }

        if(!emDash && !estaMorto && noChao){
            if (Input.GetKeyDown(KeyCode.A) && energiaAtual >= 25)
            {
                if (duplaTecla > Time.time && ultimaTecla == KeyCode.A)
                {
                    StartCoroutine(Dash(-1f));
                }
                else
                {
                    duplaTecla = Time.time + 0.5f;
                }

                ultimaTecla = KeyCode.A;
            }
            if (Input.GetKeyDown(KeyCode.D) && energiaAtual >= 25)
            {
                if (duplaTecla > Time.time && ultimaTecla == KeyCode.D)
                {
                    StartCoroutine(Dash(1f));
                }
                else
                {
                    duplaTecla = Time.time + 0.5f;
                }

                ultimaTecla = KeyCode.D;
            }
        }
    }

    private void FixedUpdate()
    {

        if (!estaMorto)
        {
            //Movimentação do Player.
            h = Input.GetAxis("Horizontal");
            z = Input.GetAxis("Vertical");

            if (!noChao)
                z = 0;

            //Velocidade.
            if(!emDash)
            rb.velocity = new Vector3(h * velocidadeAtual, rb.velocity.y, z * velocidadeAtual);

            //Animação andando.
            if (noChao)
                anim.SetFloat("Speed", Mathf.Abs(rb.velocity.magnitude));

            //Vira sprite do Player de acordo com a direção em que ele está virado.
            if(h > 0 && !estaParaDireita)
            {
                Flip();
            }
            else if(h < 0 && estaParaDireita)
            {
                Flip();
            }

            //Pulo.
            if (pulo)
            {
                pulo = false;

                //Força do pulo.
                rb.AddForce(Vector3.up * forcaPulo);
            }

            //Limita movimentação do player.
            float minWidth = Camera.main.ScreenToWorldPoint(new Vector3(0, 0, 10)).x;
            float maxWidth = Camera.main.ScreenToWorldPoint(new Vector3(Screen.width, 0, 10)).x;
            rb.position = new Vector3(Mathf.Clamp(rb.position.x, minWidth + 1, maxWidth - 1),
                rb.position.y,
                Mathf.Clamp(rb.position.z, minHeight, maxHeight));
        }
    }

    //Função responsável por mudar a sprite.
    void Flip()
    {
        estaParaDireita = !estaParaDireita;

        Vector3 scale = transform.localScale;
        scale.x *= -1;
        transform.localScale = scale;
    }

    void VelocidadeZero()
    {
        velocidadeAtual = 0;
    }

    void ResetaVelocidade()
    {
        velocidadeAtual = velocidadeMax;
    }

    //Função responsável por fazer o Player tomar dano.
    public void TomarDano(int dano)
    {
        if (!estaMorto)
        {
            vidaAtual -= dano;
            anim.SetTrigger("HitDamage");
            FindObjectOfType<UIManager>().AtualizaBarra(vidaAtual);

            //Se a vida do Player for menor ou igual a zero:
            if(vidaAtual <= 0)
            {
                estaMorto = true;
                FindObjectOfType<GameManager>().vidas--;
                FindObjectOfType<UIManager>().AtualizarVidas();

                if (estaParaDireita)
                {
                    //Quando o Player morrer, ele será jogado para trás.
                    rb.AddForce(new Vector3(-3, 5, 0), ForceMode.Impulse);
                }
                else
                {
                    //Quando o Player morrer, ele será jogado para trás.
                    rb.AddForce(new Vector3(3, 5, 0), ForceMode.Impulse);
                }
            }
        }
    }

    void PlayerRespawn()
    {
        estaMorto = false;
        vidaAtual = maxHealth;
        FindObjectOfType<UIManager>().AtualizaBarra(vidaAtual);
        anim.Rebind();

        float minWidth = Camera.main.ScreenToWorldPoint(new Vector3(0, 0, 10)).x;
        transform.position = new Vector3(minWidth, 10, -4);
    }

    public IEnumerator Dash(float direction)
    {
        UIManager.instance.UsarEnergia(25);
        anim.SetTrigger("Dash");
        emDash = true;
        rb.velocity = new Vector3(rb.velocity.x, 0f, 0f);
        rb.AddForce(new Vector3(distanciaDash * direction, 0f, 0f), ForceMode.Impulse);
        yield return new WaitForSeconds(0.4f);
        emDash = false;
    }
}

Obrigado.

ViniciusTKH
Iniciante
Iniciante

PONTOS : 43
REPUTAÇÃO : 2
Respeito as regras : BARRA DE ENERGIA NÃO RESETA QUANDO O PLAYER RENASCE. WvDYdlf

Voltar ao Topo Ir em baixo

DÚVIDA Re: BARRA DE ENERGIA NÃO RESETA QUANDO O PLAYER RENASCE.

Mensagem por Callyde Jr em Qui Set 10, 2020 6:26 pm

Quando voce for respawna resete tanto a vida quanto a energia
Callyde Jr
Callyde Jr
Programador

Masculino PONTOS : 3610
REPUTAÇÃO : 433
Idade : 41
Áreas de atuação : Iniciante em modelagem Blender,Sketchup
Programador
Idealista

Meu Canal
https://www.youtube.com/ch
Respeito as regras : BARRA DE ENERGIA NÃO RESETA QUANDO O PLAYER RENASCE. WvDYdlf

http://unnygames.000webhostapp.com/

Voltar ao Topo Ir em baixo

Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum