PneumaticCraft: Repressurized

PneumaticCraft: Repressurized

43M Downloads

[Bug] conditionEntity not a runnable action for drone interfaces

ChocoPuppy opened this issue ยท 3 comments

commented

Minecraft Version: 1.12.2

Forge Version: 14.23.5.2847

Mod Version: 1.12.2-0.11.7-357

Describe your problem, including steps to reproduce it

When using a drone (standard programmable drone with no upgrades, hasn't been dyed, has been renamed) connected to a Drone Interface, calling the following (on a computercraft computer mod version 1.85,2. Connected to the drone interface via the full block version of CC's wired modems {drone interfaces won't allow the "multipart" modems to be connected}) will give a list of all the commands the drone can execute normally aside from "conditionEntity":

--the variable 'drone' refers to the results of a peripheral.wrap() on the interface the drone is connected to`

drone.getAllActions()

When attempting to set the drones action to conditionEntity (using the same computercraft computer) despite it being missing from the list like so:

--Same deal as before, 'drone' contains a wrapped table of all the functions from a drone interface with a linked drone`

drone.setAction("conditionEntity")

will result in the following error message:
lua:1:Parsed action 'conditionEntity' is not a runnable action!

This is a problem because using the same function from the drone directly using the puzzle piece will result in it acting perfectly fine, making it confusing as to why it can't be triggered remotely.

Any other comments?

I'm guessing that last part is the standard error message you use when a player attempts to call an action the drone cannot do (like calling "teleport" on a programmable controller), however, in this case, the programmable drone I am using doesn't disallow any piece, let alone conditionEntity.

commented

I took into the relevant code, and I can see that all of the condition prog widgets are explicitly disabled from being runnable via the Drone Interface - I'm presuming this is code that MineMaarten originally wrote, and I'd imagine there was a very good reason for doing so. Not sure why offhand, but I'll let you know if I discover more.

commented

Really? does that include the drone conditions? because I've been using them perfectly fine so far. I'll test to see if non-drone conditions work fine (they're still on the list of runnable functions unlike conditionEntity)

commented

No, the entity condition is the only one that isn't usable by computers. Having been through the code, I can see why, and also why I'm not going to be able change anything without a major re-evaluation of how the whole system works, which isn't happening for 1.12 :) I'll examine it for 1.14, but no promises there either.

Sorry, but this just isn't supported.