diff options
author | Vincent Glize <vincentglize@hotmail.fr> | 2017-10-02 22:09:49 +0200 |
---|---|---|
committer | Loïc Blot <nerzhul@users.noreply.github.com> | 2017-10-02 22:09:49 +0200 |
commit | 4e19791cde6b203ad853905d8c1481c43004a7ea (patch) | |
tree | 9db628a01d6678b453fe7ae2b49c60c38179a29c /src/game.cpp | |
parent | b9fb3cea33f495f0c9c9d7d74ed67af6aab78b04 (diff) | |
download | minetest-4e19791cde6b203ad853905d8c1481c43004a7ea.tar.gz minetest-4e19791cde6b203ad853905d8c1481c43004a7ea.tar.bz2 minetest-4e19791cde6b203ad853905d8c1481c43004a7ea.zip |
[CSM] Add callback on open inventory (#5793)
Diffstat (limited to 'src/game.cpp')
-rw-r--r-- | src/game.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/game.cpp b/src/game.cpp index 35d0aa9f9..8da789a9e 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -2671,14 +2671,17 @@ void Game::openInventory() infostream << "the_game: " << "Launching inventory" << std::endl; PlayerInventoryFormSource *fs_src = new PlayerInventoryFormSource(client); - TextDest *txt_dst = new TextDestPlayerInventory(client); - - create_formspec_menu(¤t_formspec, client, &input->joystick, fs_src, txt_dst); - cur_formname = ""; InventoryLocation inventoryloc; inventoryloc.setCurrentPlayer(); - current_formspec->setFormSpec(fs_src->getForm(), inventoryloc); + + if (!client->moddingEnabled() + || !client->getScript()->on_inventory_open(fs_src->m_client->getInventory(inventoryloc))) { + TextDest *txt_dst = new TextDestPlayerInventory(client); + create_formspec_menu(¤t_formspec, client, &input->joystick, fs_src, txt_dst); + cur_formname = ""; + current_formspec->setFormSpec(fs_src->getForm(), inventoryloc); + } } |