Ir para conteúdo

Featured Replies

Postado
  • Autor
  Em 28/02/2015 em 10:12, Bruno Minervino disse:

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

 

Olha, em tese funcionou... a mensagem foi dada e o item só pôde ser usado com a bow, porém se o player já estiver usando a bow certa com a arrow e o player jogar outra bow no slot, a arrow funciona. A outra questão é que a mensagem é dada no default, e isso causa um pouco de "trash" há possibilidade de ser algo como "return doPlayerSendCancel"? (isso não tem tanta importância).

  • 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

adriano poe o check no item do Bolt do cara se tentar equipar ele se o item no lugar move ele para backpack..


adiciona o dequip no crossbow

 

 

prefiro usando o crossbow tipo
 
      <movevent type="Equip" itemid="ID" slot="ammo" event="script" value="crossbow.lua"/>
        <movevent type="DeEquip" itemid="ID" slot="ammo" event="script" value="crossbow.lua"/>
local boltID =  ??? -- id da bolt
local bowID = ??? -- bow id


function onEquip(cid, item)
if getPlayerSlotItem(cid, CONST_SLOT_AMMO) = boltID then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você equipou o '..getItemNameById(BowID)..' . ')
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você não pode equipar o  '..getItemNameById(BowID)..' por não ter o '..getItemNameById(boltID)..' no slot. ')
return false
end
return true
end


function onDeEquip(cid, item, slot)
if getPlayerSlotItem(cid, CONST_SLOT_AMMO) == boltID then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você so pode desequipar se tirar a '..getItemNameById(boltID)..'. ')
​return false
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você Desequipou o '..getItemNameById(BowID)..' . ')
end
return true
end
 
 
ele so vai conseguir tirar o crossbow se tirar a bolt

Editado por kbpaulo (veja o histórico de edições)

Postado
  • Autor
  Em 28/02/2015 em 14:53, kbpaulo disse:

 

adriano poe o check no item do Bolt do cara se tentar equipar ele se o item no lugar move ele para backpack..

adiciona o dequip no crossbow

 

 

prefiro usando o crossbow tipo
 
      <movevent type="Equip" itemid="ID" slot="ammo" event="script" value="crossbow.lua"/>
        <movevent type="DeEquip" itemid="ID" slot="ammo" event="script" value="crossbow.lua"/>
local boltID =  ??? -- id da bolt
local bowID = ??? -- bow id


function onEquip(cid, item)
if getPlayerSlotItem(cid, CONST_SLOT_AMMO) = boltID then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você equipou o '..getItemNameById(BowID)..' . ')
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você não pode equipar o  '..getItemNameById(BowID)..' por não ter o '..getItemNameById(boltID)..' no slot. ')
return false
end
return true
end


function onDeEquip(cid, item, slot)
if getPlayerSlotItem(cid, CONST_SLOT_AMMO) == boltID then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você so pode desequipar se tirar a '..getItemNameById(boltID)..'. ')
​return false
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você Desequipou o '..getItemNameById(BowID)..' . ')
end
return true
end
 
 
ele so vai conseguir tirar o crossbow se tirar a bolt

 

 

Qual id eu coloco na tag? bow ou arrow?

 

@EDIT:

 

ahahaha.png

 

Editado por ScythePhantom (veja o histórico de edições)

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