Portals on a func_door'd brush
Quote from commando66 on May 21, 2011, 3:13 pmHi, I have a group of panels that -when a button is pressed- parents the panels to the func_door, activates the func_door, then parents it to a second func_door and kills the first func_door. I cant place portals once the func_door has activated, but I can do it just fine before then.
Is there a way to make it work or is it an impossible thing to do
(func_door is removed because I thought the nodraw brush might have been in the way)
Hi, I have a group of panels that -when a button is pressed- parents the panels to the func_door, activates the func_door, then parents it to a second func_door and kills the first func_door. I cant place portals once the func_door has activated, but I can do it just fine before then.
Is there a way to make it work or is it an impossible thing to do
(func_door is removed because I thought the nodraw brush might have been in the way)
Quote from torquestomp on May 21, 2011, 7:18 pmIt must be something with your map. I just tried doing that in the editor and it worked fine for me.
Maybe you're using the wrong triggers? Or you're accidentally killing the door too soon? Upload your map so we can see.Also, you say you removed your func_door: Is that the same one you're parenting the panels too? I'm sure that could be a problem.
My triggers:
button1: OnPressed -> panels -> SetParent -> door1
button1: OnPressed -> door1 -> Open (Delay 0.01)
door1: OnFullyOpen -> panels -> SetParent -> door2
door1: OnFullyOpen -> door1 -> Kill (Delay 0.01)
button2: OnPressed -> door2 -> Open
It must be something with your map. I just tried doing that in the editor and it worked fine for me.
Maybe you're using the wrong triggers? Or you're accidentally killing the door too soon? Upload your map so we can see.
Also, you say you removed your func_door: Is that the same one you're parenting the panels too? I'm sure that could be a problem.
My triggers:
button1: OnPressed -> panels -> SetParent -> door1
button1: OnPressed -> door1 -> Open (Delay 0.01)
door1: OnFullyOpen -> panels -> SetParent -> door2
door1: OnFullyOpen -> door1 -> Kill (Delay 0.01)
button2: OnPressed -> door2 -> Open
Quote from commando66 on May 22, 2011, 8:15 amheres is the vmf http://www.mediafire.com/?3p84r0ep92jq8us
bsp http://www.mediafire.com/?jjt9m5i0175zineIf it makes a difference its a vertical door
heres is the vmf http://www.mediafire.com/?3p84r0ep92jq8us
bsp http://www.mediafire.com/?jjt9m5i0175zine
If it makes a difference its a vertical door
Quote from torquestomp on May 22, 2011, 1:05 pmI think the problem is that after you activate the func_door, the engine forgets that the tiles are all adjacent and on a level surface, and only considers the individual 64x64 surfaces you have there for placing portals (which is too small for placing one).
Simple solution is to bind all the func_brush's together as one func_brush, and bind that to just one of the arms. That fixes it for me.
Alternatively, if you're feeling ambitious, and you want to turn all the arms into panel-arm models that operate slightly out of sync (as it seems to be your intent):
- Set each tile to start Disabled
- For each of the 3 'elevator' positions, create a new func_brush that is equal to the unity of all the tiles. Set the top position (initial) to be Enabled and the others Disabled.
- Program the buttons to:
-- When the elevator starts, Disable all 3 key func_brushes and Enable all of the tiles
-- When all of the tiles have stopped, Disale all of them and Enable the appropriate elevator func_brush. You can do this through simple timing/use the delay parameter, or you can set up logic relays for each arm and use an AND-gate to determine when they have all stopped animating. Keep in mind you will have to set up 3 AND-gates, each one wired up to the buttons appropriately.
I think the problem is that after you activate the func_door, the engine forgets that the tiles are all adjacent and on a level surface, and only considers the individual 64x64 surfaces you have there for placing portals (which is too small for placing one).
Simple solution is to bind all the func_brush's together as one func_brush, and bind that to just one of the arms. That fixes it for me.
Alternatively, if you're feeling ambitious, and you want to turn all the arms into panel-arm models that operate slightly out of sync (as it seems to be your intent):
- Set each tile to start Disabled
- For each of the 3 'elevator' positions, create a new func_brush that is equal to the unity of all the tiles. Set the top position (initial) to be Enabled and the others Disabled.
- Program the buttons to:
-- When the elevator starts, Disable all 3 key func_brushes and Enable all of the tiles
-- When all of the tiles have stopped, Disale all of them and Enable the appropriate elevator func_brush. You can do this through simple timing/use the delay parameter, or you can set up logic relays for each arm and use an AND-gate to determine when they have all stopped animating. Keep in mind you will have to set up 3 AND-gates, each one wired up to the buttons appropriately.
Quote from commando66 on May 22, 2011, 2:46 pmthanks for help, much appreciated. Il try that solution, but wont do anything more complicated yet untill I can get the 2 puzzles working and tested
thanks for help, much appreciated. Il try that solution, but wont do anything more complicated yet untill I can get the 2 puzzles working and tested ![]()
