Commit Graph

1227 Commits

Author SHA1 Message Date
GRL
d2413896c7 GameManager has an attribute scenePlugin 2021-08-16 11:50:09 +02:00
grégoire parant
02a21209ec
Exit scene acess denied detected (#1369)
* Add auth token user to get right in admin and check if user have right

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>

* Update error show

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-08-15 08:51:35 +02:00
Gregoire Parant
af613f5b5b Merge branch 'master' into develop 2021-08-06 15:53:33 +02:00
GRL78
e0fb31fc58
WIP: Migrate AudioManager in Svelte (#1325)
* Migrate AudioManager in Svelte

* use import type when needed
2021-08-06 09:11:17 +02:00
David Négrier
ac282db1ac Removing pointless console.log 2021-08-05 17:21:55 +02:00
David Négrier
6b9b999996 Making embedded iframes scriptable using the WA.room.website namespace. 2021-08-05 12:37:05 +02:00
David Négrier
5bb29e99ba Adding a "allowApi" property to authorize the API in a website. 2021-08-05 12:30:07 +02:00
David Négrier
ce3c53ae3f Adding the ability to inject websites directly inside maps
This PR adds the ability to inject a website INSIDE a map (as an iframe inside a Phaser HTML object)
The iFrame will be rendered transparently, unless you set a background-color on the body, which opens a number of cool possibilities.

Needs to be done: allowing the iframe API in those iframes.
2021-08-05 12:30:05 +02:00
David Négrier
570110f831 Fixing openWebsiteTriggerMessage not hidden when moving out of zone. 2021-08-05 12:07:12 +02:00
David Négrier
bc1c6a4986 Refactoring displayActionMessage signature. Now accepting an options object. This should allow for more options in the future. 2021-08-05 12:02:00 +02:00
David Négrier
87e4367455 Refactoring layoutManagerActionStore. It now supports an uuid field.
layoutManagerVisibilityStore is now a derived field from layoutManagerActionStore.
2021-08-05 11:19:28 +02:00
David Négrier
92fee33b64 Merge branch 'develop' of github.com:thecodingmachine/workadventure into trigger-message-refv3 2021-08-05 09:24:05 +02:00
David Négrier
d1e5d57459 Changing the method name from "triggerMessage" to "displayActionMessage".
Generally speaking, I like to call the message at the bottom an "action message".
And things can "trigger" it, but in the case of a method that actually proactively displays the message, I find "displayActionMessage" to be a better name.

Also, removing package-lock files and improving code style
2021-08-05 09:17:33 +02:00
Gregoire Parant
190007a21f Fix joystick postion
- Aply new size after open and close iframe and permit to keep the good position of the joystick on the WorkAdventure screen
2021-08-04 18:07:04 +02:00
David Négrier
4713010929 Merge branch 'develop' of github.com:thecodingmachine/workadventure into trigger-message-refv3 2021-08-03 19:01:16 +02:00
GRL
2d8098b06d Merge branch 'develop' of github.com:thecodingmachine/workadventure into layoutManagerSvelte 2021-08-03 11:40:51 +02:00
GRL
1436b15328 Migrate layoutManager in Svelte 2021-08-03 11:13:08 +02:00
Gregoire Parant
14b4229019 Merge branch 'develop' into GlobalMessageToWorld
# Conflicts:
#	CHANGELOG.md
#	front/src/Api/Events/IframeEvent.ts
#	front/src/Components/App.svelte
#	pusher/src/Services/SocketManager.ts
2021-08-02 23:07:39 +02:00
Gregoire Parant
2480d13f58 Merge branch 'master' into develop 2021-08-02 22:26:34 +02:00
Gregoire Parant
f2d382681b Merge branch 'develop' into loadTileset
# Conflicts:
#	CHANGELOG.md
#	front/src/Phaser/Game/GameScene.ts
2021-08-02 22:16:05 +02:00
Gregoire Parant
7bd444ade9 Revert "Squashed commit of the following:"
This reverts commit c177f0a1b3.
2021-08-02 22:13:10 +02:00
Gregoire Parant
c177f0a1b3 Squashed commit of the following:
commit 41748a4036
Merge: 3b1d4d63 4991a70b
Author: grégoire parant <g.parant@thecodingmachine.com>
Date:   Mon Aug 2 21:38:37 2021 +0200

    Merge pull request #1327 from thecodingmachine/hotFixErrorCardBack

    Fix error generated

commit 4991a70bba
Author: Gregoire Parant <g.parant@thecodingmachine.com>
Date:   Mon Aug 2 21:34:03 2021 +0200

    Fix error generated

    Don't generate error if file is Invalid

commit 3b1d4d630c
Merge: f52b4598 02e5860e
Author: grégoire parant <g.parant@thecodingmachine.com>
Date:   Mon Aug 2 21:03:18 2021 +0200

    Merge pull request #1326 from thecodingmachine/HotFixCreateMapFeature

    Hot fix create map feature

commit 02e5860e43
Author: Gregoire Parant <g.parant@thecodingmachine.com>
Date:   Mon Aug 2 20:59:13 2021 +0200

    HotFix redirect on production domain of WorkAdventure

     - Update domain `ADMIN_URL` by `workadventu.re`

commit f52b459872
Merge: 3d657b4a 3ab069d6
Author: grégoire parant <g.parant@thecodingmachine.com>
Date:   Mon Aug 2 11:23:16 2021 +0200

    Merge pull request #1324 from thecodingmachine/develop

    Release v1.4.11

commit 3ab069d650
Merge: 2b748138 9d4ffe54
Author: Kharhamel <Kharhamel@users.noreply.github.com>
Date:   Fri Jul 30 15:51:07 2021 +0200

    Merge pull request #1323 from thecodingmachine/openIDPoc

    FIX: bomp the node version of pusher

commit 9d4ffe542c
Author: kharhamel <oognic@gmail.com>
Date:   Fri Jul 30 15:50:30 2021 +0200

    FIX: bomp the node version of pusher

commit 2b7481383f
Merge: 74975ac9 9c803a69
Author: Kharhamel <Kharhamel@users.noreply.github.com>
Date:   Fri Jul 30 15:48:56 2021 +0200

    Merge pull request #1251 from thecodingmachine/openIDPoc

    POC for the openID connect

commit 9c803a69ff
Author: kharhamel <oognic@gmail.com>
Date:   Tue Jul 27 16:37:01 2021 +0200

    FEATURE: users can now login via an openID client

commit 74975ac9d8
Merge: 315fe7ca ebdcf880
Author: Kharhamel <Kharhamel@users.noreply.github.com>
Date:   Fri Jul 30 14:54:33 2021 +0200

    Merge pull request #1322 from thecodingmachine/improveCapacityWarning

    FEATURE: improved the room capacity warning visuals

commit ebdcf8804d
Author: kharhamel <oognic@gmail.com>
Date:   Fri Jul 30 14:08:27 2021 +0200

    added admin link to the warning container

commit 41ac51f291
Author: kharhamel <oognic@gmail.com>
Date:   Thu Jul 29 18:02:36 2021 +0200

    FEATURE: improved the room capacity warning visuals

commit 315fe7ca82
Author: David Négrier <d.negrier@thecodingmachine.com>
Date:   Thu Jul 29 17:49:51 2021 +0200

    Adding a "font-family" property for text objects. (#1311)

    - Tiled displays your system fonts.
    - Computers have different sets of fonts. Therefore, browsers never rely on system fonts
    - Which means if you select a font in Tiled, it is quite unlikely it will render properly in WorkAdventure

    To circumvent this problem, in your text object in Tiled, you can now add an additional property: `font-family`.

    The `font-family` property can contain any "web-font" that can be loaded by your browser.

    This allows us to use the "Press Start 2P" 8px font in text objects, which renders way better than the default "Sans serif" font of your browser.

commit 7ffe564e8e
Author: GRL78 <80678534+GRL78@users.noreply.github.com>
Date:   Thu Jul 29 17:42:16 2021 +0200

    Graphic upgrade of the global message console (#1287)

    * Graphic upgrade of the global message console
    Fix: error if LoginScene doesn't exist

    * Rework graphic of global message console

    * Rework graphic of global message console

    * Remove console.log

commit 2a1af2a131
Author: grégoire parant <g.parant@thecodingmachine.com>
Date:   Thu Jul 29 16:42:31 2021 +0200

    PWA service workers (#1319)

    * PWA services worker

    - [x] Register service worker of PWA to install WorkAdventure application on desktop and mobile
    - [x] Create webpage specifique for PWA
    - [ ] Add register service to save and redirect on a card
    - [ ] Add possibilities to install PWA for one World (with register token if existing)

    * Finish PWA strategy to load last map visited

    * Fix feedback @Kharhamel

    * Fix feedback @Kharhamel
2021-08-02 22:06:24 +02:00
Gregoire Parant
02e5860e43 HotFix redirect on production domain of WorkAdventure
- Update domain `ADMIN_URL` by `workadventu.re`
2021-08-02 20:59:13 +02:00
kharhamel
9c803a69ff FEATURE: users can now login via an openID client 2021-07-30 15:43:46 +02:00
Kharhamel
74975ac9d8
Merge pull request #1322 from thecodingmachine/improveCapacityWarning
FEATURE: improved the room capacity warning visuals
2021-07-30 14:54:33 +02:00
kharhamel
ebdcf8804d added admin link to the warning container 2021-07-30 14:50:11 +02:00
GRL
bd96a32d5b Merge branch 'develop' of github.com:thecodingmachine/workadventure into GlobalMessageToWorld 2021-07-30 09:38:28 +02:00
kharhamel
41ac51f291 FEATURE: improved the room capacity warning visuals 2021-07-29 18:27:53 +02:00
GRL
6ac25d344b Use const 2021-07-29 17:56:28 +02:00
David Négrier
315fe7ca82
Adding a "font-family" property for text objects. (#1311)
- Tiled displays your system fonts.
- Computers have different sets of fonts. Therefore, browsers never rely on system fonts
- Which means if you select a font in Tiled, it is quite unlikely it will render properly in WorkAdventure

To circumvent this problem, in your text object in Tiled, you can now add an additional property: `font-family`.

The `font-family` property can contain any "web-font" that can be loaded by your browser.

This allows us to use the "Press Start 2P" 8px font in text objects, which renders way better than the default "Sans serif" font of your browser.
2021-07-29 17:49:51 +02:00
GRL78
7ffe564e8e
Graphic upgrade of the global message console (#1287)
* Graphic upgrade of the global message console
Fix: error if LoginScene doesn't exist

* Rework graphic of global message console

* Rework graphic of global message console

* Remove console.log
2021-07-29 17:42:16 +02:00
GRL
eb8404ac91 Initialise iframeListener in preload
Add documentation and CHANGELOG
2021-07-29 15:53:27 +02:00
GRL
5f7361156b Merge branch 'develop' of github.com:thecodingmachine/workadventure into loadTileset 2021-07-29 15:35:32 +02:00
GRL
897a01bb79 Loading a tileset create a new GameMap 2021-07-29 14:14:40 +02:00
GRL
73d589ad11 Load a json file that describe a tileset in Tile format.
Then add it to the tilemap of the GameScene
Then add if to the GameMap
2021-07-28 18:03:19 +02:00
Gregoire Parant
4b4356e7ff Merge branch 'master' into develop 2021-07-28 12:37:14 +02:00
Stefan Weil
64065b2798
Fix some typos (found by codespell) (#1316)
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2021-07-27 14:29:09 +02:00
grégoire parant
fc9865e273
HotFix position WOKA (#1317)
- Fix the moving position when a user enters in "custom your own" with custom WOKA loaded from admin
2021-07-27 14:28:00 +02:00
David Négrier
cdd61bdb2c Merging with develop 2021-07-23 16:41:38 +02:00
David Négrier
3d5c222957 Reverting changes regarding single quotes 2021-07-23 14:59:56 +02:00
GRL
ba6e6235d6 Merge branch 'develop' of github.com:thecodingmachine/workadventure into GlobalMessageToWorld 2021-07-23 14:10:43 +02:00
David Négrier
2aba6b1c27 Fixing loop when setting variables
Setting a variable would makes the application enter in an infinite loop of events (between all the scripts and the back)
This fix makes sure a variable does not emit any event if it is changed to a value it already has.
2021-07-23 11:51:01 +02:00
GRL
68ff1b9e17 Merge branch 'develop' of github.com:thecodingmachine/workadventure into GlobalMessageToWorld 2021-07-22 16:26:01 +02:00
GRL
9e16bfc366 playGlobalMessage are receive as adminRoomMessage
Suppression of GlobalMessageManager and TypeMessage
Migrating message to svelte
2021-07-22 16:14:27 +02:00
David Négrier
31811ab906 Improve docblock 2021-07-22 11:24:30 +02:00
David Négrier
f435cecfdc Merge branch 'develop' of github.com:thecodingmachine/workadventure into scripting_api_room_metadata 2021-07-21 15:37:53 +02:00
Lurkars
9d518eded8 Merge branch 'develop' of github.com:thecodingmachine/workadventure into twemojiEmoteMenu 2021-07-21 11:56:36 +02:00
Lurkars
d43202d90d fix userInput 2021-07-21 10:17:46 +02:00
Lurkars
f43deff626 use emote button 2021-07-21 09:41:22 +02:00
grégoire parant
b336e3b08a
Delete logo TCM on Error scene (#1297) 2021-07-20 16:45:24 +02:00
Lurkars
83bd19c8dc Merge branch 'develop' of github.com:thecodingmachine/workadventure into twemojiEmoteMenu 2021-07-20 16:27:49 +02:00
GRL78
697f316780
In SelectCharacterScene, if custom character not loaded then select the first character (#1284) 2021-07-19 17:06:36 +02:00
GRL78
9432c82386
Change address mail to contact us (#1282) 2021-07-19 17:05:23 +02:00
David Négrier
dbd5b80636 Adding support for "readableBy" and "writableBy" in back
This means that we are now loading maps from server side.
2021-07-19 10:16:43 +02:00
GRL
0d3c697add Merge branch 'develop' of github.com:thecodingmachine/workadventure into GlobalMessageToWorld 2021-07-19 10:01:13 +02:00
Kharhamel
d8176c2f8d
Merge pull request #1291 from thecodingmachine/chatTweak
FEATURE: chat tweak
2021-07-16 15:49:36 +02:00
kharhamel
f840034d9c FEATURE: chat tweak 2021-07-16 14:25:59 +02:00
David Négrier
5c7ea7b258 Merge branch 'develop' of github.com:thecodingmachine/workadventure into scripting_api_room_metadata 2021-07-16 11:22:36 +02:00
David Négrier
c9fa9b9a92 Migrating away from the notion of public/private URL in WorkAdventure Github repository
The notion of public/private repositories (with /_/ and /@/ URLs) is specific to the SAAS version of WorkAdventure.
It would be better to avoid leaking the organization/world/room structure of the private SAAS URLs inside the WorkAdventure Github project.

Rather than sending http://admin_host/api/map?organizationSlug=...&worldSlug=...&roomSlug=...., we are now sending /api/map&playUri=...
where playUri is the full URL of the current game.
This allows the backend to act as a complete router.
The front (and the pusher) will be able to completely ignore the specifics of URL building (with /@/ and /_/ URLs, etc...)
Those details will live only in the admin server, which is way cleaner (and way more powerful).
2021-07-15 17:07:47 +02:00
GRL
e43ea3aa5e Graphic upgrade of the global message console
Fix: error if LoginScene doesn't exist
2021-07-15 15:09:35 +02:00
kharhamel
3983d0c5bc FEATURE: improved the notification system 2021-07-13 16:54:11 +02:00
Kharhamel
41a1f56bd5
Merge pull request #1111 from thecodingmachine/svelteChat
FEATURE: migrated the chat window to svelte
2021-07-13 11:25:38 +02:00
GRL
f7127bfb5a Graphic upgrade 2 2021-07-13 11:05:34 +02:00
kharhamel
3cfbcc6b02 FEATURE: migrated the chat window to svelte 2021-07-07 18:07:58 +02:00
David Négrier
e65e8b2097 First version with variables that actually work 2021-07-07 17:17:28 +02:00
David Négrier
ae9af56661
Merge pull request #1264 from thecodingmachine/UpdateShowHideLayer
Show/Hide Layer now unset collision and can show/hide all the layer in a group layer
2021-07-07 17:15:41 +02:00
GRL
64c569c42f Add documentation and CHANGELOG
Modify error message
2021-07-07 17:06:23 +02:00
GRL
41c60579a6 Merge branch 'develop' of github.com:thecodingmachine/workadventure into UpdateSetTiles 2021-07-07 17:00:10 +02:00
GRL
e50292a2ba Add documentation
No second parameter
2021-07-07 16:58:54 +02:00
GRL
6f6ad949ca Merge branch 'develop' of github.com:thecodingmachine/workadventure into UpdateShowHideLayer 2021-07-07 16:34:36 +02:00
GRL
24811e0a31 SetProperty delete a property where tha value is undefined and load the map of exitUrl property 2021-07-07 14:59:40 +02:00
GRL
bef5e139c0 SetTiles can now set a tile to null so that there is no more tile. 2021-07-07 14:42:17 +02:00
GRL
d51ac45079 Show/Hide Layer now unset collision and can show/hide all the layer in a group layer 2021-07-07 14:26:53 +02:00
David Négrier
5116b82e77 Merge branch 'develop' of github.com:thecodingmachine/workadventure into scripting_api_room_metadata 2021-07-07 11:55:00 +02:00
David Négrier
34cb0ebf39 Users blocking now rely on UUID rather than ID
This way, if a user A blocks another user B, if user B refreshes the browser or leaves and re-enters the room, user B will still be blocked.
As a side effect, this allows us to completely remove the "sockets" property in the SocketManager on the Pusher.
2021-07-07 11:24:51 +02:00
David Négrier
19bd1045e1 Merge branch 'develop' of github.com:thecodingmachine/workadventure into scripting_api_room_metadata 2021-07-06 17:24:16 +02:00
David Négrier
46e6917df6 Adding a playersStore
The playerStore can be useful to get the details of a given player from its ID.
2021-07-06 17:13:08 +02:00
David Négrier
cb78ff333b Adding client side check of setVariable with writableBy property 2021-07-06 10:58:12 +02:00
David Négrier
0aa93543bc Adding warning if "template" object is used as a variable 2021-07-05 18:48:26 +02:00
David Négrier
bf17ad4567 Switching setVariable to a query and fixing error hangling in query mechanism 2021-07-05 18:29:34 +02:00
David Négrier
c30de8c6db Adding support for default variables values 2021-07-05 17:25:23 +02:00
David Négrier
62a4814961 Migrating WA.player.getCurrentUser and WA.room.getCurrentRoom to direct property access and WA.room.getMap 2021-07-05 11:53:33 +02:00
jonny
9bcdc9ba33 linter fixes 2021-07-02 19:05:03 +02:00
jonny
310e131a6e eslint restart 2021-07-02 19:03:34 +02:00
jonny
369d453455 Merge remote-tracking branch 'remotes/upstream/develop' into trigger-message-refv3 2021-07-02 18:49:22 +02:00
David Négrier
ea1460abaf Adding variables (on the front side for now) 2021-07-02 17:36:43 +02:00
David Négrier
280c59e6b5 Changing callback signature of registerAnswerer so that it can return a value and not necessarily a promise. 2021-07-02 17:26:28 +02:00
David Négrier
5b4a72ea1f Add new "query/answer" utility functions for the scripting API
So far, the scripting API was using events to communicate between WA and the iFrame.
But often, the scripting API might actually want to "ask" WA a question and wait for an answer.

We dealt with this by using 2 unrelated events (in a mostly painful way).

This commit adds a "queryWorkadventure" utility function in the iFrame API that allows us
to send a query, and to wait for an answer. The query and answer events have a unique ID to be
sure the answer matches the correct query.

On the WA side, a new `IframeListener.registerAnswerer` method can be used to register a possible answer.
2021-07-02 16:49:22 +02:00
GRL
8644389d7e remove unnecessary conversion type 2021-07-02 14:45:27 +02:00
GRL
c5b5326480 setProperty function doesn't set an empty array if property doesn't exist 2021-07-02 14:40:18 +02:00
GRL
e1611969ce Merge branch 'develop' of github.com:thecodingmachine/workadventure into jonnytest1-tiles-start-positions 2021-07-02 14:35:28 +02:00
GRL
01d02124d1 Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptAPIV2 2021-07-01 11:38:33 +02:00
David Négrier
8f3d9277ac Merging master into develop 2021-06-29 18:39:43 +02:00
GRL
95bd639124 More statement 2021-06-29 16:50:33 +02:00
Lurkars
c264364752 Twemoji Emote Menu 2021-06-29 08:37:01 +02:00
David Négrier
1e57028e6e Renaming changeTile to setTiles 2021-06-28 14:58:49 +02:00
GRL
ed84dacb9c Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptAPIV2 2021-06-28 12:01:08 +02:00
GRL
b182a08ca2 correction from review 2021-06-28 09:33:13 +02:00
jonny
bbdf0a1289 fixed merge conflict 2021-06-25 18:20:16 +02:00
jonny
7f61e9addd Merge remote-tracking branch 'remotes/upstream/develop' into tiles-start-positions 2021-06-25 18:14:40 +02:00
jonny
769e0fcc29 refactor to position object 2021-06-25 18:03:43 +02:00
jonny
c7fa5cab8b cleanup 2021-06-25 17:57:09 +02:00
jonny
f536d538ea added backwards compatible check and maps 2021-06-25 17:35:42 +02:00
David Négrier
ac97cf5772 Fixing a lock when the player is moving from one room to the other
This was due to a store not properly unsubscribed when changing rooms.
2021-06-24 17:02:57 +02:00
David Négrier
8c8649b584
Merge pull request #1232 from thecodingmachine/fixCollides
Fix collides
2021-06-24 15:19:10 +02:00
kharhamel
a094e16c1f FIX: solved a menu crash 2021-06-24 12:14:28 +02:00
GRL
dcc7f2a686 Fix collides 2021-06-24 12:10:44 +02:00
GRL
c79603d7fa Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptAPIV2 2021-06-24 11:55:07 +02:00
David Négrier
2f282e3469 peerStore loading order caused issues. Fixed in GameScene (+ extracted a few stores in their files) 2021-06-24 11:54:09 +02:00
GRL
4903911d62 Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptAPIV2 2021-06-24 11:33:29 +02:00
GRL
a666bf310b Change Tiles 2021-06-24 11:31:29 +02:00
David Négrier
e4708149e0 Merge branch 'develop' of github.com:thecodingmachine/workadventure into svelte_video_overlay
# Conflicts:
#	front/package.json
#	front/src/Components/App.svelte
#	front/src/Phaser/Game/GameScene.ts
#	front/src/Phaser/Menu/MenuScene.ts
#	front/src/WebRtc/MediaManager.ts
2021-06-24 10:49:55 +02:00
jonny
5472d220ba added trigger message code 2021-06-23 17:32:32 +02:00
jonny
64847cd465 adjusted null if no hash 2021-06-23 12:42:24 +02:00
jonny
b20b4abb9e allow start hashes in tiles
# Conflicts:
#	front/src/Phaser/Game/GameScene.ts
2021-06-23 12:37:50 +02:00
GRL
24cc340cb9 Merge branch 'metadataScriptingApi' of github.com:thecodingmachine/workadventure into metadataScriptAPIV2 2021-06-23 12:02:29 +02:00
GRL
2a2cea2cd5 Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptingApi 2021-06-23 11:40:08 +02:00
GRL
bdb32a29e1 New methods refactored 2021-06-23 11:32:11 +02:00
David Négrier
b7934d9d03 Merge branch 'develop' of github.com:thecodingmachine/workadventure into functional-tile-properties 2021-06-23 10:40:59 +02:00
GRL
b50df10a49 Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptingApi 2021-06-23 09:25:13 +02:00
GRL
85fe92f604 Merge branch 'menu-commands-apiref' of github.com:jonnytest1/workadventure into metadataScriptingApi 2021-06-23 09:18:20 +02:00
David Négrier
ee07f637fa
Merge pull request #1219 from thecodingmachine/rex_outline
Putting an outline on the character name
2021-06-22 18:14:27 +02:00
David Négrier
1ef1a1cb22 Removing useless import 2021-06-22 17:47:54 +02:00
David Négrier
f1d00aac0e
Merge pull request #1211 from thecodingmachine/adminSvelte
Migrating ConsoleGlobalMessageManager in svelte
2021-06-22 17:28:37 +02:00
David Négrier
dc0f3feabf Putting an outline on the character name
In the future, we might want to put an outline on the whole character body but this is harder as the body is actually a container and so we would need to turn this container into a sprite first.
2021-06-22 17:15:18 +02:00
David Négrier
e9dd7ebdd9 Enabling Outline back on actionable objects
Actionable objects (still a prototype) were outlined when you walk next to them.
The OutlinePipeline was broken when moving in Phaser 3.50+.

This PR completely removes the custom OutlinePipeline and replaces it with the rexOutlinePipelinePlugin
that is provided by a third party library and that works great \o/
2021-06-22 16:35:57 +02:00
GRL
cec7087fc2 Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptingApi 2021-06-22 16:28:45 +02:00
GRL
67d4c6e271 Resolve review 2021-06-22 16:12:53 +02:00
GRL
0728d462a5 Merge branch 'develop' of github.com:thecodingmachine/workadventure into adminSvelte 2021-06-22 16:08:06 +02:00
David Négrier
eb526f5b67 Upgrading animatedtiles plugin to trigger an event when an animation occurs and setting the scene to dirty state 2021-06-22 14:21:15 +02:00
GRL
ca3f5c599a Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptingApi 2021-06-22 14:00:19 +02:00
GRL
0cc7ed1647 Merge branch 'develop' of github.com:thecodingmachine/workadventure into adminSvelte 2021-06-22 10:36:16 +02:00
jonny
64a00481f0 fixed wrong import 2021-06-21 18:39:02 +02:00
jonny
ba1bcf226a menu command api 2021-06-21 18:22:31 +02:00
David Négrier
e4dab5fd0d Merge branch 'develop' of github.com:thecodingmachine/workadventure into feature/animated-tiles
# Conflicts:
#	front/package.json
#	front/tsconfig.json
#	front/yarn.lock
2021-06-21 17:26:00 +02:00
GRL
232fd33ec8 Migrating ConsoleGlobalMessageManager in svelte 2021-06-21 17:19:27 +02:00
David Négrier
77a4d23301 Renaming biggestAvailableArray to biggestAvailableArea + removing duplicated code. 2021-06-21 14:07:03 +02:00
jonny
5bf943ce77 converted cache to constant lookup time 2021-06-20 19:14:04 +02:00
jonny
92485a02cf tileIndex setting got merged out 2021-06-19 15:46:32 +02:00
jonny
c1d9b2c9ed coverted property map to object 2021-06-19 15:41:58 +02:00
jonny
27ccdf165c fixed merge imports 2021-06-19 15:24:27 +02:00
jonny
74dda8ab69 allow properties on tiles
# Conflicts:
#	front/src/Phaser/Game/GameMap.ts
#	front/src/Phaser/Map/ITiledMap.ts
2021-06-19 15:23:30 +02:00
David Négrier
227575043b Removing dead code 2021-06-17 18:56:30 +02:00
David Négrier
d6ec0d22d3 Code cleanup 2021-06-17 10:35:08 +02:00
David Négrier
d533894a74 Fixing warnings and moving biggest area compute in store 2021-06-17 10:13:23 +02:00
David Négrier
3b278d0498 Removing dead code 2021-06-17 10:07:27 +02:00
David Négrier
76261de805 Enabling back the open report feature 2021-06-17 10:07:27 +02:00
David Négrier
5cf5e0ce2b Changing the way we focus a video element.
Now, only one video element can be important.
2021-06-17 10:07:27 +02:00
David Négrier
e7b0f859a5 Migrating the video overlay in Svelte (WIP) 2021-06-17 10:07:27 +02:00
David Négrier
e6264948b1
Merge pull request #946 from jonnytest1/load-page-api
Load page iframe-api
2021-06-16 18:10:10 +02:00
David Négrier
0afdbf7040 Fixing Svelte-check errors 2021-06-15 18:34:11 +02:00
kharhamel
c559b2104b scene cleanup 2021-06-15 15:32:40 +02:00
jonny
7712bd685b fixed merge errors 2021-06-15 15:19:45 +02:00
jonny
238f333b81 Merge remote-tracking branch 'remotes/workadventure-main/develop' into load-page-api
# Conflicts:
#	front/src/Api/Events/IframeEvent.ts
#	front/src/Api/IframeListener.ts
#	front/src/Phaser/Game/GameScene.ts
#	front/src/iframe_api.ts
2021-06-15 15:05:49 +02:00
GRL
09da69c24a CustomizeScene buttons use moveHorizontally and moveVertically 2021-06-15 11:16:44 +02:00
GRL
b04016f30f Merge branch 'develop' of github.com:thecodingmachine/workadventure into gameSizeFix 2021-06-15 09:06:47 +02:00
David Négrier
6bca3469b6 Removing useless import 2021-06-14 18:44:20 +02:00
David Négrier
1fa03e44df Fixing size of camera on resize
The size of the Camera after a change in zoom is only computed on the "render" step.
Therefore, we should wait the "render" step to call GameScene.onResize.

Closes #1180
2021-06-14 18:40:58 +02:00
David Négrier
f16514db21
Merge pull request #1177 from thecodingmachine/bugfix/1167
Making code more robust regarding scene being null in Character class
2021-06-14 16:54:12 +02:00
David Négrier
dcd44f283f Making code more robust regarding scene being null in Character class
Not sure how this can happen but it does.
Closes #1167
2021-06-14 16:40:33 +02:00
David Négrier
e3ee66527a Fixing bug slowing down the CustomizeScene a lot
By forcing the containers to be updated only in the "update" method, we seem to be solving some bugs regarding the way sprites are handled.
There is still an issue though. Some times, for some reasons, the update list seems to be growing a lot.
The more we click the left/right arrow to choose a character, the slower it gets (but with this commit, it does not lock anymore)
2021-06-14 16:32:09 +02:00
GRL
b239edb266 Clean code 2021-06-14 16:09:41 +02:00
GRL
281b8580cd Use window and not viewport in css for main-container 2021-06-14 15:54:22 +02:00
GRL
f103a919f2 Merge branch 'develop' of github.com:thecodingmachine/workadventure into gameSizeFix 2021-06-14 14:25:59 +02:00
GRL
d26502a724 Use HtmlUtils to get DOM Element game 2021-06-10 09:23:25 +02:00
grégoire parant
5a2b3a303a
Improve texture loaded from admin (#1151) 2021-06-09 22:33:42 +02:00
GRL
6868128267 DOM Element game resize at the same time and the same size at the canvas of phaser
Remove VisitCard scss unused
2021-06-09 18:08:14 +02:00
kharhamel
dd45996f9c FIX: improved the visit card, cleanup the code 2021-06-08 16:39:22 +02:00
David Négrier
e3223164b6
Merge pull request #1117 from thecodingmachine/selectCharacterFix
Fix : SelectCharacterScene and SelectCompanionScene
2021-06-08 10:29:21 +02:00
Kharhamel
e2295d2419
Merge pull request #1133 from thecodingmachine/disableVisitCard
FIX: the visit card feature can now be disabled client side
2021-06-07 19:12:37 +02:00
kharhamel
1264b286b2 FIX: trying to start a emote after a scene is desotryed should not crash the game 2021-06-07 15:11:54 +02:00
kharhamel
26f21fe6e4 FIX: the visit card feature can now be disabled client side 2021-06-07 15:01:21 +02:00
GRL
edfdc3bf47 comment on pointerTimer and pointerClicked 2021-06-07 09:17:24 +02:00
GRL
3e19234edc Change <dialog> for ErrorDialog in <div> because only Chrome knows <dialog> 2021-06-04 16:32:21 +02:00
GRL
247d508d09 create PR to test iphone compatibility 2021-06-04 10:01:08 +02:00
GRL
0d2b190222 Replace setTimeout by timer manage in Update 2021-06-04 09:39:33 +02:00
kharhamel
c5f3cfe87c FEATURE: clicking on another player show a contact card when possible 2021-06-03 17:58:21 +02:00
grégoire parant
fffd36267d
Hot Custom Characters Scene (#1113) 2021-06-03 17:22:31 +02:00
GRL
02ff6fb5bf Add timer so that pointerdown event can't be call two time in one click 2021-06-03 17:08:56 +02:00
GRL
c435b7451e Update don't call createPlayer but call moveUser
Change time of pointerclicked from 100ms to 250ms
Suppression of console.log
2021-06-03 16:54:52 +02:00
David Négrier
50e994c674 Attempt to switch bubble sound playing into Phaser
In iOS, we cannot trigger a playing sound if it does not start from a user gesture.
This is a huge bummer for a notification sound!

This is an attempt to switch sound playing to Phaser, which is using under the hood the WebAudio API.
This might solve the issue.
2021-06-03 15:40:44 +02:00
grégoire parant
2b13b764b4
Public texture (#1093)
* Public texture

 - Front => Get texture when user connected on public method
 - Front => Anonymous login will be make every connexion to get map details
 - Pusher => `/anonymLogin` permit to get map details and public texture load in customize scene

* Improve texture local user

- Permit to keep previous texture get with 'register' link

* Texture public loading

 - Texture will be load with Room class
 - Fix issue on lazzy loading atttempt

* Remove async await useless
2021-06-03 13:07:52 +02:00
kharhamel
b8ffe5038c FIX: on a touch screen, the menu emote will not open if more than one pointer is used 2021-06-03 10:22:06 +02:00
GRL
304675bc74 Merge remote-tracking branch 'origin/resizeSelect' into resizeSelect 2021-06-02 18:01:42 +02:00
GRL
59d60f54fe Save zoom level in the gameScene and restore it after the SelectCharacterScene and CustomizeScene 2021-06-02 18:01:36 +02:00
David Négrier
100198b55c Using "standardized-audio-context" to fix compatibility of AudioContext with Safari. 2021-06-02 17:58:58 +02:00
David Négrier
f4880cc1d0 Merge branch 'resizeSelect' of github.com:thecodingmachine/workadventure into resizeSelect 2021-06-02 16:48:53 +02:00
David Négrier
267d0a2cd1 Moving audio message to Svelte 2021-06-02 16:46:28 +02:00
GRL
3d9e2ad49a Save zoom level of the game and restore it when quitting the login scenes
SelectCompanionScene with zoom on mobile
2021-06-02 16:08:31 +02:00
GRL
5bd5245044 SelectCharacterScene and CustomCharacterScene mobile version 2021-06-02 12:00:35 +02:00
David Négrier
bf7083effc Migrating EnableCameraScene to Svelte 2021-06-01 16:17:36 +02:00
David Négrier
c7b3e3cd44 Merge branch 'resizeSelect' of github.com:thecodingmachine/workadventure into resizeSelect 2021-06-01 11:19:56 +02:00
David Négrier
47555d5955 Migrating cam to Svelte on Camera setup screen 2021-06-01 11:19:46 +02:00
GRL
9a5300dd2d helpCameraSettingPopup in svelte with nes-css 2021-06-01 11:07:52 +02:00
David Négrier
5839e0b270 Throwing exceptions into store subscribers is wreaking havok 2021-06-01 09:17:01 +02:00
David Négrier
9063ba2a1f Removing call to removed method 2021-06-01 09:12:31 +02:00
David Négrier
9d6b597552 Starting working towards migrating the help camera popup 2021-06-01 09:08:02 +02:00
GRL
047337ae81 Merge branch 'resizeSelect' of github.com:thecodingmachine/workadventure into resizeSelect 2021-05-31 17:53:44 +02:00
GRL
4923ce8b83 selectCharacterScene and customCharacterScene in svelte 2021-05-31 17:50:14 +02:00
David Négrier
cb03580421 Partial migration of EnableCameraScene to Svelte 2021-05-31 17:49:41 +02:00
David Négrier
13d3227323 Migrating LoginScene to Svelte 2021-05-31 17:03:29 +02:00
GRL
b8873d1277 selectCompanionScene work with svelte 2021-05-31 12:06:11 +02:00
GRL
471ff2bb01 Merge branch 'develop' of github.com:thecodingmachine/workadventure into resizeSelect 2021-05-31 10:21:15 +02:00
GRL
1ac108a9b8 correction of resize select character and companion by David 2021-05-31 10:20:48 +02:00
kharhamel
679b5b6b79 FIX: better error text in LoginScene 2021-05-28 17:51:18 +02:00
kharhamel
12da6ddd6c FEATURE: improved the display of player names, with the font-family 'Press start 2P' and gray outlines 2021-05-28 15:33:10 +02:00
GRL
276b404dd9 Merge remote-tracking branch 'origin/metadataScriptingApi' into metadataScriptingApi 2021-05-28 12:13:25 +02:00
GRL
858a513569 correction of adding custom menu
correction of setProperty
updating CHANGELOG
updating api-reference
2021-05-28 12:13:10 +02:00
David Négrier
5d8d729bd7 Uncommenting action 2021-05-27 18:25:27 +02:00
GRL
6dcb0d3750 first step to change tile 2021-05-27 17:06:39 +02:00
GRL
9cd3ff1d31 Merge branch 'correct-merge' into metadataScriptAPIV2 2021-05-27 10:16:00 +02:00
GRL
acbe4f89a6 Merge branch 'update-game-tiles' into correct-merge 2021-05-27 09:45:25 +02:00
GRL
5565ddd3f4 Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptingApi 2021-05-26 17:22:37 +02:00
David Négrier
870f16f9c6 Merge branch 'develop' of github.com:thecodingmachine/workadventure into SoundInMapScript 2021-05-26 16:15:33 +02:00
David Négrier
fac6574cb5 Removing console.log and unused files 2021-05-26 16:08:43 +02:00
David Négrier
d32df13f1b Camera now show up when someone is moving and hides 5 seconds after we stop moving.
Also, added an animation to show/hide the webcam.
2021-05-26 12:12:46 +02:00
David Négrier
8af8ccd54b Migrating MediaManager game part to Svelte store 2021-05-26 12:12:18 +02:00
David Négrier
28d78a7988 Switching MediaManager to using a Svelte store
This allows cleaner and more expressive code, especially regarding whether the webcam should be on or off.
2021-05-26 12:11:16 +02:00
David Négrier
4f4d2532b7
Merge pull request #1082 from thecodingmachine/disabling_physics_optim
Moving Physics optim to DirtyScene
2021-05-26 12:08:57 +02:00
David Négrier
bc19cbd525 Moving Physics optim to DirtyScene
The Physics engine is now disabled only if no sprites are moving (if they have no velocity).
Also, if a sprite is moving (if it has a velocity), the dirty state is set.
2021-05-26 12:00:27 +02:00
GRL
17261dfab6 Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptingApi 2021-05-26 10:58:25 +02:00
GRL
b4fa38bf8c Merge remote-tracking branch 'origin/metadataScriptingApi' into metadataScriptingApi 2021-05-25 17:21:12 +02:00
GRL
a5cb93541a correction from code review 2021-05-25 17:21:02 +02:00
kharhamel
595c5ca64d now use custom emotes with tweens instead of transistions 2021-05-25 16:37:24 +02:00
GRL78
7c44d747de
Apply suggestions from code review
Co-authored-by: David Négrier <d.negrier@thecodingmachine.com>
2021-05-25 11:02:25 +02:00
GRL
d4bc999c54 pause loading tileset on fly 2021-05-25 10:15:56 +02:00
GRL
36f0cd1a23 Revert "pause for loading tileset on the fly"
This reverts commit a3165a0540.
2021-05-25 10:11:27 +02:00
GRL
a3165a0540 pause for loading tileset on the fly 2021-05-25 09:39:04 +02:00
GRL
d0aaa0620d Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptingApi 2021-05-25 09:24:26 +02:00
DESKTOP-FMM8UI0\CLV
0c3b9ccfbf Merge branch 'develop' of https://github.com/thecodingmachine/workadventure into SoundInMapScript
# Conflicts:
#	front/src/Api/IframeListener.ts
#	front/src/Phaser/Game/GameScene.ts
#	front/src/iframe_api.ts
#	maps/Tuto/scriptTuto.js
#	maps/Village/Village.json
2021-05-21 17:45:26 +02:00
GRL
1110f4fb7f Revert "Merge branch 'update-game-tiles' into metadataScriptingApi"
This reverts commit 796a9418d3, reversing
changes made to 3506063e65.
2021-05-21 16:24:48 +02:00
GRL
796a9418d3 Merge branch 'update-game-tiles' into metadataScriptingApi 2021-05-21 15:56:35 +02:00
GRL
3506063e65 first step on loading a tileset from a script 2021-05-20 17:09:10 +02:00
GRL
2f9cc393a7 Implementation of getTag of the current user
documentation of getTag
Adding map for test of getTag
2021-05-20 10:57:36 +02:00
kharhamel
d93b30f982 improved radial menu 2021-05-19 18:11:51 +02:00
kharhamel
35b37a6a88 Added a radial menu to run emotes 2021-05-19 15:17:50 +02:00
kharhamel
a1d52b4265 FEATURE: added the possibility toplay emotes 2021-05-19 15:17:03 +02:00
GRL
ce0a72c6ce Merge branch 'menu-command-api' of github.com:jonnytest1/workadventure into metadataScriptingApi 2021-05-19 09:36:11 +02:00
GRL
aa78bf44ef implementation of DataLayerEvent
update GetGameState to add nickname to the returned data
update GameMap to separate phaserLayer and mapLayer
2021-05-18 15:41:16 +02:00
GRL
201fcf6afa Merge branch 'gamestate-api-read' of github.com:jonnytest1/workadventure into metadataScriptingApi 2021-05-18 15:18:35 +02:00
GRL
2ee62c9e9e Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptingApi 2021-05-18 11:50:03 +02:00
kharhamel
20ec609535 FIX: rejected map axios promises are now catched 2021-05-18 11:45:07 +02:00
GRL
3edfd5b285 GameState is now save in cache
HasPlayerMoved is send when the player is actually moving on the map every 200ms.
2021-05-18 11:33:16 +02:00
David Négrier
2ea731beeb
Merge pull request #1057 from thecodingmachine/physics_flag
Making sure Physics is not enabled several times
2021-05-18 10:26:32 +02:00
David Négrier
c9eb5691b5
Merge pull request #1045 from thecodingmachine/svelte
Installing Svelte in front container
2021-05-18 10:25:54 +02:00
David Négrier
127a4759ac Merge branch 'develop' of github.com:thecodingmachine/workadventure into menu-command-api
# Conflicts:
#	front/src/Api/Events/IframeEvent.ts
#	front/src/Api/IframeListener.ts
#	front/src/iframe_api.ts
2021-05-18 10:16:44 +02:00
David Négrier
6128f1e431 Making sure Physics is not enabled several times
As part of an energy saving measure, we started disabling physics when the character is not moving and enabling physics again only when the character moves.
However, we enabled Physics on each frame the characeter was moving.
As a result, the Physics system would run several times, slowly slowing the computer down.

This fixes this issue by adding a flag to only enable Physics once.
2021-05-18 09:42:01 +02:00
David Négrier
24dfa2703d Set a global dirty flag on resize
This adds a global "Dirty" flag at the Game level and sets it each time the ScaleManager is modified.
This fixes a bug where the game was not redrawn when a CoWebsite was opening/closing.
2021-05-18 09:20:38 +02:00
David Négrier
1885ea42a4 First working example with Svelte (the menu icon shows up on entering the game) 2021-05-17 16:39:56 +02:00
kharhamel
a66d42e158 FEATURE: we now allow a global zoom level of 1.5 2021-05-17 16:11:38 +02:00
kharhamel
a23e72454d FEATURE: added the env variable DISABLE_DIRTY_CHECKS 2021-05-17 14:47:34 +02:00
David Négrier
fe573893a1
Merge pull request #1039 from thecodingmachine/importsNotUsedAsValues
Setting "importsNotUsedAsValues": "error"
2021-05-13 19:43:34 +02:00
GRL
43aad4ab14 phaserLayers managed by Gamemap
Implementation of LayersFlattener
Implementation of Setting properties of a layer form script
Update show/hide layer form script
Update unit test of LayersIteratorTest
2021-05-12 14:30:12 +02:00
David Négrier
8c1e01566a Upgrading all dependencies in front
Upgrading to Webpack 5, Typescript 4, ...
2021-05-12 10:35:14 +02:00
David Négrier
4d4f845b9e Setting "importsNotUsedAsValues": "error"
Turning the "importsNotUsedAsValues" TS config value to "error".
This will require us to use `import type` instead of `import` when we are importing a value that is only used as a type (and therefore that is dropped by the Typescript compiler).

Why this change?
This is a requirement to be able to use Svelte in the future. See https://github.com/sveltejs/svelte-preprocess/issues/206#issuecomment-663193798
2021-05-12 09:13:25 +02:00
David Négrier
d2b122efe5
Merge pull request #1035 from thecodingmachine/improveDirtyScene
FIX: trackDirtyAnims now listen to more generic events
2021-05-11 17:08:29 +02:00
kharhamel
4ec5ad9e33 FIX: trackDirtyAnims now listen to more generic events 2021-05-11 16:44:31 +02:00
David Négrier
0c279750be Merge branch 'master' of github.com:thecodingmachine/workadventure into develop
# Conflicts:
#	front/src/Phaser/Game/GameScene.ts
2021-05-11 16:43:34 +02:00
David Négrier
ad39b43df3 Closing game webcame in Jitsi
When stepping in Jitsi, the game webcam (from mediaManager) was not shut down.
And when enabling/disabling the webcam in Jitsi, the webcam in mediaManager was also
enabled/disabled. This PR fixes those issues.

It also fixes a race condition when closing a Jitsi where the mic/cam would be enabled at the same time.
2021-05-11 14:52:51 +02:00
Kharhamel
78d4985d10
Merge pull request #1028 from thecodingmachine/fixOnMapExit
FIX: triggering a map transition now ignores other map transitions for 500ms
2021-05-11 14:21:06 +02:00
kharhamel
f044b3d249 FIX: triggering a map transition now ignores other map transitions for 500ms 2021-05-11 11:05:05 +02:00
David Négrier
23bf78a026 Refactoring code to use the "visibilitychange" event
Using the "visiblitychange" event instead of relying on a "trick" related to RAF being disabled when a window is not open allows us to have cleaner code.
Bonus: the recursive call to "setTimeout" is gone, so the stacktrace growing indefinitely is gone too.
This should make the application a bit more stable.
2021-05-11 10:56:50 +02:00
jonny
8cef4f6e90 Merge remote-tracking branch 'remotes/workadventure-main/develop' into gamestate-api-read
# Conflicts:
#	front/src/Api/IframeListener.ts
2021-05-10 21:48:11 +02:00
jonny
8e136cebe8 added callback on playermove - gets quite delayed after walking for a few seconds 2021-05-10 21:27:17 +02:00
grégoire parant
bd4cf5d7f7
Fix error context sound meter (#1009) 2021-05-10 19:55:43 +02:00
David Négrier
0411d5e493 Fixing "camera popup" always display on resize
This fixes a bug where the "camera popup" window was always displayed when the screen was resized.
2021-05-10 19:05:01 +02:00
GRL
cd2d090a8b Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptingApi 2021-05-10 11:46:16 +02:00
GRL
841bf29764 auto update show/hide layer 2021-05-10 11:20:07 +02:00
jonny
ce0c7ea3eb Merge remote-tracking branch 'remotes/workadventure-main/develop' into gamestate-api-read 2021-05-10 10:01:53 +02:00
jonny
a5260c0831 Merge remote-tracking branch 'remotes/workadventure-main/develop' into load-page-api 2021-05-10 09:58:59 +02:00
jonny
46996f7049 moved event trigger out of index array 2021-05-10 01:34:33 +02:00
jonny
8db72d2dfd refactored to Array of tile 2021-05-10 01:34:32 +02:00
jonny
bed45a8310 cherry pick conflicts 2021-05-10 00:31:54 +02:00
jonny
ffe03d40f5 option to update tile
# Conflicts:
#	front/src/Api/Events/ApiUpdateTileEvent.ts
#	front/src/Api/IframeListener.ts
#	front/src/Phaser/Game/GameScene.ts
2021-05-10 00:30:32 +02:00
jonnytest1
2922ae4603
Merge branch 'develop' into menu-command-api 2021-05-07 19:59:58 +02:00
DESKTOP-FMM8UI0\CLV
e655edd9bd export class Popup and Soud of Iframe Api
let become const in SoundManager
2021-05-07 17:03:07 +02:00
David Négrier
5605e63e5f
Merge pull request #998 from thecodingmachine/skiprender2
Skip "render" if nothing changed on screen (2)
2021-05-07 15:44:08 +02:00
Gregoire Parant
62a6eabc88 Merge branch 'master' into develop 2021-05-07 00:07:43 +02:00
grégoire parant
0e32238505
HotFix custom WOKA (#999) 2021-05-06 19:58:08 +02:00
David Négrier
6b4d064f19 Merge branch 'develop' of github.com:thecodingmachine/workadventure into skiprender2
# Conflicts:
#	front/src/Phaser/Game/GameScene.ts
#	front/src/index.ts
2021-05-06 16:25:13 +02:00
David Négrier
189dba2e21 Fixing memory leak when switching scenes 2021-05-06 15:38:24 +02:00
David Négrier
3b5f105daf Setting the dirty state automatically when there is an animation frame 2021-05-06 15:38:22 +02:00
David Négrier
0c5e5ef578 Skip "render" if nothing changed on screen
For each requested animation frame (RAF) in Phaser, Phaser calls the "update" method, then the "render" method of each scenes.
The "render" method takes some time (and energy) to perform the rendering.

The fact is we probably don't need to call "render" if nothing changed on the screen (which happens most of the frames in a typical WorkAdventure game).

This commit is therefore overloading the "Game" class of Phaser to add a "dirty" flag.

Scenes can now add a "isDirty()" method. If all displayed scenes are pristine (not dirty), Phaser will skip rendering the frame altogether.

This saves "a lot" of energy, resulting in laptops that are not overheating when using WorkAdventure \o/
2021-05-06 15:36:45 +02:00
David Négrier
3751b0e2bc Removing RESOLUTION and ZOOM_LEVEL settings: they are no more needed or supported 2021-05-05 17:11:03 +02:00
David Négrier
7ae66a63a4 Refactoring centering of DOM elements 2021-05-05 17:10:39 +02:00
David Négrier
04448c3c50 Fixing button position in webcam setting page 2021-05-05 15:46:02 +02:00
David Négrier
cd2873e9d3 Fixing CI 2021-05-05 13:14:00 +02:00
David Négrier
bede7abdd8 Removing mousewheel to up down plugin 2021-05-05 12:15:13 +02:00
David Négrier
10bd073b7d Fixing center computation of popup 2021-05-05 12:12:56 +02:00
David Négrier
82073098e0 Merge branch 'develop' of github.com:thecodingmachine/workadventure into resolution 2021-05-05 11:01:11 +02:00
David Négrier
a6ad1674e3 Fixing broken resize 2021-05-05 09:51:04 +02:00
David Négrier
f66e69cb75 Improving pinch (virtual joystick stops when pinch begins) 2021-05-05 09:35:24 +02:00
grégoire parant
71eb3f3b69
Improvement feature circle discussion (#977)
* Improvment circle discussion
 - Change to lissen start event of WebRTC connection

* Update help allow navigator and waring message
 - Show warning message.
 - Use help camera allow setting to show modal and help user.
 - Change feature to show the modal only when user have need the information on allow navigator access

* Create soud for video discussion
2021-05-05 01:49:04 +02:00
Gregoire Parant
83159a121f Revert logo loading and fix it 2021-05-04 15:47:45 +02:00
Gregoire Parant
c8692a08ce Revert "Fix loader logo WA (#991)"
This reverts commit fa3ffe4d7a.
2021-05-04 15:15:23 +02:00
grégoire parant
fa3ffe4d7a
Fix loader logo WA (#991) 2021-05-04 14:28:30 +02:00
David Négrier
59b391e983 Prevent WA scale manager from zooming too much 2021-05-04 14:08:40 +02:00
David Négrier
613ff5d463 Adding zoom out limit 2021-05-04 12:09:00 +02:00
David Négrier
04d3cf8593 Adding HdpiManager to start and scale from a default resolution that is correct by default for the game.
Fixing VirtualJoystick on resize.
2021-05-04 11:35:33 +02:00
jonnytest1
5069099000
fixed typing in chat still causes character to move (#965) 2021-05-03 20:26:42 +02:00
jonny
cd77af318d added more properties
# Conflicts:
#	front/src/Phaser/Game/GameScene.ts
2021-05-01 19:45:23 +02:00
grégoire parant
925545d74f
Add error message (#970)
- Error link not found
 - Error user was banned
 - Error access dinied on the world
2021-04-29 23:47:30 +02:00
jonny
8f1aea1c43 Merge remote-tracking branch 'remotes/workadventure-main/develop' into load-page-api 2021-04-29 10:49:14 +02:00
kharhamel
fe27169745 solved conflict with develop 2021-04-29 10:31:16 +02:00
grégoire parant
9b69910cb8
WIP: Update style for mobile (#942)
* Update style for mobile

 - Update style for mobile modale

* Fix overscroll

* Change css properties overflow

* Revert "Change css properties overflow"

This reverts commit 612fcc7e007fb03c7f72e5fa4b8a0604a184ae7d.

* rm image

* Update view mobile

* Fix CI
2021-04-27 23:58:33 +02:00
jonny
6295c8275e reset menu items on map change 2021-04-27 16:40:56 +02:00
jonny
4069e87872 replace menu items if already present 2021-04-27 12:40:29 +02:00
jonny
fafaabb6e7 script api can add menu commands
# Conflicts:
#	front/src/Api/IframeListener.ts
#	front/src/iframe_api.ts
2021-04-27 12:07:02 +02:00
jonny
79e530f0e6 launch jsons + type fixes 2021-04-27 00:04:08 +02:00
jonny
6e847b5f58 Merge branch 'develop' of https://github.com/thecodingmachine/workadventure into develop 2021-04-27 00:02:05 +02:00
David Négrier
08ca95b143 Fixing WorkWrap 2021-04-26 11:28:15 +02:00
David Négrier
22cb41dc29 Adding the ability to display "Text" objects from Tiled
I honestly don't believe text objects look good on map, and in real maps, I think text should be written on tiles.

However, for a variety of use cases (like in test maps in the /maps/test directory, it can be useful to be
able to display some text easily on a map.

This PR adds the ability to display this text.

Note: the "font" support cannot work correctly, as Tiled is listing fonts from the local
system, and those fonts are not available in a browser.
2021-04-26 11:28:13 +02:00
David Négrier
6815fe7a0a Added a new LayersIterator class
This class iterates recursively over layers, flattening groups.
This enables us to simplify the code when we iterate layers. We can remove all recursive function calls in the GameScene code (it is delegated to the LayersIterator)
2021-04-26 11:21:34 +02:00
Lurkars
66b90be0da remove redundancy 2021-04-26 11:20:28 +02:00
Lurkars
93b7b7bc91 removed redundancy, fix for startLayer 2021-04-26 11:20:28 +02:00
Lurkars
9b6be3466b support for group layer of Tiled (excludes 'start' layer) 2021-04-26 11:20:28 +02:00
grégoire parant
d9620c373f
Merge pull request #918 from thecodingmachine/newStartMobileScene
Mobile started scene
2021-04-23 19:51:45 +02:00
Gregoire Parant
b934d3404f Fix feedback WorkAdventure team 2021-04-23 19:29:43 +02:00
DESKTOP-FMM8UI0\CLV
b79d76fc2e parameter soundConfig is now optionnal
if user call mySound.play() the sound will be played with the base SoundConfig
2021-04-23 17:03:17 +02:00
DESKTOP-FMM8UI0\CLV
f03f8076f3 Sound in Script Done
Fom script user can load, play and stop sound
2021-04-23 15:35:34 +02:00
David Négrier
4f4f499d47 Making alone mode more robust
This fixes a number of issues where the game was attempting to access a non existing connection (in alone mode)
2021-04-23 13:44:04 +02:00
Gregoire Parant
f11e936143 Refactoring & fix feedback WorkAdventure 2021-04-23 03:59:14 +02:00
Gregoire Parant
8e52b8597c Merge branch 'develop' into newStartMobileScene
# Conflicts:
#	front/src/Phaser/Login/EnableCameraScene.ts
#	front/src/Phaser/Login/LoginScene.ts
#	front/src/Phaser/Login/SelectCharacterScene.ts
#	front/src/Phaser/Login/SelectCompanionScene.ts
2021-04-22 23:36:21 +02:00
Gregoire Parant
d7f00b505a Update Companion Scene for mobile 2021-04-22 13:10:23 +02:00
Gregoire Parant
3697ddabfa Fix responsive Camera Settings 2021-04-22 11:47:59 +02:00
Gregoire Parant
3df32de83b Update camera and adapte for mobile 2021-04-22 11:26:35 +02:00
Gregoire Parant
0a04f5d631 Finish select character scene and custom character scene 2021-04-22 02:29:13 +02:00
kharhamel
c8ba3d8ab9 FIX: use phaser Zones instead of rectangles objects to create tap zones 2021-04-21 18:27:33 +02:00
kharhamel
6a2326c4b3 WIP: testing new resolution config 2021-04-21 18:04:00 +02:00
DESKTOP-FMM8UI0\CLV
517c0e86cb Can play Sound from a map script
add sound in the TutoMap
2021-04-21 16:47:19 +02:00
jonny
3836d5037c game state can be read out by the client APIs
# Conflicts:
#	front/src/Api/IframeListener.ts
#	front/src/Phaser/Game/GameScene.ts
#	front/src/iframe_api.ts
2021-04-21 15:56:52 +02:00
jonny
006195e8cc rewrote to run in event loop 2021-04-21 11:54:37 +02:00
jonny
6c6789411a added loadPage Api call 2021-04-21 11:20:17 +02:00
David Négrier
84bd5eff50 Bump Phaser version
This reverts commit f2c3d6f158.
Also, updates all dependencies to their latest allowed version.

# Conflicts:
#	front/package.json
#	front/yarn.lock
2021-04-21 10:35:38 +02:00
Gregoire Parant
78d888ffaf Update menu mobile
- Add mobile style share modal
- Add mobile style settings modal
- Add menu mobile style
2021-04-21 00:53:45 +02:00
Gregoire Parant
2c862fe7e7 Refactor Login Scene 2021-04-20 18:49:42 +02:00
Kharhamel
5dc2f0ac47
Merge pull request #898 from thecodingmachine/touchZoom
FEATURE: add the ability to zoom in and out using touch screen
2021-04-20 14:51:08 +02:00
kharhamel
341b048d6c improved the visuals of the joystick 2021-04-20 14:26:52 +02:00
kharhamel
415d8f9466 the joystick is now visible only when pointer is down 2021-04-20 10:52:06 +02:00
kharhamel
56287a2958 put the virtual joystick into the userInputManager and restricted it to touchscreens 2021-04-19 18:10:33 +02:00
David Négrier
cb1dcb5786
Merge pull request #908 from ClementVieilly75/FTUEPopup
Unsubscribe to iframeEvents in CleanUpClosingScene
2021-04-19 11:24:43 +02:00
DESKTOP-FMM8UI0\CLV
5028a54422 Unsubscribe to iframeEvents in CleanUpClosingScene 2021-04-19 10:19:30 +02:00
David Négrier
110511461a Fixing WorkWrap 2021-04-17 18:55:39 +02:00
David Négrier
16daf7332a Adding the ability to display "Text" objects from Tiled
I honestly don't believe text objects look good on map, and in real maps, I think text should be written on tiles.

However, for a variety of use cases (like in test maps in the /maps/test directory, it can be useful to be
able to display some text easily on a map.

This PR adds the ability to display this text.

Note: the "font" support cannot work correctly, as Tiled is listing fonts from the local
system, and those fonts are not available in a browser.
2021-04-17 12:05:54 +02:00
Kharhamel
afd2ea2d03
Merge pull request #897 from thecodingmachine/maxPerGroup
FEATURE: added the env variable MAX_PER_GROUP
2021-04-16 17:19:01 +02:00
kharhamel
d7a74baa9d FEATURE: add the ability to zoom in and out using touch screen 2021-04-15 16:37:58 +02:00
kharhamel
ce2c5e0cb5 FEATURE: added the env variable MAX_PER_GROUP 2021-04-15 15:50:51 +02:00
Gregoire Parant
a42e873f64 Merge branch 'master' into develop 2021-04-14 20:11:41 +02:00
David Négrier
1a4f178728
Update front/src/Phaser/Menu/MenuScene.ts 2021-04-14 15:57:57 +02:00
Gregoire Parant
ba8d3020eb Merge branch 'master' into HotFixForm 2021-04-13 12:33:04 +02:00
Gregoire Parant
4119f69879 HotFix
- Key up m when user write message
 - Size game share
2021-04-13 12:30:15 +02:00
PizZaKatZe
633bdfcaff Always enable virtual joystick
Keeps 'toggle fullscreen' as a separate game setting.
2021-04-13 02:00:06 +02:00
PizZaKatZe
340caaff32 Make virtual joystick transparent 2021-04-13 02:00:05 +02:00
PizZaKatZe
9c9d262782 Make movement speed depend on joystick force 2021-04-13 02:00:05 +02:00
PizZaKatZe
e713120434 Reposition joystick (thx @TabascoEye) 2021-04-13 02:00:04 +02:00
PizZaKatZe
c3230bc2b3 Integrate virtual joystick 2021-04-13 02:00:03 +02:00
PizZaKatZe
e75fb9a6a9 Add touch support to companion selection scene 2021-04-13 02:00:02 +02:00
PizZaKatZe
edd4e9e95d Add touch support for Jitsi and website triggers 2021-04-13 00:23:40 +02:00
¯\_(ツ)_/¯
aab65298aa Add touch support to character customization screen 2021-04-13 00:23:40 +02:00
PizZaKatZe
e807350279 Add touch input support to login scenes (thx @TabscoEye) 2021-04-13 00:23:37 +02:00
PizZaKatZe
c7dcaec940 Make login text input field touch capable (thx @TabscoEye) 2021-04-13 00:19:06 +02:00
Gregoire Parant
270cdb5c82 Button "CREATE MAP" must redirect user on production server 2021-04-12 20:44:29 +02:00
Gregoire Parant
6a08ca656f Add TODO 2021-04-12 18:26:36 +02:00
Gregoire Parant
4fc9a12b95 HotFix style WorkAdventure 2021-04-12 18:17:04 +02:00
Kharhamel
8cdf572685
Merge pull request #870 from joberthel/feature/player-companion
Added companion (pet) to player
2021-04-12 18:11:07 +02:00
Kharhamel
29d43d7776
Merge pull request #878 from thecodingmachine/localStorageGhost
FIX: improved the validation from localstorage for username and characterLayers
2021-04-12 14:56:51 +02:00
kharhamel
8e467f3e10 FIX: improved the validation from localstorage for username and characterLayers 2021-04-12 14:48:00 +02:00
David Négrier
3dd2a634a0 Allowing loading HTTP local resources from a HTTPS endpoint.
By default, maps are loaded in HTTPS if WorkAdventure is running in HTTPS, and in HTTP is WorkAdventure is running in HTTP.
Also, if WorkAdventure is running in HTTP and map loading fails, we try map loading in HTTPS (useful when we are working on WorkAdventure locally and want to load a map on a secure domain).

This commit adds the last combination: If WorkAdventure is running in HTTPS, and map loading fails in HTTPS **AND** if the map URL is targetting "localhost", "*.localhost" or "127.0.0.1", then we attempt to load the resource in HTTP.

Why?

"localhost" is considered secure context by modern browsers. So even if a page is loaded in HTTPS, it can load resources from any secure context (including localhost in HTTP).

This means that from "https://play.workadventu.re", I can now test a map running locally on my machine (served by a classic webserver without any certificate).
This change should make map testing easier, since map developers will not have to install the whole WorkAdventure project to test their map locally.
2021-04-11 14:56:03 +02:00
Johannes Berthel
8d4e0c3e88 added companion compatibility with phaser 3.54.0 2021-04-09 18:30:30 +02:00
David Négrier
d80681c40b
Merge branch 'develop' into FTUEPopup 2021-04-09 17:40:26 +02:00
DESKTOP-FMM8UI0\CLV
2c84d9a07d position of popups changed
clear log in gameScene
2021-04-09 16:34:01 +02:00
DESKTOP-FMM8UI0\CLV
46cc7b3b3b add pannels 2021-04-09 14:35:15 +02:00
Johannes Berthel
73e515c236 don't show companion scene after first refresh 2021-04-08 18:42:05 +02:00
Johannes Berthel
2438470088 fixed rectangle resize issue 2021-04-06 20:31:08 +02:00
Johannes Berthel
fb90111cdf refactored companion selection scene 2021-04-06 20:12:10 +02:00
Johannes Berthel
187e21eed9 load texture inside game scene instead inside of inside companion class 2021-04-06 19:10:18 +02:00
Johannes Berthel
e5a196a42b implemented feedback 2021-04-06 18:54:45 +02:00
Johannes Berthel
7c6b73efdb don't show companion selection during first connexion flow 2021-04-06 18:36:46 +02:00
Johannes Berthel
6c512fb7cd fixed linting 2021-04-03 00:18:08 +02:00
Johannes Berthel
8c35860f2a show select companion scene after customize scene 2021-04-02 23:49:25 +02:00
Johannes Berthel
3187520e7b companion behaviour fine tuning 2021-04-02 23:36:06 +02:00
Johannes Berthel
38c06ce8ff navigate from select character scene to select companion scene 2021-04-02 23:17:04 +02:00
Johannes Berthel
6ee4889773 added change companion button to menu 2021-04-02 23:13:03 +02:00
Johannes Berthel
52303c0bd6 added select companion scene 2021-04-02 23:00:51 +02:00
Johannes Berthel
4cfce15695 only remove listener if scene was not already destroyed 2021-04-02 21:29:45 +02:00
Johannes Berthel
e4d324e5fa removed unused import 2021-04-02 21:26:42 +02:00
Johannes Berthel
fc3a503bcf don't fail if companion texture is not found 2021-04-02 21:26:24 +02:00
Johannes Berthel
c07079051a transmit companion to remote players 2021-04-02 21:21:11 +02:00
Johannes Berthel
2ad712807b add companion only on local player 2021-04-02 17:14:34 +02:00
Johannes Berthel
5a91e15580 add companion to remote player 2021-04-01 18:51:51 +02:00
Johannes Berthel
80a5d2e30e added random companion to player 2021-04-01 00:33:05 +02:00
David Négrier
dd0d1fa49f
Merge pull request #854 from thecodingmachine/loadhttpsmapsfromhttp
Allow loading https maps from http protocol
2021-03-30 17:57:38 +02:00
David Négrier
a68cf38cdc
Merge pull request #856 from thecodingmachine/alonemode
Adding an "alone" mode
2021-03-30 17:56:19 +02:00
David Négrier
02fb42b68a
Merge pull request #790 from thecodingmachine/iframe_api
Adding an API for inter-iframe communication
2021-03-30 16:31:30 +02:00
David Négrier
559e15ebb6 Adding an "alone" mode
In "alone" mode (or single-player mode), WorkAdventure does not connect to the server at all.
In order to enter the "alone" mode, you need to add "?alone=true" to the URL.

"alone" mode can be useful for tutorials (First Time User Experience) where you want to explain how WorkAdventure works without being disturbed by other users.
2021-03-30 16:08:49 +02:00
David Négrier
b6edefbe4e Allow loading https maps from http protocol
In a development environment, we often run in HTTP.
The problem is that WorkAdventure will attempt to load maps using the HTTP protocol (even if the map is on a remote server that is available only in HTTPS).
This commit adds a "fallback". If we are in HTTP (so in a development environment) and if the map fails to load correctly, we will try again, but in HTTPS.

This allows development environment to load maps hosted on a HTTPS enabled server easily.
2021-03-28 18:35:01 +02:00
David Négrier
8b90a14c39 Fix import 2021-03-28 17:07:00 +02:00
David Négrier
aaaa192b71 Merge branch 'develop' of github.com:thecodingmachine/workadventure into iframe_api
# Conflicts:
#	front/dist/.gitignore
#	front/dist/index.tmpl.html
#	front/src/Phaser/Game/GameScene.ts
#	front/src/WebRtc/CoWebsiteManager.ts
2021-03-28 16:53:15 +02:00
David Négrier
98aa94bb12 Minor changes 2021-03-28 16:36:02 +02:00
Johannes Berthel
5375528d7c use map tilewidth instead of hardcoded values 2021-03-27 13:57:50 +01:00