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:
// Sistema de Afogamento//
Sistema de construção estilo habbo
Quando meu inimigo morre todos morrem, alguem ajuda ?
[TUTORIAL] Unity 5 - Wheel Collider, veículos, suspensão realista.
Jogo da Memória para crianças. (Android)
Dicas para otimizar o meu jogo
(Dúvida) Mirar em terceira pessoa.
Eu produzi esse jogo na unity e gostaria que vocês testassem e avaliassem
I.A Que ataca qualquer coisa inclusive Players..
[DUVIDA] Script Não Funciona
[DUVIDA]Pergunta Aleatória
Teclado igual o jogo do milhão
Modelos 3d para uso gratuito ou comercial
[TUTORIAL] Unity 5- Sistema de PLATAFORMAS COM ROTAS
Inimigo seguir quando ver o player
[ERRO] Fatal Error Unity!!!
///Duvida///
Unity 5 lag com muitas arvores e grass
Como usar o Multi Touch para movimentar um personagem ?
[TUTORIAL] UNITY 5 - Efeito submerso (underwater effect), distorção da água e gotas na tela
Problema com "Non-convex MeshCollider"
[DÚVIDA]Texto Não Aparece Unity 5
[____REGRAS DO FÓRUM____]
PlayerPrefs
Fazer um Certo Ponto da mesh mudar de cor como um botão piscando
modelo 3d rotaçao estranha
Direitos autorais de modelos 3D?
ZombieAI
Iluminação ou Shader Bugado ?!
como criar uma barra de vida?
[Asset]Terreno .dae
Problema com GetComponent
[RESOLVIDO] Como ativar e desativar um objeto.
Como fazer objetos não atravessar paredes usando transform.Translate?
COMO PEGAR O SISTEMA DE HEADBOB E FOOTSTEP DO CHARACTER CONTROLER DEFAULT DA UNITY 5 E BOTAR EM UM CHARACTER CONTROLLER CUSTOMIZADO?
COMO ATIVAR ANIMACAO EMPURRAR OBJETO?
Asset Store
[____TÓPICO LIVRE____] FALE O QUE QUISER
(Dúvida) Erro criar sala com Photon.
(DUVIDA) Empurrar caixas estilo Resident Evil
Erro de falsa memoria
[Dúvida] Otimização
Mudar cor de um material por Script de forma suave
preciso usar o Lerp fora do Update
Existe algum tipo de FPSController para android?
[ AJUDA ]Probemas Com seleção de Carros.
[TUTORIAL] Spawn de objetos aleatorios em lugares aleatorios
Mudança no NavMeshAgent?
[DUVIDA] Como utilizar o touch no Android em um jogo 2D
Terminei meu game de terror...joguem...
[RESOLVIDO] COMO CRIAR UM ASSET ?
Script para saber se ena está ativa ou carregada
[RESOLVIDO] Como posto o link do game q fiz para o pessoal testar e avaliar?
Cena Loading para carregar proximo Level
Criação de tags para objetos
jogo estilo resident evil 4
[TUTORIAL] Pegar arma do chão ao Aperta E (Unity 5)
Duvida
Direitos autorais
Terrain Bugado
Inserir uma página da web dentro do meu jogo
AI Pedestres
Problema com texto ao fazer o build
Onde encontro aulas sobre shaders para a unity 5?
Audio Player C#
UNITY - MOVIE TEXTURE ON ANDROID
Recrutamento para jogo de sobrevivencia estilo DayZ/Rust/H1Z1
Destruir cubos em pedaços Com Um Progetil
(DUVIDA) troca textura em degradê
[RESOLVIDO] Movimento aleatório e suave de um objeto
Reproduzir vídeos do youtube
Return To Ruins Recrutando!
Script de mapa ramdomico?
DUVIDA - Compras de Assets
Versao Final Dark Dreams....agradeco a todos :)
meu jogo primeiro jogo de android
Testem meu Jogo de Aventura
Acertar apenas um componente Collider2D em objeto com mais de um Collider
Como fazer movimento 'serpenteado'
Fontes para Download
inimigo atacar
Mudar o volume do AudioSource conforme altera uma variavel
[DUVIDA] Controle do movimento do ricocheteio de object 2D
Como mirar para cima , baixo etc?
COMO SOBREPOR O PERSONAGEM(objeto1) DO FUNDO(objeto2)????
OTIMIZAÇÃO DE TERRENO...
[TUTORIAL] Mover, Girar e lançar objetos com o mouse ( estilo Amnesia )
[TUTORIAL] Barra de VIDA / HP contínua
DÚVIDA COM SCRIPT
Como desativo um boxCollider2d usando o GetComponent<variavelGameObject>?
C# Unity 3d Como alterar 1 script usando outro
Camera de cima estilo Minicraft
Conseguem mudar esses simples Js para C#?
Aprenda a fazer GDD em 5 minutos e proporcione mais qualidade em seu jogo
PRECISO DE UMA PESSOA QUE DESENHE PERSONAGEM E CENARIO
[Remake] Bully - Jocks's place com o unity 5 -- por MateusWTP
Mesma ação com 2 teclas diferentes.
Daz 3D - Dúvidas
Não consigo acessar uma animação que esta sendo realizada (JavaScript) alguem ajuda?
Hoje à(s) 5:46 pm
Hoje à(s) 3:02 pm
Hoje à(s) 2:26 pm
Hoje à(s) 11:54 am
Hoje à(s) 11:54 am
Hoje à(s) 5:35 am
Hoje à(s) 3:10 am
Hoje à(s) 1:55 am
Hoje à(s) 12:18 am
Hoje à(s) 12:13 am
Hoje à(s) 12:02 am
Ontem à(s) 11:31 pm
Ontem à(s) 9:37 pm
Ontem à(s) 9:32 pm
Ontem à(s) 9:06 pm
Ontem à(s) 6:56 pm
Ontem à(s) 6:46 pm
Ontem à(s) 6:33 pm
Ontem à(s) 5:30 pm
Ontem à(s) 3:33 pm
Ontem à(s) 1:43 pm
Ontem à(s) 4:24 am
Ontem à(s) 1:53 am
Ontem à(s) 12:50 am
Sab Fev 18, 2017 11:52 pm
Sab Fev 18, 2017 11:17 pm
Sab Fev 18, 2017 10:34 pm
Sab Fev 18, 2017 10:13 pm
Sab Fev 18, 2017 8:58 pm
Sab Fev 18, 2017 7:32 pm
Sab Fev 18, 2017 6:20 pm
Sex Fev 17, 2017 11:27 pm
Sex Fev 17, 2017 9:18 pm
Sex Fev 17, 2017 7:12 pm
Sex Fev 17, 2017 6:02 pm
Sex Fev 17, 2017 11:54 am
Sex Fev 17, 2017 6:00 am
Qui Fev 16, 2017 10:23 pm
Qui Fev 16, 2017 8:51 pm
Qui Fev 16, 2017 8:40 pm
Qui Fev 16, 2017 6:59 pm
Qui Fev 16, 2017 3:24 pm
Qui Fev 16, 2017 3:16 pm
Qui Fev 16, 2017 3:14 pm
Qui Fev 16, 2017 2:05 pm
Qui Fev 16, 2017 1:32 pm
Qui Fev 16, 2017 12:44 pm
Qui Fev 16, 2017 11:32 am
Qui Fev 16, 2017 1:31 am
Qui Fev 16, 2017 1:24 am
Qui Fev 16, 2017 12:10 am
Qua Fev 15, 2017 10:52 pm
Qua Fev 15, 2017 10:12 pm
Qua Fev 15, 2017 6:19 pm
Qua Fev 15, 2017 5:08 pm
Qua Fev 15, 2017 4:52 pm
Qua Fev 15, 2017 4:43 pm
Qua Fev 15, 2017 3:40 pm
Qua Fev 15, 2017 3:20 pm
Qua Fev 15, 2017 2:10 pm
Qua Fev 15, 2017 1:24 pm
Qua Fev 15, 2017 11:26 am
Qua Fev 15, 2017 10:26 am
Qua Fev 15, 2017 10:22 am
Qua Fev 15, 2017 10:19 am
Qua Fev 15, 2017 10:17 am
Qua Fev 15, 2017 1:37 am
Qua Fev 15, 2017 12:51 am
Qua Fev 15, 2017 12:06 am
Ter Fev 14, 2017 5:57 pm
Ter Fev 14, 2017 4:20 pm
Ter Fev 14, 2017 2:24 pm
Ter Fev 14, 2017 1:02 pm
Ter Fev 14, 2017 9:43 am
Seg Fev 13, 2017 10:25 pm
Seg Fev 13, 2017 7:01 pm
Seg Fev 13, 2017 6:38 pm
Seg Fev 13, 2017 1:09 pm
Seg Fev 13, 2017 1:02 pm
Seg Fev 13, 2017 9:12 am
Seg Fev 13, 2017 9:01 am
Seg Fev 13, 2017 4:01 am
Seg Fev 13, 2017 3:42 am
Seg Fev 13, 2017 3:33 am
Seg Fev 13, 2017 3:32 am
Seg Fev 13, 2017 3:31 am
Seg Fev 13, 2017 3:27 am
Seg Fev 13, 2017 3:18 am
Seg Fev 13, 2017 3:14 am
Dom Fev 12, 2017 11:36 pm
Dom Fev 12, 2017 6:44 pm
Dom Fev 12, 2017 5:36 pm
Dom Fev 12, 2017 2:42 pm
Dom Fev 12, 2017 3:16 am
Dom Fev 12, 2017 2:42 am
Dom Fev 12, 2017 12:17 am
Sab Fev 11, 2017 6:04 pm
Sab Fev 11, 2017 5:25 pm
Sab Fev 11, 2017 3:29 pm
Zecandy
Luiz Mauro TCC
CanabravaBR
Fábiow775
Pulitano
marcos4503
artplayer
niao
vegasbr
baidu
Manawydan
rafaelllsd
joabr
Blue Ark
zBanidor
JhonnyBravo
Zecandy
AndyShow
BatataName
Guilherme56789
regisbaldo
Blue Ark
MarcosSchultz
R R
PauloHNCosta
joabr
joabr
tom ramber
lordstrik
Callyde Jr
PauloFR
cron
BananaSmith
John Rambo
AndyShow
LukiAli
AndyShow
Mic4el
rafaelllsd
Zecandy
LukiAli
DragonEarthGamesProggrame
AndyShow
erick.q.faria
Willian Wii
dstaroski
andreehjr2
Willian Wii
Rafael Kuriki
hackernew404
LuizFixa3D
Marc7
John Rambo
Marc7
Marc7
dstaroski
Mic4el
Zecandy
joabr
lucasfera15
marcos4503
tom ramber
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
matheus1415
rafaelllsd
Édipo
Marc7
John Rambo
felipefell
André Damazio
dstaroski
hackernew404
niao
Marc7
Marc7
Marc7
Callyde Jr
Callyde Jr
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
niao
niao
DragonEarthGamesProggrame
LukiAli
joabr
joabr
MateusWTP
kalel013
dstaroski
CanabravaBR

[AJUDA] Drop infinito xD

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

DÚVIDA [AJUDA] Drop infinito xD

Mensagem por WiredD em Sab Set 10, 2016 6:26 pm

Alguem poderia me ajudar? Usando meu script de recursos, Quando quebro uma pedra ele está dropando infinitamente pedras como no print abaixo



Meu script:

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

public class Pedras : MonoBehaviour {

 public float Salud;
 [HideInInspector]
 public float Salud2 = 10;
 [Header("Distancia Maxima Causa Dano")]
 public float MaxDis = 2;
 public GameObject[] Rocas;
 [Header("Tempo Respawn Pedra")]
 public float TiempoReaparece = 5;
 [HideInInspector]
 public float TiempoReaparece2 = 5;
 [Header("Stacks aleatorios")]
 public int Minimo = 1;
 public int Maximo = 5;
 private Camera camara;
 private bool Reaparece;
 [Header("Danos E Player")]
 public float danTotal;

 // Use this for initialization
 void Start () {
 camara = GameObject.FindWithTag("MainCamera").GetComponent<Camera>();
 danTotal = 20;
 }
 
 // Update is called once per frame
 void Update ()
 {
 Ray ray = camara.ViewportPointToRay(new Vector3(0.5F, 0.5F, 0));
 RaycastHit hit;
 if (Physics.Raycast(ray, out hit, MaxDis))
 {
 if(hit.collider.gameObject == gameObject)
 {
 if(Input.GetKey ("e"))
 {
 Salud2 -= danTotal * Time.deltaTime;
 }
 }
 }
 
 
 if(Salud2 <= 0.5f && !Reaparece)
 {
 gameObject.GetComponent<BoxCollider>().enabled = false;
 gameObject.GetComponent<MeshRenderer>().enabled = false;
 foreach(GameObject Roca in Rocas)
 {

 GameObject Clon = Instantiate(Roca,transform.position + transform.up * Random.Range(1,5) ,transform.rotation)as GameObject;
 Clon.GetComponent<Stacks>().Stack = Random.Range(Minimo,Maximo);
// Destroy(gameObject);
 }

 Reaparece = true;
 }

 if(Reaparece)
 {
 TiempoReaparece2 -= Time.deltaTime;
 if(TiempoReaparece2 <= 0)
 {
 Salud2 = Salud;
 gameObject.GetComponent<BoxCollider>().enabled = true;
 gameObject.GetComponent<MeshRenderer>().enabled = true;
 TiempoReaparece2 = TiempoReaparece;
 Reaparece = false;
 }

 }
 }
}


Se alguem puder tb mudar pra que o item (public GameObject[] Rocas;) drope as pedras de acordo com o minimo definido na variavel (Minimo) e o maximo (Minimo), meio que criar um random entre eles no drop da pedra xD


Erro que está dando:

Pedras.Update () (at Assets/Scripts/Recursos/Pedras.cs:55)

WiredD
Avançado
Avançado

PONTOS : 485
REPUTAÇÃO : 14
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por Goustkor em Sab Set 10, 2016 6:49 pm

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

public class Pedras : MonoBehaviour
{

    public float Salud;
    [HideInInspector]
    public float Salud2 = 10;
    [Header("Distancia Maxima Causa Dano")]
    public float MaxDis = 2;
    public GameObject[] Rocas;
    [Header("Tempo Respawn Pedra")]
    public float TiempoReaparece = 5;
    [HideInInspector]
    public float TiempoReaparece2 = 5;
    [Header("Stacks aleatorios")]
    public int Minimo = 1;
    public int Maximo = 5;
    private Camera camara;
    private bool Reaparece;
    [Header("Danos E Player")]
    public float danTotal;

    public int limite = 1, currentLimite;

    // Use this for initialization
    void Start()
    {
        camara = GameObject.FindWithTag("MainCamera").GetComponent<Camera>();
        danTotal = 20;
    }

