MCPcopy Create free account
hub / github.com/alliedmodders/sourcemod / GetEHandle

Method GetEHandle

extensions/structs/StructHandle.cpp:479–516  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

477}
478
479bool StructHandle::GetEHandle( const char *member, CBaseHandle **handle )
480{
481 int offset;
482
483 if (!info->getOffset(member, &offset))
484 {
485 return false;
486 }
487
488 MemberType type;
489
490 if (!info->getType(member, &type))
491 {
492 return false;
493 }
494
495 switch (type)
496 {
497 case Member_EHandle:
498 {
499 *handle = (CBaseHandle *)((unsigned char *)data + offset);
500 break;
501 }
502
503 case Member_EHandlePointer:
504 {
505 *handle = *(CBaseHandle **)((unsigned char *)data + offset);
506 break;
507 }
508
509 default:
510 {
511 return false;
512 }
513 }
514
515 return true;
516}
517
518bool StructHandle::SetEHandle( const char *member, CBaseHandle *handle )
519{

Callers 2

GetStructEntFunction · 0.80
SetStructEntFunction · 0.80

Calls 2

getOffsetMethod · 0.80
getTypeMethod · 0.80

Tested by

no test coverage detected