Use this space for questions related to what you're learning. For any other type of support (website, learning platform, payments, etc...) please get in touch using the contact form.
Excellent Lesson!StevenThank you for this lesson. It was awesome to put all these concepts together and experience how to think like a designer and the translate the design into code. Most tutorials just show you how to 'code'. I would love to see more lessons like this!
Also, I'm hoping there will be lessons on how to create these cool mobs... 11Nov. 09, 2024
Small confusion about the last challenge "If you can stomp once, you can stomp multiple times!"SniffiIn the very last challenge *"If you can stomp once, you can stomp multiple times!"* I managed to make everything work, but i´m not 100% sure how much was supposed to be implemented by ourselves.
It says: "The beetle skin emits a signal when the mob steps during its walk animation: `stepped`. This signal can synchronize the shockwaves with the beetle's walk animation."
Is the walking animation supposed to emit a `stepped` signal already (i couldn´t find it) or should we add it ourselves. I wasnt really 100% sure how to interpret the challenge text in that regard.
(In the `beetle_skind.gd` I basically added the stepped signal and created functions that get called when a foot hits the ground in the walk animation myself)
Another thing i noticed: In the first hint in the challenge text it says "use `mob.skin.play("walk")`", which wouldn´t work with the default `beetle_skin.gd` script.
We have to call `mob.skin.play("chase")` to play the walk animation.
```gdscript
# beetle_skin.gd
func play(animation_name: String) -> void:
...
elif animation_name == "chase":
state_machine.travel("walk")
```
I really love that we get a lot of challenges by the way! Keep up the great work :)31Oct. 22, 2024
Challenge: Multiple stompsSandra MoenI had a different solution, and *I'm wanting feedback on it's viability*. What I did was run the enter method over again, meaning I didn't use a for loop.
```gdscript
func enter() -> void:
_stomp_count += 1
if _stomp_count > num_stomps:
mob.get_tree().create_timer(attack_duration).timeout.connect(func() -> void: finished.emit())
return
mob.skin.play("attack")
var stomp_attack := StompAttackScene.instantiate()
mob.add_sibling(stomp_attack)
stomp_attack.global_position = mob.global_position
mob.get_tree().create_timer(attack_duration).timeout.connect(enter)
func exit() -> void:
_stomp_count = 0
```40Oct. 31, 2024
Lesson Q&A
Use this space for questions related to what you're learning. For any other type of support (website, learning platform, payments, etc...) please get in touch using the contact form.