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 Very Happy
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Script de imã
colocar um botão na tela e corresponder ao teclado do pc
materiais unity
É assim que se começa um "novo mundo" na era medieval? kkjk
[Duvida] Sobre cena de carregamento.
Formação de Equipe Battle of Worlds
Unity remote play android 6.0
Pegar uma informação do banco de dados e visualizar na scene da Unity
Procuro membros para minha Equipe (Programadores, designers, etc)
[TUTORIAL] Unity 5.5 - Splash Screen
[TUTORIAL] Unity 5 - Como utilizar o Animator
Recrutamento de equipe
Time.timeScale continua em 0
Movimentação de inimigo
Thomblers VS Pimblers - Teste
DUVIDA SOBRE REFLECTION PROBE OU ALGO Q DEIXE CROMADO A PINTURA
[____TÓPICO LIVRE____] FALE O QUE QUISER
Criar Simulador de Sinuca
Dúvida aplicando tutorial do Angry Birds em camera perspective e veiculo em movimento
Dash2D
Coroutines Loop
R7 - GOOH (resident evil 7)
InputField/String Com formato para data XX/XX/XXXX
Estou com varias duvidas sobre o inputfield do ui canvas
(Dúvida) Setar ultima string de uma array
[Ajuda] Unity 5.5.0 não abre
Destruindo objeto em uma outra cena
modo desenvolvedor xbox one?
como usar o Lookat com o addforce do rigidibody?
Cryengine 3?
Transferência de valores.
Teste de usuário para um jogo
Ajuda com variaveis multiplas?
Animação da arma (Mirar/Recarregar)
script
[TUTORIAL] Barra de VIDA / HP contínua
Tornar objeto filho por script
Animacao2D
Duvida Animation Play não faz nada
Unity 5 Bugado
Escolher que resoluções jogo vai ter
Baixar Documentaçao Unity 3D?
COMO DESATIVAR O SCRIPT "FisrtPersonController" DO PLAYER ATRAVÉS DE OUTRO SCRIPT
Ajuda Movimento2D
AJUDA COM BAKE EM LUZES
Tem como editar o inspector?
[TUTORIAL] Como Abrir e Fechar Gavetas - Unity 5
Números aleatorios
[TUTORIAL]Save Load Criptografado (Atualizado 07/12/16)
Trocar de true pra false em uma animação bool
[TUTORIAL] Alterarando o ícone do Executável do Jogo
Baixar Unity ?
Unity 5 + um pouco de conhecimento ou Skyrim?
Procuro vagas em equipes [Programador]
Help minha void oncollisionenter nao funciona e nao consio encontrar o do por que :/
Converter um Gameobject para uma byte array (byte[])
Asset de FPS - AU FPS Kit [unity 5] v1.5
[TUTORIAL] Dicas de otimização
Preciso saber o ponto medio entre dois Transform
[TUTORIAL] Banco de dados || MySQL
Unity 5.5 BETA (Mudanças)
[TUTORIAL] Serialização - JSON
[TUTORIAL] Melhorar a estabilidade dos veículos com Wheel Collider
[TUTORIAL]Como colocar videos ou intros simples na unity free
[TUTORIAL] Deformar o terreno
[TUTORIAL] Scripts Básicos para Iniciantes
Qual asset comprar?
Ideias para level design 3D
[TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)
Alien Planet - Atmospheric scattering test
Integração PHP e Unity
Ideia Inovadora
[TUTORIAL] DANO POR QUEDA e BARRA DE VIDA CONTÍNUA no mesmo script
Pra que serve o [SerializeField] e por que usar ele?
Forma uma equipe
Ontem à(s) 10:24 pm
Ontem à(s) 10:14 pm
Ontem à(s) 9:26 pm
Ontem à(s) 7:51 pm
Ontem à(s) 7:45 pm
Ontem à(s) 7:05 pm
Ontem à(s) 1:05 pm
Ontem à(s) 10:55 am
Ontem à(s) 9:45 am
Ontem à(s) 6:34 am
Ontem à(s) 6:28 am
Sex Dez 09, 2016 10:28 pm
Sex Dez 09, 2016 10:26 pm
Sex Dez 09, 2016 10:26 pm
Sex Dez 09, 2016 10:19 pm
Sex Dez 09, 2016 10:11 pm
Sex Dez 09, 2016 9:02 pm
Sex Dez 09, 2016 5:57 pm
Sex Dez 09, 2016 3:07 pm
Sex Dez 09, 2016 12:12 pm
Sex Dez 09, 2016 12:03 pm
Qui Dez 08, 2016 10:37 pm
Qui Dez 08, 2016 7:40 pm
Qui Dez 08, 2016 7:39 pm
Qui Dez 08, 2016 6:44 pm
Qui Dez 08, 2016 6:26 pm
Qui Dez 08, 2016 11:42 am
Qui Dez 08, 2016 11:15 am
Qui Dez 08, 2016 8:45 am
Qui Dez 08, 2016 6:17 am
Qua Dez 07, 2016 11:58 pm
Qua Dez 07, 2016 11:55 pm
Qua Dez 07, 2016 10:57 pm
Qua Dez 07, 2016 10:22 pm
Qua Dez 07, 2016 10:03 pm
Qua Dez 07, 2016 8:51 pm
Qua Dez 07, 2016 8:47 pm
Qua Dez 07, 2016 8:42 pm
Qua Dez 07, 2016 8:36 pm
Qua Dez 07, 2016 8:32 pm
Qua Dez 07, 2016 8:30 pm
Qua Dez 07, 2016 8:22 pm
Qua Dez 07, 2016 7:47 pm
Qua Dez 07, 2016 5:54 pm
Qua Dez 07, 2016 5:50 pm
Qua Dez 07, 2016 4:31 pm
Qua Dez 07, 2016 4:16 pm
Qua Dez 07, 2016 3:40 pm
Qua Dez 07, 2016 3:26 pm
Qua Dez 07, 2016 3:01 pm
Qua Dez 07, 2016 2:31 pm
Qua Dez 07, 2016 10:42 am
Ter Dez 06, 2016 10:46 pm
Ter Dez 06, 2016 10:30 pm
Ter Dez 06, 2016 6:02 pm
Ter Dez 06, 2016 5:01 pm
Ter Dez 06, 2016 3:31 am
Seg Dez 05, 2016 11:52 pm
Seg Dez 05, 2016 6:52 pm
Seg Dez 05, 2016 6:48 pm
Seg Dez 05, 2016 6:32 pm
Seg Dez 05, 2016 6:17 pm
Seg Dez 05, 2016 6:15 pm
Seg Dez 05, 2016 4:08 pm
Seg Dez 05, 2016 3:10 pm
Seg Dez 05, 2016 1:36 pm
Seg Dez 05, 2016 12:35 pm
Dom Dez 04, 2016 10:52 pm
Dom Dez 04, 2016 6:37 pm
Dom Dez 04, 2016 6:33 pm
Dom Dez 04, 2016 5:46 am
Dom Dez 04, 2016 3:34 am
Sab Dez 03, 2016 11:36 pm
Sab Dez 03, 2016 11:31 pm
Sab Dez 03, 2016 1:32 pm
Weverton Borges da Silva
weslleyFx
lucasfera15
aluno virtual
ismarspn
mafipt
anizioNoob
oscar gonzalex
hen000
Callyde Jr
Callyde Jr
AndyShow
Hardencio
AndyShow
Hardencio
AndyShow
MarcosSchultz
souteramoto
Deiverson
Manawydan
luKkaSs
foxtenn
leandroinforware
leandroinforware
hetrodo_gamer
hetrodo_gamer
kleytonpb
AndyShow
Dom3000
Callyde Jr
Matrirxp
zBanidor
MarcosSchultz
zBanidor
artplayer
MarcosSchultz
DoctorGame15
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
hetrodo_gamer
Marlonwanger
diegopds
Dom3000
joabr
natanael.olimpio
hetrodo_gamer
hetrodo_gamer
Callyde Jr
dstaroski
Dom3000
Creat Games
Dom3000
hetrodo_gamer
dimmuo
Dom3000
Dom3000
artplayer
weslleyFx
RenanMSV
weslleyFx
Deiverson
John Rambo
Deiverson
Madness
Madness
weslleyFx
weslleyFx
artplayer
Madness
weslleyFx
weslleyFx
mafipt

Mudar cor ao tomar dano

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

PEDIDO Mudar cor ao tomar dano

Mensagem por Marc7 em Dom Out 09, 2016 5:02 pm

Boa tarde pessoal,

como eu faço aquele efeito de quando um objeto é golpeado por outro, por exemplo, uma nave toma um tiro, muda a cor do objeto?

a mudança de cor ocorre quando o tiro apenas acerta, e como são muitos tiros acertando dá esse efeito que a cor está piscando, muito comum nos jogos shmups de nave como no video em anexo:



qual script para fazer isso?
agradeço desde já!!

Marc7
Avançado
Avançado

PONTOS : 360
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

PEDIDO Re: Mudar cor ao tomar dano

Mensagem por Marc7 em Seg Out 10, 2016 1:34 pm

Bom dia,

qual o script para alterar a cor do inimigo quando ele tomar dano, como ocorre com o cavalo marinho e os inimigos no video?
queria alterar para a cor branca mesmo.

se for preciso postar o script de saude dos inimigos, posto aqui depois.

Marc7
Avançado
Avançado

PONTOS : 360
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

PEDIDO Re: Mudar cor ao tomar dano

Mensagem por wischutz em Ter Out 11, 2016 9:17 am

Seu jogo é 3D ou 2D?

Se for 3D, você pode duplicar o mesh e colocar um material branco nele, com transparência, ou seja, criar uma textura de efeito. Esse mesh de efeito ficaria oculto e você chamaria um método de mostrar ele e ocultar em x segundos.

