L L4D2node

CBaseEntity::DrawBBoxOverlay

0x00604ad0 · 325 bytes · __thiscall

_ZN11CBaseEntity15DrawBBoxOverlayEf

Decompiled

undefined (2 params)

/* CBaseEntity::DrawBBoxOverlay(float) */

void __thiscall CBaseEntity::DrawBBoxOverlay(CBaseEntity *this,float param_1)

{
  float local_48;
  float local_44;
  float local_40;
  float local_3c;
  float local_38;
  float local_34;
  float local_30;
  float local_2c;
  float local_28;
  float local_24;
  float local_20;
  float local_1c;
  float local_18;
  float local_14;
  float local_10;
  
  if (*(int *)(this + 0x30) != 0) {
    NDebugOverlay::EntityBounds(this,0xff,100,0,0,param_1);
    if (((byte)this[0x1b4] & 0x80) != 0) {
      (**(code **)(*(int *)(this + 0x194) + 0xc))(this + 0x194,&local_48,&local_3c);
      local_2c = (local_44 + local_38) * 0.5;
      local_28 = (local_40 + local_34) * 0.5;
      local_30 = (local_48 + local_3c) * 0.5;
      local_20 = local_38 - local_2c;
      local_1c = local_34 - local_28;
      local_24 = local_3c - local_30;
      local_14 = -local_20;
      local_18 = -local_24;
      local_10 = -local_1c;
      NDebugOverlay::Box((Vector *)&local_30,(Vector *)&local_18,(Vector *)&local_24,0,0xff,0xff,0,
                         param_1);
      return;
    }
  }
  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.



        

        

          

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

Return-type handling cheatsheet (DHookReturn)