Frictional Games Forum (read-only)
Padlock Question - Printable Version

+- Frictional Games Forum (read-only) (https://www.frictionalgames.com/forum)
+-- Forum: Amnesia: The Dark Descent (https://www.frictionalgames.com/forum/forum-6.html)
+--- Forum: Custom Stories, TCs & Mods - Development (https://www.frictionalgames.com/forum/forum-38.html)
+---- Forum: Development Support (https://www.frictionalgames.com/forum/forum-39.html)
+---- Thread: Padlock Question (/thread-13786.html)



Padlock Question - Nevicar - 03-05-2012

Hello everyone!

I have a question about padlocks; how would I go about setting it up on a prison door and then unlocking it with a key and having it disappear with the key from the inventory? I can't seem to find much about that in the wiki, sadly, and figured I'd ask here to pick your guys brains Smile

Unless I'm just an idiot and coded my door open wrong, which I'll post here:


Code:
AddUseItemCallback("", "key1", "padlock_1", "func_key", true);

void func_key(string &in item, string &in door){  SetSwingDoorLocked("padlock_1", false, true);  PlaySoundAtEntity("Player", "unlock_door", door, 0, false); RemoveItem(item);}

Thanks for the help!


RE: Padlock Question - jessehmusic - 03-05-2012

(03-05-2012, 08:07 PM)Nevicar Wrote: Hello everyone!

I have a question about padlocks; how would I go about setting it up on a prison door and then unlocking it with a key and having it disappear with the key from the inventory? I can't seem to find much about that in the wiki, sadly, and figured I'd ask here to pick your guys brains Smile

Unless I'm just an idiot and coded my door open wrong, which I'll post here:


Code:
AddUseItemCallback("", "key1", "padlock_1", "func_key", true);

void func_key(string &in item, string &in door){  SetSwingDoorLocked("padlock_1", false, true);  PlaySoundAtEntity("Player", "unlock_door", door, 0, false); RemoveItem(item);}

Thanks for the help!
AddUseItemCallback("", "key1", "padlock_1", "KeyOnDoor", true);

void KeyOnDoor (string &in item, string &in door)
{

SetSwingDoorLocked("padlock_1 ", false, true);
PlaySoundAtEntity("", "unlock_door", "padlock_1 ", 0, false);
RemoveItem("key1");
}



Test that Wink


RE: Padlock Question - Nevicar - 03-05-2012

Tested, nothing happened still, the padlock on the door doesn't disappear.

Edit: I've moved the lock and now it can at least be manipulated. So I need to change what I've asked. I want the padlock to despawn when I add the key to it.

IE: I have a prison style door with a lock to do it manually instead of with a key. I want to take the key, apply it to the lock, and have the lock disappear.


RE: Padlock Question - palistov - 03-06-2012

Still not quite about some things you've posted, but a padlock is an entity of sub-type Object > Grab. You can't set it locked or unlocked. Use SetEntityActive to make it disappear, in tandem with SetSwingDoorLocked to unlock your door.


RE: Padlock Question - Nevicar - 03-06-2012

Thanks, that was actually exactly what I needed to know. I figured that the thing couldn't be unlocked, but I'm incredibly new at this so I didn't know about the SetEntityActive command, but now how I know how the entire code structure works, I'll surely be able to fix more problems.