samp.directory
← Betikler ve kütüphaneler

AGraber/pawn-plus-hooks

Macro helpers for public and native function hooking

Kütüphane★ 9Şub 2022 güncellendiLisans yokPawnsampctlArşivlendi
GitHub’da aç

Yazar bu depoyu arşivledi, bu yüzden artık bakımı yapılmıyor.

Bu deponun lisans dosyası yok. Okumak için herkese açık, ama bu tek başına yeniden kullanma izni vermez.

sampctl ile kur

sampctl package install AGraber/pawn-plus-hooks

Bunu proje klasöründe çalıştır. sampctl paketi ve bağımlı olduklarını indirir.

2 pakete bağımlı

README.md

pawn-plus-hooks

Installation

Simply install to your project:

sampctl package install AGraber/pawn-plus-commands

Include in your code and begin using the library:

#include <PawnPlusCMD>

Usage

If you're familiar with y_hooks then the syntax will be familiar:

#include <pp-hooks>
hook OnPlayerEnterDynArea(playerid, areaid)
{
    new string[145];
    format(string, sizeof string, "You entered area id %d", areaid);
    SendClientMessage(playerid, -1, string);
}


#include <pp-hooks>
hook OnPlayerEnterDynArea(playerid, areaid)
{
    printf("playerid %d entered areaid %d", playerid, areaid);
}

hook native SetPlayerPos(playerid, Float:x, Float:y, Float:z)
{
    // Not recursive: calls next hook or the native
    return SetPlayerPos(playerid, x, y, z + 1.0);
}

hook ret OnPlayerUpdate(&ret, playerid)
{
    if(IsPlayerCheating(playerid))
    {
        // set return to 0 to desync
        ret = 0;
        // return non-zero to use that ret value
        return 1;
    }
}

You can change the default hook method (used by the hook and hook public macros) by defining PP_DEFAULT_PUBLIC_HOOK_METHOD to the desired method.

If the hook returns a non-zero value, the following hooks and the base callback won't be executed and that value (or the one at ret if it's a ret hook) will be returned.

Thanks

  • Y_Less: YSI macros used for reference
  • IllidanS4: PawnPlus

Bu sayfa GitHub’ın depo hakkında yayımladıklarından oluşturulur. samp.directory kodu barındırmaz. Bu ilanla ilgili bir sorun bildir