MySQL: Online
Load: Medium
Sandbox: Running

Primul tău plugin CounterStrikeSharp: Hello World

Nu trebuie să fii programator experimentat ca să scrii un plugin CounterStrikeSharp. Un plugin funcțional înseamnă o clasă C# mică și un fișier de proiect. Ghidul te duce de la zero până vezi Hello World în consola serverului, iar tot ce înveți aici se aplică oricărui plugin mai mare.

1

Instalează .NET 8 SDK

Pluginurile CounterStrikeSharp se scriu în C# pe .NET 8. Instalează .NET 8 SDK pe calculator, apoi deschide un terminal și verifică dacă merge. Comanda afișează versiunea instalată, care ar trebui să înceapă cu 8.

dotnet --version
2

Creează proiectul

Creează un folder gol, deschide un terminal în el și generează o bibliotecă de clase. Numele ales aici devine numele DLL-ului pluginului, deci alege ceva clar și fără spații.

dotnet new classlib --name HelloWorldPlugin
3

Editează fișierul de proiect

Deschide fișierul .csproj generat și înlocuiește-i conținutul cu cel de mai jos. Partea importantă este referința la CounterStrikeSharp.API, care îți dă acces la joc. Șterge fișierul Class1.cs generat, nu ai nevoie de el.

<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>
4

Scrie pluginul

Creează HelloWorldPlugin.cs. Orice plugin este o clasă care moștenește BasePlugin și are un nume și o versiune. Metoda Load rulează o singură dată, când serverul încarcă pluginul, și de acolo pornește codul tău.

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!");    }}
5

Compilează-l

Poți compila local cu dotnet build -c Release sau poți sări peste configurare: arhivează folderul (fișierul de proiect și fișierul .cs) și încarcă-l în compilatorul nostru. Acesta restaurează pachetele, construiește pluginul și îți dă un zip gata de folosit.

HelloWorldPlugin.zip
HelloWorldPlugin.csproj
HelloWorldPlugin.cs
Deschide compilatorul
6

Copiază-l pe server

Din zip, copiază doar folderul pluginului în addons/counterstrikesharp/plugins pe server. Folderul și DLL-ul trebuie să aibă același nume. Folderul dependencies din zip-ul nostru este deja oferit de CounterStrikeSharp, deci las-l deoparte.

plugins
HelloWorldPlugin
HelloWorldPlugin.dll
HelloWorldPlugin.deps.json
HelloWorldPlugin.pdb
7

Verifică în consolă

Repornește serverul sau încarcă pluginul cât timp rulează. În consola serverului ar trebui să vezi mesajul tău. Dacă nu, rulează css_plugins list ca să vezi dacă pluginul a fost găsit și citește ghidul nostru despre pluginurile care nu se încarcă.

Hello World!
CounterStrikeSharp.API Loaded Successfully.
8

Modifică și reîncarcă

Când pluginul merge, schimbă mesajul, compilează din nou și înlocuiește DLL-ul. CounterStrikeSharp suportă hot reload, deci pe un server de test poți încerca adesea o versiune nouă fără repornire. Următorii pași sunt comenzile și evenimentele de joc, acoperite în celelalte ghiduri ale noastre.

A fost util acest tutorial?

Pagină generată în 0.011 secunde
CounterStrikeSharp Web Compiler V1.0 - Realizat cu de RomaniaBarlap pentru comunitate.