User Inputs and Outputs

From Valve Developer Community
Revision as of 16:31, 31 October 2007 by GetmoNrold (talk | contribs)
Jump to navigation Jump to search

honda parts virgin airlines adult dating site computer games what is carisoprodol leg braces home for sale pirate halloween costume family fued airline rates saturn dhea plastic pants 2007 nissan 350z my horoscope activex buy levitra chanel soccer cleats hawaii rentals verizon wireless store verizon phone service bmw car wholesale perfume movie barcode label buy soma decorating idea buy fioricet get paid to play game mitsubishi eclipse swiss replica watch adult video cam bose radio free boost ringtone toilet 2007 toyota fj cruiser cheap citizen watches allegra d single girls spyware removers disney florida video slot machine cigarettes online gas scooter chevrolet carpet cleaning companies stock market risperdal free game sciatica atlanta massage american airline ticket palace resorts spiderman costume background checks marketing and advertising companies cherokee watch winders pen scanners rogaine condom klm irritable bowel syndrome chatt sex cam lcd projector adult toys zen gardens alprazolam xanax about lorazepam work at home computer jobs hamilton apartment optimize computer fire starter tea tree oil urine drug test viagra pharmacy artificial wedding flowers used car price guide kaspersky key mp3 free music download denon nokia free ringtone buy diploma tarka motorola phones list of all airlines decorative switch plate webmail canadian single boats for sale edinburgh continental airlines reservations fire pits for sale ring back tones wedding invitation aloha airline shemale porn home alarm The FireUser1-4 inputs and OnUser1-4 outputs are available on every entity that can receive Inputs and Outputs. This set of controls are specially linked to work together. Although they are not used very commonly, User inputs and outputs can be very powerful and make certain tasks far easier to accomplish.

The FireUserN input simply causes the corresponding OnUserN output on the same entity to fire. These are useful for forwarding messages through an entity where the desired target is known to the forwarding entity, but not to the firing entity.

For example, say you have three trains moving along the same set of path_tracks. Each train has a glowing env_sprite parented to it, and on one path_track you want to turn off the sprite on whatever train has just passed. The problem is that the path_track doesn't know which train has just passed, so you can't connect the "OnPass" output to the right one. So, you solve this by connecting the path_track's "OnPass" output to the !activator (the train) FireUser1 input, and then connect each train's OnUser1 input to turn off their parented sprite.

In the past, you could hack around this kind of thing by putting a trigger_multiple for every train on the path_track, set them to only trigger when the matching train touches them, and use the "StartTouch" output to turn off the sprite. Unfortunately, that method doesn't scale to large numbers of trains (as seen in the Citadel section of Half-Life 2).