Commit graph

62 commits

Author SHA1 Message Date
kharhamel 4160235b92 ran pretty on the front 2021-09-06 14:31:59 +02:00
David Négrier 7576fbbe6d
Merge pull request #1392 from thecodingmachine/iframeMenuScript
Iframe menu script
2021-08-27 17:41:04 +02:00
David Négrier a0d3685227 Fixing "has/in" on variables proxy object
When using WA.state, using `"myVariable" in WA.state` would always return false.
This is now fixed by adding a "has" method on the Proxy class.

Also, added a `WA.state.hasVariable` method.
2021-08-27 11:29:59 +02:00
GRL 706f531ca2 Add types file in API 2021-08-27 11:17:48 +02:00
GRL cf7bfe79ca Refactor to only have one function registerMenuCommand
When selected custom menu is removed, go to settings menu
Allow iframe in custom menu to use Scripting API
Return menu object when it is registered, can call remove function on it
2021-08-27 10:34:03 +02:00
GRL f3c4d344b3 Add iframe submenu by scripting API
Delete menu by scripting API
2021-08-24 17:35:06 +02:00
David Négrier 8a64491952 Improving popup
If a popup message is empty, only the buttons will be displayed (not the container)

Unrelated: the Sound.play method in the API now accepts 0 arguments.
2021-08-18 11:53:41 +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 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 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
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 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
David Négrier cdd61bdb2c Merging with develop 2021-07-23 16:41:38 +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
David Négrier 84df25f863 Improving WA.state typings 2021-07-22 17:14:36 +02:00
David Négrier 080d495044 Renaming WA.room.getMap to WA.room.getTiledMap 2021-07-21 16:40:53 +02:00
David Négrier 3d76f76d3e Fixing merge 2021-07-16 11:37:44 +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
GRL78 b2ea368097
Migrate getCurrentUser() to WA.player (#1279) 2021-07-13 15:13:14 +02:00
David Négrier 52fd9067b8 Editing do to add "state" API doc 2021-07-08 11:46:30 +02:00
David Négrier b1cb12861f Migrating variables functions to the "state" namespace. 2021-07-07 22:14:59 +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
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 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 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 389ca25b6a Cowebsite opened by script can use Iframe Api 2021-06-28 18:00:48 +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
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
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