Commit graph

112 commits

Author SHA1 Message Date
Francois Belair
0ea6cb6056 Replace broken explicit types with implied 2021-02-23 11:35:21 -05:00
Nathan Lovato
5cf98e61bb Add FallLimitArea to level 1 and 2
Closes #187
2020-06-08 14:33:38 -06:00
Nathan Lovato
2742ee66e8 Simplify transition code
Used the queue system in AnimationPlayer to queue animation
Removed an unnecessary animation
Renamed files
Renamed signal screen_covered to faded_to_black
Removed comments from LevelLoader
2020-05-02 18:31:18 -06:00
JPCard
91e0659b8c Add animated transition beetween levels 2020-05-02 18:31:18 -06:00
Nathan Lovato
5c540c668b Simplify the MovingPlatform and Waypoints 2020-04-03 07:57:48 -06:00
Nathan Lovato
7066394376 Remove unused signal connection in Arrow.tscn 2020-03-25 13:37:58 -06:00
Nathan Lovato
1bbe709693 Use float for health 2020-03-25 13:37:58 -06:00
Nathan Lovato
8d1c816f02 Remove obsolete code in Settings.gd 2020-03-25 13:37:58 -06:00
Nathan Lovato
ba1df1af21 Address warnings 2020-03-25 13:37:58 -06:00
Phoen
5315aadfb1 Fix mouse left click event not passed to Hook state machine 2020-02-24 03:43:02 +07:00
Henrique Campos
24095ea0e4 Redesign instakill condition 2020-01-29 14:42:59 -03:00
Henrique Campos
89c2fe5802 Fix Level1 Portal and Remove Mountains Script
Closes: #176
2020-01-24 16:17:50 -03:00
Henrique Campos
60f7699361 Add fixed Sky and Repeatable mountains
The mountains currently lost their ability to parallax vertically due to the workaround in order to accomplish them always be on the bottom of the screen.

Closes: #174 and #172
2020-01-24 12:25:36 -03:00
Henrique Campos
044be5f3df Fix Debug Panel not toggling visibiltiy
I think that since the DebugPanel is not an in-game element, it should handle inputs regardless of the game's internal state, that's why I think it should use `_input` callback instead of `_gui_input`

Closes: #170
2020-01-24 10:34:48 -03:00
Henrique Campos
9b1038ccbb Fix floating portals
Closes: #175
2020-01-24 10:29:49 -03:00
Henrique Campos
c88269743c Add instakill condition to Stats and a Fall Limit Area
Use the FallLimitArea.tscn to visually set a height in the level that will trigger an instakill.

