Hi, I would want to know how to make the same crowbar puzzle as in TDD in Daniel's Room. I checked another thread where they said that look at the map from TDD but I don't understand anything. Could you please help me? Me and my friend got a great idea for a custom story.
How much scripting knowledge do you have? You need to do some trickery involving switching out several crowbar entities, placing areas in such a way to detect the crowbar 'joint' so it properly plays the effects. It's a fairly simple puzzle to script, fortunately. All it does is unlock the door and give it a push, play some dust effects, and voila.
void crowbar(string &in asParent, string &in asChild, int alState)
{
RemoveItem("crowbar_1"); //If you want to remove it
SetEntityActive("crowbar_joint", true); //I think it's name is crowbar_joint, if it's not, tell
}
void break(string &in asParent, string &in asChild, int alState)
{
*Do you function here, either if you wanna unlock a door or break some planks.
CreateParticleSystemAtEntity("", "ps_hit_wood", "BreakEffect", false);
}
So now you have three areas to put out, one for the place where to put the crowbar(AreaPutCrowbar), one which the joint touches(break), and one which the breakeffect happens(BreakEffect)
Don't forget to put the crowbar_joint whereever you want it and put the active box to not true
Oh god guys...should have told you, absolutely NO scripting education.
I know nothing of scripting, I should have known custom story making wasn't THAT easy. Could you like make some scripts for me or something?
That would be very helpful.
Alright, so first create three script areas, one which name is AreaPutCrowbar, one which name is break, one which name is BreakEffect. When this is done adjust the size of the three of them to your liking, AreaPutCrowbar should be pretty big since this is where you're supposed to put the crowbar there, break is where the entity crowbar_joint should "hit" (crowbar_joint is a item which can be dragged), so when it is dragged to a certain area (break) a function happens, BreakEffect can be small however, since it's only to create a particle system.
void BreakDoor(string &in asParent, string &in asChild, int alState)
{
SetSwingDoorLocked("YOUR DOOR NAME", false, false);'
CreateParticleSystemAtEntity("", "ps_hit_wood", "BreakEffect", false);
PlaySoundAtEntity("", "break_wood", "BreakEffect", 0.0, false);
SetEntityActive("Crowbar_joint", false);
SetEntityActive("crowbar", true); //THIS SHOULD BE A CROWBAR ENTITY ONLY (NOT ITEM, NOT JOINT (name it crowbar)
}
Be sure to rename "YOUR DOOR NAME" to whatever your door is named, also add a entity called crowbar_joint (also name it crowbar_joint) and set in to inactive and make sure it can reach the break area. You can make this even better if you add a crowbar entity (no item or joint) and make a Prop impulse to the door so it looks like you've broken the lock
(This post was last modified: 06-21-2011, 09:13 PM by rojkish.)
//Remove callback incase player never touched door
SetEntityPlayerInteractCallback("mansion_1", "", true);
SetEntityPlayerInteractCallback("AreaUseCrowbar", "", true);
Something wonderful has happened, I kinda figured it out!
The only problem is I can't like pull in the crowbar so that the door pops open, I can only use the crowbar on the door and then it opens. So, I guess i figured out how to open doors with keys too
Thx for your help guys.
(This post was last modified: 06-22-2011, 07:26 AM by Mad Aztec.)