15 Commits

Author SHA1 Message Date
ff1d85a325 Add Pill singleton with basic behavior
A pill can be taken (key 'E', currently in Player.gd for testing) to
increase the level up to the max level (currently 6).

The drugged level gradually decreases down to the min level
(currently 0).
2019-11-11 21:54:17 +01:00
603e21b6fe Smooth NPC turning
The Meldewesen now turns smoothly instead of abruptly. In addition,
while turning, its move speed decreases, causing it to mostly turn on
the spot.
2019-11-11 11:18:06 +01:00
9fd3087fdc Meldewesen runs towards player when seeing it
The NPC got some functionality which now allows it to tell the
PathNavigator where it wants to go, in addition to the default
behavior.
2019-11-11 10:49:50 +01:00
93f59ec131 Add NPC class which Meldewesen now inherits from
This is in preparation for being able to more finely control the NPC,
both from the specific NPC implementation and the PathNavigator (which
was renamed accordingly)
2019-11-11 10:24:29 +01:00
f67b7e6361 Meldewesen player visibility works with new Player 2019-11-11 10:20:23 +01:00
d2ee524f72 Fix issues with Meldewesen pathfinding
The NavigationMeshInstance now keeps larger distances from obstacles to
avoid the Meldewesen from colliding with them while traversing the
correct path.

A possible issue with the look_at vector has been fixed as well.
2019-11-11 10:16:03 +01:00
d7e76cff6f - removed unused function param 2019-11-02 20:09:58 +01:00
932930b6b7 - added Logger 2019-11-02 20:06:20 +01:00
341c8ba2f2 - some improvements, beautify code *_* 2019-11-02 19:53:07 +01:00
4d66d64d04 Ground collision hotfix
The ground needs to be a PhysicsBody for the collision to work.

Also added colliders to the boxes to further test collision.

The collision seems to have caused some issues with the Meldewesen
pathfinding - I think I know what's wrong, will fix soon.
2019-11-02 19:33:41 +01:00
f280e6e349 - added basic movement and camera control
- collsion with floor does not work!
2019-11-02 19:02:16 +01:00
b88d68d27b - added Player 2019-11-02 16:04:03 +01:00
72989b8438 Meldewesen can detect Player within visibility 2019-10-30 01:01:02 +01:00
c3301e15db Add NodeGroupNotifier to generalize PathNavigator
The NodeGroupNotifier notifies nodes within a specific group of the
existence of a specific Node. With this new node, the Navigation does
not need to be specifically assigned to the
PathNavigatorForKinematicBody, making it easier to use in different
scenarios.
2019-10-30 00:48:24 +01:00
9c583ed694 Implement basic path following for Meldewesen
The PathNavigatorForKinematicBody node can take a KinematicBody as a
child and move it along its path. It doesn't strictly follow the path
though, but also avoids obstacles according to the Navigation (with its
Navmesh).

How the Navigation node is fetched will be changed using Groups later,
the current structure is temporary.

A PathTestWorld has been added for testing this behavior, as well as a
basic Meldewesen.
2019-10-28 01:25:52 +01:00