mirror of
https://github.com/MightyPirates/OpenComputers.git
synced 2025-09-14 09:46:53 -04:00
Added play and stop methods to jukebox driver. Closes #862.
This commit is contained in:
parent
78d6ea15d2
commit
2f9779cb76
@ -11,6 +11,7 @@ import li.cil.oc.integration.ManagedTileEntityEnvironment;
|
|||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.BlockJukebox;
|
import net.minecraft.block.BlockJukebox;
|
||||||
import net.minecraft.init.Blocks;
|
import net.minecraft.init.Blocks;
|
||||||
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemRecord;
|
import net.minecraft.item.ItemRecord;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
@ -56,5 +57,22 @@ public final class DriverRecordPlayer extends DriverTileEntity implements Enviro
|
|||||||
}
|
}
|
||||||
return new Object[]{((ItemRecord) record.getItem()).getRecordNameLocal()};
|
return new Object[]{((ItemRecord) record.getItem()).getRecordNameLocal()};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Callback(doc = "function() -- Start playing the record currently in the jukebox.")
|
||||||
|
public Object[] play(final Context context, final Arguments args) {
|
||||||
|
final ItemStack record = tileEntity.func_145856_a();
|
||||||
|
if (record == null || !(record.getItem() instanceof ItemRecord)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
tileEntity.getWorldObj().playAuxSFXAtEntity(null, 1005, tileEntity.xCoord, tileEntity.yCoord, tileEntity.zCoord, Item.getIdFromItem(record.getItem()));
|
||||||
|
return new Object[]{true};
|
||||||
|
}
|
||||||
|
|
||||||
|
@Callback(doc = "function() -- Stop playing the record currently in the jukebox.")
|
||||||
|
public Object[] stop(final Context context, final Arguments args) {
|
||||||
|
tileEntity.getWorldObj().playAuxSFX(1005, tileEntity.xCoord, tileEntity.yCoord, tileEntity.zCoord, 0);
|
||||||
|
tileEntity.getWorldObj().playRecord(null, tileEntity.xCoord, tileEntity.yCoord, tileEntity.zCoord);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user