HeroHunt AppYeni

HeroHunt App: Export ve Event'ler

Yönetici komutları, HeroHunt App'in dinlediği oyuncu yükleme event'leri, framework köprüleri, lb-phone entegrasyonu ve verilerin nasıl okunacağı.

v1.0.0Escrow korumalıQBox · QBCore · ESX · Standalone

v1.0.0'da export yok

hype-herohunt-app henüz kendine ait bir export kaydetmiyor. Oyuncular telefon uygulamasını, yetkililer aşağıdaki komutları kullanır; diğer kaynaklar ise veritabanı tablolarını okuyabilir.

AdTürTarafAmaç
/herospawnKomutSunucuTest için yöneticinin yanında hero çıkarır
/heroclearKomutSunucuTüm aktif spawnları kaldırır
hype-herohunt-app:server:player-loadedEventSunucuOyuncuyu koleksiyonuna bağlar
hype-herohunt-app:server:player-unloadedEventSunucuOyuncunun önbellekteki verilerini bırakır

Komutlar

İki komut da group.admin ACE grubuyla sınırlı ox_lib komutlarıdır.

/herospawn

Yöneticinin 15 ile 60 metre çevresinde, yöneticinin yüksekliğinde hero çıkarır. Bir spawn turunu beklemeden yakalamayı, nadirlikleri ve görevleri test etmek için kullan.

/herospawn [hero] [count]
/herospawn hero_049 1
/herospawn random 10

Seçenek

Tür

Bu spawnlar zemin kontrolünü ve spawn kurallarını atlar, ama bunun dışında normal spawnlardır: her oyuncu onları görür ve Spawn.DespawnAfterSeconds sonra süresi dolar. Komut sadece oyun içinde çalışır, sunucu konsolundan çalışmaz.

/heroclear

Tüm aktif spawnları dünyadan kaldırır ve veritabanında expired olarak işaretler. Hem oyun içinde hem sunucu konsolunda çalışır.

/heroclear

Event'ler

Framework köprüleri bu event'leri senin için tetikler. Uygulamadan gelen her istek de oyuncuyu kendiliğinden bağlar; bu yüzden multicharacter kaynağın ikisini de tetiklemese bile uygulama çalışmaya devam eder.

hype-herohunt-app:server:player-loaded

Oyuncuyu koleksiyonuna bağlar: gerekirse hero_player_data satırı oluşturulur ve keşfedilen herolar yüklenir. Köprüler bunu QBCore:Server:OnPlayerLoaded (QBox ve QBCore), esx:playerLoaded (ESX) ve playerJoining (standalone) üzerinden tetikler. Multicharacter kaynağın karakterleri bu event'ler olmadan yüklüyorsa kendin tetikle.

server.lua
TriggerEvent('hype-herohunt-app:server:player-loaded', source)

Seçenek

Tür

hype-herohunt-app:server:player-unloaded

Tersi: oyuncunun önbellekteki verilerini bırakır ve harita akışını durdurur. Köprüler bunu QBCore:Server:OnPlayerUnload ve esx:playerLogout üzerinden tetikler. Sunucudan çıkan oyuncular kendiliğinden işlenir.

server.lua
TriggerEvent('hype-herohunt-app:server:player-unloaded', source)

Sadece sunucu

Bunlar yerel sunucu event'leridir. İstemciden asla tetikleme.

Framework köprüleri

frameworks/ içindeki framework köprüleri escrow korumalı değildir. Script framework'ünden tek bir şeye ihtiyaç duyar: koleksiyonun sahibi olan karakter kimliği.

main.lua
FonksiyonDöndürdüğü
GetPlayerIdentifier(playerId)QBox ve QBCore'da citizenid, ESX'te identifier, standalone'da Rockstar lisansı. Karakter yüklü değilken nil

frameworks/main.lua, config'teki Framework ayarına göre köprüyü seçer. Her köprü ayrıca framework'ünün yükleme ve çıkış event'lerini yukarıdaki event'lere aktarır. Ownership = "account" olduğunda (standalone'da her zaman) sahip için köprü kullanılmaz: koleksiyonlar acc:<lisans> anahtarına aittir.

lb-phone entegrasyonu

Uygulama lb-phone'un özel uygulama API'sini kullanır. lb-phone tarafında hiçbir ayar yapman gerekmez.

NeNasıl
Uygulama ve App Store kaydılb-phone başladıktan bir saniye sonra App ayarlarıyla AddCustomApp. lb-phone yeniden başlarsa tekrar eklenir
Kaldırmahype-herohunt-app durduğunda RemoveCustomApp
Haritalb-phone'un dahili GTA haritası; keşif dairesi ve hero işaretleri üstüne çizilir
TemaTelefon ayarlarındaki açık veya koyu temayı izler
Görev bildirimleriUygulama ekranda açık değilken bir görev tamamlanırsa uygulama adına SendNotification
Yol tarifiBir herodaki Yol tarifi butonu GPS işareti koyar

Dahili event'ler

hype-herohunt-app:client:spawns, hype-herohunt-app:client:event ve hype-herohunt-app:server:* callback'leri dahilidir. Sunucu her yakalamayı, dönüşümü ve ödül almayı kontrol eder; bu yüzden onları elle çağırmak işe yarar bir şey yapmaz.

Verileri okumak

Her tablo koleksiyon anahtarı olarak owner sütununu kullanır: Ownership = "character" ile karakter kimliği, "account" ile ve standalone'da acc:<lisans>. Tablo listesi için Veritabanı bölümüne bak.

Bir karakterin Candy bakiyesi ve toplamları
SELECT candy, candy_earned, total_captures, total_converted, tasks_completed
FROM hero_player_data
WHERE owner = 'ABC12345';
En iyi 10 koleksiyoncu
SELECT owner, COUNT(*) AS discovered
FROM hero_discoveries
GROUP BY owner
ORDER BY discovered DESC
LIMIT 10;

Bu sayfada