L L4D2node

_GLOBAL__sub_I_g_CurrentViewOrigin

0x00097470 · 415 bytes · unknown

Decompiled

undefined (0 params)

void _GLOBAL__sub_I_g_CurrentViewOrigin(void)

{
  undefined4 uVar1;
  undefined4 uVar2;
  undefined4 uVar3;
  undefined4 *puVar4;
  undefined4 *puVar5;
  undefined4 *puVar6;
  undefined4 *puVar7;
  undefined4 *puVar8;
  
  uVar3 = DAT_004024d0;
  uVar2 = DAT_004024cc;
  uVar1 = vec3_origin;
  UNSPECIFIED_LOGGING_COLOR._0_1_ = 0;
  UNSPECIFIED_LOGGING_COLOR._1_1_ = 0;
  UNSPECIFIED_LOGGING_COLOR._2_1_ = 0;
  UNSPECIFIED_LOGGING_COLOR._3_1_ = 0;
  vec2_origin._0_4_ = 0;
  vec2_origin._4_4_ = 0;
  vec2_invalid._0_4_ = 0x7f7fffff;
  vec2_invalid._4_4_ = 0x7f7fffff;
  vec4_origin._0_4_ = 0;
  vec4_origin._4_4_ = 0;
  vec4_origin._8_4_ = 0;
  vec4_origin._12_4_ = 0;
  vec4_invalid._0_4_ = 0x7f7fffff;
  vec4_invalid._4_4_ = 0x7f7fffff;
  vec4_invalid._8_4_ = 0x7f7fffff;
  vec4_invalid._12_4_ = 0x7f7fffff;
  g_CurrentViewOrigin._0_4_ = 0;
  g_CurrentViewOrigin._4_4_ = 0;
  g_CurrentViewOrigin._8_4_ = 0;
  g_CurrentViewForward._0_4_ = 0x3f800000;
  g_CurrentViewForward._4_4_ = 0;
  g_CurrentViewForward._8_4_ = 0;
  g_CurrentViewRight._0_4_ = 0;
  g_CurrentViewRight._4_4_ = 0xbf800000;
  g_CurrentViewRight._8_4_ = 0;
  g_CurrentViewUp._0_4_ = 0;
  g_CurrentViewUp._4_4_ = 0;
  g_CurrentViewUp._8_4_ = 0x3f800000;
  puVar4 = &g_MainViewOrigin;
  puVar6 = &g_MainViewRight;
  puVar7 = &g_MainViewUp;
  puVar8 = &g_MainViewForward;
  do {
    *puVar4 = uVar1;
    puVar5 = puVar4 + 3;
    puVar4[1] = uVar2;
    puVar4[2] = uVar3;
    *puVar8 = 0x3f800000;
    puVar8[1] = 0;
    puVar8[2] = 0;
    *puVar6 = 0;
    puVar6[1] = 0xbf800000;
    puVar6[2] = 0;
    *puVar7 = 0;
    puVar7[1] = 0;
    puVar7[2] = 0x3f800000;
    puVar4 = puVar5;
    puVar6 = puVar6 + 3;
    puVar7 = puVar7 + 3;
    puVar8 = puVar8 + 3;
  } while (puVar5 != (undefined4 *)g_CurrentViewUp);
  return;
}

SourceMod gamedata

paste into addons/sourcemod/gamedata/<your_plugin>.txt
used as the SourceMod key — change to fit your plugin's convention
SourceMod library name (server / engine / matchmaking)

Just a Signatures{} block, ready to drop into a gamedata file. Wire it up in your plugin however you like - SDKCall, DHooks, raw memory ops, or anything else.



        
        

⚠ This function has no mangled symbol — it may be internal/static. The Linux gamedata field uses @-prefix symbol resolution which requires an exported mangled name. You'll need a Linux byte signature for this one (extract via extract_signature.java).


          

Type inference is best-effort from the C signature - sanity-check the DHooks types before shipping.

Return-type handling cheatsheet (DHookReturn)