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
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
bfcdd31ed2
Fixing NPM package generation
...
The generation was broken due to the refactoring in several classes (some of them where not properly exported).
Also, trying to generate the NPM package on every build now (to detect issues).
2021-06-30 10:15:55 +02:00
GRL
6462773e7f
Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptAPIV2
2021-06-29 14:16:19 +02:00
GRL
b457ce493b
Suppress console.log
2021-06-29 09:44:57 +02:00
GRL
389ca25b6a
Cowebsite opened by script can use Iframe Api
2021-06-28 18:00:48 +02:00
David Négrier
3fd4f9d384
Adding a warning message if an unauthorized iFrame tries to communicate with WA
...
Closes #1241
2021-06-28 15:20:27 +02:00
David Négrier
1e57028e6e
Renaming changeTile
to setTiles
2021-06-28 14:58:49 +02:00
David Négrier
319db95bc8
Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptAPIV2
...
# Conflicts:
# front/src/Api/iframe/room.ts
2021-06-28 14:50:26 +02:00
GRL
b182a08ca2
correction from review
2021-06-28 09:33:13 +02:00
jonny
7f61e9addd
Merge remote-tracking branch 'remotes/upstream/develop' into tiles-start-positions
2021-06-25 18:14:40 +02:00
GRL
4903911d62
Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptAPIV2
2021-06-24 11:33:29 +02:00
jonny
d1178b1a01
immutableData was never assigned
2021-06-23 20:19:38 +02:00
jonny
5472d220ba
added trigger message code
2021-06-23 17:32:32 +02:00
GRL
95d8cf9257
Change requested
2021-06-23 14:54:06 +02:00
GRL
24cc340cb9
Merge branch 'metadataScriptingApi' of github.com:thecodingmachine/workadventure into metadataScriptAPIV2
2021-06-23 12:02:29 +02:00
GRL
bdb32a29e1
New methods refactored
2021-06-23 11:32:11 +02:00
GRL
85fe92f604
Merge branch 'menu-commands-apiref' of github.com:jonnytest1/workadventure into metadataScriptingApi
2021-06-23 09:18:20 +02:00
GRL
be23db5bcf
Resolve import and LoadPageEvent issue
2021-06-22 16:07:31 +02:00
GRL
ca3f5c599a
Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptingApi
2021-06-22 14:00:19 +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
6101548d89
Fixing bug where only one chat listener can be added.
2021-06-21 13:47:07 +02:00
David Négrier
620bd1ab2c
Splitting classes in separated files
2021-06-21 12:26:12 +02:00
David Négrier
9129ceede1
Improving refactoring of API following @jonnytest1 feedback
2021-06-21 11:48:39 +02:00
David Négrier
34dc5a0bc6
Refactoring WorkAdventureAPI.
...
Simplifying a lot what was done (even if the new code is a bit less automated, it allows to list exactly the methods we want to see deprecated and to add a notification message)
2021-06-18 17:22:56 +02:00
jonny
702f4fe4c0
converted goToRoom to typed call
2021-06-17 11:32:59 +02:00
jonny
318749e5a8
develop merge
2021-06-17 11:30:16 +02:00
David Négrier
f6554a1082
Merge branch 'develop' of github.com:thecodingmachine/workadventure into iframe-api-refactor
...
# Conflicts:
# front/src/iframe_api.ts
2021-06-17 11:23:56 +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
David Négrier
b03ee5bd53
Fixing scripting origin check
...
When working on making the openCoWebsite URL relative, we introduced a regression.
In production, the iframe generated by "script" properties have no "src" and therefore, were treated as invalid messages.
This should fix everything in prod.
2021-06-07 16:48:52 +02:00
jonny
dab3f1f844
removed zoned popups
2021-06-03 22:01:42 +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
jonny
8a1376e966
refactored to key based types
2021-05-28 02:28:11 +02:00
jonny
5fd82c1188
minor cleanup
2021-05-28 01:50:58 +02:00
jonny
ab631c5dc4
register callbacks
...
should be done now
2021-05-28 01:46:08 +02:00
jonny
fd5b598b63
Bubble [WIP] (still need to do the javascript part)
2021-05-28 01:18:00 +02:00
jonny
540e5783b6
cowebsite
...
navigation
sound
player
extraction
2021-05-28 01:14:10 +02:00
jonny
6a90655c44
Merge branch 'develop' of https://github.com/thecodingmachine/workadventure into iframe-api-refactor
2021-05-28 00:52:42 +02:00
jonny
cbe93d7164
[WIP] fixed cherry pick conflicts
2021-05-28 00:34:40 +02:00
jonny
2de2d114a1
added typedef for subobject types
...
extracted popup functions
# Conflicts:
# front/package-lock.json
# front/package.json
# front/src/iframe_api.ts
2021-05-28 00:30:51 +02:00
jonny
1a1ab30574
extraction idea
...
# Conflicts:
# front/src/Api/ScriptUtils.ts
# front/src/iframe_api.ts
2021-05-28 00:29:21 +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
54e300443b
Fixing Typing
2021-05-26 16:11:22 +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
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
343ad6ea96
Revert "preparation for merge with metadataScriptApi"
...
This reverts commit b18b2fe0e3
.
2021-05-25 10:11:25 +02:00
GRL
a7b09e91ba
Revert "Merge branch 'update-game-tiles' into metadataScriptingApi"
...
This reverts commit 428625e61b
, reversing
changes made to a3165a0540
.
2021-05-25 10:09:58 +02:00
GRL
428625e61b
Merge branch 'update-game-tiles' into metadataScriptingApi
2021-05-25 09:54:00 +02:00
GRL
b18b2fe0e3
preparation for merge with metadataScriptApi
2021-05-25 09:50:59 +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
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
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
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
9b68faac0e
Fixing JSDoc
2021-05-18 09:53:54 +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
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
2c4c98b0e5
limited event trigger to max 10 per second
2021-05-10 21:44:15 +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
GRL
fd931c4884
Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptingApi
2021-05-10 14:45:41 +02:00
David Négrier
c025d1798b
Renaming restorePlayerControls/disablePlayerControls
...
Putting "controls" in the plural form:
- restorePlayerControl => restorePlayerControls
- disablePlayerControl => disablePlayerControls
2021-05-10 12:18:06 +02:00
GRL
cd2d090a8b
Merge branch 'develop' of github.com:thecodingmachine/workadventure into metadataScriptingApi
2021-05-10 11:46:16 +02:00
GRL
a6ba8d41b9
implement show/hide layer with scripting
2021-05-10 11:19:18 +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
4758820aa4
Merge remote-tracking branch 'remotes/workadventure-main/develop' into menu-command-api
2021-05-10 09:54:39 +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
jonny
91148035ec
polyfill generic message event
2021-05-09 21:46:40 +02:00
jonny
cf06f29ef8
fixed cherry pick conflicts
2021-05-09 21:38:11 +02:00
jonny
8da5bf9f8e
typed iframe api events
...
# Conflicts:
# front/src/Api/IframeListener.ts
# front/src/iframe_api.ts
2021-05-09 21:36:48 +02:00
jonnytest1
2922ae4603
Merge branch 'develop' into menu-command-api
2021-05-07 19:59:58 +02:00
jonny
a24ca078e6
use iframe url if no script
...
# Conflicts:
# front/src/Api/IframeListener.ts
2021-05-05 19:15:32 +02:00
jonnytest1
0a5dffd034
Update ScriptUtils.ts
2021-05-03 16:11:16 +02:00
jonny
cd77af318d
added more properties
...
# Conflicts:
# front/src/Phaser/Game/GameScene.ts
2021-05-01 19:45:23 +02:00
jonny
d674ac9e0c
fixed url cannot be relative
2021-05-01 17:43:31 +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
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
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