    // Update is called once per frame
    void Update()
    {
        Ray ray = camara.ViewportPointToRay(new Vector3(0.5F, 0.5F, 0));
        RaycastHit hit;
        if (Physics.Raycast(ray, out hit, MaxDis))
        {
            if (hit.collider.gameObject == gameObject)
            {
                if (Input.GetKey("e"))
                {
                    Salud2 -= danTotal * Time.deltaTime;
                }
            }
        }


        if (Salud2 <= 0.5f && !Reaparece)
        {
            gameObject.GetComponent<BoxCollider>().enabled = false;
            gameObject.GetComponent<MeshRenderer>().enabled = false;
            foreach (GameObject Roca in Rocas)
            {
                if (currentLimite < limite)
                {
                    GameObject Clon = Instantiate(Roca, transform.position + transform.up * Random.Range(1, 5), transform.rotation) as GameObject;
                    Clon.GetComponent<Stacks>().Stack = Random.Range(Minimo, Maximo);
                    currentLimite++;
                }
                
                // Destroy(gameObject);
            }

            Reaparece = true;
        }

        if (Reaparece)
        {
            TiempoReaparece2 -= Time.deltaTime;
            if (TiempoReaparece2 <= 0)
            {
                Salud2 = Salud;
                gameObject.GetComponent<BoxCollider>().enabled = true;
                gameObject.GetComponent<MeshRenderer>().enabled = true;
                TiempoReaparece2 = TiempoReaparece;
                Reaparece = false;
            }

        }
    }
}
Eu simplesmente tentei colocar um limite de vezes que ele pode instanciar, tenta ver se funciona

