The solution you pointed, just using light components position in specific radius and preform Line Trace to detect if player is in shadow. It’s 100% possible in blueprint as math and line trace is available in blueprints.
If you have C#, you should able to to atleast read C++ code, just treat “->” as “.” in C# and FVector::Dist is static function call from FVector (in blueprint those don’t have “target” input). Majority of blueprint nodes are function nodes binded from C++, so they are exact same functions and have usally same names, UHT when C++ code is compiled takes function names and and add spaces before uppercaped letters or else they have custom names defined in UFUNCTION() (which is pretty common in math nodes), so i belive with just C# you should able to recretate this in blueprint one way or another