Ajuda com colisao?
4 participantes
Página 1 de 1
Ajuda com colisao?
Galera estou criando um sistema de colisao para destruiçao de objetos, os objetos par destrui tem um determinado escript:Destruicao, e o que destroi tem outro, eu quero dectar a colisao entre o destruidor e os objetos, so que o problema esta sendo na void oncolisionEnter se eu colocar direto o dano do destruidor ele vai dar erro nos objetos que nao tem o script Destruicao, entao eu quero verificar se o objeto que colidiu com o destruidor te o script da destruicao é isso que nao esou sabendo fazer ;
Re: Ajuda com colisao?
Boa tarde brow! Cara, pelo que eu entendi, se poderia fazer assim. Por exemplo, se o player encostar em um objeto que pode ser destruído por ele, esse objeto verificaria quem está encostando nele, e se for um carinha com a tag player, ele então executa o evento de destruição. Daria para fazer assim, penso eu com meu tijolos aqui, :D .
Abraço!
Abraço!
Re: Ajuda com colisao?
seria uma maneira , mas acabei resolvendo eu vi em um script de de particula algoparecido e fiquei tentando ate achei a mneira certa de fazer e ficou o seguinte
- Código:
void OnCollisionEnter (Collision collision){
Destruicao Destruido = collision.gameObject.GetComponent<Destruicao> ();
if (Destruido) {
collision.gameObject.GetComponent<Destruicao> ().AvariaOBJ -= DanoDestruicao;
}
}
Re: Ajuda com colisao?
Olá eu gostaria de saber se alguem aí teria um script para poder coletar itens no chão e se alguem sabe como mudar o formato do item tipo por o formato de uma madeira no chão em 3D eu ficaria agradecido :D tenho esse script ,ais ele não está funcionando no meu ele é de um sistema de craft e contrução esse é o script:
- Código:
enum itemType{
Nada,
Madera,
Metal,
Hierbas,
Tablones,
Suelo,
Pilar,
Pared,
ParedPuerta,
Puerta,
Escalera,
Techo,
ParedVentana};
var ItemType : itemType = itemType.Nada;
var Cantidad : int = 0;
private var CraftingScript : crafting;
private var InventarioScript : Inventario;
function Start ()
{
CraftingScript = GameObject.Find("InventarioCraft").GetComponent(crafting);
InventarioScript = GameObject.Find("InventarioCraft").GetComponent(Inventario);
}
function OnTriggerEnter (other : Collider){
CraftingScript = GameObject.Find("InventarioCraft").GetComponent(crafting);
InventarioScript = GameObject.Find("InventarioCraft").GetComponent(Inventario);
if (other.gameObject.name == "Jugador")
{
switch (ItemType)
{
case ItemType.Madera:
CraftingScript.madera += Cantidad;
Destroy (gameObject);
break;
case ItemType.Metal:
CraftingScript.metal += Cantidad;
Destroy (gameObject);
break;
case ItemType.Hierbas:
CraftingScript.hierbas += Cantidad;
Destroy (gameObject);
break;
case ItemType.Tablones:
CraftingScript.tablones += Cantidad;
Destroy (gameObject);
break;
case ItemType.Suelo:
InventarioScript.Suelo += Cantidad;
Destroy (gameObject);
break;
case ItemType.Pilar:
InventarioScript.Pilar += Cantidad;
Destroy (gameObject);
break;
case ItemType.Pared:
InventarioScript.Pared += Cantidad;
Destroy (gameObject);
break;
case ItemType.ParedPuerta:
InventarioScript.ParedPuerta += Cantidad;
Destroy (gameObject);
break;
case ItemType.Puerta:
InventarioScript.Puerta += Cantidad;
Destroy (gameObject);
break;
case ItemType.Escalera:
InventarioScript.Escalera += Cantidad;
Destroy (gameObject);
break;
case ItemType.Techo:
InventarioScript.Techo += Cantidad;
Destroy (gameObject);
break;
case ItemType.ParedVentana:
InventarioScript.ParedVentana += Cantidad;
Destroy (gameObject);
break;
default:
print("No command");
break;
}
}
}
Joker 22- Membro
- PONTOS : 2958
REPUTAÇÃO : 0
Idade : 20
Áreas de atuação : Iniciando em Hardware e Redes e querendo aprender programação
Respeito as regras :
Re: Ajuda com colisao?
Joker 22 escreveu:Olá eu gostaria de saber se alguem aí teria um script para poder coletar itens no chão e se alguem sabe como mudar o formato do item tipo por o formato de uma madeira no chão em 3D eu ficaria agradecido :D tenho esse script ,ais ele não está funcionando no meu ele é de um sistema de craft e contrução esse é o script:
- Código:
enum itemType{
Nada,
Madera,
Metal,
Hierbas,
Tablones,
Suelo,
Pilar,
Pared,
ParedPuerta,
Puerta,
Escalera,
Techo,
ParedVentana};
var ItemType : itemType = itemType.Nada;
var Cantidad : int = 0;
private var CraftingScript : crafting;
private var InventarioScript : Inventario;
function Start ()
{
CraftingScript = GameObject.Find("InventarioCraft").GetComponent(crafting);
InventarioScript = GameObject.Find("InventarioCraft").GetComponent(Inventario);
}
function OnTriggerEnter (other : Collider){
CraftingScript = GameObject.Find("InventarioCraft").GetComponent(crafting);
InventarioScript = GameObject.Find("InventarioCraft").GetComponent(Inventario);
if (other.gameObject.name == "Jugador")
{
switch (ItemType)
{
case ItemType.Madera:
CraftingScript.madera += Cantidad;
Destroy (gameObject);
break;
case ItemType.Metal:
CraftingScript.metal += Cantidad;
Destroy (gameObject);
break;
case ItemType.Hierbas:
CraftingScript.hierbas += Cantidad;
Destroy (gameObject);
break;
case ItemType.Tablones:
CraftingScript.tablones += Cantidad;
Destroy (gameObject);
break;
case ItemType.Suelo:
InventarioScript.Suelo += Cantidad;
Destroy (gameObject);
break;
case ItemType.Pilar:
InventarioScript.Pilar += Cantidad;
Destroy (gameObject);
break;
case ItemType.Pared:
InventarioScript.Pared += Cantidad;
Destroy (gameObject);
break;
case ItemType.ParedPuerta:
InventarioScript.ParedPuerta += Cantidad;
Destroy (gameObject);
break;
case ItemType.Puerta:
InventarioScript.Puerta += Cantidad;
Destroy (gameObject);
break;
case ItemType.Escalera:
InventarioScript.Escalera += Cantidad;
Destroy (gameObject);
break;
case ItemType.Techo:
InventarioScript.Techo += Cantidad;
Destroy (gameObject);
break;
case ItemType.ParedVentana:
InventarioScript.ParedVentana += Cantidad;
Destroy (gameObject);
break;
default:
print("No command");
break;
}
}
}
cara posta em outro post esse nao é o lugar certo para a sua duvida :D
Re: Ajuda com colisao?
Como o amigo falo ali em cima um outro post seria legal porem você poderia usar o campo de buscaJoker 22 escreveu:Olá eu gostaria de saber se alguem aí teria um script para poder coletar itens no chão e se alguem sabe como mudar o formato do item tipo por o formato de uma madeira no chão em 3D eu ficaria agradecido :D tenho esse script ,ais ele não está funcionando no meu ele é de um sistema de craft e contrução esse é o script:
- Código:
enum itemType{
Nada,
Madera,
Metal,
Hierbas,
Tablones,
Suelo,
Pilar,
Pared,
ParedPuerta,
Puerta,
Escalera,
Techo,
ParedVentana};
var ItemType : itemType = itemType.Nada;
var Cantidad : int = 0;
private var CraftingScript : crafting;
private var InventarioScript : Inventario;
function Start ()
{
CraftingScript = GameObject.Find("InventarioCraft").GetComponent(crafting);
InventarioScript = GameObject.Find("InventarioCraft").GetComponent(Inventario);
}
function OnTriggerEnter (other : Collider){
CraftingScript = GameObject.Find("InventarioCraft").GetComponent(crafting);
InventarioScript = GameObject.Find("InventarioCraft").GetComponent(Inventario);
if (other.gameObject.name == "Jugador")
{
switch (ItemType)
{
case ItemType.Madera:
CraftingScript.madera += Cantidad;
Destroy (gameObject);
break;
case ItemType.Metal:
CraftingScript.metal += Cantidad;
Destroy (gameObject);
break;
case ItemType.Hierbas:
CraftingScript.hierbas += Cantidad;
Destroy (gameObject);
break;
case ItemType.Tablones:
CraftingScript.tablones += Cantidad;
Destroy (gameObject);
break;
case ItemType.Suelo:
InventarioScript.Suelo += Cantidad;
Destroy (gameObject);
break;
case ItemType.Pilar:
InventarioScript.Pilar += Cantidad;
Destroy (gameObject);
break;
case ItemType.Pared:
InventarioScript.Pared += Cantidad;
Destroy (gameObject);
break;
case ItemType.ParedPuerta:
InventarioScript.ParedPuerta += Cantidad;
Destroy (gameObject);
break;
case ItemType.Puerta:
InventarioScript.Puerta += Cantidad;
Destroy (gameObject);
break;
case ItemType.Escalera:
InventarioScript.Escalera += Cantidad;
Destroy (gameObject);
break;
case ItemType.Techo:
InventarioScript.Techo += Cantidad;
Destroy (gameObject);
break;
case ItemType.ParedVentana:
InventarioScript.ParedVentana += Cantidad;
Destroy (gameObject);
break;
default:
print("No command");
break;
}
}
}
https://www.schultzgames.com/t2916-tutorial-sistema-de-inventario-sobrevivencia#20433
Weslley- Moderador
- PONTOS : 5726
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Tópicos semelhantes
» Ajuda com colisao
» (Ajuda) Colisão com raycast
» Ajuda com sistema de colisão
» Ajuda problema na colisao 2d
» Ajuda com Colisão na Camera
» (Ajuda) Colisão com raycast
» Ajuda com sistema de colisão
» Ajuda problema na colisao 2d
» Ajuda com Colisão na Camera
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos