02-11-2015, 09:44 PM
maybe I can not wait this plugin
:D:D

ProtectionAreas (built-in)
|
||||||
02-11-2015, 09:44 PM
maybe I can not wait this plugin
![]()
04-06-2015, 11:56 PM
Greetings,
This is a very useful plug-in and I thank you for creating it. However, would it be possible to include protection from Mob damage in your protected area with this plug-in? I have managed to protect my spawn but am worried about mischievous types luring in a few creepers and exploding my grand temple... Darth.
04-07-2015, 12:56 AM
This is not currently possible, the explosion API is missing. An approximation would be possible but it would not be 100% effective.
04-07-2015, 01:00 AM
Maybe use the OnExploding hook, create a new bounding box that represents that area, and return true if it is in the expanded box? (Expanded to make sure explosions don't happen inside or near the area)
04-07-2015, 03:31 AM
The problem is in MCS's implementation of explosions. It doesn't use the Vanilla's ray model, but instead a custom, inferior one. The hook then provides no means of actually determining what blocks are affected by the explosion, only an approximation via the relative ExplosionSize parameter.
04-07-2015, 03:48 AM
(This post was last modified: 04-07-2015, 03:53 AM by DiamondToaster.)
So, the implementation should be rewritten in order to use a predictable ray model? Then using Lua, you could get a table of blocks that are affected, iterate through that, then stop any individual blocks from moving under certain conditions using a hook? Or maybe a hook that goes like HOOK_BLOCK_DISPLACED that is triggered per block or something like that?
04-07-2015, 04:02 AM
I like the first variant more - a single hook call providing all the data. That would require a new class, though - array of block coords and blocktypes / metas, and bindings for that class, so that the hook could add or remove individual blocks being blown up.
04-07-2015, 05:59 AM
(This post was last modified: 04-07-2015, 06:06 AM by DiamondToaster.)
So, something like:
Then the Lua bindings would send table full of these:
04-07-2015, 07:54 AM
Rather than pushing the entire table to Lua and back, it'd be better to wrap the array into an object, cBlockArray:
Thanks given by: NiLSPACE , DiamondToaster
04-07-2015, 09:38 AM
Ah, that's also a good idea. Saves a bit of overhead, especially when you decide to go crazy with WorldEdit and set off 100000+ TNT.
| ||||||
« Next Oldest | Next Newest »
|