From 086c8b1834bfca6a4af912abbd13fd570f7b0b33 Mon Sep 17 00:00:00 2001
From: Mattes D
Date: Wed, 16 Dec 2015 15:04:47 +0100
Subject: Revised the explosion-related Lua API and docs.
Fixes #2746.
---
Server/Plugins/APIDump/Hooks/OnExploded.lua | 17 ++---------------
Server/Plugins/APIDump/Hooks/OnExploding.lua | 23 +++++++----------------
2 files changed, 9 insertions(+), 31 deletions(-)
(limited to 'Server/Plugins/APIDump/Hooks')
diff --git a/Server/Plugins/APIDump/Hooks/OnExploded.lua b/Server/Plugins/APIDump/Hooks/OnExploded.lua
index 6a01542ab..daca31237 100644
--- a/Server/Plugins/APIDump/Hooks/OnExploded.lua
+++ b/Server/Plugins/APIDump/Hooks/OnExploded.lua
@@ -11,20 +11,7 @@ return
The explosion carries with it the type of its source - whether it's a creeper exploding, or TNT,
etc. It also carries the identification of the actual source. The exact type of the identification
- depends on the source kind:
-
- Source | SourceData Type | Notes |
- esPrimedTNT | {{cTNTEntity}} | An exploding primed TNT entity |
- esCreeper | {{cCreeper}} | An exploding creeper or charged creeper |
- esBed | {{Vector3i}} | A bed exploding in the Nether or in the End. The bed coords are given. |
- esEnderCrystal | {{Vector3i}} | An ender crystal exploding upon hit. The block coords are given. |
- esGhastFireball | {{cGhastFireballEntity}} | A ghast fireball hitting ground or an {{cEntity|entity}}. |
- esWitherSkullBlack | TBD | A black wither skull hitting ground or an {{cEntity|entity}}. |
- esWitherSkullBlue | TBD | A blue wither skull hitting ground or an {{cEntity|entity}}. |
- esWitherBirth | TBD | A wither boss being created |
- esOther | TBD | Any other previously unspecified type. |
- esPlugin | object | An explosion created by a plugin. The plugin may specify any kind of data. |
-
+ depends on the source kind, see the {{Globals#ExplosionSource|esXXX}} constants' descriptions for details.
]],
Params =
{
@@ -35,7 +22,7 @@ return
{ Name = "Y", Type = "number", Notes = "Y-coord of the explosion center" },
{ Name = "Z", Type = "number", Notes = "Z-coord of the explosion center" },
{ Name = "Source", Type = "eExplosionSource", Notes = "Source of the explosion. See the table above." },
- { Name = "SourceData", Type = "varies", Notes = "Additional data for the source. The exact type varies by the source. See the table above." },
+ { Name = "SourceData", Type = "varies", Notes = "Additional data for the source. The exact type varies by the source. See the {{Globals#ExplosionSource|esXXX}} constants' descriptions." },
},
Returns = [[
If the function returns false or no value, the next plugin's callback is called. If the function
diff --git a/Server/Plugins/APIDump/Hooks/OnExploding.lua b/Server/Plugins/APIDump/Hooks/OnExploding.lua
index e21b41be0..873202dc3 100644
--- a/Server/Plugins/APIDump/Hooks/OnExploding.lua
+++ b/Server/Plugins/APIDump/Hooks/OnExploding.lua
@@ -11,20 +11,7 @@ return
The explosion carries with it the type of its source - whether it's a creeper exploding, or TNT,
etc. It also carries the identification of the actual source. The exact type of the identification
- depends on the source kind:
-
- Source | SourceData Type | Notes |
- esPrimedTNT | {{cTNTEntity}} | An exploding primed TNT entity |
- esCreeper | {{cCreeper}} | An exploding creeper or charged creeper |
- esBed | {{Vector3i}} | A bed exploding in the Nether or in the End. The bed coords are given. |
- esEnderCrystal | {{Vector3i}} | An ender crystal exploding upon hit. The block coords are given. |
- esGhastFireball | {{cGhastFireballEntity}} | A ghast fireball hitting ground or an {{cEntity|entity}}. |
- esWitherSkullBlack | TBD | A black wither skull hitting ground or an {{cEntity|entity}}. |
- esWitherSkullBlue | TBD | A blue wither skull hitting ground or an {{cEntity|entity}}. |
- esWitherBirth | TBD | A wither boss being created |
- esOther | TBD | Any other previously unspecified type. |
- esPlugin | object | An explosion created by a plugin. The plugin may specify any kind of data. |
-
+ depends on the source kind, see the {{Globals#ExplosionSource|esXXX}} constants' descriptions for details
]],
Params =
{
@@ -35,12 +22,16 @@ return
{ Name = "Y", Type = "number", Notes = "Y-coord of the explosion center" },
{ Name = "Z", Type = "number", Notes = "Z-coord of the explosion center" },
{ Name = "Source", Type = "eExplosionSource", Notes = "Source of the explosion. See the table above." },
- { Name = "SourceData", Type = "varies", Notes = "Additional data for the source. The exact type varies by the source. See the table above." },
+ { Name = "SourceData", Type = "varies", Notes = "Additional data for the source. The exact type varies by the source. See the {{Globals#ExplosionSource|esXXX}} constants' description." },
},
Returns = [[
If the function returns false or no value, the next plugin's callback is called, and finally
Cuberite will process the explosion - destroy blocks and push + hurt entities. If the function
- returns true, no other callback is called for this event and the explosion will not occur.
+ returns true, no other callback is called for this event and the explosion will not occur.
+
+ The hook handler may return up to two more values after the initial bool. The second returned value
+ overrides the CanCauseFire parameter for subsequent hook calls and the final explosion, the third
+ returned value overrides the ExplosionSize parameter for subsequent hook calls and the final explosion.
]],
}, -- HOOK_EXPLODING
}
--
cgit v1.2.3