samp.directory
← Scripts y librerías

Southclaws/OnPlayerSlowUpdate

Like OnPlayerUpdate... but slower - every 100ms.

Librería★ 3actualizado mar 2018Sin licenciaPAWNsampctlArchivado
Abrir en GitHub

El autor archivó este repositorio, así que ya no se mantiene.

Este repositorio no tiene archivo de licencia. Se puede leer, pero eso por sí solo no da permiso para reutilizarlo.

Instalar con sampctl

sampctl package install Southclaws/OnPlayerSlowUpdate

Ejecútalo en la carpeta de tu proyecto. sampctl descarga el paquete y sus dependencias.

Depende de 2 paquetes

Usado por 1 paquete

README.md

OnPlayerSlowUpdate

This library provides the event OnPlayerSlowUpdate which is like OnPlayerUpdate except it only fires every 100ms instead of every ~20ms. This allows multiple packages using tickers to align to a more central point of truth for sync etc.

It's simply a y_timers ptask under the hood, and you are encouraged to use these more often than a monolithic timer but sometimes it's necessary to call events in some libraries in sequence in the same callback chain. This library is for those situations where OnPlayerUpdate is too fast and unpredictable (the time between calls varies a lot depending on many factors).

Throughout Scavenge and Survive, there were many modules that ran on a 100ms timer, a lot of these modules queried each other for data. At one point I started to add events to each module so it then consisted of a ton of timers calling a ton of further events and it became ridiculous. This was one case that the architecture fit better around a central "event loop" kind of mechanism that consisted of a single callback that was fired every 100ms and allowed each module to communicate without unnecessary events and slightly out of sync data.

This is mainly just a fix for a problem I introduced myself, eventually, this will most likely disappear in favour of a better architecture.

Installation

Simply install to your project:

sampctl package install Southclaws/OnPlayerSlowUpdate

Include in your code and begin using the library:

#include <OnPlayerSlowUpdate>

Usage

Simply hook OnPlayerSlowUpdate and shove your code in it:

hook OnPlayerSlowUpdate(playerid) {
    doStuff();
}

Return values have no effect.

pawn-package

Esta página se genera con lo que GitHub publica sobre el repositorio. samp.directory no aloja el código. Informar de un problema con esta ficha