L L4D2node

FindEmptySpace

0x00643d40 · 199 bytes · __cdecl

_Z14FindEmptySpaceP11CBaseEntityjRK6VectorS3_S3_PS1_

Decompiled

undefined (6 params)

/* FindEmptySpace(CBaseEntity*, unsigned int, Vector const&, Vector const&, Vector const&, Vector*)
    */

bool FindEmptySpace(CBaseEntity *param_1,uint param_2,Vector *param_3,Vector *param_4,
                   Vector *param_5,Vector *param_6)

{
  int iVar1;
  Vector *in_stack_ffffffd8;
  
  iVar1 = FindPassableSpace(param_1,param_2,param_3,(float)param_6,in_stack_ffffffd8);
  if ((((iVar1 == 0) &&
       (iVar1 = FindPassableSpace(param_1,param_2,param_4,(float)param_6,in_stack_ffffffd8),
       iVar1 == 0)) &&
      (iVar1 = FindPassableSpace(param_1,param_2,param_4,(float)param_6,in_stack_ffffffd8),
      iVar1 == 0)) &&
     ((iVar1 = FindPassableSpace(param_1,param_2,param_5,(float)param_6,in_stack_ffffffd8),
      iVar1 == 0 &&
      (iVar1 = FindPassableSpace(param_1,param_2,param_5,(float)param_6,in_stack_ffffffd8),
      iVar1 == 0)))) {
    iVar1 = FindPassableSpace(param_1,param_2,param_3,(float)param_6,in_stack_ffffffd8);
    return iVar1 != 0;
  }
  return true;
}

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)