Depois de meses quebrando a cabeça, eu tive que usar a função Oncollisionenter para ele bater nas paredes e voltar, e sim, desde quando saiu esse vídeo eu estava tentando resolver o problema do inimigo ficar trocando de posição sem motivo, enquanto que no seu vídeo foi resolvido até que bem rápido
@xaviercomcafe4 жыл бұрын
melhor video de tutorial de games que tem no youtube, mt bom cara mds
@KOLHO4 жыл бұрын
Parabéns pelo conteúdo, seu curso é melhor do que muitos cursos pagos que eu fiz kkkk
@leandrobascheira30624 жыл бұрын
Excelente, muito bom.... parabéns pela iniciativa merece 1.000.000 de joinhas
@abraao6667 ай бұрын
Pra quem estiver tendo problemas com collision, o meu estava detectando nas colisões laterais e não na cabeça. Vão fazendo testes com o headPoint, meu problema estava aí. Tive que colocar bem entre as orelhas e metade pegando o boxcollider metade não.
@mrrobot90113 жыл бұрын
Tem alguma apostila que explique mais detalhadamente sobre GetCompont, AddForce e etc? sua explicação está incrível porem gostaria de uma indicação de algum material que explicasse mais a fundo cada função dessas para eu poder ter uma noção das possibilidades que cada função dessas é capaz de fazer...
@adriano42715 жыл бұрын
Seria incrível poder testar seu jogo na play story depois de finalizado
@norrisjoga37884 жыл бұрын
sabe nem escrever play store ksksksk wtf are you doing here man?? kskkskksksk
@Crofto4 жыл бұрын
@@norrisjoga3788 mano vai encher o saco na casa do caralho deixa o cara
@rafablox21794 жыл бұрын
@@Crofto e vdd deixa o cara pq oq ele falou e vdd
@DoubtfulSongs4 жыл бұрын
quem estiver com erro ai e ainda não conseguir fazer a animação de Die do enemy e/ou destroy, tente este comando. é o mesmo, só que com Private: private void OnCollisionEnter2D(Collision2D col) { if (col.gameObject.tag == "Player") { float height = col.contacts[0].point.y - headPoint.position.y; if (height > 0) { col.gameObject.GetComponent().AddForce(Vector2.up * 7, ForceMode2D.Impulse); speed = 0; anim.SetTrigger("die"); boxCollider2D.enabled = false; circleCollider2D.enabled = false; rig.bodyType = RigidbodyType2D.Kinematic; Destroy(gameObject, 1f); } }
@logitech24314 жыл бұрын
obrigado :)
@leonardop58864 жыл бұрын
fala maninho, aqui continuo com o problema, diz que o OnCollisionEnter2D está declarada mas nunca é usada pode me ajudar??
@욤애퍄4 жыл бұрын
@@leonardop5886 provavelmente está fora do {} tenta ver lá
@tnttnt-dm64 жыл бұрын
Vou testar mas mesmo assim obrigado
@karensilva8952 Жыл бұрын
Obrigada ;)
@nikomu72564 жыл бұрын
Quem tiver dificuldade, pode pegar meu código: (As variáveis que tiverem "[SerializeFIield]", são editadas no inspector) NÃO ESQUEÇA DE MUDAR O NOME DO ARQUIVO using System.Collections; using System.Collections.Generic; using UnityEngine; public class NOMEDOSCRIPT : MonoBehaviour { [SerializeField] private float speed; private Rigidbody2D rig; private Animator anim; public Transform rightCol; public Transform leftCol; public Transform headPoint; private bool colliding; [SerializeField] private LayerMask layer; private float jumpForce; void Start() { rig = GetComponent(); anim = GetComponent(); } void Update() { rig.velocity = new Vector2(speed, rig.velocity.y); colliding = Physics2D.Linecast(rightCol.position, leftCol.position, layer); if(colliding) { transform.localScale = new Vector2(transform.localScale.x * -1f, transform.localScale.y); speed *= -1f; } } void OnCollisionEnter2D(Collision2D col) { if(col.gameObject.tag == "Player") { float height = col.contacts[0].point.y - headPoint.position.y; if(height > 0) { rig.gameObject.GetComponent().AddForce(Vector2.up * jumpForce, ForceMode2D.Impulse); anim.SetTrigger("die"); Destroy(gameObject, 0.25f); } } } }
@jobisquin64054 жыл бұрын
voce é um santo valeu cara
@Pixxas4 жыл бұрын
O Zé Maria teve 14 na PAP e fez copy Paste deste joguinho! Boa tarde.
@welingtonmelo57072 жыл бұрын
Tive a ideia de acrescentar mais uma mecânica no inimigo para que ele não caísse caso fosse colocado em cima de uma plataforma onde não há paredes para ele bater, então usando o que foi ensinado nesta aula consegui criar uma mecânica onde o inimigo detecta quando não existe mais "chão" na frente dele e começa a andar na direção oposta.
@marrecoleco873 жыл бұрын
14:17 passando mal com o sapinho bugado kkkkkk
@srsaiitamaroyale3 жыл бұрын
GENTE ESSE EU FIZ POR TEMPO, ASSIM NÃO HÁ NECESSIDADE DE CRIAR COLISORES, ELE VIRA POR TEMPO. using System.Collections; using System.Collections.Generic; using UnityEngine; public class Enemy : MonoBehaviour { public float speed; public float moveTime; private bool dirRight = true; private float timer; private Animator Anim; void Start() { Anim = GetComponent(); } void Update() { timer += Time.deltaTime; Debug.Log(timer); if(dirRight) { transform.Translate(Vector2.right * speed * Time.deltaTime); transform.eulerAngles = new Vector3(0f, 0f, 0f); } else { transform.Translate(Vector2.right * speed * Time.deltaTime); transform.eulerAngles = new Vector3(0f, 180f, 0f); } if(timer >= moveTime) { dirRight = !dirRight; timer = 0; } } }
@nicke77992 жыл бұрын
MUITO OBRIGADO!!!!!!!!!!!!!!!!!!!!!!!!
@srsaiitamaroyale2 жыл бұрын
@@nicke7799 tmj hehe
@davidsilvaalexandre55823 жыл бұрын
Pessoal que tá tendo o problema de Warning na Unity falando que o método OnCollisionEnter2D nunca é chamado(e por isso nada está funcionando) provavelmente vocês estão declarando ele dentro do Update(então é como se ele fosse sempre declarado toda hora), por isso, é só vcs copiarem e colarem e colocar fora do Update
@emersondecontodeoliveira89285 ай бұрын
meu sapo, ele vai pra direita, e quando volta pra esquerda se o meu personagem esbarar nele de frente, meu personagem meio que "sobe" encima do sapo assim matando o sapo, alguma ideia?
@Roty8095 жыл бұрын
Mano e muito obrigado
@noflic1754 жыл бұрын
alguém sabe ajudar estou tendo um erro na part do contacts depois do float height esta falando que não foi possível encontrar nenhum método de extensão...
@cauejanzinic.62633 жыл бұрын
gente algm me ajuda, as veses meu sapo para no meio do caminho; do nada, ele tipo ta andando e para, sem nada interferi
@elton93104 жыл бұрын
Como você conseguiu deixar esse auto complete no vs code com as funções e objetos da unity? testei dois plugins aqui mas não aparece como aparece no seu.
@Johann_Demian4 жыл бұрын
kzbin.info/www/bejne/rGmacqqJp6h-mJY Eu estava com o mesmo problema, mas esse vídeo me ajudou
@Cassiano144 жыл бұрын
Olá, poderia me ajudar a resolver esse erro? O personagem não vai até o final, e num ponto do mapa ele trava
@o.pedrobenetti4 жыл бұрын
criando jogo vinnicius13?
@Cassiano144 жыл бұрын
@@o.pedrobenetti kkkkkk
@Cassiano144 жыл бұрын
@@o.pedrobenetti eu to criando um jogo se quiser saber sobre updates e novidades, entra ae: discord.gg/CCaVtWP
@lucasoliveira-ge8fo2 жыл бұрын
caso tenha descobrido fala aqui. To com o msm problema
@linasjaniques2 жыл бұрын
Pros próximos que vierem procurar: Talvez tenha esquecido de colocar o CircleCollider2D e subir o BoxCollider2D. O BoxCollider faz travar no chão as vezes.
@욤애퍄4 жыл бұрын
Cara eu não sei se vc fez um jeito dele matar com seu person dando um hit
@lucasvaladares125110 ай бұрын
Por algum motivo meu height está dando negativo
@greenhunter19833 жыл бұрын
LocalScale não funcionou usei o EulerAngles private void FixedUpdate() { rb2d.velocity = new Vector2(speed, rb2d.velocity.y); colliding = Physics2D.Linecast(upPoint.position, downPoint.position, layer); Debug.DrawLine(upPoint.position, downPoint.position, Color.black); if (colliding) { if(transform.eulerAngles == direction) { transform.eulerAngles = new Vector3(0f, 0f, 0f); } else { transform.eulerAngles = new Vector3(0f, 180f, 0f); } speed *= -1f; } }
@kenkaneki31955 жыл бұрын
Que legal :)
@erisonsilva21124 жыл бұрын
não consigo configurar as animações pelo Animator... pois não aparece o Frog die e run
@iago6123 жыл бұрын
você tem que criar as pastas e colocar as animações nela, dai vai aparecer
@mrrobot90113 жыл бұрын
28:00 quando chega nessa area meu personagem meio que as vezes começa a "sair" do chão e para de pular, oq pode estar dando esse bug?
@abraao6667 ай бұрын
Tenta ajustar o RigidBody + BoxCollider2d do player.
@ubondicasdabia49503 жыл бұрын
Algum me ajuda, quando eu bato no inimigo ele nao morre, quem morre é meu Player
@alessandrorodrigo20874 жыл бұрын
Muito boa a série, parabéns! se puderem ajudar estou com problemas no meu inimigo, ele está morrendo com qualquer contato do player e não somente com golpes na cabeça.
@spikesunshine50454 жыл бұрын
Tbm to com esse problema, conseguiu arrumar?
@EduardoCarneiro-dg9xj4 жыл бұрын
@@spikesunshine5045 É só você configurar o tamanho do box collider e do circle collider, recomendo você deixar o box collider somente atrás da cabeça do inimigo, comigo funcionou.
@EduardoCarneiro-dg9xj4 жыл бұрын
16:51 em vez de colocar na cebeça inteira coloca apenas na parte de trás da cabeça para não colidir com o player.
@ped_rins39783 жыл бұрын
Como assim parte de tras da cabeça
@henrique_sc34362 жыл бұрын
@@EduardoCarneiro-dg9xj vlw mano tava procurando há um bom tempo como resolver isso
@leite81803 жыл бұрын
alguém me ajuda eu consigo destruir o inimigo so que meu personagem toma dano
@tnttnt-dm64 жыл бұрын
O meu não funcionou
@LiviaPedroso-f9s Жыл бұрын
fiz tudo certo, mas os personagens não estão andando, alguém tem alguma sugestão do que possa estar acontecendo
@LukkasComics Жыл бұрын
Verifica se vc está atribuindo os valores corretamente ao speed, speed é a posição X do personagem, que possibilita que ele ande
@LiviaPedroso-f9s Жыл бұрын
@@LukkasComics obrigada consegui resolver o erro
@ronysenna47614 жыл бұрын
Não consigo ativar a animação que o inimigo é destruído, o player apenas pula em cima dele e nada acontece
@gilvaneipereirabispo26434 жыл бұрын
Eu tive um resultado parecido. Na vdd a animação funciona, as configurações que não são adequadas. Eu mandei para permanecer o loop na animação e lá na transição eu desmarquei "has exit time" e coloquei os outros valores como 0. Por fim coloquei para o objeto ser destruído 0.6 segundos e não 0.33 como ele usou. Note que o daley usado na transição é maior que o tempo de espera para destruir, assim n tem como ver ela funcionando.
@estuartyy4 жыл бұрын
rony senna conseguiu resolver?
@umapreciadordemacacos10014 жыл бұрын
Me ajudem por favor. O meu sapo simplesmente reconhece todas as colisões e ele fica girando pros lados infinitamente, até agora só consegui fazer uma gambiarra de deixar em um lugar alto para ele ficar mais tempo andando para os lados, mas de qualquer maneira ele não bate nas paredes e fica girando. Já assisti esse vídeo várias vezes e não consegui resolver
@jrt13954 жыл бұрын
a respeito dos giros: (14:15 ), falta você travar o eixo Z do inimigo
@luizshadow13 жыл бұрын
Assets\Scripts\Frog.cs(40,19): error CS0117: 'float' does not contain a definition for 'height' o meu está dando esse erro acima, fiz igual na vídeo aula
@iago6123 жыл бұрын
você deve ter escrito algum código errado, tenta apagar a frase e refazer o código, uma hora vai
@andersonataide16253 жыл бұрын
É pq o if é dentro do if, vc deve ter colocado fora
@nagacsl31104 жыл бұрын
Meu personagem n mata o inimigo pd me ajudar?
@batistajunior48484 жыл бұрын
meu inimigo não faz o rotacionamento, ja tentei de tudo, fiz como tu disse passo a passo e nada
@batistajunior48484 жыл бұрын
haha descobri o que foi meu erro, era o ground, denominei como outra layer
@DuplinhaLendaria4 жыл бұрын
O que eu faço com esse erro estou desesperado demorei 8 horas para fazer tudo Unknown error occurred while loading 'Assets/Pixel Adventure 1/Assets/Animations/Player 1.controller'. UnityEditorInternal.InternalEditorUtility:LoadSerializedFileAndForget(String) UnityEditor.WindowLayout:LoadDefaultWindowPreferences Vou ter que fazer tudo de novo????
@abraao6667 ай бұрын
Me parece ser um problema nas Windows abertas, essa que tem nas laterais. Tenta abrir uma nova, ou fechar essas aí e ir testando.
@DereckGrace4 жыл бұрын
N tô conseguindo colocar a animação de destruição do inimigo, já revisei os códigos e não acho o problema
@EduardoCarneiro-dg9xj4 жыл бұрын
Tem que criar o parametro "die" e dentro da transição criar uma condição com o parametro "die", no script veja se tem esta linha "anim.SetTrigger("die");".
@EduardoCarneiro-dg9xj4 жыл бұрын
Essa linha vai chamar a condição die que faz acontecer a transição do frog_run para frog_die.
@MarcosSilva-jm2qy3 жыл бұрын
Se eu encosto nas laterais do inimigo, o meu contact pega o mesmo valor caso eu pule em cima dele :v Não consigo resolver isso kkkk
@tnttnt-dm64 жыл бұрын
Quando meu player encosta na cabeça do inimigo ele não morre é eu fiz tudo igual ao o da aula
@geovanefilho79634 жыл бұрын
Eu sei que é meio tarde pra responder, mas pode ajudar alguém no futuro, eu estava com esse problema e percebi que o meu "headPoint" estava muito em cima, ao mover ele para baixo começou a funcionar.
@tnttnt-dm63 жыл бұрын
@@geovanefilho7963 Eu sei que é mais tarde ainda pra responder mais voltei a programar a um tempo e estava tentando resolver esse problema fui ver se alguém falava como resolver achei esse meu comentário com sua resposta valeu mesmo
@ChapTiiz2 жыл бұрын
@@tnttnt-dm6 to fazendo a aula agora e falei com meu amigo que entende mais que eu e ele falou pra mim tirar o height > 0 de dentro do if e colocar o col.gameObject.tag == "Player"; e pra mim funcionou
@carlosdaniel42462 жыл бұрын
Olá o meu enimigo não volta quando bate na parede selecionada na camada bricks que foi a que eu usei para cosntruir as bordas do mapa , já reescrevi o código mas não funcionou alguém pode ajudar??´ using System.Collections; using System.Collections.Generic; using UnityEngine; public class Slime : MonoBehaviour { private Rigidbody2D rig; private Animator anim; public float speed; public Transform rightCollider; public Transform leftCollider; public Transform headPoint; private bool colliding; public LayerMask layer; // Start is called before the first frame update void Start() { rig = GetComponent(); anim = GetComponent(); } // Update is called once per frame void Update() { rig.velocity = new Vector2(speed, rig.velocity.y); colliding = Physics2D.Linecast(rightCollider.position, leftCollider.position,layer); if(colliding) { transform.localScale = new Vector2(transform.localScale.x * -1f, transform.localScale.y ); speed *= -speed; } } }
@eleyanlima6764 Жыл бұрын
vc conseguiu resolveer
@carlosdaniel4246 Жыл бұрын
@@eleyanlima6764 sim ja nao me recordo totalmente Mas a minha slime estava com a camada de detecção errada Estava na later bricks e eu penso que tinha q estar noutra layer Mas ja nao me recordo pa qual troquei
@adilsonalves59984 жыл бұрын
Vc sabe fazer zona de risco parecido com o free fire?
@norrisjoga37884 жыл бұрын
wtf
@gamedesire23254 жыл бұрын
@@norrisjoga3788 kkkkkkkkkkkkk ent foi exatamente oq eu pensei
@DREWSurvivalOficial4 жыл бұрын
meu inimigo não destrói
@daemon62945 жыл бұрын
Alguém pode me ajudar? Na Unity aparece mensagens dizendo que eu esqueci de instalar o pacote Android (JDK, NDK...), mas eu instalei.
@Criares5 жыл бұрын
Engraçado q o cara do vídeo só vê os comentários q falam bem mas os q pedem ajudam ele nem fala nada.
@jogosonplay64994 жыл бұрын
@@Criares Engraçado que esse erro não condiz com a série.
@o.pedrobenetti4 жыл бұрын
Quando você instala o Unity ele dá a opção de carregar os dados do JDK, NDK e SDK. O Wenes fez um vídeo instalando o Unity e mostrando essa opção
@ianlevi60174 жыл бұрын
Alguém sabe resolver esse bug no unity? NullReferenceException: Object reference not set to an instance of an object UnityEditor.Graphs.Edge.WakeUp () (at :0) UnityEditor.Graphs.Graph.DoWakeUpEdges (System.Collections.Generic.List`1[T] inEdges, System.Collections.Generic.List`1[T] ok, System.Collections.Generic.List`1[T] error, System.Boolean inEdgesUsedToBeValid) (at :0) UnityEditor.Graphs.Graph.WakeUpEdges (System.Boolean clearSlotEdges) (at :0) UnityEditor.Graphs.Graph.WakeUp (System.Boolean force) (at :0) UnityEditor.Graphs.Graph.WakeUp () (at :0) UnityEditor.Graphs.Graph.OnEnable () (at :0)
@gustavorocha77672 жыл бұрын
Conseguiu Resolver mano?
@zKayLord2 жыл бұрын
preciso resolver esse erro tbm
@AryJBAlmeida Жыл бұрын
@@zKayLord reinicia a Unity, é um bug da própria Unity, não tem nada a ver com o seu projeto.
@gustavobrunoantunesmiranda24663 жыл бұрын
Meu personagem tá batendo na parede e n vouta
@Cafexi3 жыл бұрын
Ent ele tá preso (eu acho)
@fernandobuenolopes4 жыл бұрын
Eita, se enrolou mais q um carretel de linha nesse vídeo hein! Qdo é coisa nova q vc aprendeu treina antes de filmar, senão fica cansativo demais e arrisca o espectador decorar o errado
@trezeFPT4 жыл бұрын
Se enrolar é a coisa mais normal q tem na programação, e se o espectador decorar o errado a culpa é delepor não assistir o resto do video (parte que ele conserta o erro)
@fernandobuenolopes4 жыл бұрын
@@trezeFPT não é normal, é questão de preparo, fiz uma crítica construtiva para ele melhorar seus vídeos, pq quem ta de fora consegue perceber mais esses detalhes. Se ele se ofendeu, não foi minha intenção. Se vc se ofendeu, cada um com seus problemas... continua falando aí q minha vida segue normal...
@camilleramostozato19103 жыл бұрын
Eu acho que o "espectador" pode aprender com os erros tbm, inclusive de uma forma melhor do que só decorando o que é passado, o "erro" dele me ensinou formas de arrumar caso algo assim ocorra no meu :)