Commit Graph

380 Commits

Author SHA1 Message Date
Gregoire Parant
e973921390 Fix admin tags
- Fix get size group
- Fix admin tags
- Fix texture already used
2020-10-21 17:22:17 +02:00
Gregoire Parant
1df4cb3e17 Red circle when have 4 users during webrtc meet 2020-10-21 16:07:42 +02:00
David Négrier
45c6e13cad Fixing loading of same custom texture several time
Phaser 3 does not trigger oncomplete event if the resource is already loaded.
2020-10-21 10:34:55 +02:00
David Négrier
c03dd4c551 Jitsi room names don't have / 2020-10-20 19:47:28 +02:00
David Négrier
78a4bf3189 Adding custom character textures 2020-10-20 17:42:36 +02:00
David Négrier
a3816cd725
Merge pull request #346 from thecodingmachine/customUserStore
improved the local storage of the the selectcharacterScene
2020-10-20 17:38:54 +02:00
arp
dff189b223 local storage of the custom layers 2020-10-20 17:25:08 +02:00
arp
f5aa70ddc2 improved the local storage of the the selectcharacterScene 2020-10-20 13:44:57 +02:00
Gregoire Parant
bf9dfcc835 Ban mesage
- Create type message could be use to send private message at any user
- Create SendMessageUser message
- Add sound when user receive ban message
2020-10-19 19:32:47 +02:00
arp
75d9ed8dfa implemented the admin websocket
now send data
2020-10-19 14:23:50 +02:00
David Négrier
bf01116f63 Removing useless features of Jitsi meet 2020-10-19 12:36:05 +02:00
David Négrier
16d1c2354e Adding fallback to unauthenticated Jitsi 2020-10-19 11:07:49 +02:00
David Négrier
260b0ea408 Adding JWT authentication to Jitsi 2020-10-16 19:23:28 +02:00
David Négrier
c259dd582c Fixing change of map with relative URLs 2020-10-16 09:29:18 +02:00
David Négrier
c75f1edc40 Merge branch 'develop' of github.com:thecodingmachine/workadventure into player-report
# Conflicts:
#	back/src/Controller/AuthenticateController.ts
2020-10-15 18:01:44 +02:00
David Négrier
c59a335a1a Removing useless resource 2020-10-15 18:00:34 +02:00
David Négrier
0ea7240834 Adding condition to enable reporting only on private rooms 2020-10-15 17:58:27 +02:00
David Négrier
702084b00a
Merge pull request #330 from thecodingmachine/exiturl
Adding exitUrl property
2020-10-15 16:00:50 +02:00
David Négrier
2fe61ce11b
Merge pull request #329 from thecodingmachine/fixhistory
Fixing URL not being rewritten when changing maps
2020-10-15 15:52:01 +02:00
David Négrier
36d73333f5 Adding exitUrl property
The exitUrl property can be applied on a layer to link to any kind of room (private or public)
2020-10-15 15:50:51 +02:00
David Négrier
517b3a644b Fixing URL not being rewritten when changing maps 2020-10-15 14:35:09 +02:00
arp
67a9bd2520 improved textField component and allowed 8 caracter names 2020-10-15 14:23:39 +02:00
Gregoire Parant
4799460064 Merge branch 'develop' into player-report
# Conflicts:
#	front/src/Connexion/RoomConnection.ts
2020-10-14 15:06:10 +02:00
David Négrier
98bda49d7e Get tags from the admin
And uses tag "admin" to choose whether to display the console or not
2020-10-14 11:07:34 +02:00
Gregoire Parant
047fa7b594 Merge branch 'player-report-fix-conflict' into player-report
# Conflicts:
#	back/src/Controller/IoSocketController.ts
2020-10-13 21:16:57 +02:00
Gregoire Parant
9c44d37020 Merge remote-tracking branch 'github.com/develop' into player-report
# Conflicts:
#	back/src/Controller/IoSocketController.ts
#	front/src/Phaser/Game/GameScene.ts
#	front/src/index.ts
#	messages/messages.proto
2020-10-13 21:14:46 +02:00
Gregoire Parant
05a1ea8469 Merge branch 'develop' into player-report
# Conflicts:
#	back/src/Controller/IoSocketController.ts
#	front/src/Phaser/Game/GameScene.ts
#	front/src/index.ts
#	messages/messages.proto
2020-10-13 20:39:29 +02:00
Gregoire Parant
dbaf44e814 Change report flag
- Add icon on video
- Permit to have a modal with comment
2020-10-13 19:56:42 +02:00
David Négrier
cb159350e9 Fixed room switching 2020-10-13 18:44:50 +02:00
David Négrier
ec93891c6b Using Room class to load GameScene 2020-10-13 17:10:07 +02:00
David Négrier
aee06da7f9 Refactoring Room.ts to fetch map url automatically from ID 2020-10-13 17:10:07 +02:00
arp
d98efc0433 lint fixes 2020-10-13 16:23:49 +02:00
Gregoire Parant
65406f844e Teleport notification
- Create end point to permit the teleport notification. The map url will be /teleport/token_user
- Create message teleport
- Create receive feature in phaser to teleport

