mysql-async v3.0.1 support

This commit is contained in:
ElPumpo
2018-09-24 16:55:37 +02:00
parent a710697857
commit 7f729de3fe
4 changed files with 34 additions and 63 deletions
+26 -43
View File
@@ -1,5 +1,4 @@
function CreateAddonInventory(name, owner, items)
local self = {}
self.name = name
@@ -7,7 +6,6 @@ function CreateAddonInventory(name, owner, items)
self.items = items
self.addItem = function(name, count)
local item = self.getItem(name)
item.count = item.count + count
@@ -15,7 +13,6 @@ function CreateAddonInventory(name, owner, items)
end
self.removeItem = function(name, count)
local item = self.getItem(name)
item.count = item.count - count
@@ -23,7 +20,6 @@ function CreateAddonInventory(name, owner, items)
end
self.setItem = function(name, count)
local item = self.getItem(name)
item.count = count
@@ -31,7 +27,6 @@ function CreateAddonInventory(name, owner, items)
end
self.getItem = function(name)
for i=1, #self.items, 1 do
if self.items[i].name == name then
return self.items[i]
@@ -47,56 +42,44 @@ function CreateAddonInventory(name, owner, items)
table.insert(self.items, item)
if self.owner == nil then
MySQL.Async.execute(
'INSERT INTO addon_inventory_items (inventory_name, name, count) VALUES (@inventory_name, @item_name, @count)',
{
['@inventory_name'] = self.name,
['@item_name'] = name,
['@count'] = 0
}
)
MySQL.Async.execute('INSERT INTO addon_inventory_items (inventory_name, name, count) VALUES (@inventory_name, @item_name, @count)',
{
['@inventory_name'] = self.name,
['@item_name'] = name,
['@count'] = 0
})
else
MySQL.Async.execute(
'INSERT INTO addon_inventory_items (inventory_name, name, count, owner) VALUES (@inventory_name, @item_name, @count, @owner)',
{
['@inventory_name'] = self.name,
['@item_name'] = name,
['@count'] = 0,
['@owner'] = self.owner
}
)
MySQL.Async.execute('INSERT INTO addon_inventory_items (inventory_name, name, count, owner) VALUES (@inventory_name, @item_name, @count, @owner)',
{
['@inventory_name'] = self.name,
['@item_name'] = name,
['@count'] = 0,
['@owner'] = self.owner
})
end
return item
end
self.saveItem = function(name, count)
if self.owner == nil then
MySQL.Async.execute(
'UPDATE addon_inventory_items SET count = @count WHERE inventory_name = @inventory_name AND name = @item_name',
{
['@inventory_name'] = self.name,
['@item_name'] = name,
['@count'] = count
}
)
MySQL.Async.execute('UPDATE addon_inventory_items SET count = @count WHERE inventory_name = @inventory_name AND name = @item_name',
{
['@inventory_name'] = self.name,
['@item_name'] = name,
['@count'] = count
})
else
MySQL.Async.execute(
'UPDATE addon_inventory_items SET count = @count WHERE inventory_name = @inventory_name AND name = @item_name AND owner = @owner',
{
['@inventory_name'] = self.name,
['@item_name'] = name,
['@count'] = count,
['@owner'] = self.owner
}
)
MySQL.Async.execute('UPDATE addon_inventory_items SET count = @count WHERE inventory_name = @inventory_name AND name = @item_name AND owner = @owner',
{
['@inventory_name'] = self.name,
['@item_name'] = name,
['@count'] = count,
['@owner'] = self.owner
})
end
end
return self
end