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
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
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
e475604c57
gamecore/assets: add activity handling functions
2019-05-30 13:54:39 +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
48aa0a3eab
gamecore/scene: put world wrapper inside the scene
2019-05-30 13:27:41 +02:00
Kazhnuz
23f17491ad
gamecore/world: make the world registerable directly by itself
2019-05-28 19:28:05 +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
Kazhnuz
de42087e51
modules/world: init hitbox before loading the parent new() function
2019-05-05 21:55:57 +02:00
Kazhnuz
2344bd5a9a
modules/world: put non-hitbox related physics function in baseactor
2019-05-05 21:44:12 +02:00
Kazhnuz
1e42fac57c
modules/world: refactor hitbox initialization outside of initPhysics
2019-05-05 21:29:49 +02:00
Kazhnuz
86b1368a6e
modules/world: put solidity initialization into baseactor
2019-05-05 21:27:02 +02:00
Kazhnuz
11fcc4cf99
modules/world: refactor movement functions together
2019-05-05 21:25:25 +02:00
Kazhnuz
4b4b8b4e85
modules/world: refactor all cordinate functions together
2019-05-05 21:22:41 +02:00
Kazhnuz
6aa7fd6399
modules/world: use the setBounceFactor function in initPhysics
2019-05-05 21:18:54 +02:00
Kazhnuz
187f0286df
modules/world: put the update functions in the baseactor
2019-05-05 21:04:00 +02:00
Kazhnuz
1d26588904
modules/world: put timers and sprites functions in the base actor
2019-05-05 21:01:54 +02:00
Kazhnuz
6225f1fb4e
modules/world: put input functions in BaseActor
2019-05-05 20:51:26 +02:00
Kazhnuz
cd62f9c7d1
modules/world: put basic initilisation in baseactor
2019-05-05 20:49:28 +02:00
Kazhnuz
1b5a2e9c6e
modules/world: derive the Actor2D from the base actor
2019-05-05 20:30:39 +02:00
Kazhnuz
351b2a970a
modules/world: initial draft of the base actor module
2019-05-05 20:30:25 +02:00
Kazhnuz
d1a5bb9d39
modules/world: add a timer system to the actors
2019-05-05 20:13:19 +02:00
Kazhnuz
25a582821f
modules/world: only check collision if the object isn't being destroyed
2019-05-05 19:50:33 +02:00
Kazhnuz
dfc71eaebd
module/world: add a function to destroy actor
2019-05-05 19:45:57 +02:00
Kazhnuz
146cfbed54
module/world: fix an oops
2019-05-05 19:36:21 +02:00
Kazhnuz
53df3c125c
modules/world: add more wrapper around sprites functions
2019-05-05 15:22:54 +02:00
Kazhnuz
8d655f8049
modules/world: make the actors able to clone their sprite
2019-05-05 13:17:43 +02:00
Kazhnuz
174b51acfa
modules/world: use checkCollisions to get if an object is on ground
2019-05-05 13:01:25 +02:00
Kazhnuz
b80566b4ec
modules/world: add a way to check collisions
2019-05-05 13:01:00 +02:00
Kazhnuz
0d5068fdaa
modules/world: add initial way to check if an entity is on ground
2019-05-02 20:10:31 +02:00
Kazhnuz
f04d0c6b4e
modules/world: initial gravity system
2019-05-02 19:51:43 +02:00
Kazhnuz
adfa147b72
examples/moveplayer: fix camera2 having the wrong set of coordinate
2019-05-02 18:47:36 +02:00
Kazhnuz
56a269dd57
modules/world: work around Y invertion in the camera system
2019-05-02 18:46:44 +02:00
Kazhnuz
b69ad095ee
modules/world: make drawDebugViewBox function related to one view
2019-05-02 18:27:58 +02:00
Kazhnuz
5eed16bac4
modules/world: make local the vx and vy variables
2019-05-02 17:34:35 +02:00
Kazhnuz
eddf66595c
modules/world: attach and detach view just once
2019-05-02 17:21:48 +02:00
Kazhnuz
aaf0b1882b
modules/world: displace the map according to the view relative position
2019-05-02 16:21:24 +02:00
Kazhnuz
065a67a915
modules/world: add a function to get view relative position
2019-05-02 16:19:59 +02:00
Kazhnuz
f1edd118ec
modules/world: simplify limitView() by using utils.math.between()
2019-05-02 16:19:28 +02:00
Kazhnuz
c41930fca4
modules/world: automatize multiple character handling
2019-05-01 17:21:38 +02:00
Kazhnuz
dd21878ee8
modules/world: add an initActors function
2019-05-01 16:25:44 +02:00
Kazhnuz
18d75f825c
modules/world: separate map loading from level initialization
2019-05-01 14:36:40 +02:00
Kazhnuz
98fb57afaa
modules/world: floor the coordinate for sprite drawing
2019-05-01 11:26:15 +02:00
Kazhnuz
257eec8290
modules/assets: add a way to determine ox and oy in tileset metadata
2019-05-01 11:24:41 +02:00
Kazhnuz
0fba67f212
modules/world: handle differently the coordinate system for 2D actors
2019-05-01 11:19:42 +02:00
Kazhnuz
ce2a89b295
modules/world: fix scalling function
...
actually adding the scaling would be nice.
2019-05-01 11:16:37 +02:00
Kazhnuz
1a669029ea
modules/world: add a basic sprite system for the Actor2D
2019-05-01 11:07:53 +02:00
Kazhnuz
d908604dcb
module/world: return camera coordinate in the right order
2019-05-01 10:39:19 +02:00
Kazhnuz
a2d38a1ef4
module/world: make sure that the view doesn't go outside the world
2019-05-01 10:27:07 +02:00
Kazhnuz
fd78d083af
modules/world: add a way to load objects from tiled
2019-04-29 16:40:44 +02:00
Kazhnuz
00fe87f61d
modules/world: invert player 1 and 2 cam in horizontal split mode
2019-04-29 15:10:02 +02:00
Kazhnuz
882f98bf40
modules/world: add a way to link the camera to an actor
2019-04-29 15:03:28 +02:00
Kazhnuz
cc5de7d5ff
modules/world: attach and detach the camera when drawing the map
2019-04-29 14:12:34 +02:00
Kazhnuz
1ba74a534d
modules/world: scissor the view when attaching the camera
2019-04-29 14:12:04 +02:00
Kazhnuz
bc0b1bb87b
modules/world: initial functions to compute camera size and positionning
2019-04-29 13:58:13 +02:00
Kazhnuz
3c498f2d16
modules/world: add a basic view dimension system
2019-04-29 11:39:07 +02:00
Kazhnuz
a046eb5a9c
modules/world: add camera system to the world system
2019-04-29 11:21:41 +02:00
Kazhnuz
ffac18d6a5
modules/world: add a way to get camera scale and view
2019-04-29 11:20:59 +02:00
Kazhnuz
06a5192b84
modules/world: fix a typo
2019-04-29 10:47:01 +02:00
Kazhnuz
699efeb2fb
modules/world: add a view number limit
2019-04-29 10:42:43 +02:00
Kazhnuz
79ecdc822b
modules/world: only attach view to camera if one is requested
2019-04-29 08:45:48 +02:00
Kazhnuz
9c3ef4ce65
modules/world: add initial basic camera system
2019-04-29 08:44:10 +02:00
Kazhnuz
116eb34aa2
modules/assets: initialize tilesets
2019-04-28 13:02:49 +02:00
Kazhnuz
5055f84320
modules/assets: add a basic batch importing system
2019-04-28 13:02:19 +02:00
Kazhnuz
fc34cdc199
modules/world: set default collision mode to slide
2019-04-28 11:15:35 +02:00
Kazhnuz
5777d9463b
modules/world: add a way to simply set bounceFactor in the Actor2D
2019-04-28 11:12:54 +02:00
Kazhnuz
6c2b308580
modules/world: add a way to change speed to collision normal
2019-04-28 11:09:55 +02:00
Kazhnuz
0d25dbd839
modules/world: add collision response system
2019-04-28 11:06:07 +02:00
Kazhnuz
c43317bfe2
modules/world: add friction system to Actor2D
2019-04-28 09:31:10 +02:00
Kazhnuz
3ce567b113
modules/world: floor actor2D position when drawing it
2019-04-28 09:22:31 +02:00
Kazhnuz
ea5011642c
modules/world: add a basic solidity system
...
It'll make easier the solidity system and will reserve custom filter to
specific objects.
2019-04-25 17:54:51 +02:00
Kazhnuz
75eb198450
modules/world: fix an oops in Actor2D
2019-04-22 12:13:42 +02:00
Kazhnuz
90458757e5
modules/world: make hitbox drawing part of actor
2019-04-22 12:13:01 +02:00
Kazhnuz
05f62a6842
modules/world: make the move function return variables
2019-04-22 12:09:28 +02:00
Kazhnuz
a25e178628
modules/world: make speed relative to dt
2019-04-22 12:02:52 +02:00
Kazhnuz
93f710e0b0
modules/world: add filter function
2019-04-22 11:58:00 +02:00
Kazhnuz
42303da317
modules/world: fix movement functions for bump2D
...
The moveActor function is in bump2D a wrapper for the move function of
bump2D. But this function doesn't handle actual movement.
In order to make things samewise everywhere, let the actor handle actual
movement themselves.
2019-04-22 09:42:33 +02:00
Kazhnuz
eac75df874
modules/world: don't access directly to the actors manager inside worlds
2019-04-22 09:36:29 +02:00
Kazhnuz
ceb28eb445
modules/world: fix loading of baseworld in world2D
2019-04-22 08:35:07 +02:00
Kazhnuz
3ece29ef43
modules/world: add a Bump2D world backend
2019-04-20 22:51:56 +02:00
Kazhnuz
627395c83f
modules/menusystem:add batch management functions for sounds
2019-04-20 17:56:18 +02:00
Kazhnuz
4c1acb0afa
modules/menusystem: add a function to get sound from scene assetmanager
2019-04-20 17:54:22 +02:00
Kazhnuz
faa12d4ff7
modules/menusystem: link a menusystem to a scene
2019-04-20 17:54:01 +02:00
Kazhnuz
946b446844
modules/menusystem: reset sound activity to "false" in menus
2019-04-20 17:47:57 +02:00
Kazhnuz
51ea3629d0
modules/menusystem: add a function to reset menus' sound state
2019-04-20 17:45:58 +02:00
Kazhnuz
d1c2f8634b
modules/menusystem: rename correctly internal navigations sound function
2019-04-20 17:42:04 +02:00
Kazhnuz
f37eaef79a
modules/menusystem: add a way to manage menusystem activity
2019-04-15 16:30:45 +02:00
Kazhnuz
802e1a78a3
modules/scenes: fix an oops
2019-04-14 19:46:39 +02:00
Kazhnuz
324a5854b7
core: add a way to get keyboard callbacks from current scene
2019-04-14 19:45:52 +02:00
Kazhnuz
a6b1f2da59
modules/menusystem: add a way to easily invalidate widget canvas
2019-04-13 10:44:07 +02:00
Kazhnuz
ae5a001e00
examples/options: export widgets canvas as a real texture
...
It'll avoid screen change clearing the texture content
2019-04-13 10:39:01 +02:00
Kazhnuz
193e9b6fbf
modules/world: add speed variables
2019-04-13 09:40:14 +02:00
Kazhnuz
a81ac5b819
modules/menusystem: add an arbitrary order system to widgets & menus
2019-04-11 18:16:36 +02:00