Commit graph

446 commits

Author SHA1 Message Date
Kazhnuz
8a5692c1a1 feat(assets): add a way to get current relative frame
This function return the current frame relative to the first frame of 
the current animation
2019-06-23 14:23:51 +02:00
Kazhnuz
a3b6bcd499 feat(world): add a frame hitbox data structure to process
It'll allow us to create a way to process everyframe of an animation and 
change hitbox according to the animation.

It should especially simplify the creation of battle system.
2019-06-23 10:19:01 +02:00
Kazhnuz
f88c7f49e4 feat(world): add multiple hitbox support on actor2D 2019-06-22 22:11:22 +02:00
Kazhnuz
c553dfafa3 feat(examples): add ducking in plateforming example
Show how we can now modify in action an hitbox without glitching it
2019-06-22 20:17:36 +02:00
Kazhnuz
b770253cb5 fix(examples): adapt to the new hitbox system 2019-06-22 19:28:28 +02:00
Kazhnuz
8c1e9d8e05 feat(world): initial support for external hitbox
For the moment it doesn't add any real feature, but it allow the 
mainHitbox to be an external object to the actor, giving to it more 
power.
2019-06-22 19:27:31 +02:00
Kazhnuz
cb97c2ceee chore(world): prepate using an external hitbox object 2019-06-22 17:27:36 +02:00
Kazhnuz
2b1bdd0be5 improvement(world): separate bodies from actor management 2019-06-22 17:19:54 +02:00
Kazhnuz
241baad935 fix(world): remove a forgotten debug function 2019-06-21 20:06:58 +02:00
Kazhnuz
4547628ba5 Merge branch '0.5.1' 2019-06-21 18:57:43 +02:00
Kazhnuz
ff38f7fe87 Merge branch '0.5.x' of https://git.chlore.net/game-projects/gamecore into 0.5.1 2019-06-21 18:55:31 +02:00
Kazhnuz
0b6101a398 meta: fix changelog 2019-06-21 18:53:53 +02:00
Kazhnuz
79c79d9613 Merge branch '0.5.1' of game-projects/gamecore into 0.5.x 2019-06-21 18:52:33 +02:00
Kazhnuz
664a2c7309 meta: publish 0.5.1 2019-06-21 18:51:41 +02:00
Kazhnuz
91019b2074 fix(world): use right camera internal coordinate
Fixes #15 and #17
2019-06-21 18:51:14 +02:00
Kazhnuz
408a71434f fix(world): use right camera internal coordinate
Fixes #15 and #17
2019-06-21 18:50:45 +02:00
Kazhnuz
3ced2dbef4 fix(world): separate getting data from the internal and advertised view
Use two functions instead of just one, one showing the actual dimensions 
of the internal "cam" (basically, the whole screen), and one showing the 
advertised displaced camera.

Fixes #16
2019-06-21 18:27:02 +02:00
Kazhnuz
80072d285a fix(examples): add missing HUD in one-player example 2019-06-21 17:11:32 +02:00
Kazhnuz
fd1a05a9a8 meta: publish 0.5.0 2019-06-16 16:41:06 +02:00
Kazhnuz
9bc70a601f meta: update changelog 2019-06-16 16:37:47 +02:00
Kazhnuz
81015b011b feat(examples): add a pause menu in plateformer example 2019-06-16 16:37:22 +02:00
Kazhnuz
b47e158126 feat(menusystem): add a function to deactivate assets when menu is active 2019-06-16 16:36:39 +02:00
Kazhnuz
a227bbb033 feat(world): add a function to reset world 2019-06-16 16:33:29 +02:00
Kazhnuz
fb35eca0fa feat(menusystem): add a way to deactivate world when activating the menu 2019-06-16 16:21:26 +02:00
Kazhnuz
f7040d1854 feat(world): draw actors according to their depth
It allow us to draw some sprites always over some others.

Fixes #8
2019-06-16 10:24:30 +02:00
Kazhnuz
54b01b0d94 feat(world): add a creationID variable to keep track of actors ID 2019-06-16 10:08:59 +02:00
Kazhnuz
e9f5731a34 meta: update CHANGELOG 2019-06-16 10:01:21 +02:00
Kazhnuz
61b3c29f6b improvement(world): only draw visible actors when a camera is active
It'll make the game less laggy. For the moment, no need to only update 
visible actors.

Fixes #14
2019-06-16 10:00:05 +02:00
Kazhnuz
65b0c74a06 feat(world): add a batchActor function activated by a bool in tiled
This way, you can add multiple actors with just one tiled object. It 
also bring better feature parity with Imperium Porcorum.

Fixes #10
2019-06-15 11:50:53 +02:00
Kazhnuz
4c2427bfd6 feat(world): add a drawHUD function to draw the current HUD
It is able to draw everything a player object want directly where it 
should go.

Fixes #3
2019-06-13 22:23:23 +02:00
Kazhnuz
6f59f1e732 refactor(examples): use updateStart(dt) and updateEnd(dt)
Allow to drop easily some instance of calling the parent's same function
2019-06-13 18:44:13 +02:00
Kazhnuz
1c879b2090 meta: update changelog 2019-06-13 18:40:10 +02:00
Kazhnuz
58b8c95d62 feat(actor): add *Start() and *End() functions 2019-06-13 18:39:09 +02:00
Kazhnuz
055ae92eb9 feat(scene): add *Start() and *End() functions.
Make the scene children able to add functions before or after 
everything.
2019-06-13 18:33:29 +02:00
Kazhnuz
5f5faddbd5 meta: add a changelog 2019-06-13 17:47:48 +02:00
Kazhnuz
d8c0ce8f00 meta: add a code of conduct
Use the Contributor Covenant Code of Conduct
2019-06-11 19:48:56 +02:00
Kazhnuz
236184ce0c example/plateformer: also pause asset animation 2019-05-30 13:56:14 +02:00
Kazhnuz
e475604c57 gamecore/assets: add activity handling functions 2019-05-30 13:54:39 +02:00
Kazhnuz
67cb930ae7 example/plateformer: add a basic pause button 2019-05-30 13:49:46 +02:00
Kazhnuz
af96232d53 gamecore/input: fix two glitches in the key flushing system 2019-05-30 13:49:19 +02:00
Kazhnuz
80ef8b1a65 gamecore/world: add an activity system for the world 2019-05-30 13:37:55 +02:00
Kazhnuz
e73d6804f5 gamecore/scenemanager: draw the world before drawing the scene 2019-05-30 13:37:30 +02:00
Kazhnuz
48aa0a3eab gamecore/scene: put world wrapper inside the scene 2019-05-30 13:27:41 +02:00
Kazhnuz
df4d264c21 gamecore/scenemanager: let the scene manager handle directly the world 2019-05-28 19:31:42 +02:00
Kazhnuz
23f17491ad gamecore/world: make the world registerable directly by itself 2019-05-28 19:28:05 +02:00
Kazhnuz
5e95099af9 examples/plateform: make coin drop sparkle gfx when taken 2019-05-06 20:45:13 +02:00
Kazhnuz
3de36cc77f examples/plateform: add sparkle asset 2019-05-06 20:44:53 +02:00
Kazhnuz
fb4f438bf9 modules/world: add a generic gfx actor 2019-05-06 20:44:13 +02:00
Kazhnuz
7bdcdc5bfa modules/assets: add getDimensions() to tileset, sprite and animators 2019-05-06 20:43:51 +02:00
Kazhnuz
0ee3220559 modules/world: put the register and initPhysics functions in BaseActor 2019-05-05 21:56:55 +02:00