Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Fala trutas! Firmeza total!

 

Então, deixo aqui pra vocês um script que eu uso e acho muito útil para todos gms, cms e gods.

 

Essa talkaction é usada para dar um item ao jogador ou remover o item dele; você não vai precisar mais ir até o player, criar o item e entregá -lo.

 

Vamos ao código:

 

Em Talkaction/scripts/

Crie um arquivo chamado "dip_rip" com extensão "lua", ficando assim:

Citar

dip_rip.lua

 

Agora, adicione esse código dentro dele:

 

Citar

--[[( Marcryzius )]]-- 
local MSCB = MESSAGE_STATUS_CONSOLE_BLUE 

 

function dip (cid,item,quant) 
local uid = doCreateItemEx(item,quant) 
local get = getThing(uid) 
   if(get.type > 0)then 
      if(doPlayerAddItemEx(cid,uid) == false)then 
         return false,'The player can not receive the item {'..getItemNameById(item)..'} because not have space.' 
      end 
   elseif(uid and getItemNameById(item))then 
      for _= 1,quant do 
         if(doPlayerAddItem(cid,item,1,false) == false)then 
            return false 
         end 
      end 
   else 
      return false,'Item not found!' 
   end 
   return true 
end 

function rip (cid,item,quant) 
   if(doPlayerRemoveItem(cid,item,quant) == false)then 
      return false 
   end 
   return true 
end 

 

function onSay(cid, words, param) 
if(param == "") then return true,doPlayerSendTextMessage(cid,MSCB, "Command param required.")end 
local C,t = {},string.explode(param, ",") 
C.ret = RETURNVALUE_NOERROR 
C.tmp = getCreaturePosition(cid) 
C.amount = (t[3] == nil) and 1 or tonumber (t[3]) 
C.nameitem = (tonumber(t[2]) == nil) and t[2] or getItemNameById(t[2]) 
C.id = (tonumber(t[2]) == nil) and getItemIdByName(t[2]) or tonumber(t[2]) 
C.pid = getPlayerByNameWildcard(t[1]) 

if(C.id == LUA_ERROR)then return true,doPlayerSendTextMessage(cid,MSCB, "Item wich such name or id does not exists.")end 
if(C.pid == 0 or (isPlayerGhost(C.pid) == true and getPlayerAccess(C.pid) > getPlayerAccess(cid))) then 
   return true,doPlayerSendTextMessage(cid,MSCB, "Player " .. param .. " is not currently online.") 
end 
   if(words == '/rip')then 
      if(rip(C.pid,C.id,C.amount) == false)then 
         doPlayerSendTextMessage(cid,MSCB, "the player ("..getCreatureName(C.pid)..") does not have that item ("..C.nameitem..") or the quantity of them ("..C.amount..").") 
      else 
         doPlayerSendTextMessage(cid,MSCB,"was removed from the player ("..getCreatureName(C.pid)..") of the item name ("..C.nameitem..") and Item Id ("..C.id..") in the amount of "..C.amount..".") 
      end 
   else 
   local bool,msg = dip(C.pid,C.id,C.amount) 
      if(bool == false)then 
         doPlayerSendTextMessage(cid,MSCB,msg) 
      else 
         doPlayerSendTextMessage(cid,MSCB, "The player ("..getCreatureName(C.pid)..") received the item, ("..C.nameitem..") and Id ("..C.id..") in the amount of ("..C.amount..").") 
         doPlayerSendTextMessage(C.pid,MSCB, "You have received the item, ("..C.nameitem..") in the amount of ("..C.amount..") to the ("..getPlayerGroupName(cid)..") ("..getCreatureName(cid)..").") 
      end 
   end 
   return true 
end 

 

 

Agora em talkaction/talkactions.xml

Adicione essa tag:

 

Citar

<talkaction log="yes" words="/dip;/rip" access="3" event="script" value="dip_rip.lua"/>

 

 

É isso ae galera, espero que vocês curtam o sistema.

 

Link para o post
Compartilhar em outros sites
  • 4 months later...

@warlley Tente assim: /dip nome do player, id, quantidade            

 

Ex: /dip Matheus, 1234, 1

 

Obs: Se lhe ajudei, de um REP+ :D

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.

  • Conteúdo Similar

    • Por amoxicilina
      Olá Kings, venho aqui trazer uma TalkAction pra você comprar premium account, sei que pode ser algo meio inútil por existir a store.
      Então vamos script:
       
       
    • Por Erimyth
      Fala galerinha eu estava e um amigo meu me pediu um script de health e mana por talkaction por MSN, fiz ele e resolvi postar-lo aqui no TK para a galera usar-lo.

      Vá em data > talkactions > talkactions.xml e adicione a seguinte tag:

      <talkaction words="!buyhealth;!buymana" event="script" value="buylife.lua">
      Agora vá até a pasta scripts dentro de talkactions, crie um arquivo chamado buylife.lua com isto dentro:
      -- [( Script created by Matheus for TibiaKing.com )] -- function onSay(cid, words, param) local health = 1000 -- Vida que será adicionada ao player após ele usar o comando! local mana = 1000 -- Mana que será adicionada ao player após ele usar o comando! local cost = 10000 -- Preço para você comprar mana ou health! if (words == "!buymana") then if (doPlayerRemoveMoney(cid, cost) == TRUE) then doCreatureAddMana(cid, mana) doSendMagicEffect(getCreaturePosition(cid), 12) else doPlayerSendCancel(cid, "Sorry, you need "..cost.." gold coins to buy mana.") return TRUE end elseif (words == "!buyhealth") then if (doPlayerRemoveMoney(cid, cost) == TRUE) then doCreatureAddHealth(cid, health) doSendMagicEffect(getCreaturePosition(cid), 12) else doPlayerSendCancel(cid, "Sorry, you need "..cost.." gold coins to buy mana.") end return TRUE end end
      Prontinho, espero que gostem, é um script bem simples mas pode ser útil para alguns.  
        Você gostou deste conteúdo!? Este conteúdo te ajudou!? Isso será realmente útil pra você!? Então, se possível, faça uma doação (de qualquer valor) que estará me ajudando também!  
    • Por Danihcv
      Bom galera, faz tempo que não posto um tutorial, então resolvi trazer esse, que apesar de ser simples tem utilidade pra algumas pessoas.
       
      Esse é um sistema que eu criei pra fazer com que o god possa alterar a visão dele pra como se fosse sempre dia ou pra visão de players normais.

      1°)Como funciona:
          Quando o GOD entrar no server, ele já vai estar com a visão de "sempre dia". Se ele quiser ver que nem os players normais, basta falar /light. Se ele quiser voltar a ver "sempre dia" basta falar novamente /light
       
      2°)Instalando o sistema:
       
         Primeiramente vá em data\creaturescripts e adicione essa tag ao arquivo creaturescripts.xml:
      <event type="login" name="GodLight" event="script" value="godLight.lua"/>    Agora va em data\creaturescripts\scripts abra o arquivo login.lua e adicione isso antes do ultimo return true:
      registerCreatureEvent(cid, "GodLight")    Agora ainda na pasta data\creaturescripts\scripts crie um arquivo chamado godLight.lua e coloque isso dentro:



       
       
         Agora va na pasta data\talkactions e adicione essa tag ao arquivo talkactions.xml:
      <talkaction words="/light" event="script" access="5" value="godLight.lua"/>    Agora va na pasta data\talkactions\scripts e crie um arquivo chamado godLight.lua e coloque isso dentro:



       
      Pronto! Seu sistema está instalado.
       
      Se vc quiser que qualquer pessoa possa usar esse sistema, basta fazer o seguinte:



       
      E ao invés de colocar a tag (que está aí em cima) em talkactions.xml, coloque essa:
      <talkaction words="/light" event="script" value="godLight.lua"/>
       
       
      E isso é tudo, pessoal!
      Um sistema simples mas que pra alguns tem bastante utilidade. Em breve trarei novos tutoriais! Se tiverem alguma sugestão, podem mandar por pm.
    • Por CaduGTX
      Olá, eu e um amigo fizemos esse script para limpar as casas automaticamente, era um script pessoal mas resolvi postar.
      O Script foi feito em revscript, se for usar da forma antiga, terá que adaptar.

      Basta adicionar um arquivo lua na sua pasta de talkactions:
       
      local function doCheckHouses() local registros = db.storeQuery( "SELECT `houses`.`owner`, `houses`.`id` FROM `houses`,`players` WHERE `houses`.`owner` != 0 AND `houses`.`owner` = `players`.`id`;") if registros ~= false then local count = 0 repeat count = count + 1 local owner = result.getNumber(registros, "owner") local houseId = result.getNumber(registros, "id") local house = House(houseId) if house and (owner > 0) then print(house:getName()) house:setOwnerGuid(0) end until not result.next(registros) result.free(registros) end print('Houses Cleaned') return true end local limparhouse = TalkAction("/limparhouse") function limparhouse.onSay(player, words, param) if not player:getGroup():getAccess() or player:getAccountType() < ACCOUNT_TYPE_GOD then player:sendCancelMessage("Only admins can use this command.") return true end addEvent(doCheckHouses, 10 * 1000) player:sendCancelMessage("Cleaning houses.") return true end limparhouse:separator(" ") limparhouse:register()  
      Para usar é bem simples, basta usar o comando /limparhouse, e dentro de alguns instantes todas as casas serão limpas.

      Creditos:
      -CaduGTX
      -JameesDavid
       
    • Por LeoTK
      estou com uma dúvida que é a seguinte meu servidor tem varias talkactions eu percebi que quando eu falo !online < não aparece no chat para todo mundo ver exemplo assim eu falo !online aparece os players online agora quando eu falo por exemplo !tutoriais foi uma talkaction que adicionei recentemente abre a aba com tal informação mais no chat aparece em amarelo !tutoriais como faço para isso não aparece apenas a talkaction ser dita e mostrar seu conteúdo sem ser mostrada como uma fala normal no chat isso é meio inutil mais me incomoda o fato de saber que posso tirar isso mais não sei pesso ajuda a vocês aguardo respostas
       
      algumas print's para melhor compreendimento
       
      print's 
       
      !online \/
       

       
       
       
      agora quando falo !tutoriais aparece o seguinte segue na print \/
       

       
       
      seguinte olhem no chat /\ em amarelo aparece para todos que estiverem ao redor gostaria que isso não aparecesse
       
      script da talkaction
       



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo