Ir para conteúdo
  • Cadastre-se

(Resolvido)Alguem me ajuda nessa action


Ir para solução Resolvido por x1zy,

Posts Recomendados

Galera eae, preciso muito da ajuda de vocês é o seguinte. Nessa action quero so 4 coisinha.

1° falha de roubo " O meu server e gta e essa action é roubo de carro, so que ta roubando todos os carros, e eu quero que fique mais dificil um pouco por exemplo tem 10 carro na rua , tenho chance de pegar 6, mais ou menos assim.

2° Não deslogar enquanto esta andando de carro.

3° Quando entrar pz o carro some.

Segue a action ae. Obrigado.

4° Quando desco do carro que peguei virado pra cima e quando eu desco ele so fica virado pra la <, tipo peguei um carro virado pro north, ae quando eu desco ele vira pra la < e todos is carros so fica virado pra esse lado, quero deixar tudo certo north pro north, south pro south, west pro west etc.

 

 

function getNearestRoad(cid)
    local roads = {978, 979, 980, 981}
    for direction = 0, 3 do
        for range = 1, 2 do
            for _, itemid in pairs(roads) do
                local checkpos = getPosByDir(getCreaturePosition(cid), direction, range)
                if getTileItemById(checkpos, itemid).uid > 1 then
                    return checkpos
                end
            end
        end
    end
return false
end

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local keys = { -- [ID do carro] = {id da chave, outfit, velocidade},
        [1515] = {key = 10512, outfit = 121, speed = 1000, moto = false},
        [8779] = {key = 10512, outfit = 11, speed = 1500, moto = false},
        [1514] = {key = 10512, outfit = 38, speed = 1700, moto = false},
        [10650] = {key = 10512, outfit = 67, speed = 1900, moto = false},
        [10649] = {key = 10512, outfit = 261, speed = 2000, moto = false},
        [10699] = {key = 10512, outfit = 125, speed = 2200, moto = true},

        [10698] = {key = 10698, outfit = 261, speed = 1300, moto = false},
    }
    
    if getPlayerStorageValue(cid, 18391) == 1 then
        doPlayerSendCancel(cid, "Você já está num veículo.") return true
    elseif not keys[itemEx.itemid] then
        doPlayerSendCancel(cid, "Você só pode usar esta chave em veículos.") return true
    elseif keys[itemEx.itemid].key ~= item.itemid then
        doPlayerSendCancel(cid, "Esta não é a chave deste veículo.") return true
    elseif keys[itemEx.itemid].moto then
        if getPlayerStorageValue(cid, 18393) == -1 then
            doPlayerSendCancel(cid, "Você precisa de um capacete para andar de moto.") return true
        end
    end
    
    local car = keys[itemEx.itemid]
    
    setPlayerStorageValue(cid, 18392, getCreatureSpeed(cid))
    doTeleportThing(cid, getNearestRoad(cid))
    doSetCreatureOutfit(cid, {lookType = car.outfit}, -1)
    doRemoveItem(itemEx.uid)
    doChangeSpeed(cid, -getCreatureSpeed(cid))
    doChangeSpeed(cid, car.speed)
    setPlayerStorageValue(cid, 18391, 1)
return true
end

Editado por StormsHard (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Esta é uma mensagem automática! Este tópico foi movido para a área correta.
Pedimos que você leia as regras do fórum.

Spoiler

This is an automated message! This topic has been moved to the correct area.
Please read the forum rules.

 

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites
  • 3 weeks later...
  • Solução

Bem, vou te ajudar a pescar, saca?


antes de:
 

 setPlayerStorageValue(cid, 18392, getCreatureSpeed(cid))

 

por:
 

local chance = math.random(1, 6) -- chance 1 em 6

if not chance == 1 then
	doPlayerSendCancel(cid, "Não foi possivel roubar o carro.")
	return true
end

 

2º  no globalEvents, descobre qual o ficheiro lua do seu logout, e coloca isso:
 

if getPlayerStorageValue(cid, 18391) == 1 then
    doPlayerSendCancel(cid, "Você está num veículo.")
    return false 
end

3° basta adicionar actionID nos tiles na frente do "depot" e configurar um onMoviment e checar a storage,
se sim chama o codigo que remove o outfit/speed de carro.

4º mais uma vez, não tem no codigo a parte que ele desce do carro.

Link para o post
Compartilhar em outros sites

Cara obrigado, Já ajudou bastante. Segue a parte pra descer do carro.

 

 

function onSay(cid, words)
    local tiles = {3152, 3139, 998, 1010, 426, 1012, 996, 448, 1014,} -- Tiles permitos para sair do carro
    local items = {
        [256] = 22734,
        [256] = 22735,
        [256] = 22736,
        [256] = 22737,
        [285] = 22738,
        [285] = 22739,
        [285] = 22740,
                [285] = 22741,
    }

    if getPlayerStorageValue(cid, 18391) == -1 or not items[getCreatureOutfit(cid).lookType] then
        doPlayerSendCancel(cid, "Você precisa estar num veículo.") return true
    elseif isInArray(tiles, getThingFromPos({x = getCreaturePosition(cid).x, y = getCreaturePosition(cid).y, z = getCreaturePosition(cid).z, stackpos = 0}).itemid) then
        doPlayerSendCancel(cid, "Você não pode sair do carro aqui.") return true
    end
    
    local carro = items[getCreatureOutfit(cid).lookType]
    
    doCreateItem(carro, 1, getCreaturePosition(cid))
    doRemoveCondition(cid, CONDITION_OUTFIT)
    if getPlayerStorageValue(cid, 18393) == 1 then
        doSetCreatureOutfit(cid, {lookType = 68}, -1)
    end
    doChangeSpeed(cid, -getCreatureSpeed(cid))
    doChangeSpeed(cid, getPlayerStorageValue(cid, 18392))
    setPlayerStorageValue(cid, 18391, -1)
return true
end

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo