Multiple Item Smelt tricks in the same spell can dupe items
Vazkii opened this issue ยท 2 comments
Confirmed.
Reproduction steps:
Drop single item of ore (nor stack) and cast this spell on it with normal bullet.
It will triplicate ore.
It seems its connected to the stack treating code. If stack 3 or more iron ore it will drop 3 correctly. If stack is smaller it will still drop 3 even if it only had 1 or 2 ore to smelt.
{spellName:"Smelt Item",uuidMost:5212192462107656597L,validSpell:1b,spellList:[0:{spellPosX:3,spellData:{spellKey:"selectorCaster",params:{}},spellPosY:2},1:{spellPosX:3,spellData:{spellKey:"operatorEntityPosition",params:{psi.spellparam.target:1}},spellPosY:3},2:{spellPosX:3,spellData:{spellKey:"constantNumber",params:{},constantValue:"2"},spellPosY:4},3:{spellPosX:4,spellData:{spellKey:"operatorEntityLook",params:{psi.spellparam.target:3}},spellPosY:2},4:{spellPosX:4,spellData:{spellKey:"operatorVectorRaycast",params:{psi.spellparam.ray:1,psi.spellparam.max:0,psi.spellparam.position:3}},spellPosY:3},5:{spellPosX:4,spellData:{spellKey:"selectorNearbySmeltables",params:{psi.spellparam.radius:3,psi.spellparam.position:1}},spellPosY:4},6:{spellPosX:5,spellData:{spellKey:"trickSmeltItem",params:{psi.spellparam.target:2}},spellPosY:3},7:{spellPosX:5,spellData:{spellKey:"operatorRandomEntity",params:{psi.spellparam.target:3}},spellPosY:4},8:{spellPosX:5,spellData:{spellKey:"trickSmeltItem",params:{psi.spellparam.target:1}},spellPosY:5},9:{spellPosX:6,spellData:{spellKey:"trickSmeltItem",params:{psi.spellparam.target:3}},spellPosY:4}],uuidLeast:-7445813152314056053L}
perhaps put a check for isDead in here? https://github.com/Vazkii/Psi/blob/master/src/main/java/vazkii/psi/common/spell/trick/entity/PieceTrickSmeltItem.java#L52