Se for 2D, basta criar um método de mudar a cor do sprite. Se não ficar legal, você pode colocar outro objeto como na solução 3D, só que um sprite com o efeito desejado e deixar como filho do inimigo e acionar ele quando sofrer dano.

wischutz
Programador

Masculino PONTOS : 662
REPUTAÇÃO : 10
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

PEDIDO Re: Mudar cor ao tomar dano

Mensagem por Marc7 em Qua Out 12, 2016 12:14 am

Fala wischutz! o jogo é em 2D.
me explique melhor como fazer isso.
essa imagem é um print do prefab de uma nave inimiga com seus componentes, é o prefab Inimigo2 na aba Hierachy.



ele tem um script SaudeInimigos como pode ver na imgem, que é o que gerencia a tomada de dano. segue o script:

Código:
using UnityEngine;
using System.Collections;

public class SaudeInimigos : MonoBehaviour {

    public int hp = 1;   
    public int scoreValue = 30;              // A quantidade adicionada à pontuação do jogador quando o inimigo morrer.
    public AudioClip deathClip;              // O som para tocar quando o inimigo morrer.

    private AudioSource enemyAudio;        // Referência ao audio source.
       
    void Awake() {
        // Configurando as referências.
        enemyAudio = GetComponent<AudioSource>();
    }
   
    public void Damage(int damageCount) {
        hp -= damageCount;

        if (hp <= 0) {
            //Cria o efeito de partícula.
            EfeitoEspecialScript.Instance.ExplEnemy1(transform.position);
            Destroy(gameObject);
            ScoreManager.score += scoreValue;  // Aumentar a pontuação por valor pontuação do inimigo.
            Death();    // O inimigo está morto.
        }
    }

    void Death() {
        // Altera o clipe de áudio da fonte de áudio para o clipe de morte e o reproduz (isto irá parar o clipe de jogo machucado).
        enemyAudio.clip = deathClip;
    }
}
o quê que eu posso escrever nesse script para fazer esse efeito de mudança da cor da nave?
e que outro objeto eu coloco como filho do Inimigo2?
veja que o prefab não tem mesh como componente, apenas o Sprite Renderer, então o que posso mudar nele?

Marc7
Avançado
Avançado

PONTOS : 360
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

PEDIDO Re: Mudar cor ao tomar dano

Mensagem por wischutz em Qua Out 12, 2016 9:25 am

Opa!

Como é 2d, pode usar essa versão alterando a cor para vermelho, já que não dá pra "branquear" o sprite:

Código:
using UnityEngine;
    using System.Collections;

    public class SaudeInimigos : MonoBehaviour
{

    public int hp = 1;
    public int scoreValue = 30;              // A quantidade adicionada à pontuação do jogador quando o inimigo morrer.
    public AudioClip deathClip;              // O som para tocar quando o inimigo morrer.

    private AudioSource enemyAudio;         // Referência ao audio source.

    SpriteRenderer rend;

    void Awake()
    {
        // Configurando as referências.
        enemyAudio = GetComponent<AudioSource>();

        rend = GetComponent<SpriteRenderer>();
    }

    public void Damage(int damageCount)
    {
        hp -= damageCount;

        MudaCor();

        if (hp <= 0)
        {
            //Cria o efeito de partícula.
            EfeitoEspecialScript.Instance.ExplEnemy1(transform.position);
            Destroy(gameObject);
            ScoreManager.score += scoreValue;   // Aumentar a pontuação por valor pontuação do inimigo.
            Death();    // O inimigo está morto.
        }
    }

    void Death()
    {
        // Altera o clipe de áudio da fonte de áudio para o clipe de morte e o reproduz (isto irá parar o clipe de jogo machucado).
        enemyAudio.clip = deathClip;
    }

    void MudaCor()
    {
        rend.color = Color.red;

        Invoke("NormalizaCor", 0.5f); //tempo para voltar a cor normal
    }

    void NormalizaCor()
    {
        rend.color = Color.white;
    }
}

Se não quiser o efeito em vermelho, pode testar outras cores.

Se quiser fazer um efeito mais parecido com o do vídeo, pode criar uma nova sprite como no efeito (o shape do inimigo, branco e com transparência) e coloca como filho do inimigo e zera o transform, para ficar na mesma posição. Lembre-se de colocar a order in layer do filho maior que o pai, pois o filho deve se sobrepôr ao pai. Aí assina o filho nessa versão:

Código:
 using UnityEngine;
    using System.Collections;

    public class SaudeInimigos : MonoBehaviour
{

    public int hp = 1;
    public int scoreValue = 30;              // A quantidade adicionada à pontuação do jogador quando o inimigo morrer.
    public AudioClip deathClip;              // O som para tocar quando o inimigo morrer.

    public GameObject efeitoFilho; // assina o filho que será o efeito

    private AudioSource enemyAudio;         // Referência ao audio source.

    

    void Awake()
    {
        // Configurando as referências.
        enemyAudio = GetComponent<AudioSource>();

        efeitoFilho.SetActive(false);
    }

    public void Damage(int damageCount)
    {
        hp -= damageCount;

        MostraEfeito();

        if (hp <= 0)
        {
            //Cria o efeito de partícula.
            EfeitoEspecialScript.Instance.ExplEnemy1(transform.position);
            Destroy(gameObject);
            ScoreManager.score += scoreValue;   // Aumentar a pontuação por valor pontuação do inimigo.
            Death();    // O inimigo está morto.
        }
    }

    void Death()
    {
        // Altera o clipe de áudio da fonte de áudio para o clipe de morte e o reproduz (isto irá parar o clipe de jogo machucado).
        enemyAudio.clip = deathClip;
    }

    void MostraEfeito()
    {
        efeitoFilho.SetActive(true);

        Invoke("OcultaEfeito", 0.5f); //tempo para voltar ao normal
    }

    void OcultaEfeito()
    {
        efeitoFilho.SetActive(false);
    }
}

Espero que te ajude!

wischutz
Programador

Masculino PONTOS : 662
REPUTAÇÃO : 10
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

PEDIDO Re: Mudar cor ao tomar dano

Mensagem por Marc7 em Qua Out 12, 2016 7:30 pm

valeu wischutz funcionou legal aqui!
eu tinha feito usando IEnumerator, funcionou só com uma nave inimiga e as outras não. Desse jeito que vc fez funciona com cada uma.


eu fiz parecido com o do video, tive que importar novamente a mesma imagem da nave só que antes de importar eu mudei a cor para branco usando o photoshop e mudei o nome da imagem.
então ficou duas imagens para o mesmo inimigo, aí a branca eu pus como filho do Inimigo2, mudando a Order in Layer como vc falou.


o problema é que vou encher o projeto de imagens brancas porque serão váaaaarios inimigos nas cenas. imagina uma imagem branca para cada um dos outros inimigos....
essa é a unica forma de fazer esse efeito para jogo 2D ou tem outra forma de fazer que não necessite importar outros sprites?

Marc7
Avançado
Avançado

PONTOS : 360
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

PEDIDO Re: Mudar cor ao tomar dano

Mensagem por Manawydan em Qua Out 12, 2016 8:09 pm

sera que nao teria como usar um elemento de mask branco para ser aplicado no objeto quando este perde vida?

Manawydan
Moderador

PONTOS : 483
REPUTAÇÃO : 83
Idade : 19
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

PEDIDO Re: Mudar cor ao tomar dano

Mensagem por Marc7 em Qua Out 12, 2016 8:30 pm

como faço esse mask branco?
é isso que substituiria importar varias imagens brancas?

Marc7
Avançado
Avançado

PONTOS : 360
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

PEDIDO Re: Mudar cor ao tomar dano

Mensagem por wischutz em Qua Out 12, 2016 8:35 pm

Eu só conheço o mask nativo do UI, mas acho que não rola em sprite.

Você pode usar um sprite branco genérico, tipo um círculo e usar o mesmo em todos.

wischutz
Programador

Masculino PONTOS : 662
REPUTAÇÃO : 10
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

PEDIDO Re: Mudar cor ao tomar dano

Mensagem por Marc7 em Qua Out 12, 2016 10:10 pm

Talvez o circulo branco em todos não acomode com a formas dos sprites, fique sobrando para fora, acho melhor deixar um sprite branco para cada inimigo mesmo, cada imagem branca será só alguns kbytes, não pesaria tanto.
mas como é este mask do UI?

Marc7
Avançado
Avançado

PONTOS : 360
REPUTAÇÃO : 7
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

PEDIDO Re: Mudar cor ao tomar dano

Mensagem por wischutz em Qui Out 13, 2016 10:57 am


wischutz
Programador

Masculino PONTOS : 662
REPUTAÇÃO : 10
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

PEDIDO Re: Mudar cor ao tomar dano

Mensagem por MarcosSchultz em Dom Out 16, 2016 10:21 pm

Qual shader você está usando para o material desse objeto que você quer trocar de cor?

MarcosSchultz
Administrador

Masculino PONTOS : 7181
REPUTAÇÃO : 897
Idade : 20
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

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