Erro no touch.
5 participantes
Página 1 de 1
Erro no touch.
Ola galera,eu estava treinando um projeto para android de Touch And Kill eu acabei de inventar essa categoria :D mas e que eu quero fazer que quando nos apertamos na cabeça do bandido ele morra,eu coloquei um Cubo na cabeça do bandido e mais dois em cada ombro e coloquei o Script de toque mas quando eu clico não acontece nada
- Código:
#pragma strict
var Cabeca = false;
var Pescoco = false;
var Peito = false;
var Torso = false;
var Corpo : GameObject;
var Vitima : GameObject;
function Start () {
}
function Update () {
for(var i:int =0; i < Input.touches.Length; i++){ // quantos toques voce tem ??
var touch:Touch=Input.touches[i]; //o toque
var ray = Camera.main.ScreenPointToRay (Input.GetTouch(i).position);
var hit:RaycastHit =new RaycastHit ();
if(Physics.Raycast(ray,hit,1000)){
if(hit.collider.gameObject ==this.gameObject){
switch (touch.phase) {
case TouchPhase.Began: // se o toque começar
if (Cabeca == true){
Corpo.GetComponent.<Animation>().Play("TiroNaCabeça");
Vitima.GetComponent.<Animation>().Play(" VitimaAgachando");
}
if (Peito == true){
Corpo.GetComponent.<Animation>().Play("TiroNoPeito");
}
break;
}
}
}
}
}
MarceloYBP- Avançado
- PONTOS : 2702
REPUTAÇÃO : 33
Respeito as regras :
Re: Erro no touch.
Tente criar um script para o "bandido" e colocar o OnMouseDown (Funciona no Android, eu já testei);MarceloYBP escreveu:Ola galera,eu estava treinando um projeto para android de Touch And Kill eu acabei de inventar essa categoria :D mas e que eu quero fazer que quando nos apertamos na cabeça do bandido ele morra,eu coloquei um Cubo na cabeça do bandido e mais dois em cada ombro e coloquei o Script de toque mas quando eu clico não acontece nada
- Código:
#pragma strict
var Cabeca = false;
var Pescoco = false;
var Peito = false;
var Torso = false;
var Corpo : GameObject;
var Vitima : GameObject;
function Start () {
}
function Update () {
for(var i:int =0; i < Input.touches.Length; i++){ // quantos toques voce tem ??
var touch:Touch=Input.touches[i]; //o toque
var ray = Camera.main.ScreenPointToRay (Input.GetTouch(i).position);
var hit:RaycastHit =new RaycastHit ();
if(Physics.Raycast(ray,hit,1000)){
if(hit.collider.gameObject ==this.gameObject){
switch (touch.phase) {
case TouchPhase.Began: // se o toque começar
if (Cabeca == true){
Corpo.GetComponent.<Animation>().Play("TiroNaCabeça");
Vitima.GetComponent.<Animation>().Play(" VitimaAgachando");
}
if (Peito == true){
Corpo.GetComponent.<Animation>().Play("TiroNoPeito");
}
break;
}
}
}
}
}
Água Sem Hidrogênio- Avançado
- PONTOS : 2541
REPUTAÇÃO : 25
Respeito as regras :
Re: Erro no touch.
mas eu queria fazer que quando nos dermos um tiro na cabeça ele executar uma animação de levando o tiro na cabeça,se ele levar um tiro no peito ele executar a animação de levando tiro no peito e etc...Água Sem Hidrogênio escreveu:Tente criar um script para o "bandido" e colocar o OnMouseDown (Funciona no Android, eu já testei);MarceloYBP escreveu:Ola galera,eu estava treinando um projeto para android de Touch And Kill eu acabei de inventar essa categoria :D mas e que eu quero fazer que quando nos apertamos na cabeça do bandido ele morra,eu coloquei um Cubo na cabeça do bandido e mais dois em cada ombro e coloquei o Script de toque mas quando eu clico não acontece nada
- Código:
#pragma strict
var Cabeca = false;
var Pescoco = false;
var Peito = false;
var Torso = false;
var Corpo : GameObject;
var Vitima : GameObject;
function Start () {
}
function Update () {
for(var i:int =0; i < Input.touches.Length; i++){ // quantos toques voce tem ??
var touch:Touch=Input.touches[i]; //o toque
var ray = Camera.main.ScreenPointToRay (Input.GetTouch(i).position);
var hit:RaycastHit =new RaycastHit ();
if(Physics.Raycast(ray,hit,1000)){
if(hit.collider.gameObject ==this.gameObject){
switch (touch.phase) {
case TouchPhase.Began: // se o toque começar
if (Cabeca == true){
Corpo.GetComponent.<Animation>().Play("TiroNaCabeça");
Vitima.GetComponent.<Animation>().Play(" VitimaAgachando");
}
if (Peito == true){
Corpo.GetComponent.<Animation>().Play("TiroNoPeito");
}
break;
}
}
}
}
}
MarceloYBP- Avançado
- PONTOS : 2702
REPUTAÇÃO : 33
Respeito as regras :
Re: Erro no touch.
Cara, sai dessa vida de javaScript...
O mono já até parou de dar suporte a essa linguagem;
Cadê o script que ativa essas variaveis?
O mono já até parou de dar suporte a essa linguagem;
Cadê o script que ativa essas variaveis?
Phph09- Profissional
- PONTOS : 3579
REPUTAÇÃO : 240
Idade : 18
Respeito as regras :
Re: Erro no touch.
não intendo muito de csharp man,você pode me ajudar convertendo essa javascript para csharp e fazendo dar certo?
MarceloYBP- Avançado
- PONTOS : 2702
REPUTAÇÃO : 33
Respeito as regras :
Re: Erro no touch.
Cara;
Até que eu poderia fazer isso;
Mas se eu fizesse isso, você não iria aprender, e iria continuar na mesma vida de javaScript;
Sugiro que veja e reveja e pratique as aulas de c# do Marcos;
E peça ajuda aqui no forum caso precise;
A comunidade se disponibiliza a ajudar;
Até que eu poderia fazer isso;
Mas se eu fizesse isso, você não iria aprender, e iria continuar na mesma vida de javaScript;
Sugiro que veja e reveja e pratique as aulas de c# do Marcos;
E peça ajuda aqui no forum caso precise;
A comunidade se disponibiliza a ajudar;
Phph09- Profissional
- PONTOS : 3579
REPUTAÇÃO : 240
Idade : 18
Respeito as regras :
Re: Erro no touch.
mas alguem pode me dizer qual e o erro?
MarceloYBP- Avançado
- PONTOS : 2702
REPUTAÇÃO : 33
Respeito as regras :
Re: Erro no touch.
É para android? Tu tá testando no Editor? O toque não funciona no editor se não me engano(não tenho certeza nenhuma, não desenvolvo para android mais), tu tem que testar no build ou via Android Remote.
https://docs.unity3d.com/Manual/UnityRemote5.html
https://docs.unity3d.com/Manual/UnityRemote5.html
Re: Erro no touch.
cara eu faço os scripts boto no cubo deixo o cubo invisivel e deixo so o colisor depois eu compilo e testo no BlueStack mas não dar certo eu toco no cubo e o ladrão não executa a animação dele morrendo
MarceloYBP- Avançado
- PONTOS : 2702
REPUTAÇÃO : 33
Respeito as regras :
Re: Erro no touch.
Minha dica é estudar sobre flags e no editor você ir fazendo como se fosse no Pc(com inputs no teclado e mouse) e quando fosse compilado, você trocasse para inputs de toque. Fica mais fácil de você depurar, pois não precisa ficar fazendo build e depois de feito, ir ajeitando os toques de tela de acordo.
E o que o amigo disse do OnMouseDown é uma boa, pesquisa mais sobre que verá que pode atender a sua necessidade, caso não, de uma olhada no OnPointerDown do EventTrigger da classe EventSystems, eu uso apenas em Ui, mas acho que funciona para outros tipos de objetos.
https://docs.unity3d.com/ScriptReference/EventSystems.EventTrigger.html
https://docs.unity3d.com/ScriptReference/EventSystems.EventTrigger.OnPointerDown.html
E o que o amigo disse do OnMouseDown é uma boa, pesquisa mais sobre que verá que pode atender a sua necessidade, caso não, de uma olhada no OnPointerDown do EventTrigger da classe EventSystems, eu uso apenas em Ui, mas acho que funciona para outros tipos de objetos.
https://docs.unity3d.com/ScriptReference/EventSystems.EventTrigger.html
https://docs.unity3d.com/ScriptReference/EventSystems.EventTrigger.OnPointerDown.html
Re: Erro no touch.
mas o problema e que não sei se o problema e no touch tipo e de repente eu faço como falo e quando vou compilar da errado no android mas deu certo no PC e grande problema e que no android ele não reconhece o toque não sei porque
MarceloYBP- Avançado
- PONTOS : 2702
REPUTAÇÃO : 33
Respeito as regras :
Re: Erro no touch.
Complicado que não entendo muito bem de android, então não posso lhe ajudar nessa questão...
Re: Erro no touch.
mesmo assim Obrigado pela atenção manrecagonlei escreveu:Complicado que não entendo muito bem de android, então não posso lhe ajudar nessa questão...
MarceloYBP- Avançado
- PONTOS : 2702
REPUTAÇÃO : 33
Respeito as regras :
Re: Erro no touch.
Me ajudem por favor
MarceloYBP- Avançado
- PONTOS : 2702
REPUTAÇÃO : 33
Respeito as regras :
Re: Erro no touch.
Conversão para C# (crie o script em C# com o nome "personagem")
mas só vai funcionar no Android mesmo, pois usa a função Input.touches, e o mouse não é um touch
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class personagem : MonoBehaviour {
public bool Cabeca, Peito;
public GameObject Corpo, Vitima;
RaycastHit hit;
Animation animCorpo, animVitima;
void Start () {
Cabeca = Peito = false;
animCorpo = Corpo.GetComponent<Animation> ();
animVitima = Vitima.GetComponent<Animation> ();
}
void Update () {
for(int i = 0; i < Input.touches.Length; i++){ // quantos toques voce tem ??
if(Physics.Raycast(Camera.main.ScreenPointToRay (Input.GetTouch(i).position), out hit,1000)){
if(hit.collider.gameObject == this.gameObject){
switch (Input.touches[i].phase) {
case TouchPhase.Began: // se o toque começar
if (Cabeca == true){
animCorpo.Play("TiroNaCabeça");
animVitima.Play(" VitimaAgachando");
}
if (Peito == true){
animCorpo.Play("TiroNoPeito");
}
break;
}
}
}
}
}
}
mas só vai funcionar no Android mesmo, pois usa a função Input.touches, e o mouse não é um touch
Tópicos semelhantes
» (DÚVIDA) Erro Touch Screen
» Erro ao toca em um Button a parti de um touch
» erro erro e mais erro script de craft
» Bom dia, erro invisível como resolver? Erro -> [15:32:11]
» Erro ao abrir projeto ( Fatal Erro )
» Erro ao toca em um Button a parti de um touch
» erro erro e mais erro script de craft
» Bom dia, erro invisível como resolver? Erro -> [15:32:11]
» Erro ao abrir projeto ( Fatal Erro )
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos