Jump to content

Recommended Posts

Estou tentando por o addcommandhandler mas não consigo de forma nenhuma, se alguém tiver a solução para algum dos 3 scripts a baixo me avisa fznd o favor

 

estou tentando abrir painel DX por comando ao em vez de por bindkey porem não consigo, já tentei de vários jeitos e formas porem nn vai, já pesquisei aqui no fórum, no YouTube porem nn vai


function Pdx ( )
        dxDrawRectangle(504, 197, 314, 397, tocolor(255, 0, 0, 100), false)
        dxDrawRectangle(554, 238, 218, 72, tocolor(255, 255, 255, 255), false)
        dxDrawRectangle(554, 347, 218, 72, tocolor(255, 255, 255, 255), false)
        dxDrawRectangle(554, 455, 218, 72, tocolor(255, 255, 255, 255), false)
end

function abrir (_,state)
    if painel == false then
    showCursor(true)
    addEventHandler("onClientRender", root, Pdx)
    painel = true
    else
    showCursor(false)
    removeEventHandler("onClientRender", root, Pdx)
    painel = false
    end
end

addCommandHandler("disappear", abrir)
addCommandHandler("v", abrir)

tabem tentei fazer uma versão para uma bussola:

--2017 ~ Mark Gyori https://markgyori.eu/
--Contact: [email protected]

local sx, sy = guiGetScreenSize()
local top = 30

local font1 = dxCreateFont("font.otf", 11)
local font2 = dxCreateFont("font.otf", 10)

local exibir_bulssola = false 

local cords = {
    {0, "N"},
    {15, 15},
    {30, 30},
    {45, "NE"},
    {60, 60},
    {75, 75},
    {90, "E"},
    {105, 105},
    {120, 120},
    {135, "SE"},
    {150, 150},
    {165, 165},
    {170, "S"},
    {195, 195},
    {210, 210},
    {225, "SW"},
    {240, 240},
    {255, 255},
    {270, "W"},
    {285, 285},
    {300, 300},
    {315, "NW"},
    {330, 330},
    {345, 345}
}

function draw ( )
    local show = 15
    local center = math.ceil(show / 2) - 1
    local _, _, r = getElementRotation(getCamera())
    local pos = math.floor(r / 15)
    local slotwidth = 40
    local smooth = ((r - (pos * 15)) / 15) * slotwidth
    local left = sx / 2 - ((show + 2) * slotwidth)/2
    for i=1, show do
        local id = i + pos - center
        if(id > #cords)then
            id = id - #cords
        end
        if(id <= 0)then
            id = #cords - math.abs(id)
        end
        if(cords[id])then
            local alpha = (tonumber(cords[id][2]) or 0 > 0) and 175 or 255
            if(i < center)then
                alpha = alpha * (i/center)
            end
            if(i > center)then
                alpha = alpha * ((show-i)/center)
            end
            dxDrawRectangle(left + slotwidth * i - smooth + (slotwidth / 2 - 1) + 1, top + 10 + 1, 2, 10, tocolor(0, 0, 0, alpha * 0.5))
            dxDrawRectangle(left + slotwidth * i - smooth + (slotwidth / 2 - 1), top + 10, 2, 10, tocolor(255, 255, 255, alpha))
            dxDrawText(cords[id][2], left + slotwidth * i - smooth + 1, top + 20, left + slotwidth * (i+1) - smooth + 2, top + 40, tocolor(0, 0, 0, alpha * 0.5), 1, font2, "center", "center")
            dxDrawText(cords[id][2], left + slotwidth * i - smooth, top + 20, left + slotwidth * (i+1) - smooth, top + 40, tocolor(255, 255, 255, alpha), 1, font2, "center", "center")
        end
    end
    dxDrawText("➤", left + 4, top + 26 + 2, left + ((show + 3) * slotwidth) + 30, 0, tocolor(0, 0, 0, 160), 1, font1, "center", "top", false, false, false, false, false, 90)
    dxDrawText("➤", left, top + 26, left + ((show + 3) * slotwidth) + 30, 0, tocolor(255, 255, 255, 255), 1, font1, "center", "top", false, false, false, false, false, 90)
end

addCommandHandler("m1", function()
    if exibir_bulssola = false then
	    addEventHandler("onClientRender", getRootElement(), draw)
		exibir_bulssola = true
	else
        removeEventHandler("onClientRender", getRootElement(), draw)
	    exibir_bulssola = false
	end
	
end)

--->--->--->---> (inclusive tentei mudar a direção a qual ele gira não consegui se alguém souber como avisa)<---<---<---<---

e também tentei para ativar e desativar primeira pessoa na arma através de comando:

function zoomarma (thePlayer)

setWeaponProperty ( 30 , "poor" , "flag_aim_1st_person" , true )
setWeaponProperty ( 30 , "std" , "flag_aim_1st_person" , true )
setWeaponProperty ( 30 , "pro" , "flag_aim_1st_person" , true )

end
addCommandHandeler ("m1", zoomarma )

 esse addCommandHandeler não funciona de jeito nenhum 

Link to comment

@copo sobre o 1o script:

o addCommandHandler parece bem.

Quando a função abrir for executada por ele, vai tentar verificar "painel == false". Não faço ideia de onde vem essa variável, suponho que nunca foi declarada. Quando uma variável não existe, o valor dela é nil e não false. Logo você pode verificar "if painel == nil then" ou "if not painel then". Aí ele vai adicionar o onClientRender. E quando for fazer o comando novamente para esconder o painel, a variável vai estar a true como você setou, então vai executar o que vem depois do "else", removendo assim o onClientRender.

 

Sobre o 2o script:

Você estava quase, mude esse "if exibir_bulssola = false then" para "if not exibir_bussola then" (bussola ta mal escrito e também faltava um = na comparação)

 

Sobre o 3o script:

N faço ideia o que você está tentando fazer. Essa função apenas seta algumas propriedades de arma sempre que é chamada. Você teria que mudar isso

Edited by FernandoMTA
Link to comment
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...