{"id":6866,"date":"2024-02-05T09:20:01","date_gmt":"2024-02-05T08:20:01","guid":{"rendered":"https:\/\/esx-scripts.com\/how-to-make-people-walk-when-they-are-handcuffed-modding-tutorials\/"},"modified":"2026-07-22T20:59:33","modified_gmt":"2026-07-22T18:59:33","slug":"permitir-caminhada-algemada","status":"publish","type":"post","link":"https:\/\/fivemx.com\/pt\/permitir-caminhada-algemada\/","title":{"rendered":"Permitir Movimento Enquanto Algemado em FiveM"},"content":{"rendered":"<strong>Guia: Permitindo movimento enquanto algemado (FiveM)<\/strong> \n\nEm servidores de role\u2011play com FiveM, as algemas adicionam um toque de realismo e tens\u00e3o. Muitos jogadores descobrem que o comportamento de congelamento padr\u00e3o pode ser muito restritivo, tornando a experi\u00eancia artificial. Este guia mostra como permitir que os jogadores se movam algemados em todos os frameworks populares\u2014QBCore, ESX e vRP\u2014enquanto ainda impede as a\u00e7\u00f5es mais \u00f3bvias, como atirar ou dirigir. \n\n\u2014\n\n<h2>Compreendendo o fluxo de algemas <\/h2>\n\nQuando um jogador \u00e9 algemado, o servidor normalmente alterna algumas configura\u00e7\u00f5es do lado do cliente: \n<em> A anima\u00e7\u00e3o da algema \u00e9 reproduzida (por exemplo, `&#039;mp_arresting&#039;, &#039;idle&#039;`). \n<\/em> Os controles de algemas est\u00e3o habilitados (`SetEnableHandcuffs`). \n<em> A entidade geralmente \u00e9 congelada para travar o jogador no lugar. \n\nPara permitir o movimento, voc\u00ea precisa descongelar a entidade <strong>antes<\/strong> mantendo todos os outros controles restritivos ativos. O desafio \u00e9 localizar as linhas exatas em cada framework e ajust\u00e1-las sem quebrar sua l\u00f3gica existente. \n\n\u2014\n\n<h2>Framework QBCore (e QBOX) \u2013 Passo a passo <\/h2>\n\n<h3>1. Encontre o c\u00f3digo da algema <\/h3>\n\nPesquise nos scripts de trabalho policial ou utilit\u00e1rios a deixa que aciona a algemagem. Normalmente se parece com: \n\u201c`lua\nTaskPlayAnim(playerPed, \u2018mp_arresting\u2019, \u2018idle\u2019, 8.0, -8, -1, 49, 0, 0, 0, 0)\nSetEnableHandcuffs(playerPed, true)\nFreezeEntityPosition(playerPed, true)\n\u201c`\n\n<h3>2. Habilitar o movimento <\/h3>\nSubstitua a chamada de congelamento: \n\u201c`lua\nFreezeEntityPosition(playerPed, false) \u2014 Permite caminhar livremente\n\u201c`\n\nSeu trecho atualizado fica: \n\u201c`lua\nTaskPlayAnim(playerPed, \u2018mp_arresting\u2019, \u2018idle\u2019, 8.0, -8, -1, 49, 0, 0, 0, 0)\nSetEnableHandcuffs(playerPed, true)\nFreezeEntityPosition(playerPed, false)\n\u201c`\n\n<h3>3. Mantenha os controles restritos <\/h3>\nCrie uma thread cont\u00ednua que desabilita as a\u00e7\u00f5es potencialmente problem\u00e1ticas: \n\u201c`lua\nCitizen.CreateThread(function()\n while true do\n Citizen.Wait(10)\n if IsHandcuffed then\n DisableControlAction(0, 24, true) \u2014 Atacar\n DisableControlAction(0, 25, true) \u2014 Mirar\n DisableControlAction(0, 142, true) \u2014 AtaqueCorpoACorpoAlternativo\n DisableControlAction(0, 75, true) \u2014 Sair do Ve\u00edculo\n DisableControlAction(0, 92, true) \u2014 Atirar no ve\u00edculo\n end\n end\nend)\n\u201c`\nSubstitua `IsHandcuffed` pela vari\u00e1vel que indica o estado de algemagem do seu script espec\u00edfico. \n\n\u2014\n\n<h2>ESX Framework \u2013 Como fazer <\/h2>\n\n<h3>1. Localize a se\u00e7\u00e3o principal das algemas <\/h3>\nEncontre `esx_policejob\\\/client\\\/main.lua` e localize o seguinte c\u00f3digo: \n\u201c`lua\nTaskPlayAnim(playerPed, \u2018mp_arresting\u2019, \u2018idle\u2019, 8.0, -8, -1, 49, 0, 0, 0, 0)\nSetEnableHandcuffs(playerPed, true)\nSetPedCanPlayGestureAnims(playerPed, false)\nFreezeEntityPosition(playerPed, true)\n\u201c`\n\n<h3>2. Remova o congelamento <\/h3>\nAltere `FreezeEntityPosition(playerPed, true)` para `false` para que seja poss\u00edvel caminhar. \n\n<h3>3. Desabilite os controles de tecla <\/h3>\nImplemente uma thread semelhante para manter armas e controles de ve\u00edculo sob controle: \n\u201c`lua\nCitizen.CreateThread(function()\n while true do\n Citizen.Wait(10)\n if IsHandcuffed then\n DisableControlAction(0, 142, true) \u2014 AtaqueCorpoACorpoAlternativo\n DisableControlAction(0, 30, true) \u2014 MoverEsquerdaDireita\n DisableControlAction(0, 31, true) \u2014 MoverCimaBaixo\n DisableControlAction(0, 24, true) \u2014 Atirar\n DisableControlAction(0, 92, true) \u2014 Atirar no carro\n DisableControlAction(0, 75, true) \u2014 Sair do Ve\u00edculo\n end\n end\nend)\n\u201c`\nCertifique-se de vincular `IsHandcuffed` \u00e0 sua flag de algemagem do ESX.\n\n\u2014\n\n<h2>vRP \u2013 Personaliza\u00e7\u00e3o do Movimento <\/h2>\n\n<h3>1. Encontre a Declara\u00e7\u00e3o de Algemas <\/h3>\nA l\u00f3gica principal geralmente reside em `vrp\\\/modules\\\/police.lua` ou em um recurso personalizado. Procure por: \n\u201c`lua\nvRPclient.playAnim(player, {true, {{mp_arresting, idle}}, true})\nvRPclient.setHandcuffed(player, true)\nvRPclient.setFreeze(player, true)\n\u201c`\n\n<h3>2. Descongele para se movimentar <\/h3>\nTroque a linha de congelamento: \n\u201c`lua\nvRPclient.setFreeze(player, false)\n\u201c`\n\n<h3>3. Bloquear a\u00e7\u00f5es espec\u00edficas <\/h3>\nInsira ou modifique um script do cliente para desabilitar continuamente os controles indesejados: \n\u201c`lua\nCitizen.CreateThread(function()\n while true do\n Citizen.Wait(10)\n if IsHandcuffed then\n DisableControlAction(0, 24, true) \u2014 Atacar\n DisableControlAction(0, 25, true) \u2014 Mirar\n DisableControlAction(0, 142, true) \u2014 AtaqueCorpoACorpoAlternativo\n DisableControlAction(0, 75, true) \u2014 Sair do Ve\u00edculo\n DisableControlAction(0, 92, true) \u2014 Atirar no ve\u00edculo\n DisableControlAction(0, 30, true) \u2014 Mover Esquerda\\\/Direita\n DisableControlAction(0, 31, true) \u2014 Mover Cima\\\/Baixo\n end\n end\nend)\n\u201c`\n\n<h3>4. Sincronize a bandeira das algemas <\/h3>\nDefina uma vari\u00e1vel global e escute um evento do lado do servidor: \n\u201c`lua\nlocal IsHandcuffed = false\nRegisterNetEvent(\u2018vrp:handcuff\u2019)\nAddEventHandler(\u2018vrp:handcuff\u2019, function(status)\n IsHandcuffed = status\nend)\n\u201c`\nDispare este evento sempre que um jogador for algemado ou liberado.\n\n\u2014\n\n<h2>Considera\u00e7\u00f5es Finais <\/h2>\n\n<\/em> <strong>Teste completamente<\/strong> em uma c\u00f3pia do seu servidor antes de colocar as altera\u00e7\u00f5es no ar. \n<em> Ajuste a lista `DisableControlAction` para corresponder \u00e0s suas regras de dramatiza\u00e7\u00e3o \u2014 alguns servidores podem querer permitir certos movimentos ou trocas. \n<\/em> Mantenha sempre suas vari\u00e1veis claras e consistentes; placeholders como `IsHandcuffed` devem estar vinculados \u00e0s flags reais do script. \n\n\u2014\n\n<strong>Conclus\u00e3o \u2013 Seu Projeto Definitivo de Mobilidade com Algemas<\/strong> \n\nSeguindo isto <strong>Guia: Permitindo movimento enquanto algemado (FiveM)<\/strong>, voc\u00ea pode introduzir mec\u00e2nicas realistas de algemas que permitem que os jogadores andem enquanto ainda sentem as restri\u00e7\u00f5es de estar algemados. Esta abordagem mant\u00e9m uma jogabilidade detalhada para servidores QBCore, ESX e vRP, tornando os encontros de role\u2011play mais suaves e envolventes para todos.\n\n<!-- fivemx-blog-quality-wave13 -->\n\n<h2 class=\"wp-block-heading\">Caminhos FiveMX relacionados<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Use estas p\u00e1ginas internas como a pr\u00f3xima etapa de revis\u00e3o antes de escolher um recurso para um servidor ao vivo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/fivemx.com\/pt\/scripts-policiais\/\">FiveM scripts policiais<\/a><\/li>\n<li><a href=\"https:\/\/fivemx.com\/pt\/scripts-de-inventario-fivem\/\">Scripts de invent\u00e1rio FiveM<\/a><\/li>\n<li><a href=\"https:\/\/fivemx.com\/pt\/\">Roteiros FiveM<\/a><\/li>\n<\/ul>\n\n<!-- \/fivemx-blog-quality-wave13 -->","protected":false},"excerpt":{"rendered":"<p>Quer que jogadores algemados se movam no FiveM sem perder o realismo? Nosso guia pr\u00e1tico mostra ajustes simples de c\u00f3digo para QBCore, ESX e vRP, permitindo a movimenta\u00e7\u00e3o enquanto mant\u00e9m as a\u00e7\u00f5es indesejadas desabilitadas.<\/p>","protected":false},"author":1,"featured_media":174476,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2877,1900,1899],"tags":[],"class_list":["post-6866","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-free-fivem-job-scripts","category-troubleshooting","category-tutorials"],"_links":{"self":[{"href":"https:\/\/fivemx.com\/pt\/wp-json\/wp\/v2\/posts\/6866","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fivemx.com\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fivemx.com\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fivemx.com\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fivemx.com\/pt\/wp-json\/wp\/v2\/comments?post=6866"}],"version-history":[{"count":3,"href":"https:\/\/fivemx.com\/pt\/wp-json\/wp\/v2\/posts\/6866\/revisions"}],"predecessor-version":[{"id":213973,"href":"https:\/\/fivemx.com\/pt\/wp-json\/wp\/v2\/posts\/6866\/revisions\/213973"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fivemx.com\/pt\/wp-json\/wp\/v2\/media\/174476"}],"wp:attachment":[{"href":"https:\/\/fivemx.com\/pt\/wp-json\/wp\/v2\/media?parent=6866"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fivemx.com\/pt\/wp-json\/wp\/v2\/categories?post=6866"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fivemx.com\/pt\/wp-json\/wp\/v2\/tags?post=6866"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}