Jump to content

Tabela aleatoria


Recommended Posts

settings = {
    table = { -- Ped X | Ped Y | Ped Z | Rotação Ped X | Rotação Ped Y | Rotação Ped Z
        {-3, 3.5, 4.5, 0, 0, 180},
        {-5, 3.5, 4.5, 0, 0, 180}
    },
}

Na tabela acima possuem as posições de um setElementPosition setElementRotation mas quando eles são executados eles vão aleatoriamente, a tabela 01 e uma posição e a tabela 02 e outra mas quando executada a posição eles acabam indo aleatoriamente eu posso executar a função no marker da tabela 01 e acabar sendo teleportado para a posição da tabela 02

Link to comment
1 hour ago, Tony Scripter said:
settings = {
    table = { -- Ped X | Ped Y | Ped Z | Rotação Ped X | Rotação Ped Y | Rotação Ped Z
        {-3, 3.5, 4.5, 0, 0, 180},
        {-5, 3.5, 4.5, 0, 0, 180}
    },
}

Na tabela acima possuem as posições de um setElementPosition setElementRotation mas quando eles são executados eles vão aleatoriamente, a tabela 01 e uma posição e a tabela 02 e outra mas quando executada a posição eles acabam indo aleatoriamente eu posso executar a função no marker da tabela 01 e acabar sendo teleportado para a posição da tabela 02

Rapaz como voce ta puxando isso?

Link to comment
15 hours ago, Blaack said:

Rapaz como voce ta puxando isso?

settings = {
    table = { -- Marker X | Marker Y | Marker Z | Ped X | Ped Y | Ped Z | Rotação Ped X | Rotação Ped Y | Rotação Ped Z
        {-3, 3.5, 4.5, 0, 0, 180},
        {-5, 3.5, 4.5, 0, 0, 180}
    },
}

local Table = {} 

for i,v in ipairs(settings.table) do
    Table[i] = createMarker(v[1], v[2], v[3], "cylinder", 1.2, 0, 0, 0, 0)

    addEventHandler("onMarkerHit", Table[i], function(hitElement)
        if getElementType(hitElement) == "player" then
            setElementPosition(localPlayer, v[4], v[5], v[6])
            setElementRotation(localPlayer, v[7], v[8], v[9])
        end
    end)
end 

Dessa forma.

Link to comment
17 hours ago, Tony Scripter said:
settings = {
    table = { -- Marker X | Marker Y | Marker Z | Ped X | Ped Y | Ped Z | Rotação Ped X | Rotação Ped Y | Rotação Ped Z
        {-3, 3.5, 4.5, 0, 0, 180},
        {-5, 3.5, 4.5, 0, 0, 180}
    },
}

local Table = {} 

for i,v in ipairs(settings.table) do
    Table[i] = createMarker(v[1], v[2], v[3], "cylinder", 1.2, 0, 0, 0, 0)

    addEventHandler("onMarkerHit", Table[i], function(hitElement)
        if getElementType(hitElement) == "player" then
            setElementPosition(localPlayer, v[4], v[5], v[6])
            setElementRotation(localPlayer, v[7], v[8], v[9])
        end
    end)
end 

Dessa forma.

 

Não era pra ter esse v[7], v[8] e v[9] no setElementRotation, sua tabela só tem 6 posições... Eu adicionei mais 3 posições aleatórias e mudei algumas coisinhas, veja se assim funciona. Qualquer coisa posta aí no fórum, eu não cheguei a testar o código.

settings = {
    table = { -- Marker X | Marker Y | Marker Z | Ped X | Ped Y | Ped Z | Rotação Ped X | Rotação Ped Y | Rotação Ped Z
        {-3, 3.5, 4.5, 10, 10, 10, 0, 0, 180}, --Aqui eu adicionei 3 posições aleatórias pro Ped X, Ped Y e Ped Z que estavam faltando...
        {-5, 3.5, 4.5, 10, 10, 10, 0, 0, 180}
    },
}

local Table = {} 
addEventHandler('onResourceStart', root, function()
	for i, v in ipairs(settings.table) do
		Table[i] = createMarker(v[1], v[2], v[3], "cylinder", 1.2, 0, 0, 0, 0)
		addEventHandler("onMarkerHit", Table[i], teleportOnHit)
	end 
end)

function teleportOnHit(hitElement)
	if not isElement(hitElement) or getElementType(hitElement) ~= "player" then return end
	local pos = getMarkerTeleport(source)
	if not pos then return end
  	setElementPosition(localPlayer, pos[4], pos[5], pos[6])
	setElementRotation(localPlayer, pos[7], pos[8], pos[9])
end

function getMarkerTeleport(marker)
	for i, m in ipairs(Table) do
		if marker == m then
			return settings.table[i]
		end
	end
  return false
end

 

  • Thanks 1
Link to comment
5 hours ago, Boechat said:

 

Não era pra ter esse v[7], v[8] e v[9] no setElementRotation, sua tabela só tem 6 posições... Eu adicionei mais 3 posições aleatórias e mudei algumas coisinhas, veja se assim funciona. Qualquer coisa posta aí no fórum, eu não cheguei a testar o código.

settings = {
    table = { -- Marker X | Marker Y | Marker Z | Ped X | Ped Y | Ped Z | Rotação Ped X | Rotação Ped Y | Rotação Ped Z
        {-3, 3.5, 4.5, 10, 10, 10, 0, 0, 180}, --Aqui eu adicionei 3 posições aleatórias pro Ped X, Ped Y e Ped Z que estavam faltando...
        {-5, 3.5, 4.5, 10, 10, 10, 0, 0, 180}
    },
}

local Table = {} 
addEventHandler('onResourceStart', root, function()
	for i, v in ipairs(settings.table) do
		Table[i] = createMarker(v[1], v[2], v[3], "cylinder", 1.2, 0, 0, 0, 0)
		addEventHandler("onMarkerHit", Table[i], teleportOnHit)
	end 
end)

function teleportOnHit(hitElement)
	if not isElement(hitElement) or getElementType(hitElement) ~= "player" then return end
	local pos = getMarkerTeleport(source)
	if not pos then return end
  	setElementPosition(localPlayer, pos[4], pos[5], pos[6])
	setElementRotation(localPlayer, pos[7], pos[8], pos[9])
end

function getMarkerTeleport(marker)
	for i, m in ipairs(Table) do
		if marker == m then
			return settings.table[i]
		end
	end
  return false
end

 

Funcionou exatamente do jeito que precisava, obrigado pela ajuda.

  • Like 1
Link to comment

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...