Първият ви плъгин за CounterStrikeSharp: Hello World
Не е нужно да сте опитен програмист, за да напишете плъгин за CounterStrikeSharp. Работещият плъгин е един малък C# клас и един проектен файл. Ръководството ви води от нулата до Hello World в конзолата на сървъра, а всичко, което научите тук, важи и за по-големи плъгини.
Инсталирайте .NET 8 SDK
Плъгините за CounterStrikeSharp се пишат на C# върху .NET 8. Инсталирайте .NET 8 SDK на компютъра си, после отворете терминал и проверете дали работи. Командата показва инсталираната версия, която трябва да започва с 8.
dotnet --version
Създайте проекта
Създайте празна папка, отворете терминал в нея и генерирайте библиотека от класове. Името, което изберете тук, става име на DLL файла на плъгина, затова изберете нещо ясно и без интервали.
dotnet new classlib --name HelloWorldPlugin
Редактирайте проектния файл
Отворете генерирания .csproj файл и заменете съдържанието му с показаното по-долу. Важното е препратката към CounterStrikeSharp.API, която дава достъп до играта. Изтрийте генерирания файл Class1.cs, няма да ви трябва.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="CounterStrikeSharp.API" Version="1.0.*" />
</ItemGroup>
</Project>
Напишете плъгина
Създайте HelloWorldPlugin.cs. Всеки плъгин е клас, който наследява BasePlugin и си задава име и версия. Методът Load се изпълнява веднъж, когато сървърът зарежда плъгина, и оттам започва вашият код.
using CounterStrikeSharp.API.Core;
namespace HelloWorldPlugin;
public class HelloWorldPlugin : BasePlugin
{
public override string ModuleName => "Hello World Plugin";
public override string ModuleVersion => "1.0.0";
public override void Load(bool hotReload) { Console.WriteLine("Hello World!"); }}
Компилирайте го
Можете да компилирате локално с dotnet build -c Release или да прескочите настройката: архивирайте папката (проектния файл и .cs файла) в zip и я качете в нашия компилатор. Той възстановява пакетите, компилира плъгина и ви връща готов за употреба zip.
Копирайте го на сървъра
От zip архива копирайте само папката на плъгина в addons/counterstrikesharp/plugins на сървъра. Папката и DLL файлът трябва да се казват еднакво. Папката dependencies от нашия zip вече се предоставя от CounterStrikeSharp, затова я оставете.
Проверете конзолата
Рестартирайте сървъра или заредете плъгина, докато работи. В конзолата на сървъра трябва да видите съобщението си. Ако не, изпълнете css_plugins list, за да разберете дали плъгинът е намерен, и прочетете нашето ръководство за плъгини, които не се зареждат.
Hello World!
CounterStrikeSharp.API Loaded Successfully.
Променете и презаредете
Когато плъгинът работи, променете съобщението, компилирайте отново и заменете DLL файла. CounterStrikeSharp поддържа hot reload, така че на тестов сървър често можете да изпробвате нова версия без рестарт. Следващите стъпки са командите и игровите събития, описани в другите ни ръководства.
Беше ли полезно това ръководство?
Barlap за общността.