CORTAR ARVORES E DROPAR
2 participantes
Página 1 de 1
CORTAR ARVORES E DROPAR
BLZ GALERA? LEMBRAM DO TUTORIAL DO MARCOS DE CORTAR ARVORES, ENTAO NO SCRIPT QUE VAI NO PLAYER ESTOU COM ESSES ERROS:
Assets/DerrubarArvore.cs(27,6): error CS0246: The type or namespace name `ARVORE' could not be found. Are you missing an assembly reference?
Assets/DerrubarArvore.cs(28,6): error CS0841: A local variable `ScriptArvore' cannot be used before it is declared
ALGUEM AI ME AJUDA?
SCRIPT:
[list=linenums][*]using UnityEngine;
[*]using System.Collections;
[*][RequireComponent(typeof(AudioSource))]
[*]public class DerrubarArvores : MonoBehaviour {
[*] private Camera cameraPrincipal;
[*] public float DistanciaMinima = 6,TempoPorAtaque = 1;
[*] public int DanoCausado = 30;
[*] public Texture2D mira;
[*] public AudioClip somMadeira;
[*] private float contador;
[*] private bool podeAtacar;
[*] void Start () {
[*] cameraPrincipal = Camera.main;
[*] Cursor.visible = false;
[*] contador = 0;
[*] podeAtacar = true;
[*] }
[*] void Update () {
[*] RaycastHit colisor;
[*] Ray CentroDaTela = cameraPrincipal.ScreenPointToRay (new Vector3 (Screen.width/2, Screen.height/2, 0));
[*] bool colisao = Physics.Raycast (CentroDaTela, out colisor);
[*] if (colisao) {
[*] if(Input.GetButtonUp ("Fire1") && Vector3.Distance(transform.position,colisor.transform.position)< DistanciaMinima && podeAtacar == true){
[*] podeAtacar = false;
[*] if(colisor.transform.gameObject.tag == "ARVORE"){
[*] GetComponent<AudioSource> ().PlayOneShot(somMadeira);
[*] ARVORE ScriptArvore = colisor.transform.GetComponent<ARVORE> () as ARVORE;
[*] ScriptArvore.VIDA -= DanoCausado;
[*] }
[*] }
[*] }
[*] if (podeAtacar == false) {
[*] contador += Time.deltaTime;
[*] }
[*] if (contador >= TempoPorAtaque) {
[*] contador = 0;
[*] podeAtacar = true;
[*] }
[*] }
[*] void OnGUI (){
[*] GUI.DrawTexture (new Rect (Screen.width / 2 - mira.width / 2, Screen.height / 2 - mira.height / 2, mira.width, mira.height), mira);
[*] }
[*]}
[/list]
Assets/DerrubarArvore.cs(27,6): error CS0246: The type or namespace name `ARVORE' could not be found. Are you missing an assembly reference?
Assets/DerrubarArvore.cs(28,6): error CS0841: A local variable `ScriptArvore' cannot be used before it is declared
ALGUEM AI ME AJUDA?
SCRIPT:
[list=linenums][*]using UnityEngine;
[*]using System.Collections;
[*][RequireComponent(typeof(AudioSource))]
[*]public class DerrubarArvores : MonoBehaviour {
[*] private Camera cameraPrincipal;
[*] public float DistanciaMinima = 6,TempoPorAtaque = 1;
[*] public int DanoCausado = 30;
[*] public Texture2D mira;
[*] public AudioClip somMadeira;
[*] private float contador;
[*] private bool podeAtacar;
[*] void Start () {
[*] cameraPrincipal = Camera.main;
[*] Cursor.visible = false;
[*] contador = 0;
[*] podeAtacar = true;
[*] }
[*] void Update () {
[*] RaycastHit colisor;
[*] Ray CentroDaTela = cameraPrincipal.ScreenPointToRay (new Vector3 (Screen.width/2, Screen.height/2, 0));
[*] bool colisao = Physics.Raycast (CentroDaTela, out colisor);
[*] if (colisao) {
[*] if(Input.GetButtonUp ("Fire1") && Vector3.Distance(transform.position,colisor.transform.position)< DistanciaMinima && podeAtacar == true){
[*] podeAtacar = false;
[*] if(colisor.transform.gameObject.tag == "ARVORE"){
[*] GetComponent<AudioSource> ().PlayOneShot(somMadeira);
[*] ARVORE ScriptArvore = colisor.transform.GetComponent<ARVORE> () as ARVORE;
[*] ScriptArvore.VIDA -= DanoCausado;
[*] }
[*] }
[*] }
[*] if (podeAtacar == false) {
[*] contador += Time.deltaTime;
[*] }
[*] if (contador >= TempoPorAtaque) {
[*] contador = 0;
[*] podeAtacar = true;
[*] }
[*] }
[*] void OnGUI (){
[*] GUI.DrawTexture (new Rect (Screen.width / 2 - mira.width / 2, Screen.height / 2 - mira.height / 2, mira.width, mira.height), mira);
[*] }
[*]}
[/list]
dex556- Membro
- PONTOS : 654
REPUTAÇÃO : 0
Respeito as regras :
Re: CORTAR ARVORES E DROPAR
Mude o nome do Script de "ARVORE" para "DerrubarArvore", o nome do script sempre tem que condizer com a classe criada dentro do mesmo, caso contrario a Unity não vai associar um com o outro, e outra esse Script ainda usa algumas funções Legados da Unity como a OnGUI, pelo que parece você ainda é iniciante na Unity, então tenta dar uma estudada em UI, e em programação C# Unity, isso vai ajudar você a criar futuros jogos. Espero ter ajudado...
LúcioHenrique098- Avançado
- PONTOS : 2212
REPUTAÇÃO : 31
Idade : 20
Áreas de atuação : Intermediário em Programação, Iniciante em Modelagem
Respeito as regras :
Re: CORTAR ARVORES E DROPAR
obrigado! ajudou muitoLúcioHenrique098 escreveu:Mude o nome do Script de "ARVORE" para "DerrubarArvore", o nome do script sempre tem que condizer com a classe criada dentro do mesmo, caso contrario a Unity não vai associar um com o outro, e outra esse Script ainda usa algumas funções Legados da Unity como a OnGUI, pelo que parece você ainda é iniciante na Unity, então tenta dar uma estudada em UI, e em programação C# Unity, isso vai ajudar você a criar futuros jogos. Espero ter ajudado...
dex556- Membro
- PONTOS : 654
REPUTAÇÃO : 0
Respeito as regras :
Tópicos semelhantes
» [RESOLVIDO] Cortar Arvores
» (ajuda) como cortar pescoço inimigo?
» Sobre o Tutorial de Cortar Arvores
» (ajuda) como fazer dropar e pegar arma do chão?
» OLÁ! Como fazer um objeto (lazer no meu caso) cortar toda vez que passar em um collider?
» (ajuda) como cortar pescoço inimigo?
» Sobre o Tutorial de Cortar Arvores
» (ajuda) como fazer dropar e pegar arma do chão?
» OLÁ! Como fazer um objeto (lazer no meu caso) cortar toda vez que passar em um collider?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos