lord azteck
New Member
- Joined
- Jan 4, 2009
- Messages
- 221
- Reaction score
- 3
Hi there,
well my problem is that I've got an error in console just with my GOD character..
I've got this in console:
And in all the normal characters, and in the other GOD's works fine..
Some Information:
Server SQL (Mysql)
Distro: 0.3.6pl1 Crying Damson
data\globalevents\scripts\shop.lua
Hope you guys could help me,
thanks 4 your help.. :thumbup:
well my problem is that I've got an error in console just with my GOD character..
I've got this in console:
Code:
[13/03/2010 19:47:10] [Error - GlobalEvent Interface]
[13/03/2010 19:47:10] data/globalevents/scripts/shop.lua:onThink
[13/03/2010 19:47:10] Description:
[13/03/2010 19:47:10] data/globalevents/scripts/shop.lua:23: attempt to perform arithmetic on a boolean value
[13/03/2010 19:47:10] stack traceback:
[13/03/2010 19:47:10] data/globalevents/scripts/shop.lua:23: in function <data/globalevents/scripts/shop.lua:7>
[13/03/2010 19:47:10] [Error - GlobalEvents::think] Couldn't execute event: shop
And in all the normal characters, and in the other GOD's works fine..
Some Information:
Server SQL (Mysql)
Distro: 0.3.6pl1 Crying Damson
data\globalevents\scripts\shop.lua
Code:
-- ### CONFIG ###
-- message send to player by script "type" (types you can check in "constant.lua")
local SHOP_MSG_TYPE = 19
-- time (in seconds) between connections to SQL database by shop script
local SQL_interval = 30
-- ### END OF CONFIG ###
function onThink(interval, lastExecution)
local result_plr = db.getResult("SELECT * FROM z_ots_comunication WHERE `type` = 'login';")
if result_plr:getID() ~= -1 then
while true do
local id = tonumber(result_plr:getDataInt("id"))
local action = tostring(result_plr:getDataString("action"))
local delete = tonumber(result_plr:getDataInt("delete_it"))
local cid = getCreatureByName(tostring(result_plr:getDataString("name")))
if isPlayer(cid) then
local itemtogive_id = tonumber(result_plr:getDataInt("param1"))
local itemtogive_count = tonumber(result_plr:getDataInt("param2"))
local container_id = tonumber(result_plr:getDataInt("param3"))
local container_count = tonumber(result_plr:getDataInt("param4"))
local add_item_type = tostring(result_plr:getDataString("param5"))
local add_item_name = tostring(result_plr:getDataString("param6"))
local received_item = 0
local full_weight = add_item_type == 'container' and (container_count * getItemWeightById(itemtogive_id, itemtogive_count or 1)) + getItemWeightById(container_id, 1) or getItemWeightById(itemtogive_id, itemtogive_count or 1)
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
received_item = doPlayerAddItemEx(cid, doCreateItemEx(itemtogive_id, itemtogive_count))
end
if received_item == RETURNVALUE_NOERROR then
doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, 'You received >> '.. add_item_name ..' << from Alofoke-Online shop.')
db.executeQuery("DELETE FROM `z_ots_comunication` WHERE `id` = " .. id .. ";")
db.executeQuery("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 ..' << 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 ..' << 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
if not result_plr:next() then
break
end
end
result_plr:free()
end
return true
end
Hope you guys could help me,
thanks 4 your help.. :thumbup:
Last edited: