[RESOLVIDO] Como fazer? Coletar 5 moedas, e aparecer uma plataforma, por exemplo !
3 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
[RESOLVIDO] Como fazer? Coletar 5 moedas, e aparecer uma plataforma, por exemplo !
Como o titulo diz, como posso fazer, pra um objeto que está inativo dentro da cena, aparecer quando realizada determinada ação, por exemplo, peguei 5 coins ai aparece uma plataforma (uma espécie de ponte) pro outro lado da plataforma que o player está ?
Última edição por marcos4503 em Seg Jul 03, 2017 8:39 pm, editado 2 vez(es) (Motivo da edição : Resolvido)
SmithSchuldiner- Membro
- PONTOS : 2848
REPUTAÇÃO : 7
Respeito as regras :
Re: [RESOLVIDO] Como fazer? Coletar 5 moedas, e aparecer uma plataforma, por exemplo !
SmithSchuldiner escreveu:Como o titulo diz, como posso fazer, pra um objeto que está inativo dentro da cena, aparecer quando realizada determinada ação, por exemplo, peguei 5 coins ai aparece uma plataforma (uma espécie de ponte) pro outro lado da plataforma que o player está ?
- Código:
public GameObject ponte1;
void Update(){
if(coins >= 5){
//ativa caso teja mais que 5 coins
ponte1.setActive(true);
}
else{
// desativa caso teja menos de 5 coins
ponte1.setActive(false);
}
}
se te ajudou deixe um Like!
Última edição por fecirineu em Sáb Jul 01, 2017 1:01 pm, editado 2 vez(es) (Motivo da edição : Update)
Re: [RESOLVIDO] Como fazer? Coletar 5 moedas, e aparecer uma plataforma, por exemplo !
muito simplesSmithSchuldiner escreveu:Como o titulo diz, como posso fazer, pra um objeto que está inativo dentro da cena, aparecer quando realizada determinada ação, por exemplo, peguei 5 coins ai aparece uma plataforma (uma espécie de ponte) pro outro lado da plataforma que o player está ?
- Código:
public GameObject ponte1;
void Update(){
if(coins >= 5){
//ativa caso teja mais que 5 coins
ponte1.setActive(true);
}
else{
// desativa caso teja menos de 5 coins
ponte1.setActive(false);
}
}
se te ajudou deixe um Like!
Re: [RESOLVIDO] Como fazer? Coletar 5 moedas, e aparecer uma plataforma, por exemplo !
Ajudou demais, no caso ponte1 seria o nome do gameObject, que basta eu deixar desativado né..fecirineu escreveu:muito simplesSmithSchuldiner escreveu:Como o titulo diz, como posso fazer, pra um objeto que está inativo dentro da cena, aparecer quando realizada determinada ação, por exemplo, peguei 5 coins ai aparece uma plataforma (uma espécie de ponte) pro outro lado da plataforma que o player está ?
- Código:
public GameObject ponte1;
void Update(){
if(coins >= 5){
//ativa caso teja mais que 5 coins
ponte1.setActive(true);
}
else{
// desativa caso teja menos de 5 coins
ponte1.setActive(false);
}
}
se te ajudou deixe um Like!
SmithSchuldiner- Membro
- PONTOS : 2848
REPUTAÇÃO : 7
Respeito as regras :
Re: [RESOLVIDO] Como fazer? Coletar 5 moedas, e aparecer uma plataforma, por exemplo !
SmithSchuldiner escreveu:Ajudou demais, no caso ponte1 seria o nome do gameObject, que basta eu deixar desativado né..fecirineu escreveu:muito simplesSmithSchuldiner escreveu:Como o titulo diz, como posso fazer, pra um objeto que está inativo dentro da cena, aparecer quando realizada determinada ação, por exemplo, peguei 5 coins ai aparece uma plataforma (uma espécie de ponte) pro outro lado da plataforma que o player está ?
- Código:
public GameObject ponte1;
void Update(){
if(coins >= 5){
//ativa caso teja mais que 5 coins
ponte1.setActive(true);
}
else{
// desativa caso teja menos de 5 coins
ponte1.setActive(false);
}
}
se te ajudou deixe um Like!
No caso, ali if(coins >=5) como faço pra ele pegar pela TAG do Coin?
SmithSchuldiner- Membro
- PONTOS : 2848
REPUTAÇÃO : 7
Respeito as regras :
Re: [RESOLVIDO] Como fazer? Coletar 5 moedas, e aparecer uma plataforma, por exemplo !
SmithSchuldiner escreveu:SmithSchuldiner escreveu:Ajudou demais, no caso ponte1 seria o nome do gameObject, que basta eu deixar desativado né..fecirineu escreveu:muito simplesSmithSchuldiner escreveu:Como o titulo diz, como posso fazer, pra um objeto que está inativo dentro da cena, aparecer quando realizada determinada ação, por exemplo, peguei 5 coins ai aparece uma plataforma (uma espécie de ponte) pro outro lado da plataforma que o player está ?
- Código:
public GameObject ponte1;
void Update(){
if(coins >= 5){
//ativa caso teja mais que 5 coins
ponte1.setActive(true);
}
else{
// desativa caso teja menos de 5 coins
ponte1.setActive(false);
}
}
se te ajudou deixe um Like!
No caso, ali if(coins >=5) como faço pra ele pegar pela TAG do Coin?
ai eu nao entendi oque voce quiz dizer , recomendo que sempre que tiver duivda nova , verifique no campo de busca la em cima o texto da sua duvida exemplo Tag, provalvelmente ja deve ter algum topico deste modo ja criado..
se voce tiver querendo por exemplo pegar a quantia de coins que voce tem em outro script.. seria assim
- Código:
public NomedoScript nomescriptVariavel;
if( nomescriptVariavel.coins >= 5){
}
caso ele estaja dentro do mesmo script basta chamar direto exemplo:
- Código:
public Int coins;
if( coins >= 5){
}
se ajudou deixa um like
Re: [RESOLVIDO] Como fazer? Coletar 5 moedas, e aparecer uma plataforma, por exemplo !
Vou tentar explicar melhor:
Veja meu script pra entender
quero que por exemplo, quando pegar 5 desses objetos com a "TAG= Diamante", abra uma ponte, tipo isso !
quero fazer pela TAG do GameObject.. Compreendeu?
Veja meu script pra entender
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class Diamantes : MonoBehaviour {
int pontuacao1 = 0;
int totalPontos1 = 0;
public Text _Diamantes;
void Start () {
totalPontos1 = GameObject.FindGameObjectsWithTag ("Diamante").Length;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
}
void OnTriggerEnter (Collider col)
{
if (col.tag == "Diamante")
{
pontuacao1 += 1;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
if (pontuacao1 == totalPontos1)
{
SceneManager.LoadScene ("Winnermenu");
}
}
pontuacao1 += 1;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
if (pontuacao1 == 10) {
SceneManager.LoadScene ("Winnermenu");
}
}
}
quero que por exemplo, quando pegar 5 desses objetos com a "TAG= Diamante", abra uma ponte, tipo isso !
quero fazer pela TAG do GameObject.. Compreendeu?
SmithSchuldiner- Membro
- PONTOS : 2848
REPUTAÇÃO : 7
Respeito as regras :
Re: [RESOLVIDO] Como fazer? Coletar 5 moedas, e aparecer uma plataforma, por exemplo !
SmithSchuldiner escreveu:Vou tentar explicar melhor:
Veja meu script pra entender
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class Diamantes : MonoBehaviour {
int pontuacao1 = 0;
int totalPontos1 = 0;
public Text _Diamantes;
void Start () {
totalPontos1 = GameObject.FindGameObjectsWithTag ("Diamante").Length;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
}
void OnTriggerEnter (Collider col)
{
if (col.tag == "Diamante")
{
pontuacao1 += 1;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
if (pontuacao1 == totalPontos1)
{
SceneManager.LoadScene ("Winnermenu");
}
}
pontuacao1 += 1;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
if (pontuacao1 == 10) {
SceneManager.LoadScene ("Winnermenu");
}
}
}
quero que por exemplo, quando pegar 5 desses objetos com a "TAG= Diamante", abra uma ponte, tipo isso !
quero fazer pela TAG do GameObject.. Compreendeu?
eu ja te ensinei..
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class Diamantes : MonoBehaviour {
int pontuacao1 = 0;
int totalPontos1 = 0;
public Text _Diamantes;
public GameObject Exemplo;
void Start () {
totalPontos1 = GameObject.FindGameObjectsWithTag ("Diamante").Length;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
}
// -----------INICIO ---------------------
void Update(){
if(_Diamantes.text = "5"){
Exemplo.SetActive(true);
}
// ----------- FIM ---------
void OnTriggerEnter (Collider col)
{
if (col.tag == "Diamante")
{
pontuacao1 += 1;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
if (pontuacao1 == totalPontos1)
{
SceneManager.LoadScene ("Winnermenu");
}
}
pontuacao1 += 1;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
if (pontuacao1 == 10) {
SceneManager.LoadScene ("Winnermenu");
}
}
}
Re: [RESOLVIDO] Como fazer? Coletar 5 moedas, e aparecer uma plataforma, por exemplo !
SmithSchuldiner escreveu:Vou tentar explicar melhor:
Veja meu script pra entender
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class Diamantes : MonoBehaviour {
int pontuacao1 = 0;
int totalPontos1 = 0;
public Text _Diamantes;
void Start () {
totalPontos1 = GameObject.FindGameObjectsWithTag ("Diamante").Length;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
}
void OnTriggerEnter (Collider col)
{
if (col.tag == "Diamante")
{
pontuacao1 += 1;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
if (pontuacao1 == totalPontos1)
{
SceneManager.LoadScene ("Winnermenu");
}
}
pontuacao1 += 1;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
if (pontuacao1 == 10) {
SceneManager.LoadScene ("Winnermenu");
}
}
}
quero que por exemplo, quando pegar 5 desses objetos com a "TAG= Diamante", abra uma ponte, tipo isso !
quero fazer pela TAG do GameObject.. Compreendeu?
Então amigo sua duvida ta meio dificil de entender eu peguei seu script e modifiquei pelo Jeito que eu entendi!
O Script esta todo comentado.
Caso voce queira carregar outra cena depois que essa ponte for ativada:
Basta voce colocar um Collider no final da ponte para que quando o player colidir carregar outra cena.
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class Diamantes : MonoBehaviour {
int pontuacao1 = 0; //Aqui é sua pontuaçao
int totalPontos1 = 5; //Aqui é seu total de pontos (Maximo de pontos que voce tem que coletar para liberarar a ponte)
public Text _Diamantes; //Aqui é seu text de diamantes (
public GameObject ponte; //Aqui voce linka a sua ponte
void Start () {
ponte.SetActive (false); //Aqui ele desativa sua ponte
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString (); //Aqui ele monstra quantos voce coletou e quantos falta
}
void Update(){
if (pontuacao1 >= totalPontos1) { //Aqui verifica quantos voce tem
ponte.SetActive (true); //ativa caso teja mais que 5 coins
} else {
ponte.SetActive (false);// desativa caso teja menos de 5 coins
}
}
void OnTriggerEnter (Collider col){
if (col.gameObject.tag == "Diamante"){ //Aqui verifica voce voce colidiu com o Objeto que tenah a Tag "Diamante"
pontuacao1 += 1; //Aqui adiciona +1 na sua pontuaçao
Destroy (col.gameObject); //Aqui destroy o Objeto apos colidir
}
}
}
Duarte- Programador
- PONTOS : 3354
REPUTAÇÃO : 97
Idade : 24
Áreas de atuação : Programação
Desenvolvedor Android
Respeito as regras :
Re: [RESOLVIDO] Como fazer? Coletar 5 moedas, e aparecer uma plataforma, por exemplo !
Duarte escreveu:SmithSchuldiner escreveu:Vou tentar explicar melhor:
Veja meu script pra entender
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class Diamantes : MonoBehaviour {
int pontuacao1 = 0;
int totalPontos1 = 0;
public Text _Diamantes;
void Start () {
totalPontos1 = GameObject.FindGameObjectsWithTag ("Diamante").Length;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
}
void OnTriggerEnter (Collider col)
{
if (col.tag == "Diamante")
{
pontuacao1 += 1;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
if (pontuacao1 == totalPontos1)
{
SceneManager.LoadScene ("Winnermenu");
}
}
pontuacao1 += 1;
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString ();
if (pontuacao1 == 10) {
SceneManager.LoadScene ("Winnermenu");
}
}
}
quero que por exemplo, quando pegar 5 desses objetos com a "TAG= Diamante", abra uma ponte, tipo isso !
quero fazer pela TAG do GameObject.. Compreendeu?
Então amigo sua duvida ta meio dificil de entender eu peguei seu script e modifiquei pelo Jeito que eu entendi!
O Script esta todo comentado.
Caso voce queira carregar outra cena depois que essa ponte for ativada:
Basta voce colocar um Collider no final da ponte para que quando o player colidir carregar outra cena.
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class Diamantes : MonoBehaviour {
int pontuacao1 = 0; //Aqui é sua pontuaçao
int totalPontos1 = 5; //Aqui é seu total de pontos (Maximo de pontos que voce tem que coletar para liberarar a ponte)
public Text _Diamantes; //Aqui é seu text de diamantes (
public GameObject ponte; //Aqui voce linka a sua ponte
void Start () {
ponte.SetActive (false); //Aqui ele desativa sua ponte
_Diamantes.text = pontuacao1.ToString () + " - " + totalPontos1.ToString (); //Aqui ele monstra quantos voce coletou e quantos falta
}
void Update(){
if (pontuacao1 >= totalPontos1) { //Aqui verifica quantos voce tem
ponte.SetActive (true); //ativa caso teja mais que 5 coins
} else {
ponte.SetActive (false);// desativa caso teja menos de 5 coins
}
}
void OnTriggerEnter (Collider col){
if (col.gameObject.tag == "Diamante"){ //Aqui verifica voce voce colidiu com o Objeto que tenah a Tag "Diamante"
pontuacao1 += 1; //Aqui adiciona +1 na sua pontuaçao
Destroy (col.gameObject); //Aqui destroy o Objeto apos colidir
}
}
}
ISSSSSSSSSSSSSSSSSSSO, BRILHANTE, ao invés de colocar pra chamar a proxima cena pela quantidade de Moedas/Diamantes, eu posso ativar a ponte pra chamar a cena pelo objeto (até mesmo invisível) quando entrar no collider.
Estou saindo nesse momento, mas quando chegar vou fazer isso, e volto aqui pra dizer se funcionou, aparentemente, está perfeito... Abraço !
SmithSchuldiner- Membro
- PONTOS : 2848
REPUTAÇÃO : 7
Respeito as regras :
Re: [RESOLVIDO] Como fazer? Coletar 5 moedas, e aparecer uma plataforma, por exemplo !
Conforme prometido, voltei, testei e ai, deu certo. Eu dei uma saída e tive tempo pra pensar porque estava dando errado.
Falta de atenção, pura falta de atenção !
Eu não estava "linkando" a ponte no script hehe
Enfim, perdoe pela falta de atenção e eu lhe agradeço imensamente pela paciência !
MUITO OBRIGADO AMIGO !
RESUMINDO, VOCÊ É 10; PROBLEMA RESOLVIDO <3
Falta de atenção, pura falta de atenção !
Eu não estava "linkando" a ponte no script hehe
Enfim, perdoe pela falta de atenção e eu lhe agradeço imensamente pela paciência !
MUITO OBRIGADO AMIGO !
RESUMINDO, VOCÊ É 10; PROBLEMA RESOLVIDO <3
SmithSchuldiner- Membro
- PONTOS : 2848
REPUTAÇÃO : 7
Respeito as regras :
Re: [RESOLVIDO] Como fazer? Coletar 5 moedas, e aparecer uma plataforma, por exemplo !
Acontece!
De nada, fico feliz de ter ajudado precisando tamos ai !
De nada, fico feliz de ter ajudado precisando tamos ai !
Duarte- Programador
- PONTOS : 3354
REPUTAÇÃO : 97
Idade : 24
Áreas de atuação : Programação
Desenvolvedor Android
Respeito as regras :
Tópicos semelhantes
» AJUDA como fazer um sistema de moedas
» Como fazer uma partícula da UI aparecer na câmera?
» Como fazer mensagem aparecer na tela?
» Como fazer a pontuação aparecer no menu?
» [RESOLVIDO] Como ativar uma câmera após coletar/destruir um objeto.
» Como fazer uma partícula da UI aparecer na câmera?
» Como fazer mensagem aparecer na tela?
» Como fazer a pontuação aparecer no menu?
» [RESOLVIDO] Como ativar uma câmera após coletar/destruir um objeto.
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos