PDA

View Full Version : Tutor a noobie, will ya! (doorz and buttonz)


LazyPete
03-17-2003, 06:13 AM
OK, I've tried doing this according to several tutorials, but all I get is buggy bugs and more bugs, and then some more. I supect it's because all of those tutes are written for SP, although... I figure it's not that different.

The thing I'm trying to achieve is not that complex.
1) I want to make a button which appears to change the top texture when it's pressed.
2) I want that button to trigger two doors when used, basically. (Or at least appear to do so.)

Oh my God, it's that easy. Well, actually it's not, there are a bunch of other things involved but the appears-to-be-animated button is where I am seeing the "WTF-is-this?"-symptom.

P.S. If multiple doors are in a team, do you have to target them all or just one with a trigger_multiple or something?
Also, is there much difference between func_plat and func_door or can I freely use func_door as a basic elevator?

ioshee
03-17-2003, 10:09 AM
I have found that SP and MP are extremely different when it comes to the simple little things like this. I couldn’t get the func_usable to work right for the closetarget of a door in multi-player. You might have to be satisfied with just having one texture for your “button” (you don’t even get that cool “use” animation in MP like Kyle does in SP when he hits a button.)

I don’t think you have to give doors the key “team” as long as they are opened by a trigger_multiple. Just give all the doors the same targetname.
So to answer your question I have targeted two doors with one trigger_multiple and it worked fine (but I didn’t give the two doors a team name.)

Func_plat is easier to understand for me when it comes to getting the height right, but I know several people who only use func_doors for their elevators and lifts.

Now Leslie and Wedge can come correct any errors I made in my statements hehe. Just kidding guys.

wedge2211
03-17-2003, 03:51 PM
Well, you can use func_usables as in Richdiesal's tutorials, or you can use a func_button. There's this little trick you can do (every button in Mars) where you put a static brush with the "on" texture underneath a button with the "off" texture that only sticks out one grid unit from the "on" texture, that way when you push the button, it uncovers the "on" texture.

You can trigger the two doors, or trigger one of them nad make them into a team. It doesn't matter.

Func_doors for elevators? Can be done. I use plats because, well, I'm just conventional that way. They'll work a little differently, try experimenting.

LazyPete
03-18-2003, 06:38 AM
The trick with func_buttons... I'm afraid the sides of the buttons will be z-fighting. Maybe you won't notice it if you're just pressing the button on the run but I'm kind of a perfectionist...

You all say you can freely use func_doors as elevators. Nevertheless, let me axe you this, and don't take this personally in any way: aren't you full of crap? Just stand in the way of a door that wants to slide to the closed position again. You will block it and it will remain open. So, if you make a func_door, assign an angle of -1 (up), compile your map, jump on the elevator in hopes of getting a comfortable lift to the upper floor, won't it just twitch a little and remain on the first floor?

Anyway... can you trigger a func_plat like you trigger a func_door? I've tried but it doesn't seem to work. And it doesn't say anything about a "targetname" in the func_plat entity definition.

starunner
03-18-2003, 07:46 AM
I've never tried Wedge's button trick, but I believe you can place the brushes so you won't get Z-fighting. Make sure the button is 1 grid-unit smaller on each side, and give it enough "lip" that it when used, it moves right inside the larger brush with the "on" texture. Since the faces shouldn't me alligned this way I believe you won't get any Z-fighting.

Also, I can safely tell you that using a func_door as a lift does work. A door will only stop if it's obstructed by the player and another solid brush (eg, when a door tries to close downwards and both you and the floor get in the way). Simply standing on a door (with open space above your head) does not obstruct it.

wedge2211
03-18-2003, 11:08 AM
Originally posted by starunner
I've never tried Wedge's button trick, but I believe you can place the brushes so you won't get Z-fighting. Make sure the button is 1 grid-unit smaller on each side, and give it enough "lip" that it when used, it moves right inside the larger brush with the "on" texture. Since the faces shouldn't me alligned this way I believe you won't get any Z-fighting.
Yep. ;)

You can always hook the func_door to a trigger_multiple. If you do that, then the door ONLY moves when triggered, and will ALWAYS move when triggered. Player or no player in the way.

Targeting a func_plat works fine if you just use the CTRL+K method.

ioshee
03-18-2003, 01:42 PM
Originally posted by wedge2211
...You can always hook the func_door to a trigger_multiple. If you do that, then the door ONLY moves when triggered, and will ALWAYS move when triggered. Player or no player in the way.

Just confirming that. I have a door that opens with a trigger_multiple and if I stand on it open, it slams me before opening again, unlike the automatic touch field that gets generated with just the func_door. That field gets effectively removed if you target a trigger_multiple to the door.

LazyPete
03-19-2003, 04:52 AM
I see, I see... And I presume the CRUSHER flag of a func_door makes it so that even if the player gets between a brush and the moving door, he will be crushed ?

ioshee
03-19-2003, 10:55 AM
Originally posted by LazyPete
...And I presume the CRUSHER flag of a func_door makes it so that even if the player gets between a brush and the moving door, he will be crushed ?

I think so. If you give it a try let us know how it works:D

wedge2211
03-19-2003, 01:10 PM
A door without CRUSHER will close on the player, damage them if it has a damage flag, but pop back open again. A CRUSHER door will close ALL THE WAY on the player, either pushing them out of the way, or killing them.