$ ABD Doları
  • $ ABD Doları
  • € AVRO
  • £ GBP
  • $ Avustralya Doları
  • R$ BRL
  • İsviçre Frangı İsviçre Frangı
  • ¥ Japon Yeni
FIveM'de Polis tarafından kelepçelenen karakter

FiveM'te Kelepçeliyken Hareket Etmeye İzin Ver

Kılavuz: Kelepçeliyken Hareket Etme İzni (FiveM) FiveM ile rol yapma sunucularında kelepçeler, gerçekçilik ve gerilim katar. Birçok oyuncu, varsayılan dondurma davranışının çok kısıtlayıcı olabileceğini ve deneyimi yapay hale getirdiğini keşfeder. Bu kılavuz, oyuncuların kelepçeliyken tüm popüler çerçevelerde—QBCore, ESX ve vRP—hareket etmelerine nasıl izin vereceğinizi, aynı zamanda ateş etme veya araç kullanma gibi en belirgin eylemleri engellemeyi gösterir. —

Kelepçeleme Akışını Anlama

Bir oyuncu kelepçelendiğinde, sunucu genellikle birkaç istemci tarafı ayarını değiştirir: Kelepçe animasyonu oynatılır (örneğin, `’mp_arresting’, ‘idle’`). Kelepçe kontrolleri etkinleştirilir (`SetEnableHandcuffs`). Varlık genellikle oyuncuyu yerine kilitlemek için dondurulur. Harekete izin vermek için varlığın donmasını kaldırmanız gerekir önce diğer tüm kısıtlayıcı kontrolleri aktif tutarak. Zorluk, her çerçevedeki tam satırları bulmak ve mevcut mantığınızı bozmadan ayarlamaktır. —

1. Kelepçe Kodunu Bulun

Polis işi veya yardımcı betiklerde kelepçelemeyi tetikleyen işareti arayın. Normalde şuna benzer: “`lua TaskPlayAnim(playerPed, ‘mp_arresting’, ‘idle’, 8.0, -8, -1, 49, 0, 0, 0, 0) SetEnableHandcuffs(playerPed, true) FreezeEntityPosition(playerPed, true) “`

2. Hareketi Etkinleştirin

Dondurma çağrısını değiştirin: “`lua FreezeEntityPosition(playerPed, false) — Serbest yürümeye izin verir “` Güncellenmiş kod parçanız şöyle olur: “`lua TaskPlayAnim(playerPed, ‘mp_arresting’, ‘idle’, 8.0, -8, -1, 49, 0, 0, 0, 0) SetEnableHandcuffs(playerPed, true) FreezeEntityPosition(playerPed, false) “`

3. Kontrolleri Kısıtlı Tutun

Potansiyel olarak sorunlu eylemleri devre dışı bırakan sürekli bir iş parçacığı oluşturun: “`lua Citizen.CreateThread(function() while true do Citizen.Wait(10) if IsHandcuffed then DisableControlAction(0, 24, true) — Saldırı DisableControlAction(0, 25, true) — Nişan Al DisableControlAction(0, 142, true) — YakınDövüşSaldırısıAlternatifi DisableControlAction(0, 75, true) — Araçtan Ayrıl DisableControlAction(0, 92, true) — Araçta Ateş Et end end end) “` `IsHandcuffed` ifadesini, belirli betiğiniz için kelepçeleme durumunu gösteren değişkenle değiştirin. —

1. Ana Kelepçe Bölümünü Bulun

`esx_policejob\/client\/main.lua` dosyasını bulun ve aşağıdaki kodu bulun: “`lua TaskPlayAnim(playerPed, ‘mp_arresting’, ‘idle’, 8.0, -8, -1, 49, 0, 0, 0, 0) SetEnableHandcuffs(playerPed, true) SetPedCanPlayGestureAnims(playerPed, false) FreezeEntityPosition(playerPed, true) “`

2. Donmayı Kaldırın

`FreezeEntityPosition(playerPed, true)` ifadesini `false` olarak değiştirin, böylece yürüme mümkün olur.

3. Tuş Kontrollerini Devre Dışı Bırakın

Silah ve araç kontrollerini uzak tutmak için benzer bir iş parçacığı uygulayın: “`lua Citizen.CreateThread(function() while true do Citizen.Wait(10) if IsHandcuffed then DisableControlAction(0, 142, true) — YakınDövüşSaldırısıAlternatifi DisableControlAction(0, 30, true) — SağaSolaHareket DisableControlAction(0, 31, true) — YukarıAşağıHareket DisableControlAction(0, 24, true) — Ateş Et DisableControlAction(0, 92, true) — Araçta Ateş Et DisableControlAction(0, 75, true) — Araçtan Ayrıl end end end) “` `IsHandcuffed` ifadesini ESX kelepçe bayrağınıza bağladığınızdan emin olun. —

1. Kelepçe Bildirimini Bulun

Temel mantık genellikle `vrp\/modules\/police.lua` veya özel bir kaynakta bulunur. Şunu arayın: “`lua vRPclient.playAnim(player, {true, {{mp_arresting, idle}}, true}) vRPclient.setHandcuffed(player, true) vRPclient.setFreeze(player, true) “`

2. Hareket İçin Donmayı Kaldırın

Dondurma satırını değiştirin: “`lua vRPclient.setFreeze(player, false) “`

3. Belirli Eylemleri Kilitleyin

İstenmeyen kontrolleri sürekli olarak devre dışı bırakmak için bir istemci betiği ekleyin veya değiştirin: “`lua Citizen.CreateThread(function() while true do Citizen.Wait(10) if IsHandcuffed then DisableControlAction(0, 24, true) — Saldırı DisableControlAction(0, 25, true) — Nişan Al DisableControlAction(0, 142, true) — YakınDövüşSaldırısıAlternatifi DisableControlAction(0, 75, true) — Araçtan Ayrıl DisableControlAction(0, 92, true) — Araçta Ateş Et DisableControlAction(0, 30, true) — Sola\/Sağa Hareket DisableControlAction(0, 31, true) — Yukarı\/Aşağı Hareket end end end) “`

4. Kelepçe Bayrağını Senkronize Edin

Küresel bir değişken tanımlayın ve bir sunucu tarafı olayını dinleyin: “`lua local IsHandcuffed = false RegisterNetEvent(‘vrp:handcuff’) AddEventHandler(‘vrp:handcuff’, function(status) IsHandcuffed = status end) “` Bir oyuncu kelepçelendiğinde veya serbest bırakıldığında bu olayı tetikleyin. —

Son Değerlendirmeler

Kapsamlı bir şekilde test edin değişiklikleri canlıya göndermeden önce sunucunuzun bir kopyasında. `DisableControlAction` listesini rol yapma kurallarınıza uyacak şekilde ayarlayın—bazı sunucular belirli hareketlere veya değişikliklere izin vermek isteyebilir. Değişkenlerinizi her zaman net ve tutarlı tutun; `IsHandcuffed` gibi yer tutucular gerçek betik bayraklarına bağlanmalıdır. — Sonuç – Nihai Kelepçe Hareketlilik Planınız Bu adımları izleyerek Kılavuz: Kelepçeliyken Hareket Etme İzni (FiveM), oyuncuların kısıtlanmış hissederken dolaşmasına olanak tanıyan gerçekçi kelepçe mekanikleri ekleyebilirsiniz. Bu yaklaşım, QBCore, ESX ve vRP sunucuları için ayrıntılı oynanışı korur, rol‑yapma karşılaşmalarını herkes için daha akıcı ve ilgi çekici hale getirir.

İlgili FiveMX yolları

Bir yanıt yazın