Goustkor
Membro
Membro

PONTOS : 208
REPUTAÇÃO : 8
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por WiredD em Sab Set 10, 2016 6:58 pm

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

public class Pedras : MonoBehaviour
{

    public float Salud;
    [HideInInspector]
    public float Salud2 = 10;
    [Header("Distancia Maxima Causa Dano")]
    public float MaxDis = 2;
    public GameObject[] Rocas;
    [Header("Tempo Respawn Pedra")]
    public float TiempoReaparece = 5;
    [HideInInspector]
    public float TiempoReaparece2 = 5;
    [Header("Stacks aleatorios")]
    public int Minimo = 1;
    public int Maximo = 5;
    private Camera camara;
    private bool Reaparece;
    [Header("Danos E Player")]
    public float danTotal;

    public int limite = 1, currentLimite;

    // Use this for initialization
    void Start()
    {
        camara = GameObject.FindWithTag("MainCamera").GetComponent<Camera>();
        danTotal = 20;
    }

    // Update is called once per frame
    void Update()
    {
        Ray ray = camara.ViewportPointToRay(new Vector3(0.5F, 0.5F, 0));
        RaycastHit hit;
        if (Physics.Raycast(ray, out hit, MaxDis))
        {
            if (hit.collider.gameObject == gameObject)
            {
                if (Input.GetKey("e"))
                {
                    Salud2 -= danTotal * Time.deltaTime;
                }
            }
        }


        if (Salud2 <= 0.5f && !Reaparece)
        {
            gameObject.GetComponent<BoxCollider>().enabled = false;
            gameObject.GetComponent<MeshRenderer>().enabled = false;
            foreach (GameObject Roca in Rocas)
            {
                if (currentLimite < limite)
                {
                    GameObject Clon = Instantiate(Roca, transform.position + transform.up * Random.Range(1, 5), transform.rotation) as GameObject;
                    Clon.GetComponent<Stacks>().Stack = Random.Range(Minimo, Maximo);
                    currentLimite++;
                }
                
                // Destroy(gameObject);
            }

            Reaparece = true;
        }

        if (Reaparece)
        {
            TiempoReaparece2 -= Time.deltaTime;
            if (TiempoReaparece2 <= 0)
            {
                Salud2 = Salud;
                gameObject.GetComponent<BoxCollider>().enabled = true;
                gameObject.GetComponent<MeshRenderer>().enabled = true;
                TiempoReaparece2 = TiempoReaparece;
                Reaparece = false;
            }

        }
    }
}
Eu simplesmente tentei colocar um limite de vezes que ele pode instanciar, tenta ver se funciona

Funcionou não como pode ver aqui:



E agora deu o erro na mesma linha também xD

Erro: 

Pedras.Update () (at Assets/Scripts/Recursos/Pedras.cs:60)

If com o erro:

Código:
      if (Salud2 <= 0.5f && !Reaparece)
      {
         gameObject.GetComponent<BoxCollider>().enabled = false;
         gameObject.GetComponent<MeshRenderer>().enabled = false;
         foreach (GameObject Roca in Rocas)
         {
            if (currentLimite < limite)
            {
               GameObject Clon = Instantiate(Roca, transform.position + transform.up * Random.Range(1, 5), transform.rotation) as GameObject;
               Clon.GetComponent<Stacks>().Stack = Random.Range(Minimo, Maximo);
               currentLimite++;
            }

            // Destroy(gameObject);
         }

         Reaparece = true;
      }

Nesta linha:

Clon.GetComponent().Stack = Random.Range(Minimo, Maximo);

WiredD
Avançado
Avançado

PONTOS : 485
REPUTAÇÃO : 14
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por WiredD em Seg Set 12, 2016 1:10 am

up

WiredD
Avançado
Avançado

PONTOS : 485
REPUTAÇÃO : 14
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por MarcosSchultz em Seg Set 12, 2016 2:10 am

O erro é que você não está conseguindo se comunicar com o script "Stacks". Você tem um script em cena com este nome exatamente?

se tiver, poderia postá-lo?

MarcosSchultz
Administrador

Masculino PONTOS : 7810
REPUTAÇÃO : 1064
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

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por WiredD em Seg Set 12, 2016 2:39 am

MarcosSchultz escreveu:O erro é que você não está conseguindo se comunicar com o script "Stacks". Você tem um script em cena com este nome exatamente?

se tiver, poderia postá-lo?


xD

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

public class Stacks : MonoBehaviour {

   public int Stack;
   
}

Ele só guarda um valor int da variable Stacks

WiredD
Avançado
Avançado

PONTOS : 485
REPUTAÇÃO : 14
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por MarcosSchultz em Seg Set 12, 2016 2:56 am

o objeto "Roca" que você instancia, possui em si um script "Stacks" linkado?

MarcosSchultz
Administrador

Masculino PONTOS : 7810
REPUTAÇÃO : 1064
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

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por WiredD em Seg Set 12, 2016 3:37 am

MarcosSchultz escreveu:o objeto "Roca" que você instancia, possui em si um script "Stacks" linkado?


Sim xD

Porem ela esta agora dropando apenas 1 mesmo modificando as int do stacks.cs, sabe qual o motivo?

WiredD
Avançado
Avançado

PONTOS : 485
REPUTAÇÃO : 14
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por MarcosSchultz em Qua Set 14, 2016 7:12 pm

OK, então agora parou de dar o erro? ou continua dando o erro na mesma linha?

MarcosSchultz
Administrador

Masculino PONTOS : 7810
REPUTAÇÃO : 1064
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

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por WiredD em Qua Set 14, 2016 7:17 pm

MarcosSchultz escreveu:OK, então agora parou de dar o erro? ou continua dando o erro na mesma linha?

Parou o erro, porem agora só dropa 1 mesmo mudando o stack do item

WiredD
Avançado
Avançado

PONTOS : 485
REPUTAÇÃO : 14
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por MarcosSchultz em Qua Set 14, 2016 7:34 pm

Pelo que eu vi, o instantiate é feito somente uma vez... e isto dentro do foreach das rochas... então se você só tiver uma rocha linkada, ela será instanciada apenas uma vez.

teria que fazer um for para instanciar várias.

MarcosSchultz
Administrador

Masculino PONTOS : 7810
REPUTAÇÃO : 1064
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

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por WiredD em Qua Set 14, 2016 7:51 pm

MarcosSchultz escreveu:Pelo que eu vi, o instantiate é feito somente uma vez... e isto dentro do foreach das rochas... então se você só tiver uma rocha linkada, ela será instanciada apenas uma vez.

teria que fazer um for para instanciar várias.

Entendi, e como posso fazer isso?

WiredD
Avançado
Avançado

PONTOS : 485
REPUTAÇÃO : 14
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por MarcosSchultz em Sab Set 17, 2016 3:55 am

Tente isto:

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

public class Pedras : MonoBehaviour
{

   public float Salud;
   [HideInInspector]
   public float Salud2 = 10;
   [Header("Distancia Maxima Causa Dano")]
   public float MaxDis = 2;
   public GameObject[] Rocas;
   [Header("Tempo Respawn Pedra")]
   public float TiempoReaparece = 5;
   [HideInInspector]
   public float TiempoReaparece2 = 5;
   [Header("Stacks aleatorios")]
   public int Minimo = 1;
   public int Maximo = 5;
   private Camera camara;
   private bool Reaparece;
   [Header("Danos E Player")]
   public float danTotal;

   public int limite = 1, currentLimite;

   public int numeroDePedras = 10;
   // Use this for initialization
   void Start()
   {
      camara = GameObject.FindWithTag("MainCamera").GetComponent<Camera>();
      danTotal = 20;
   }

   // Update is called once per frame
   void Update()
   {
      Ray ray = camara.ViewportPointToRay(new Vector3(0.5F, 0.5F, 0));
      RaycastHit hit;
      if (Physics.Raycast(ray, out hit, MaxDis))
      {
         if (hit.collider.gameObject == gameObject)
         {
            if (Input.GetKey("e"))
            {
               Salud2 -= danTotal * Time.deltaTime;
            }
         }
      }


      if (Salud2 <= 0.5f && !Reaparece)
      {
         gameObject.GetComponent<BoxCollider>().enabled = false;
         gameObject.GetComponent<MeshRenderer>().enabled = false;
         foreach (GameObject Roca in Rocas)
         {
            if (currentLimite < limite)
            {
               for (int x = 0; x < numeroDePedras; x++) {
                  GameObject Clon = Instantiate (Roca, transform.position + transform.up * Random.Range (1, 5), transform.rotation) as GameObject;
                  Clon.GetComponent<Stacks>().Stack = Random.Range(Minimo, Maximo);
                  currentLimite++;
               }
            }

            // Destroy(gameObject);
         }

         Reaparece = true;
      }

      if (Reaparece)
      {
         TiempoReaparece2 -= Time.deltaTime;
         if (TiempoReaparece2 <= 0)
         {
            Salud2 = Salud;
            gameObject.GetComponent<BoxCollider>().enabled = true;
            gameObject.GetComponent<MeshRenderer>().enabled = true;
            TiempoReaparece2 = TiempoReaparece;
            Reaparece = false;
         }

      }
   }
}

MarcosSchultz
Administrador

Masculino PONTOS : 7810
REPUTAÇÃO : 1064
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

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por WiredD em Sab Set 17, 2016 1:35 pm

MarcosSchultz escreveu:Tente isto:

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

public class Pedras : MonoBehaviour
{

 public float Salud;
 [HideInInspector]
 public float Salud2 = 10;
 [Header("Distancia Maxima Causa Dano")]
 public float MaxDis = 2;
 public GameObject[] Rocas;
 [Header("Tempo Respawn Pedra")]
 public float TiempoReaparece = 5;
 [HideInInspector]
 public float TiempoReaparece2 = 5;
 [Header("Stacks aleatorios")]
 public int Minimo = 1;
 public int Maximo = 5;
 private Camera camara;
 private bool Reaparece;
 [Header("Danos E Player")]
 public float danTotal;

 public int limite = 1, currentLimite;

 public int numeroDePedras = 10;
 // Use this for initialization
 void Start()
 {
 camara = GameObject.FindWithTag("MainCamera").GetComponent<Camera>();
 danTotal = 20;
 }

 // Update is called once per frame
 void Update()
 {
 Ray ray = camara.ViewportPointToRay(new Vector3(0.5F, 0.5F, 0));
 RaycastHit hit;
 if (Physics.Raycast(ray, out hit, MaxDis))
 {
 if (hit.collider.gameObject == gameObject)
 {
 if (Input.GetKey("e"))
 {
 Salud2 -= danTotal * Time.deltaTime;
 }
 }
 }


 if (Salud2 <= 0.5f && !Reaparece)
 {
 gameObject.GetComponent<BoxCollider>().enabled = false;
 gameObject.GetComponent<MeshRenderer>().enabled = false;
 foreach (GameObject Roca in Rocas)
 {
 if (currentLimite < limite)
 {
 for (int x = 0; x < numeroDePedras; x++) {
 GameObject Clon = Instantiate (Roca, transform.position + transform.up * Random.Range (1, 5), transform.rotation) as GameObject;
 Clon.GetComponent<Stacks>().Stack = Random.Range(Minimo, Maximo);
 currentLimite++;
 }
 }

 // Destroy(gameObject);
 }

 Reaparece = true;
 }

 if (Reaparece)
 {
 TiempoReaparece2 -= Time.deltaTime;
 if (TiempoReaparece2 <= 0)
 {
 Salud2 = Salud;
 gameObject.GetComponent<BoxCollider>().enabled = true;
 gameObject.GetComponent<MeshRenderer>().enabled = true;
 TiempoReaparece2 = TiempoReaparece;
 Reaparece = false;
 }

 }
 }
}

Marcos, quando quebro a primeira pedra ele dropa o valor de pedras setados corretamente, mais depois quando ela respawna, ele já não dropa mais nenhuma quando quebro a mesma

WiredD
Avançado
Avançado

PONTOS : 485
REPUTAÇÃO : 14
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: [AJUDA] Drop infinito xD

Mensagem por MarcosSchultz em Ter Set 20, 2016 3:58 am

Cara, eu precisaria ver como você está montando este projeto... como é feito esse spawn e o que está interferindo.

MarcosSchultz
Administrador

Masculino PONTOS : 7810
REPUTAÇÃO : 1064
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