Closes: #173
2020-01-24 10:27:51 -03:00
Henrique Campos
c59526cd1b Add toggleable fullscreen
Closes: #171
2020-01-24 10:22:58 -03:00
Nathan Lovato
92f8d67dc4 Use the "name :=" notation for type inference instead of "name: ="
This is the official GDScript guideline.
2020-01-16 19:08:45 +01:00
Nathan Lovato
a281242b16 Fix incorrect signal connection on the hook
The signal should be one shot as it is the trigger to get out of the hook's fire
state. I also moved the signal as the cooldown timer doesn't start if the player
is not using the hook on a target.
2020-01-11 17:23:45 +01:00
Nathan Lovato
9e1797dd3a Add missing newline at the end of a file 2020-01-11 17:23:18 +01:00
Nathan Lovato
67ffa4ccb2 Fix wrong type hint on a variable 2020-01-11 15:59:26 +01:00
Nathan Lovato
dac4ff1bd7 Fix comments after converting docstrings
Some files were not converted properly, leaving the game in a broken state.
2020-01-11 15:58:11 +01:00
Nathan Lovato
865c7cefaa Replace multiline comments with comment blocks 2020-01-02 23:40:57 +01:00
Brad Borne
d9f438633c Add levels 1 and 2 2019-12-24 10:34:33 +01:00
Nathan Lovato
e24388a778 Cast value to State, add missing newline 2019-12-24 10:34:33 +01:00
Nathan Lovato
70c8ca8d37 Use parentheses for all asserts 2019-11-28 09:19:52 +01:00
Răzvan C. Rădulescu
0b5869e847 First pass at integrating art (#168)
* First pass at integrating art

- replaced object/enemy bodies with provided art:
  - checkpoint
  - hooking
  - points
  - portals
  - final Robi sprite (`roby_shaded.png`)
  - sky (with gradient texture)
- reworked mountains to scroll seamless & increase width of
  texture

closes #167

* Include art props in Level1
2019-11-28 09:09:07 +01:00
Francois Belair
1761a4cd51 Player not moving with moving platforms fixed, and example platform added to Level1. 2019-11-04 11:31:26 -05:00
Nathan Lovato
7db49ca80e Fix #166: use delta time in steering calculations 2019-10-30 11:16:03 +01:00
Nathan Lovato
e2380b2d68 Restore gamepad aim 2019-10-09 09:44:40 +02:00
Francois Belair
2bb898d9dd Moved gitignore stuff to git exclude. 2019-10-04 15:40:47 -04:00
Francois Belair
764a9dfa65 godot-cpp submodule added, SConstruct script file added to source. Visual studio solution added. 2019-10-04 14:51:07 -04:00
Francois Belair
f92db19323 Moved to a floodfill algorithm, and put it all in a GDNative C++ class. 2019-10-04 10:39:18 -04:00
Francois Belair
44a833794b Moved everything into a C++ GDNative class, and changed it to a floodfill algorithm. 2019-10-03 16:05:34 -04:00
Francois Belair
399d8eec03 Heatmap pathfinding for many agents
Populates a grid that uses razcore's pathfinder class to build a heatmap - each tile referring to how far away they are from the goal.
Uses a simple extra thread to keep the game from hitching up. Spawner creates some 500 heatmap following enemies that use as simple
a set of nodes and code as possible to show off performance.
2019-09-30 11:59:28 -04:00
Francois Belair
6ac88fa2ee New enemy type, a hopper who jumps back and forth. Invulnerability flag added to Stats, and a function to do so with a timer. 2019-09-25 14:02:35 -04:00
Francois Belair
fcf909fcba Recommended coding style fixes. 2019-09-24 08:52:04 -04:00
Francois Belair
e1712731ba Fixed die state not receiving last_checkpoint outside of debug commands.
Sequestered the hop on enemy logic into Player so the enemy entity does not control the player. Added stunned state for enemy for the knockback effect.
2019-09-23 15:38:37 -04:00
Nathan Lovato
113f83e358 Make the player stop and hop upon reaching a hooked enemy 2019-09-21 10:25:38 +02:00
Francois Belair
8223a8c1fa Enemy damaged by hook instead of bounce. Player velocity boosted instead of just a jump impulse, if it exists. 2019-09-20 15:52:58 -04:00
Francois Belair
72ef29770f Player.gd now has a get_collider method for ducktyping when accessing its body in signals.
Basic enemy that patrols side to side - can be hooked onto and bounced off of without any modification to player.
2019-09-19 14:39:34 -04:00
Francois Belair
0e873f37c0 First enemy using steering and state machine (#161)
* Added a basic enemy that charges towards the player. Uses state machine decision making, and steering behaviors.

* Added a basic enemy that charges towards the player. Uses state machine decision making, and steering behaviors.

Cleaned up code and fit guidelines.

* Update code style

Use var name: Type = value instead of casting the variable with as
Use onready vars to cache node dependencies
Use the player node (KinematicBody2D) as a target instead of getting its
collision shape (we should never get a child of a node from another scene
directly)
Remove wrapper method to change state: we already have
_state_machine.transition_to, it doesn't add much to me to wrap it under a _change_state method
2019-09-17 12:18:09 +02:00
Nathan Lovato
0a3c2b34fc Change restart input action 2019-09-07 14:34:57 +02:00
Nathan Lovato
fb5b1f5996 Close #134: Add time limit and gradual slow down after a power jump 2019-09-07 10:32:14 +02:00
Nathan Lovato
5362968598 Fix broken transition from the hook Aim to Fire state 2019-09-07 10:14:23 +02:00
Nathan Lovato
42bb4cbecd Close #159: Remove aim logic in the Fire state
Now the Fire state doesn't depend on the Aim state anymore so I removed
the parenting
2019-09-07 10:05:02 +02:00
Nathan Lovato
f54fb0eee2 Update default acceleration, set LedgeWallDetector active 2019-08-25 16:19:11 +02:00
Nathan Lovato
e5fbf57b03 Let the player throw the hook even when there is no target in range
This is merely visual for now. Also, the arrow doesn't collide with walls or the
floor: it goes through.
2019-08-25 16:17:05 +02:00
Nathan Lovato
d09ccabd04 Change type of the variable to State 2019-08-25 16:05:01 +02:00
Nathan Lovato
b608fcb45e Fix unknown move identifier 2019-08-25 16:04:44 +02:00