Ir para conteúdo

Featured Replies

Postado

Acho que a melhor forma de fazer isso é assim:

 

Suponhamos que seja o arrow, então o script chamará "arrow.lua".

local bow = 2417 -- ID DA BOW

function onEquip(cid,item)
    if (getPlayerSlotItem(cid,5).itemid == bow) or (getPlayerSlotItem(cid,6).itemid == bow) then
        doDecayItem(item.uid)
    else
        return FALSE, doPlayerSendCancel(cid,'Você precisa estar usando o '..getItemNameById(bow)..'.')
    end
    return TRUE
end

 

Aí em movements.xml, registra a id da munição que quer que seja usada apenas por esta bow.

<movevent type="Equip" itemid="2544" slot="ammo" event="script" value="arrow.lua"/>
    <movevent type="DeEquip" itemid="2544" slot="ammo" event="script" value="arrow.lua"/>

 

Boa sorte.

  • Respostas 55
  • Visualizações 1.9k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Acho que a melhor forma de fazer isso é assim:   Suponhamos que seja o arrow, então o script chamará "arrow.lua". local bow = 2417 -- ID DA BOW function onEquip(cid,item)     if (getPlayerSlotIt

  • Adriano SwaTT
    Adriano SwaTT

    ah sim, realmente.. eu fiz isso mesmo, esqueci de registrar para ambas as mãos.   vou editar.

  • Adriano SwaTT
    Adriano SwaTT

    Atualize o script para este: local bows = { [idbow] = {ammunitionID}, -- Arma, Munição [idbow2] = {ammunitionID2}, -- Arma, Munição [idbow3] = {ammunitionID3}, -- Arma, Munição } local slot = nil

Postado
  • Autor

Acho que a melhor forma de fazer isso é assim:

 

Suponhamos que seja o arrow, então o script chamará "arrow.lua".

local bow = 2417 -- ID DA BOW

function onEquip(cid,item)
    if (getPlayerSlotItem(cid,5).itemid == bow) or (getPlayerSlotItem(cid,6).itemid == bow) then
        doDecayItem(item.uid)
    else
        return FALSE, doPlayerSendCancel(cid,'Você precisa estar usando o '..getItemNameById(bow)..'.')
    end
    return TRUE
end

Aí em movements.xml, registra a id da munição que quer que seja usada apenas por esta bow.

<movevent type="Equip" itemid="2544" slot="ammo" event="script" value="arrow.lua"/>
    <movevent type="DeEquip" itemid="2544" slot="ammo" event="script" value="arrow.lua"/>

Boa sorte.

 

Em tese funcionou, porém não aparece mensagem alguma ao player, e se caso a bow correta estiver sendo utilizada, e outra for colocada no lugar, a arrow funciona, o ideal seria que ela só funcionasse com apenas aquele bow, há possibilidade? 

Postado

Em movements.xml:

<movevent type="Equip" itemid="2546" slot="ammo" event="script" value="arrow.lua" />
Em movements/scripts crie o arquivo arrow.lua com este conteúdo:

local bowID = 2456 -- id da bow escolhida

function onEquip(cid, item)
    if getPlayerSlotItem(cid, 6).itemid == bowID or getPlayerSlotItem(cid, 5).itemid == bowID then
		return true
	end
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Voce precisa estar equipado com um '..getItemNameById(bowID)..' para usar seu '..getItemNameById(item.itemid)..'.')
	return false
end

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo