Ir para conteúdo

Featured Replies

Postado

1º Bom você está no seu servidor, e compra seu item pela loja do site, más o servidor não te entrega o item?

Então isso está já resolvido, bem aqui, olhe abaixo

 

Bom na data de seu servidor você entra na pasta e vai até a pasta globalevents após isso abra o arquivo globalevents.xml, após isso coloque o seguinte código dentro do arquivo.

<globalevent name="Shop" interval="60000" script="shop.lua" />

Após isso entre na pasta scripts que estará dentro da pasta globalevents, bom crie o arquivo shop.lua ou o nome que desejar sendo que tenha o ".lua" no final, após isso coloque os seguintes códigos dentro do arquivo que você criou

-- ### CONFIG ###
-- message send to player by script "type" (types you can check in "global.lua")
SHOP_MSG_TYPE = 18
-- time (in seconds) between connections to SQL database by shop script
SQL_interval = 30
-- ### END OF CONFIG ###
function onThink(interval, lastExecution)
  local result_plr = db.storeQuery("SELECT * FROM z_ots_comunication")
  if(result_plr ~= false) then
  repeat
  local id = tonumber(result.getDataInt(result_plr, "id"))
  local action = tostring(result.getDataString(result_plr, "action"))
  local delete = tonumber(result.getDataInt(result_plr, "delete_it"))
  local cid = getPlayerByName(tostring(result.getDataString(result_plr, "name")))
  if(cid) then
  local itemtogive_id = tonumber(result.getDataInt(result_plr, "param1"))
  local itemtogive_count = tonumber(result.getDataInt(result_plr, "param2"))
  local container_id = tonumber(result.getDataInt(result_plr, "param3"))
  local container_count = tonumber(result.getDataInt(result_plr, "param4"))
  local add_item_type = tostring(result.getDataString(result_plr, "param5"))
  local add_item_name = tostring(result.getDataString(result_plr, "param6"))
  local received_item = 0
  local full_weight = 0
  if(add_item_type == 'container') then
  container_weight = getItemWeight(container_id, 1)
  if(isItemRune(itemtogive_id)) then
  items_weight = container_count * getItemWeight(itemtogive_id, 1)
  else
  items_weight = container_count * getItemWeight(itemtogive_id, itemtogive_count)
  end
  full_weight = items_weight + container_weight
  else
  full_weight = getItemWeight(itemtogive_id, itemtogive_count)
  if(isItemRune(itemtogive_id)) then
  full_weight = getItemWeight(itemtogive_id, 1)
  else
  full_weight = getItemWeight(itemtogive_id, itemtogive_count)
  end
  end
  local free_cap = getPlayerFreeCap(cid)
  if(full_weight <= free_cap) then
  if(add_item_type == 'container') then
  local new_container = doCreateItemEx(container_id, 1)
  local iter = 0
  while(iter ~= container_count) do
  doAddContainerItem(new_container, itemtogive_id, itemtogive_count)
  iter = iter + 1
  end
  received_item = doPlayerAddItemEx(cid, new_container)
  else
  local new_item = doCreateItemEx(itemtogive_id, itemtogive_count)
  received_item = doPlayerAddItemEx(cid, new_item)
  end
  if(type(received_item) == "number" and received_item == RETURNVALUE_NOERROR) then
  doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, 'You received >> '.. add_item_name ..' << from OTS shop.')
  db.query("DELETE FROM `z_ots_comunication` WHERE `id` = " .. id .. ";")
  db.query("UPDATE `z_shop_history_item` SET `trans_state`='realized', `trans_real`=" .. os.time() .. " WHERE id = " .. id .. ";")
  else
  doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. Please make place for this item in your backpack/hands and wait about '.. SQL_interval ..' seconds to get it.')
  end
  else
  doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. It weight is '.. full_weight ..' oz., you have only '.. free_cap ..' oz. free capacity. Put some items in depot and wait about '.. SQL_interval ..' seconds to get it.')
  end
  end
  until not result.next(result_plr)
  result.free(result_plr)
  end
  return true
end

Este código só funciona no TFS 1.0+

 

2º Se continuar a persistir este erro, tente ver em sua database se tem a tabela 'z_ots_comunication'

Se não tiver adicione a tabela fazendo os seguintes procedimentos.

 

1º Tenha o programa Notepad++

2º Vá até o diretório de seu servidor ou o local que está a database que foi importada para o phpMyAdmin e abra com o Notepad++

3º Adicione os seguintes códigos no Notepad++

CREATE TABLE IF NOT EXISTS `z_ots_comunication` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `type` varchar(255) NOT NULL,
  `action` varchar(255) NOT NULL,
  `param1` varchar(255) NOT NULL,
  `param2` varchar(255) NOT NULL,
  `param3` varchar(255) NOT NULL,
  `param4` varchar(255) NOT NULL,
  `param5` varchar(255) NOT NULL,
  `param6` varchar(255) NOT NULL,
  `param7` varchar(255) NOT NULL,
  `delete_it` int(2) NOT NULL DEFAULT '1',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

Após isso só importar novamente sua database para o phpMyAdmin.

 

Espero que tenha ajudado.

 

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.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo