Talk:Overloaded: Difference between revisions

1,633 bytes added ,  03:31, 2 August 2021
respond
(Created page with "== Notes from decompilation == {{Code Reference|class=EnergyAmmoLoader.cs}} <pre>if (IsPowerLoadSensitive && E.Subject == ParentObject && E.BaseDamage != "0") { int num...")
 
(respond)
Line 29: Line 29:
I have no idea what number the event here is returning X_X if i learn what @for is here, I would be able to get everything.
I have no idea what number the event here is returning X_X if i learn what @for is here, I would be able to get everything.
[[User:Teamtoto|Teamtoto]] ([[User talk:Teamtoto|talk]]) 02:19, 2 August 2021 (UTC)
[[User:Teamtoto|Teamtoto]] ([[User talk:Teamtoto|talk]]) 02:19, 2 August 2021 (UTC)
:<li>The name of the variable you're decompiling as <code>@for</code> is just <code>charge</code>.  It's the amount of charge to use for heat/breakage calculations. <code>GetOverloadChargeEvent</code> allows that to be modified; it's unused at the moment and just passes back the actual amount of charge consumed.</li>
:<li><code>IsPowerLoadSensitive</code> is a field on <code>IActivePart</code> and only controls applicability of <code>ModOverloaded</code> to <code>IActivePart</code> inheritors; the actual control is <code>IsOverloadableEvent</code>, which <code>IActivePart</code> responds to in a fashion defined by <code>IsPowerLoadSensitive</code> but can also be responded to independently, and two parts do so, <code>Teleprojector</code> and <code>GeomagneticDisk</code>. (So the indication in the page that ganglionic teleprojectors can't be overloaded is incorrect, and it's not that <code>IsPowerLoadSensitive</code> is set to false for it, it's that that field doesn't even exist in <code>Teleprojector</code> because <code>Teleprojector</code> is not an <code>IActivePart</code>.)</li>
:<li>FWIW I don't think becoming tech scannable or EMPable is worth highlighting; it's not clear to me that there's a case where <code>ModOverloaded</code> could be applied where those weren't already the case.</li>
:<li>Also FWIW, the original line for that message is <code>Messaging.XDidY(Object, "overheat", terminalPunctuation: "!", SubjectPossessedBy: who, UseVisibilityOf: who);</code>.  What the decompiler is doing to it is pretty hideous. --[[User:Chaos|Chaos]] ([[User talk:Chaos|talk]]) 03:30, 2 August 2021 (UTC)</li>
671

edits