671
edits
(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> |
edits