Skip to content

Instantly share code, notes, and snippets.

@AnnikenYT
Created February 15, 2022 12:47
Show Gist options
  • Save AnnikenYT/de4acc0d030fc4446219cea849173bdd to your computer and use it in GitHub Desktop.
Save AnnikenYT/de4acc0d030fc4446219cea849173bdd to your computer and use it in GitHub Desktop.
A simple lockable door for Custom NPCS
//Lockable Door Script by AnnikenYT
var key_name = "Anniken's key" // Du brauchs ein Item mit EXAKT diesem Namen um die Tür zu öffnen.
var door_name = "Door" // Dieser name wird in den Nachrichten angezeigt.
var locked = true; // Wenn true ist die Tür standartmäßig verschlossen, wenn false nicht.
// DONT CHANGE!
function init(event) {
event.block.setBlockModel("minecraft:iron_door");
}
function interact(event) {
//Lock
if (!locked) {
if (event.player.getMainhandItem().getDisplayName() == key_name) {
locked = true
event.block.setBlockModel("minecraft:iron_door");
event.player.message("<" + door_name + "> This door is now locked");
event.player.playSound("minecraft:block.enchantment_table.use", 1, 1);
event.setCanceled(true);
}
}
//Unlock
else {
if (event.player.getMainhandItem().getDisplayName() == key_name) {
locked = false
event.block.setBlockModel("minecraft:wooden_door");
event.player.message("<" + door_name + "> This door is now unlocked");
event.player.playSound("minecraft:block.enchantment_table.use", 1, 1);
event.setCanceled(true);
}
//Tell player that door is locked
if (locked) {
event.setCanceled(true);
event.player.message("<" + door_name + "> This door is locked");
event.player.playSound("minecraft:block.enchantment_table.use", 1, 1);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment