diff --git a/CHANGELOG.md b/CHANGELOG.md index 779504a6ed..5f8703c3ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ ## Evennia 1.0 (2019-) (develop branch, WIP) -- new `drop:holds()` lock default to limit dropping nonsensical things. Access check +- New `drop:holds()` lock default to limit dropping nonsensical things. Access check defaults to True for backwards-compatibility in 0.9, will be False in 1.0 - REST API allows you external access to db objects through HTTP requests (Tehom) - `Object.normalize_name` and `.validate_name` added to (by default) enforce latinify @@ -20,10 +20,10 @@ - Change default multimatch syntax from 1-obj, 2-obj to obj-1, obj-2. - Make `object.search` support 'stacks=0' keyword - if ``>0``, the method will return N identical matches instead of triggering a multi-match error. +- Add `tags.has()` method for checking if an object has a tag or tags (PR by ChrisLR) -### Already in master -- Renamed Tutorial classes "Weapon" and "WeaponRack" to "TutorialWeapon" and - "TutorialWeaponRack" to prevent collisions with classes in mygame + +### Evennia 0.95 (master) - `is_typeclass(obj (Object), exact (bool))` now defaults to exact=False - `py` command now reroutes stdout to output results in-game client. `py` without arguments starts a full interactive Python console. @@ -92,7 +92,14 @@ without arguments starts a full interactive Python console. pagination (e.g. to create EvTables for every page instead of splittine one table) - Using `EvMore pagination`, dramatically improves performance of `spawn/list` and `scripts` listings (100x speed increase for displaying 1000+ prototypes/scripts). - +- `EvMenu` now uses the more logically named `.ndb._evmenu` instead of `.ndb._menutree` to store itself. + Both still work for backward compatibility, but `_menutree` is deprecated. +- `EvMenu.msg(txt)` added as a central place to send text to the user, makes it easier to override. + Default `EvMenu.msg` sends with OOB type="menu" for use with OOB and webclient pane-redirects. +- New EvMenu templating system for quickly building simpler EvMenus without as much code. +- Renamed Tutorial classes "Weapon" and "WeaponRack" to "TutorialWeapon" and + "TutorialWeaponRack" to prevent collisions with classes in mygame + ## Evennia 0.9 (2018-2019) diff --git a/docs/source/Components/Webclient.md b/docs/source/Components/Webclient.md index d9aa34a906..ac49fd91fe 100644 --- a/docs/source/Components/Webclient.md +++ b/docs/source/Components/Webclient.md @@ -109,19 +109,15 @@ from the server and display them as inline HTML. * `notifications.js` Defines onText. Generates browser notification events for each new message while the tab is hidden. * `oob.js` Defines onSend. Allows the user to test/send Out Of Band json messages to the server. -* `options.js` Defines most callbacks. Provides a popup-based UI to coordinate options settings with -the server. -* `options2.js` Defines most callbacks. Provides a goldenlayout-based version of the -options/settings tab. Integrates with other plugins via the custom onOptionsUI callback. -* `popups.js` Provides default popups/Dialog UI for other plugins to use. -* `splithandler.js` Defines onText. Provides an older, less-flexible alternative to goldenlayout for -multi-window UI to automatically separate out screen real-estate by type of message. +* `options.js` Defines most callbacks. Provides a popup-based UI to coordinate options settings with the server. +* `options2.js` Defines most callbacks. Provides a goldenlayout-based version of the options/settings tab. Integrates with other plugins via the custom onOptionsUI callback. +* `popups.js` Provides default popups/Dialog UI for other plugins to use. # Writing your own Plugins -So, you love the functionality of the webclient, but your game has specific types of text that need -to be separated out into their own space, visually. There are two plugins to help with this. The -Goldenlayout plugin framework, and the older Splithandler framework. +So, you love the functionality of the webclient, but your game has specific +types of text that need to be separated out into their own space, visually. +The Goldenlayout plugin framework can help with this. ## GoldenLayout @@ -258,87 +254,4 @@ window.plugin_handler.add("myplugin", myplugin); ``` You can then add "mycomponent" to an item's componentName in your goldenlayout_default_config.js. -Make sure to stop your server, evennia collectstatic, and restart your server. Then make sure to -clear your browser cache before loading the webclient page. - - -## Older Splithandler -The splithandler.js plugin provides a means to do this, but you don't want to have to force every -player to set up their own layout every time they use the client. - -Let's create a `mygame/web/static_overrides/webclient/js/plugins/layout.js` plugin! - -First up, follow the directions in Customizing the Web Client section above to override the -base.html. - -Next, add the new plugin to your copy of base.html: -``` - -``` -Remember, plugins are load-order dependent, so make sure the new `