Integrated Dynamics

Integrated Dynamics

63M Downloads

Problem using Item Extractor with nbt.integer process.

Exanadu opened this issue ยท 2 comments

commented

Issue type: Pulling only Astral sorcery crystals with 900 size from once chest to the other using item extractor.

  • ๐Ÿ› Bug

Short description: For just a basic test I have setup 2 chests, 1 with item interface and inventory reader. One with item extractor and a var store to connect them all. I created a slot item from chest #1 to read the crystal inside. step 2, created NBT ITEM from that to get the crystal information, step 3 created string for astralsorcery, step 3, created NBT TAG to get the string info, step 4 Created String crystalProperties, Step 5 created NBT Tag to get that string info, step 6, created string size, step 7, used NBT.integer to read the size number, step 8 created an integer of 900, step 9 created a == Boolean between the size integer and 900 integer and got my card for the exporter which should pull any crystal that is = 900 from slot 1 of chest 1.

Expected behavior: Should pull only the 900 size crystals.

Actual behavior: when no 900 crystal is in Chest #1 all of the other crystals stay as they should, however as soon as a 900 crystal hits slot one chest #2 pulls all of the crystals in after the 900 size one is pulled even if they are not == 900


Versions:

  • This mod: IntegratedDynamics-1.12.2-0.10.3
  • CyclopsCore: CyclopsCore-1.12.2-0.11.1
  • Minecraft: 1.12.2
  • Forge: 14.23.1.2601
commented

Not a bug, that's just the wrong way to do that. You have to make a predicate that checks the item, not read it with an inventory reader.

commented

Indeed, the behaviour you are experiencing is correct.

What you just programmed basically says "only export all items from the chest iff the first slot has a crystal of size 900".

You could use operator or NBT-based aspects instead to achieve your goal.