Template talk:O: Difference between revisions
Jump to navigation
Jump to search
SirYodaJedi (talk | contribs) (→Empirically determining !activator and !caller: new section) |
|||
| Line 2: | Line 2: | ||
It's easy enough to guess oftentimes, but I was wondering if there was a more error-proof way of determining them (be it reading source code or setting up an I/O chain).<br/>— [[User:SirYodaJedi|SirYodaJedi]] ([[User_talk:SirYodaJedi|talk]]) 09:23, 24 April 2025 (PDT) | It's easy enough to guess oftentimes, but I was wondering if there was a more error-proof way of determining them (be it reading source code or setting up an I/O chain).<br/>— [[User:SirYodaJedi|SirYodaJedi]] ([[User_talk:SirYodaJedi|talk]]) 09:23, 24 April 2025 (PDT) | ||
:Reading the source code is mostly error proof by just checking what parameters is <code>.FireOutput</code> or <code>.Set</code> called with for example. Checking out activator and caller in IO can be done like this | |||
:Example with checking activator and caller of OnTakeDamage output of prop_physics. I aimed at it and used !picker to target it and addoutput to it first in this case. Then paused the IO. Shot the prop_physics and checked with dumpevent queue command. | |||
<dd><pre> | |||
] ent_fire !picker addoutput "OnTakeDamage whatever" | |||
] ent_pause | |||
Pausing entity I/O events | |||
] dumpeventqueue | |||
Dumping event queue. Current time is: 941.23 | |||
(940.83) Target: 'whatever', Input: 'Use', Parameter ''. Activator: 'Nescius', Caller 'prop_physics'. | |||
</pre></dd> | |||
:Or also in games with vscript can use something like <code>ent_fire !picker AddOutput "OnSomething !caller,RunScriptCode,printl(self)"</code> which will print the caller | |||
:--[[User:Nescius|Nescius]] ([[User talk:Nescius|talk]]) 09:55, 24 April 2025 (PDT) | |||
Revision as of 09:55, 24 April 2025
Empirically determining !activator and !caller
It's easy enough to guess oftentimes, but I was wondering if there was a more error-proof way of determining them (be it reading source code or setting up an I/O chain).
— SirYodaJedi (talk) 09:23, 24 April 2025 (PDT)
- Reading the source code is mostly error proof by just checking what parameters is
.FireOutputor.Setcalled with for example. Checking out activator and caller in IO can be done like this
- Example with checking activator and caller of OnTakeDamage output of prop_physics. I aimed at it and used !picker to target it and addoutput to it first in this case. Then paused the IO. Shot the prop_physics and checked with dumpevent queue command.
] ent_fire !picker addoutput "OnTakeDamage whatever" ] ent_pause Pausing entity I/O events ] dumpeventqueue Dumping event queue. Current time is: 941.23 (940.83) Target: 'whatever', Input: 'Use', Parameter ''. Activator: 'Nescius', Caller 'prop_physics'.