Jump to content

Column skull key doors


Recommended Posts

Highlight each pillar sector, press J to join them and give them a TagID. Then either draw a linedef somewhere in front of the pillars (walk over), or make an accessible switch (press use or shoot), and give them the special 21:Floor_LowerToLowest (tag, speed), 20:Floor_LowerByValue (tag, speed, height) or similar. Or, instead set the linedef to 80:ACS_Execute (script, map, s_arg1, s_arg2, s_arg3) with one of the specials above, for example 

Quote

 

#include "zcommon.acs"

script 1 (void)
{
//  21:Floor_LowerToLowest (tag, speed);
    Floor_LowerToLowest (10, 32);
}

 

 

If you want the blue pillars to drop only when you have the blue skullkey, then the script becomes a bit more complex. In the following script I spawn a blue skullkey and set the switch to drop the blue pillars once you have the key


 

Quote

 

#include "zcommon.acs"

// ===================================
// spawn the blue skull key

// ===================================

script 100 open
{
    delay (35*3);
    Thing_Spawn ( 10, T_BLUEKEYCARD, 0, 0);
    delay (35*15);
    Door_Open ( 3, 8, 0 );
}

// ===================================

// check for blue skull key

// ===================================

script 2 (void)

{
    SetFont ("GAR");
    SetHudSize(960, 600, 0);
           
    if (CheckInventory("BlueCard") == 1)
    {
    HudMessage(s:"Switch is activated";
       HUDMSG_PLAIN, 0, 4, 480.0, 250.0, 5.0);

    delay (35);
    ACS_Execute ( 3,1,0,0,0);
    }
    else
    {
    HudMessage(s:"You need the blue skull key";
       HUDMSG_PLAIN, 0, 4, 480.0, 250.0, 5.0);        
    }
}

// ===================================
// if you have the blue skull key, open the door
// ===================================

script 3 (void)
{
        Floor_LowerToLowest (10, 32);

}

// ===================================
// END OF SCRIPTS
// ===================================

 

Example

 

Edited by Kappes Buur

Share this post


Link to post

Welcome to Doomworld!

 

What format are you using?

 

You can't do what it sounds like you want to do (keyed switch to lower floor to lowest nearest floor) in vanilla.

 

In Boom, you should be able to do it as follows:

Draw a room with a conveyor belt off in the void.

Put a voodoo doll on the conveyor belt behind a door.

Set the door to be locked with a blue key and make the columns the switch that opens the door on the conveyor belt.

On the other side of the door, put a walkover line that triggers the columns to lower to the lowest nearest floor).

 

I don't know about GZDoom or UDMF.

Edited by Pegleg
Welcome.

Share this post


Link to post
1 hour ago, Kappes Buur said:

Highlight each pillar sector, press J to join them and give them a TagTD. Then either draw a linedef somewhere in front of the pillars (walk over), or an accessible switch (press use or shoot) and give them the special 21:Floor_LowerToLowest (tag, speed), 20:Floor_LowerByValue (tag, speed, height) or similar,. Or instead set the linedef to 80:ACS_Execute (script, map, s_arg1, s_arg2, s_arg3) with omne of the
specuials above, for example 

 

if you want the blue pillars to drop only when you have the blue skullkey then the script becomes a bit more complex. In the following script I spawn a blue skullkey and set the switch to drop the blue pilears if you have the key


 

 

Example

 

Thank you, you just saved my wad!

Share this post


Link to post

If you want to use a script for something key-locked, you don't need to check for the key manually. ACS_LockedExecute and ACS_LockedExecuteDoor exist specifically for making scripts that require keys to activate, and display the default locked object messages when the key is missing.

Share this post


Link to post
4 hours ago, Kappes Buur said:

The screenshot shows that he is using GZDoom (Doom2 in Hexen) format.

 

So it does. I missed that.

 

The Boom method I suggested should work, but, you're right, it was irrelevant here.

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...