Jump to content

Aplicação de Textura personalizada em armas


Recommended Posts

Olha eu aqui de novo kkk, então, to trabalhando num projeto de "/Skins". Até ai tudo bem, base feita, script funcionando, a questão é, quando eu aplico a textura com o comando por exemplo /Skin2, a skin carrega pra todos os jogadores presentes, e eu queria saber como faço pra ela carregar apenas para o jogador que utilizou o comando, (Ainda quero que todos consigam ver a skin na mão do jogador, porém a skin só muda pra arma dele). Tentei fazer a checagem via Server side mais não tive mt sucesso, sou bem leigo com shader..

Parte do Client:

function SetarSkin()
local ShaderM4 = [[
    texture tex;
    technique replace {
        pass P0 {
            Texture[0] = tex;
        }
    }
]]

local ShaderM4_RK = dxCreateShader(ShaderM4, 0, 0, false, "ped")
local Texture_M4 = dxCreateTexture("Skin1.png") -- Textura
engineApplyShaderToWorldTexture(ShaderM4_RK, "M4A1[057]")
dxSetShaderValue(ShaderM4_RK, "tex", Texture_M4)
end
addEvent( "DarSkin", true)
addEventHandler("DarSkin", getRootElement(), SetarSkin)

Server side:

function Skin(source)
if getElementData(source, "PermSkin") == "Sim" then
triggerClientEvent("DarSkin", source)
else
outputChatBox("Você não tem permissão")
end
end
addCommandHandler("Skin22", Skin)

Como podem ver, a skin carrega e consigo ver de ambos os lados, porém carrega pra todos os jogadores, então resumindo, como faço pra alterar apenas a textura na arma do jogador que digitou o comando ?

spacer.png

Link to post
function SetarSkin(thePlayer)
local ShaderM4 = [[
    texture tex;
    technique replace {
        pass P0 {
            Texture[0] = tex;
        }
    }
]]

local thePlayer = source
local ShaderM4_RK = dxCreateShader(ShaderM4, 0, 0, false, "ped")
local Texture_M4 = dxCreateTexture("image2.png") -- Textura
engineApplyShaderToWorldTexture(ShaderM4_RK, "M4A1[057]", thePlayer)
dxSetShaderValue(ShaderM4_RK, "tex", Texture_M4)
end
addEvent( "DarSkin", true)
addEventHandler("DarSkin", getRootElement(), SetarSkin)

Então mano, fiz desta forma e parece funcionar bem agora, pode dar uma olhada e me dizer se está de fato correto agora ?

Link to post
14 hours ago, Rakashy said:

function SetarSkin(thePlayer)
local ShaderM4 = [[
    texture tex;
    technique replace {
        pass P0 {
            Texture[0] = tex;
        }
    }
]]

local thePlayer = source
local ShaderM4_RK = dxCreateShader(ShaderM4, 0, 0, false, "ped")
local Texture_M4 = dxCreateTexture("image2.png") -- Textura
engineApplyShaderToWorldTexture(ShaderM4_RK, "M4A1[057]", thePlayer)
dxSetShaderValue(ShaderM4_RK, "tex", Texture_M4)
end
addEvent( "DarSkin", true)
addEventHandler("DarSkin", getRootElement(), SetarSkin)

Então mano, fiz desta forma e parece funcionar bem agora, pode dar uma olhada e me dizer se está de fato correto agora ?

Aparentemente sim, dá uma testada pra ter certeza. Essa função aí vc está dando um trigger para todos os players passando o jogador com skin como parâmetro, né?

Link to post

É pra funcionar sim. Só uma correção. Não se usa source como parâmetro de função. Como aqui, por exemplo (ignora a seta, vou falar depois):
UG8OQEG.png

Sobre a setinha vermelha, você já está passando o jogador que usou o comando "Skin22", então lá no client-side, basta usar source. Lembrando que é uma variável pré-definida, então não precisa declará-la em nenhum lugar.
4oBSmfA.png

Link to post

Obrigado pela ajuda pessoal, mais agora talvez viajando além da conta, é só  uma dúvida... Além de alterar a textura para o jogador, também serial possível alterar o .dff da arma ? Se sim, como? Ou eu estou viajando de mais kkk? Se alguém souber e puder me dar um norte de onde começar, eu aceito

Link to post

Tenho mais um problema e gostaria da ajuda de vocês, eu consigo substituir a textura da M4 tranquilamente, porém não estou conseguindo com outras armas, por exemplo, tentei com a Desert Eagle, e quando aplico a textura, a textura carregam porém não está alterando a skin da arma, tem algo que eu deva fazer no .dff da Desert Eagle para que ela aceite as texturas ? vi algo sobre ter que tirar o UV pra poder conseguir substituir as texturas, mais removendo o UV do .dff fica uma skin totalmente branca...A M4 eu consegui sem problemas pois encontrei o modelo da Arma já pronta para baixar, então não precisei modificar nada no .dff dela.

Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...