Added blink movement ability in the champ quest stealth mini-game#1901
Added blink movement ability in the champ quest stealth mini-game#1901
Conversation
|
Play this branch at https://play.threadbare.game/branches/endlessm/champ-stealth-blink. (This launches the game from the start, not directly at the change(s) in this pull request.) |
Addressed the comments in PR #1901 - changed champ-blink to champ_blink in the input map - Removed explicit z index specification. In it's place, enabled Y sorting the decorations tile map layer and the character. I think this is what the comment meant
This addresses the comments in the stealth minigame PR a couple days ago. - Made new WaterRock scene that is instantiated in the main stage instead of duplicate instances - Did the same for the water ripples to make it easier to make changes - Added RandomFrameSpriteBehavior node to both animations instead of a custom randomization script for each (I still had to have a script to start the animation playing though, can't figure out how to get around this.)
...ests/story_quests/champ/1_stealth/stealth_components/lake decorations/water ripples/water.gd
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Did you mean to change the water_rock scene that is shared with the whole project, rather than the one in champ?
Addressed the new comments in the #1901 PR. I didn't realize that there was already a water_rock.tcsn file shared with all story quests, so I switched the stealth mini game to using that! Also, turned on autoplay for the water ripples instead of using a custom script to do so.
scenes/game_elements/props/decoration/water_rock/water_rock.tscn
Outdated
Show resolved
Hide resolved
scenes/quests/story_quests/champ/1_stealth/champ_incomplete_character.gd
Outdated
Show resolved
Hide resolved
What you can do is put an Area2D in your custom player scene that detects collisions with things the player would collide with. Give it a collision shape that matches the player shape. Then when you are about to blink, move the Area2D to the target position and force a physics update (or ideally do this whenever the input vector changes) and then you can test whether the Area2D is colliding with something at the target and block the blink action. |
scenes/quests/story_quests/champ/1_stealth/champ_incomplete_character.gd
Outdated
Show resolved
Hide resolved
scenes/quests/story_quests/champ/1_stealth/champ_incomplete_character.gd
Outdated
Show resolved
Hide resolved
Co-authored-by: Will Thompson <[email protected]>
Co-authored-by: Will Thompson <[email protected]>
using custom water_rocks called champ_water_rock now, and fixed y-sorting and hitboxes of all rocks
|
I hope I’ve addressed your suggestions correctly, @wjt. There are still some issues with the player going out of bounds, which I think are actually related to our current TileMap collision workaround in the stage. I think I know a proper fix for the out-of-bounds collisions, but suggest merging this branch first to minimize potential breakage to #1909 before implementing it. |
scenes/quests/story_quests/champ/1_stealth/champ_incomplete_character.gd
Outdated
Show resolved
Hide resolved
Addressed the comments @felixwalberg made. For now I just moved the npc up so there is no longer a big enough space for the player to fit. Also changed the order of the decorations tiles so that doesn't clip anymore too.
wjt
left a comment
There was a problem hiding this comment.
Looks good from my perspective, just a few suggested tweaks.
scenes/quests/story_quests/champ/1_stealth/champ_incomplete_character.gd
Outdated
Show resolved
Hide resolved
scenes/quests/story_quests/champ/1_stealth/champ_incomplete_character.gd
Outdated
Show resolved
Hide resolved
scenes/quests/story_quests/champ/1_stealth/champ_incomplete_character.gd
Outdated
Show resolved
Hide resolved
scenes/quests/story_quests/champ/1_stealth/champ_incomplete_character.gd
Outdated
Show resolved
Hide resolved
scenes/quests/story_quests/champ/1_stealth/champ_incomplete_character.gd
Outdated
Show resolved
Hide resolved
Co-authored-by: Will Thompson <[email protected]>
- Removed unnecessary semicolons - Added tile suffix to exported blink distance
This ability teleports the character instantly in the direction they are running whenever the player presses C (Closes #1892).
The ability is local to the stealth mini-game character, and the hope is that the script will later be partially redacted so that the competitors can learn to code player movement.
Changes:
The hope is that the player will see this new island and be incentivized to code a working blink ability.
This still needs some work, mainly because now that the player can go out of bounds, the system of using a hidden border tile layer becomes a bit awkward.