API zombie
bs_zombies jest duży, ale inne zasoby potrzebują krótkiej listy. Wszystko jest na stronie API bs_zombies z plikiem i linią.
Czy ten ped to zombie?
Dział zatytułowany „Czy ten ped to zombie?”Klient:
if exports.bs_zombies:IsWalkerPed(ped) then local id = exports.bs_zombies:WalkerIdOf(ped) -- registry id, nil if not a walkerendlocal crawler = exports.bs_zombies:IsCrawlerPed(ped)IsWalkerPed/WalkerIdOf odpowiadają też ze statebaga bsZombie dla sieciowego peda, którego ten klient jeszcze nie przejął. Używaj ich, nie sprawdzaj modeli, model może być waniliowy.
Inne pomocniki klienta: Live() (tabela przejętych szwendaczy), Count(), HostedCount(), HasWalker(id), IsBeingAttacked(), HordeActive(), PlayerProtectedInVehicle().
Ranienie zombie z twojego kodu
Dział zatytułowany „Ranienie zombie z twojego kodu”Rejestr serwera jest właścicielem zdrowia. Obrażenia klienta zgłasza strzelec, ale dla czegoś, co ty posiadasz na serwerze (wieżyczka, pułapka), idź przez:
-- serverexports.bs_zombies:GadgetHit(src, walkerId, damage, x, y, range, weapon)Sprawdza, czy szwendacz jest w promieniu range od x, y. Używa tego wieżyczka bs_gadgets, zobacz bs_gadgets/server (klient znajduje cel, serwer sprawdza szybkostrzelność i amunicję, potem GadgetHit).
Przyciągnij szwendaczy do punktu:
-- serverexports.bs_zombies:EventNoise(x, y, z, loud)Gadżet wabik wywołuje to przy każdym pulsie.
Spawny ze zdarzeń
Dział zatytułowany „Spawny ze zdarzeń”Dla skryptowanych rzeczy (używają tego fale hord bs_events):
-- serverexports.bs_zombies:EventSpawn(x, y, 'walker', { tag = 'myres:wave1', hpScale = 1.0 })exports.bs_zombies:EventDrive('myres:wave1', x, y, z, seconds) -- push tagged walkers towards a pointlocal n = exports.bs_zombies:EventCount('myres:wave1')exports.bs_zombies:EventClear('myres:wave1', keepAsNormal)Oznaczeni szwendacze pomijają odrzucanie z dala, dopóki są oznaczeni. Nadal liczą się do limitów puli, nie da się zespawnować ponad Streaming.PoolGuard.maxNetworked. I dolny próg spawnu (100 m od każdego gracza) nadal obowiązuje.
Informacje o świecie
Dział zatytułowany „Informacje o świecie”-- serverexports.bs_zombies:SafeZones() -- zone listexports.bs_zombies:SafeZonesPadded()exports.bs_zombies:Total() -- registry countexports.bs_zombies:Heat(zoneId)exports.bs_zombies:Snapshot()Statebagi
Dział zatytułowany „Statebagi”| Bag | Na | |
|---|---|---|
bsZombie | ped | id rejestru. Jeśli jest, jest nasz |
zType, zGait, zCrawl, zFeed, zReach, zState, zMhp, zGround, zApp | ped | stan trybu sieciowego |
bsZombieDead | ped | sieciowe zwłoki |
Nigdy sam nie usuwaj sieciowego szwendacza. Serwer śledzi nieoczekiwane usunięcia, tworzy szwendacza ponownie, jeśli gracz jest blisko, i oflaguje właściciela w bs_guard (zombie_entity_deleted). Jeśli mają zniknąć, użyj tagu zdarzenia i EventClear albo zapytaj rejestr.
Sprzątanie populacji w bs_world już pomija wszystko z bsZombie. Jeśli twój zasób też czyści pedy, najpierw sprawdź IsWalkerPed.
GlobalState.bsZombieMode to 'networked' albo 'legacy'. Większość eksportów działa tak samo w obu.
bs19.org · Privacy · Terms · Cookie settings
Cookies and outside content
The site only needs two essential cookies to keep you logged in and protect forms. Videos and streams from YouTube and Twitch load from their servers, which can set their own cookies, so they stay off until you say yes. Nothing is pre-ticked and you can change your mind any time with "Cookie settings" at the bottom of every page. Details.
Questions about the server, the framework or the site? A real person reads this, usually within a day.