TODO
Teleport player on black room.
2020-10-13 11:39:07 +02:00
David Négrier
0731bd39e5 Moving back to using ScenePlugin and adding EntryScene 2020-10-12 18:59:49 +02:00
David Négrier
2852f204f5 Improving error handling upon unknown URL 2020-10-12 17:42:37 +02:00
arp
02c193a262 rewrote the authorisation flow: give more responsability to gameManager and less to gameScene 2020-10-12 16:45:09 +02:00
Gregoire Parant
aeced0c648 create message to report 2020-10-12 11:22:41 +02:00
arp
032facb75f lint fixes 2020-10-09 17:21:46 +02:00
arp
f550c5a775 merge from develop 2020-10-09 17:10:24 +02:00
Gregoire Parant
07c17452e7 Merge branch 'develop' into player-report 2020-10-09 16:15:15 +02:00
arp
5e54fc2c26 some fixes 2020-10-09 14:53:18 +02:00
arp
4af46b1b3f simplified mapUrl parsing 2020-10-08 18:51:24 +02:00
David Négrier
386b25afa0 Switching customizeScene and gameScene to new ResizableScene 2020-10-08 16:00:29 +02:00
David Négrier
66f3345861 Adding responsive to SelectCharacterScene 2020-10-08 15:10:46 +02:00
David Négrier
79b5c5de93 Making login scene responsive 2020-10-07 18:03:34 +02:00
Gregoire Parant
c63fb6ed6f Add image to report and to teleport player 2020-10-06 23:56:27 +02:00
David Négrier
f542b117a8 Refactoring connection to pass room info on connect 2020-10-06 18:11:42 +02:00
David Négrier
1061c80f1f Fixing connection closing 2020-10-01 17:16:49 +02:00
David Négrier
d3fa901691 Merge branch 'develop' of github.com:thecodingmachine/workadventure into feature/global-message
+ migrating to protobuf messages

# Conflicts:
#	back/src/App.ts
#	back/src/Controller/IoSocketController.ts
#	back/yarn.lock
#	front/src/Connection.ts
#	front/src/Phaser/Game/GameScene.ts
#	front/src/Phaser/Login/EnableCameraScene.ts
#	front/src/WebRtc/SimplePeer.ts
2020-10-01 14:11:34 +02:00
arp
3f9659ef3c improvments 2020-09-28 15:40:34 +02:00
arp
af4611ed29 rewrote the login workflow 2020-09-25 19:23:33 +02:00
David Négrier
d7209d8864 Migrating messages locally into back and front 2020-09-24 11:16:08 +02:00
Gregoire Parant
942d2cbcef Refactor and remove prevent default keyboard 2020-09-23 17:22:00 +02:00
David Négrier
76d3779438 Moved GroupUpdateMessage to protobuf 2020-09-21 11:24:03 +02:00
Gregoire Parant
e0ae79eaf1 Fini quill box 2020-09-21 00:34:25 +02:00
Gregoire Parant
45ad4bbb36 Send and play audio message 2020-09-20 17:12:27 +02:00
David Négrier
b148ca3708 Linting 2020-09-18 18:16:26 +02:00
David Négrier
df0636c513 Migrating user position messages to protobuf 2020-09-18 15:51:15 +02:00
David Négrier
e9ca8721a6 Migrating userId to "int32" to save some space and adding userMoves message in protobuf 2020-09-18 13:57:38 +02:00
Gregoire Parant
e59cbcfaa7 Create console global message
- Add style
- Create zone and button to show the admin console
2020-09-16 21:50:04 +02:00
Gregoire Parant
509196785b Initialise global message
- Create new class to manager global message. My idea is that this class permit to manage audio or text message.
 - Update html to have main content id and inject html in this.
 - Create front event to receive startMessage and stopMessage.
 - Delete impoted variable not used.
2020-09-16 18:38:50 +02:00
David Négrier
f5f9dcac04 Making groups part of zones 2020-09-16 16:06:43 +02:00
David Négrier
3a9196fb82 Merge 2020-09-16 11:41:03 +02:00
David Négrier
d24ec0bd75 Plugin PositionNotifier into the main application. 2020-09-15 16:21:41 +02:00
David Négrier
9b702c75e3 Adding batched messages + the notion of notifier / zones (not plugged in the system yet) 2020-09-15 10:06:11 +02:00
David Négrier
e418e8fd09 Setting the depth of the chat mode / presentation mode to 99999 to avoid melting buttons with map. 2020-09-10 09:31:53 +02:00
David Négrier
f70ba1411a Hiding cam details when entering a Jisti room 2020-09-01 14:43:21 +02:00
David Négrier
6f6873e870
Merge pull request #251 from thecodingmachine/fix_camera_stop
Camera was not properly closed in EnableCameraScene
2020-08-31 15:31:33 +02:00
David Négrier
c739037bc4 Camera was not properly closed in EnableCameraScene 2020-08-31 14:54:52 +02:00
David Négrier
9351719873 Adding the notion of silent zone 2020-08-31 14:10:01 +02:00
David Négrier
df7b5cc2e3 Adding a "silent" notion (triggered in Jitsi meets) 2020-08-31 14:03:40 +02:00
David Négrier
0a8ba37049 Adding Jitsi meet support 2020-08-31 12:18:00 +02:00
David Négrier
a128ff117b code style 2020-08-30 17:40:04 +02:00
David Négrier
01319b50ca Adding a "openWebsite" property that opens websites when we walk over the zone. 2020-08-30 17:37:38 +02:00
David Négrier
168697eb46 Adding a GameMap class that helps tracking when the properties of the tiles the user is changes (when the user moves) 2020-08-30 15:44:22 +02:00
David Négrier
fca93663b4 Merge branch 'develop' of github.com:thecodingmachine/workadventure into outline 2020-08-24 18:15:44 +02:00
David Négrier
044495cf05 Centering character in free space
This commit adds the ability to put the character where there is free space when a discussion is hapening (either in presentation or chat mode)
2020-08-24 14:19:36 +02:00
David Négrier
2e61c2ef62 Getting back code in compilable fashion after huge rebase 2020-08-18 00:12:38 +02:00
David Négrier
6b970adc6c Merge branch 'develop' of github.com:thecodingmachine/workadventure into outline
# Conflicts:
#	front/src/Phaser/Game/GameScene.ts
#	front/src/Phaser/Player/Player.ts
#	front/src/index.ts
#	front/yarn.lock
2020-08-17 22:51:37 +02:00
David Négrier
6516e621b0 Adding display / hide of layout buttons when a meet start / ends 2020-08-17 16:12:53 +02:00
David Négrier
7fe2cc19c3 Adding buttons to switch mode 2020-08-17 15:20:03 +02:00
David Négrier
88c099fc13 Improving layout
Fixing left-right switch on all cameras (except current player camera)
2020-08-16 23:19:04 +02:00
David Négrier
24fb605f50 Switching to definitely assigned parameters
This allows us to go in "full strict mode" (yeah!)
See https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-7.html#strict-class-initialization
2020-08-07 23:39:06 +02:00
David Négrier
bc929615d1 Fixing problem when switching scenes with container 2020-07-29 11:42:18 +02:00
David Négrier
84529d6e99 Propagating customized sprites all over the game 2020-07-28 17:45:55 +02:00
David Négrier
6d0bccc0e1 Making a nice "customize" button 2020-07-28 15:53:44 +02:00
David Perez
866985326b Fixing merge issue 2020-07-28 11:35:30 +02:00
David Perez
90c56ca683 merge 2020-07-28 11:29:21 +02:00
David Perez
21d2a7939b custome characters 2020-07-28 11:24:34 +02:00
David Négrier
ee612f6585 Adding event support to items 2020-07-27 22:36:58 +02:00
David Négrier
d48d5b0285 Fix CS 2020-07-23 18:47:28 +02:00
David Négrier
2484e4f1df Moving maps to their own container 2020-07-23 18:43:51 +02:00
David Négrier
ed146226cf Adding Outline capabilities and a ActionableItem notion. 2020-07-23 18:09:24 +02:00
David Négrier
f7466994c5 Playing with pipeline to display outline 2020-07-15 23:44:01 +02:00
David Négrier
6879418098 Adding a 404 page when resources loading fails 2020-07-07 22:52:22 +02:00
David Négrier
55767f2c78 Fixing image tileset key
If 2 maps share the same tileset name (even if they use 2 different URLs for the tileset), the tileset image will be reused wrongly.

This commit fixes the tileset key to make it equal to the image URL.
2020-07-07 18:22:10 +02:00
David Négrier
67e07c04f8 Fixing loading of tilesets with margin or padding 2020-07-05 17:10:08 +02:00
David Négrier
e3e7b92c6a Fixing errors when arrows touched and no cam 2020-06-25 10:43:42 +02:00
David Négrier
371b4f0063 Fixing Firefox compatibility by remove references to InputDeviceInfo 2020-06-25 09:28:00 +02:00
David Négrier
a52b1f612b Reorganizing on x axis too. 2020-06-24 18:09:59 +02:00
David Négrier
b3c18702bb Adding borders, centering camera, fixing small bug on resize when no camera is enabled 2020-06-24 17:49:38 +02:00
David Négrier
253108eba0 - Making the EnableCameraScene responsive
- Enabling click on arrows
2020-06-24 17:29:23 +02:00
David Négrier
3de37bafed Adding a scene to configure the webcam 2020-06-24 15:35:07 +02:00
David Négrier
d78006e106 Fixing memory leak with listeners
The listeners from MediaManager and SimplePeer were never removed, leading to a huge amount of listeners all over the applications when switching regularly of scene.
2020-06-23 15:02:35 +02:00
David Négrier
a5514ce78a Code cleanup and removing exception in favor of console error 2020-06-22 18:42:54 +02:00
David Négrier
407c6db070 Fixing difference between MapKey and scene key (prevented proper caching of resources) 2020-06-22 17:18:24 +02:00
David Négrier
3f927280a6 Lint 2020-06-22 16:11:48 +02:00
David Négrier
9b174836cd Making sure connection is established again EVEN if the tab is not displayed 2020-06-22 16:11:02 +02:00
David Négrier
1e4ffa20ab Cleaning GameManager 2020-06-22 16:10:34 +02:00
David Négrier
f88f28db3f Refactoring reconnection: putting it into the GameScene directly. 2020-06-22 15:00:23 +02:00
David Négrier
d785a8a1bf Refactoring connection to be part of a GameScene
Most of the refactoring issues we are seeing are probably due to the fact that we are trying to manipulate a ScenePlugin out of a Scene (the GameManager is not a Scene and holds a reference to a ScenePlugin coming from a Scene that might get invalidated by Phaser 3).
Furthermore, if we want in the future to be able to scale, scenes could be hosted on different servers. Therefore, it makes no sense to have one connexion for the whole application.
Instead, we should have one connexion for each scene.
2020-06-22 11:58:07 +02:00
David Négrier
4496c49621 Fix linting 2020-06-19 18:51:58 +02:00
David Négrier
2b820c7d56 Adding an event queue in the GameScene.
Events are processed only in the 'update' method.
We hope this will solve a number of null pointer errors. See #194
2020-06-19 18:18:43 +02:00
David Négrier
e2be99490b Finishing removing any reference to "any" in the front. 2020-06-19 16:36:40 +02:00
David Négrier
39928b46f9 Removing any in the front 2020-06-19 14:30:34 +02:00
David Négrier
8348d13bfe Fixing use const instead of let 2020-06-19 14:30:34 +02:00
David Négrier
54f2518b5e Enabling stricter lint on front 2020-06-19 14:29:29 +02:00
David Négrier
817b25b0be Fixing reconnect issue
In the case the reconnect event was triggered on "wake-up", the disconnect event was not sent. But because of a bug in the way we handle the setTimeout, the reconnection to the GameScene never happened after we forced the disconnect scene.
This fixes the issue.
2020-06-17 16:06:02 +02:00
David Négrier
b1d39c4690 More logs 2020-06-11 14:13:13 +02:00
David Négrier
ea30a02762 Fixing reconnect issues 2020-06-11 14:12:03 +02:00
David Négrier
473c5aa052 Fixing events fired multiple times
Callbacks for socket.io events were registered each time a disconnect was called, leading to message being dispatched plenty of times if there was several disconnections.
2020-06-11 13:34:25 +02:00
David Négrier
e50a4fd88b Fixing setTimeout being called several times 2020-06-11 11:34:22 +02:00
David Négrier
f7265c213e Patch 2020-06-11 10:40:43 +02:00
David Négrier
43c7c9ad07 Fixing null initialization 2020-06-11 10:29:11 +02:00
David Négrier
ce7b4092a6 Fixing suspend/resume
In case we suspend a laptop and resume it, the RECONNECT event is called by socket.io without any error being thrown (so without us being redirected to the Reconnect Scene).
This fix makes sure we go to the reconnect scene before going back to the main scene.
2020-06-11 09:37:33 +02:00
David Négrier
80fddb3c69 Removing dead code 2020-06-10 16:01:01 +02:00
David Négrier
f518830073 Minor change to make sure the scene starts even if in background (does this really work?) 2020-06-10 16:00:54 +02:00
David Négrier
500dc83a85 Completely resetting GameScene on disconnect 2020-06-10 15:43:22 +02:00
David Négrier
43e4489d4d Fixing start position on disconnect 2020-06-10 14:57:32 +02:00
David Négrier
5042f2f82c Lint 2020-06-07 23:00:05 +02:00
David Négrier
c0809e28db Adding support for putting the hash in a map referenced in an exit scene. 2020-06-07 22:57:32 +02:00
David Négrier
db3ef81842 Adding the ability to add several entry points
We can now have several start layers and choose an entry point using a # in the URL
2020-06-07 13:23:32 +02:00
David Négrier
b82b13e351 Finalizing strict mode fixes 2020-06-04 18:56:59 +02:00
David Négrier
6f69a62d4d More strict fixes 2020-06-04 18:56:59 +02:00
David Négrier
082a11b0cd Allowing ill defined initializers (because of the way Phaser 3 is designed) 2020-06-04 18:56:59 +02:00
David Négrier
111bfcfe8c More strict typecheck fixes 2020-06-04 18:56:22 +02:00
David Négrier
a231024502 Fixing strict type checks 2020-06-04 18:56:22 +02:00
David Négrier
82e2c0d985
Merge pull request #149 from thecodingmachine/multiple_start_positions_in_layer
Allowing several start positions in a given start layer
2020-06-03 11:20:57 +02:00
David Négrier
69d2fa6944 Allowing several start positions in a given start layer
If more than one tile was set in the "start" layer, the last tile would be selected.
Now, the tile is selected at random among available tiles.

Also, a message is issued if no tiles have been put on the "start" layer.
2020-06-03 11:14:04 +02:00
David Négrier
9ddf22d36b Removing GameScene from the list of known GameScene when leaving
This is important because when we come back to the GameScene later, some properties of the GameScene object might be initialized with the values of the previous GameScene.
Like the position if the user previously disconnected.

Closes #146
2020-06-03 10:45:25 +02:00
David Négrier
2dc682ea72 Fixing warning on character selection 2020-06-02 15:57:11 +02:00
David Négrier
d72e60610e Adding PlayersPositionInterpolator to interpolate/extrapolate players positions 2020-06-02 13:44:42 +02:00
David Négrier
d69ce8a6a6 Adding PlayerMovement class to interpolate/extrapolate position along tests (installing Jasmine) 2020-06-02 10:48:04 +02:00
David Négrier
077b29bfbd Sending position only every 200ms while moving 2020-06-01 22:42:18 +02:00
Gregoire Parant
b931a8f117 Fix animation player 2020-06-01 13:20:45 +02:00
David Négrier
f69f99f449 Adding localStorage for selected user 2020-05-26 22:26:50 +02:00
David Négrier
52e3b47cc1 Storing user name in local storage 2020-05-26 22:17:00 +02:00
David Négrier
f36bd240a7 Fix lint 2020-05-26 17:43:25 +02:00
David Négrier
0492dfdf3a Fixing import 2020-05-26 17:37:26 +02:00
David Négrier
04a1f90ed5 Adding communication between LoginScene and SelectCharacterScene 2020-05-26 17:25:29 +02:00