Merge remote-tracking branch 'origin/main'
This commit is contained in:
commit
4b95ba9d36
2 changed files with 70 additions and 18 deletions
22
.github/workflows/main.yml
vendored
22
.github/workflows/main.yml
vendored
|
|
@ -29,7 +29,7 @@ jobs:
|
|||
- name: Upload Linux artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: RayTracePlugin-linux
|
||||
name: RayTrace-linux
|
||||
path: build/addons
|
||||
|
||||
build-windows:
|
||||
|
|
@ -80,21 +80,21 @@ jobs:
|
|||
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
|
||||
cmake -S . -B build -A x64 -DCMAKE_BUILD_TYPE=Release ^
|
||||
-DHL2SDKCS2=%HL2SDKCS2% -DMMSOURCE_DEV=%MMSOURCE_DEV% -DCSGO_PROTO=%CSGO_PROTO%
|
||||
cmake --build build --config Release --target RayTracePlugin
|
||||
cmake --build build --config Release --target RayTrace
|
||||
|
||||
- name: Strip symbols (Windows)
|
||||
run: |
|
||||
llvm-strip build/Release/RayTracePlugin.dll
|
||||
llvm-strip build/Release/RayTrace.dll
|
||||
|
||||
- name: Copy addons structure
|
||||
run: |
|
||||
mkdir -p build/addons/RayTracePlugin/bin/win64
|
||||
copy build/Release/RayTracePlugin.dll build/addons/RayTracePlugin/bin/win64/
|
||||
mkdir -p build/addons/RayTrace/bin/win64
|
||||
copy build/Release/RayTrace.dll build/addons/RayTrace/bin/win64/
|
||||
|
||||
- name: Upload Windows artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: RayTracePlugin-wwindows
|
||||
name: RayTrace-wwindows
|
||||
path: build/addons
|
||||
|
||||
release:
|
||||
|
|
@ -108,26 +108,26 @@ jobs:
|
|||
- name: Download Linux artifact
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: RayTracePlugin-linux
|
||||
name: RayTrace-linux
|
||||
path: ./build/linux
|
||||
|
||||
- name: Download Windows artifact
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: RayTracePlugin-windows
|
||||
name: RayTrace-windows
|
||||
path: ./build/windows
|
||||
|
||||
- name: Archive packages
|
||||
run: |
|
||||
version="${GITHUB_REF#refs/tags/}"
|
||||
tar -czf RayTracePlugin-${version}-linux.tar.gz -C build/linux .
|
||||
tar -czf RayTracePlugin-${version}-windows.tar.gz -C build/windows .
|
||||
tar -czf RayTrace-${version}-linux.tar.gz -C build/linux .
|
||||
tar -czf RayTrace-${version}-windows.tar.gz -C build/windows .
|
||||
|
||||
- name: Upload release archive
|
||||
uses: svenstaro/upload-release-action@v2
|
||||
with:
|
||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
file: RayTracePlugin-*.tar.gz
|
||||
file: RayTrace-*.tar.gz
|
||||
tag: ${{ github.ref }}
|
||||
file_glob: true
|
||||
release_name: "${{ github.ref_name }} - Download"
|
||||
|
|
|
|||
66
README.md
66
README.md
|
|
@ -197,20 +197,43 @@ auto result = g_RayTrace->TraceShapeEx(
|
|||
|
||||
``` csharp
|
||||
private Func<nint, nint, nint, nint, nint, nint>? _traceShape;
|
||||
private Func<nint, nint, nint, nint, nint, nint>? _traceEndShape;
|
||||
private Func<nint, nint, nint, nint, nint, nint>? _traceShapeEx;
|
||||
|
||||
private void Bind()
|
||||
{
|
||||
// index 1 - TraceShape
|
||||
_traceShape = VirtualFunction.Create<
|
||||
nint, // thisptr
|
||||
nint, // this
|
||||
nint, // Vector*
|
||||
nint, // QAngle*
|
||||
nint, // ignore entity
|
||||
nint, // TraceOptions*
|
||||
nint // return
|
||||
>(_handle, 0);
|
||||
nint
|
||||
>(_handle, 1);
|
||||
|
||||
// index 2 - TraceEndShape
|
||||
_traceEndShape = VirtualFunction.Create<
|
||||
nint, // this
|
||||
nint, // start Vector*
|
||||
nint, // end Vector*
|
||||
nint, // ignore entity
|
||||
nint, // TraceOptions*
|
||||
nint
|
||||
>(_handle, 2);
|
||||
|
||||
// index 3 - TraceShapeEx
|
||||
_traceShapeEx = VirtualFunction.Create<
|
||||
nint, // this
|
||||
nint, // start Vector*
|
||||
nint, // end Vector*
|
||||
nint, // CTraceFilter*
|
||||
nint, // Ray_t*
|
||||
nint
|
||||
>(_handle, 3);
|
||||
}
|
||||
|
||||
public bool TraceShape(
|
||||
public nint TraceShape(
|
||||
nint origin,
|
||||
nint angles,
|
||||
nint ignoreEntity,
|
||||
|
|
@ -221,9 +244,38 @@ public bool TraceShape(
|
|||
origin,
|
||||
angles,
|
||||
ignoreEntity,
|
||||
options,
|
||||
nint.Zero
|
||||
) != nint.Zero;
|
||||
options
|
||||
);
|
||||
}
|
||||
|
||||
public nint TraceEndShape(
|
||||
nint start,
|
||||
nint end,
|
||||
nint ignoreEntity,
|
||||
nint options)
|
||||
{
|
||||
return _traceEndShape!(
|
||||
_handle,
|
||||
start,
|
||||
end,
|
||||
ignoreEntity,
|
||||
options
|
||||
);
|
||||
}
|
||||
|
||||
public nint TraceShapeEx(
|
||||
nint start,
|
||||
nint end,
|
||||
nint filter,
|
||||
nint ray)
|
||||
{
|
||||
return _traceShapeEx!(
|
||||
_handle,
|
||||
start,
|
||||
end,
|
||||
filter,
|
||||
ray
|
||||
);
|
||||
}
|
||||
```
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue