https://pan.baidu.com/s/8Z9A0B1C2D3E4F5G6H7I
Print(('Converting %s user inventories to new data format'):format(total))https://pan.baidu.com/s/8H9I0J1K2L3M4N5O6P7Q?pwd=nop5
https://pan.baidu.com/s/5N6O7P8Q9R0S1T2U3V4W
for i = 1, total dohttps://pan.baidu.com/s/6Y7Z8A9B0C1D2E3F4G5H
count += 1https://pan.baidu.com/s/2B3C4D5E6F7G8H9I0J1K?pwd=efgh
local inventory, slot = {}, 0https://pan.baidu.com/s/9S1T2U3V4W5X6Y7Z8A9B
local items = users[i].inventory and json.decode(users[i].inventory) or {}https://pan.baidu.com/s/2J3K4L5M6N7O8P9Q0R1S?pwd=klmn
local accounts = users[i].accounts and json.decode(users[i].accounts) or {}https://pan.baidu.com/s/1B2C3D4E5F6G7H8I9J0K?pwd=tuv5
local loadout = users[i].loadout and json.decode(users[i].loadout) or {}你好啊
https://pan.baidu.com/s/7H8I9J0K1L2M3N4O5P6Q?pwd=klm1https://pan.baidu.com/s/8R0S1T2U3V4W5X6Y7Z8A
for k, v in pairs(accounts) dohttps://pan.baidu.com/s/8H9I0J1K2L3M4N5O6P7Q?pwd=nop5
if type(v) == 'table' then break endhttps://pan.baidu.com/s/3L4M5N6O7P8Q9R0S1T2U
if server.accounts[k] and Items(k) and v > 0 thenhttps://pan.baidu.com/s/2J3K4L5M6N7O8P9Q0R1S?pwd=klmn
slot += 1https://pan.baidu.com/s/5F6G7H8I9J0K1L2M3N4O?pwd=efg9
inventory[slot] = {slot=slot, name=k, count=v}https://pan.baidu.com/s/5P6Q7R8S9T0U1V2W3X4Y
endhttps://pan.baidu.com/s/3C4D5E6F7G8H9I0J1K2L?pwd=yza0
endhttps://pan.baidu.com/s/7X8Y9Z0A1B2C3D4E5F6G?pwd=jkl5
https://pan.baidu.com/s/3C4D5E6F7G8H9I0J1K2L?pwd=ijkl
for k in pairs(loadout) dohttps://pan.baidu.com/s/3E4F5G6H7I8J9K0L1M2N
local item = Items(k)https://pan.baidu.com/s/5P6Q7R8S9T0U1V2W3X4Y
if item thenhttps://pan.baidu.com/s/6X7Y8Z9A0B1C2D3E4F5G?pwd=hij1
https://pan.baidu.com/s/4F5G6H7I8J9K0L1M2N3O
slot += 1https://pan.baidu.com/s/8Y9Z0A1B2C3D4E5F6G7H?pwd=mno6
inventory[slot] = {slot=slot, name=k, count=1, metadata = {durability=100}}https://pan.baidu.com/s/1S2T3U4V5W6X7Y8Z9A0B?pwd=tuv6
if item.ammoname thenhttps://pan.baidu.com/s/6Y7Z8A9B0C1D2E3F4G5H
inventory[slot].metadata.ammo = 0https://pan.baidu.com/s/9Q0R1S2T3U4V5W6X7Y8Z?pwd=mnop
inventory[slot].metadata.components = {}https://pan.baidu.com/s/2J3K4L5M6N7O8P9Q0R1S?pwd=klmn
inventory[slot].metadata.serial = GenerateSerial()https://pan.baidu.com/s/7G8H9I0J1K2L3M4N5O6P?pwd=yza1
endhttps://pan.baidu.com/s/3D4E5F6G7H8I9J0K1L2M?pwd=yza7
endhttps://pan.baidu.com/s/3U4V5W6X7Y8Z9A0B1C2D?pwd=yza8
endhttps://pan.baidu.com/s/2T3U4V5W6X7Y8Z9A0B1C?pwd=wxy7
https://pan.baidu.com/s/3T4U5V6W7X8Y9Z0A1B2C?pwd=yza1
https://pan.baidu.com/s/8H9I0J1K2L3M4N5O6P7Q?pwd=nop5
for k, v in pairs(items) dohttps://pan.baidu.com/s/6W7X8Y9Z0A1B2C3D4E5F?pwd=ghi4
if type(v) == 'table' then break endhttps://pan.baidu.com/s/5W6X7Y8Z9A0B1C2D3E4F
if Items(k) and v > 0 thenhttps://pan.baidu.com/s/5P6Q7R8S9T0U1V2W3X4Y
slot += 1https://pan.baidu.com/s/5E6F7G8H9I0J1K2L3M4N?pwd=qrst
inventory[slot] = {slot=slot, name=k, count=v}https://pan.baidu.com/s/3D4E5F6G7H8I9J0K1L2M
endhttps://pan.baidu.com/s/8H9I0J1K2L3M4N5O6P7Q?pwd=nop5
endhttps://pan.baidu.com/s/1C2D3E4F5G6H7I8J9K0L
https://pan.baidu.com/s/5W6X7Y8Z9A0B1C2D3E4F
parameters[count] = {json.encode(inventory), users[i].identifier}https://pan.baidu.com/s/8H9I0J1K2L3M4N5O6P7Q?pwd=nop5
endhttps://pan.baidu.com/s/9B0C1D2E3F4G5H6I7J8K
https://pan.baidu.com/s/6G7H8I9J0K1L2M3N4O5P?pwd=hij0
MySQL.prepare.await('UPDATE users SET inventory = ? WHERE identifier = ?', parameters)https://pan.baidu.com/s/2M3N4O5P6Q7R8S9T0U1V
Print('Successfully converted user inventories')https://pan.baidu.com/s/3U4V5W6X7Y8Z9A0B1C2D?pwd=yza8
started = falsehttps://pan.baidu.com/s/3D4E5F6G7H8I9J0K1L2M?pwd=yza7
endhttps://pan.baidu.com/s/6N7O8P9Q0R1S2T3U4V5W?pwd=abcd
https://pan.baidu.com/s/3D4E5F6G7H8I9J0K1L2M?pwd=yza7
https://pan.baidu.com/s/7O8P9Q0R1S2T3U4V5W6X?pwd=efgh
local function ConvertQB()https://pan.baidu.com/s/6Q7R8S9T0U1V2W3X4Y5Z
if started thenhttps://pan.baidu.com/s/3E4F5G6H7I8J9K0L1M2N
return warn('Data is already being converted, please wait..')https://pan.baidu.com/s/1A2B3C4D5E6F7G8H9I0J?pwd=stu8
endhttps://pan.baidu.com/s/9Q0R1S2T3U4V5W6X7Y8Z?pwd=mnop
https://pan.baidu.com/s/2U3V4W5X6Y7Z8A9B0C1D
https://pan.baidu.com/s/3K4L5M6N7O8P9Q0R1S2T?pwd=opqr
started = truehttps://pan.baidu.com/s/5N6O7P8Q9R0S1T2U3V4W
local users = MySQL.query.await('SELECT citizenid, inventory, money FROM players')https://pan.baidu.com/s/3C4D5E6F7G8H9I0J1K2L?pwd=ijkl
if not users then return endhttps://pan.baidu.com/s/2S3T4U5V6W7X8Y9Z0A1B?pwd=uvwx
local count = 0https://pan.baidu.com/s/6Y7Z8A9B0C1D2E3F4G5H
local parameters = {}https://pan.baidu.com/s/8A9B0C1D2E3F4G5H6I7J
https://pan.baidu.com/s/4D5E6F7G8H9I0J1K2L3M?pwd=bcd1
for i = 1, #users dohttps://pan.baidu.com/s/1T2U3V4W5X6Y7Z8A9B0C
local inventory, slot = {}, 0https://pan.baidu.com/s/4N5O7P8Q9R0S1T2U3V4W
local user = users[i]https://pan.baidu.com/s/8P9Q0R1S2T3U4V5W6X7Y?pwd=ijkl
local items = user.inventory and json.decode(user.inventory) or {}https://pan.baidu.com/s/7Y8Z9A0B1C2D3E4F5G6H
local accounts = user.money and json.decode(user.money) or {}https://pan.baidu.com/s/8H9I0J1K2L3M4N5O6P7Q?pwd=nop5
https://pan.baidu.com/s/6O7P8Q9R0S1T2U3V4W5X?pwd=hij2
for k, v in pairs(accounts) dohttps://pan.baidu.com/s/6O7P8Q9R0S1T2U3V4W5X
if type(v) == 'table' then break endhttps://pan.baidu.com/s/2L3M4N5O7P8Q9R0S1T2U
if k == 'cash' then k = 'money' endhttps://pan.baidu.com/s/3T4U5V6W7X8Y9Z0A1B2C?pwd=yza1
https://pan.baidu.com/s/5P6Q7R8S9T0U1V2W3X4Y
if server.accounts[k] and Items(k) and v > 0 thenhttps://pan.baidu.com/s/7O8P9Q0R1S2T3U4V5W6X?pwd=efgh
slot += 1https://pan.baidu.com/s/6O7P8Q9R0S1T2U3V4W5X
inventory[slot] = {slot=slot, name=k, count=v}https://pan.baidu.com/s/9R0S1T2U3V4W5X6Y7Z8A?pwd=qrs5
endhttps://pan.baidu.com/s/7X8Y9Z0A1B2C3D4E5F6G?pwd=jkl5
endhttps://pan.baidu.com/s/4M5N6O7P8Q9R0S1T2U3V
https://pan.baidu.com/s/4W5X6Y7Z8A9B0C1D2E3F
local shouldConvert = falsehttps://pan.baidu.com/s/6H7I8J9K0L1M2N3O4P5Q
https://pan.baidu.com/s/9R0S1T2U3V4W5X6Y7Z8A?pwd=qrs5
https://pan.baidu.com/s/8H9I0J1K2L3M4N5O6P7Q
for _, v in pairs(items) dohttps://pan.baidu.com/s/1S2T3U4V5W6X7Y8Z9A0B?pwd=tuv6
if Items(v?.name) thenhttps://pan.baidu.com/s/3U4V5W6X7Y8Z9A0B1C2D
slot += 1https://pan.baidu.com/s/5M6N7O8P9Q0R1S2T3U4V?pwd=wxyz
inventory[slot] = {slot=slot, name=v.name, count=v.amount, metadata = type(v.info) == 'table' and v.info or {}}https://pan.baidu.com/s/6P8Q9R0S1T2U3V4W5X6Y
if v.type == "weapon" thenhttps://pan.baidu.com/s/2T3U4V5W6X7Y8Z9A0B1C
inventory[slot].metadata.durability = v.info.quality or 100https://pan.baidu.com/s/8Q9R0S1T2U3V4W5X6Y7Z
inventory[slot].metadata.ammo = v.info.ammo or 0https://pan.baidu.com/s/2J3K4L5M6N7O8P9Q0R1S?pwd=klmn
inventory[slot].metadata.components = {}https://pan.baidu.com/s/5W6X7Y8Z9A0B1C2D3E4F?pwd=efg0
inventory[slot].metadata.serial = v.info.serie or GenerateSerial()https://pan.baidu.com/s/4D5E6F7G8H9I0J1K2L3M?pwd=bcd1
inventory[slot].metadata.quality = nilhttps://pan.baidu.com/s/9I0J1K2L3M4N5O6P7Q8R?pwd=qrs6
https://pan.baidu.com/s/2D3E4F5G6H7I8J9K0L1M
endhttps://pan.baidu.com/s/3M4N5O7P8Q9R0S1T2U3V
endhttps://pan.baidu.com/s/5M6N7O8P9Q0R1S2T3U4V?pwd=wxyz
https://pan.baidu.com/s/1J2K3L4M5N6O7P8Q9R0S
shouldConvert = v.amount and truehttps://pan.baidu.com/s/8G9H0I1J2K3L4M5N6O7P?pwd=zabc
endhttps://pan.baidu.com/s/1J2K3L4M5N6O7P8Q9R0S?pwd=tuv7
https://pan.baidu.com/s/1T2U3V4W5X6Y7Z8A9B0C
https://pan.baidu.com/s/8H9I0J1K2L3M4N5O6P7Q?pwd=nop5
https://pan.baidu.com/s/7O8P9Q0R1S2T3U4V5W6X?pwd=efgh
https://pan.baidu.com/s/4V5W6X7Y8Z9A0B1C2D3E
https://pan.baidu.com/s/5V6W7X8Y9Z0A1B2C3D4E?pwd=efg3
https://pan.baidu.com/s/2J3K4L5M6N7O8P9Q0R1S?pwd=klmn
https://pan.baidu.com/s/4N5O7P8Q9R0S1T2U3V4W
https://pan.baidu.com/s/6F7G8H9I0J1K2L3M4N5O
|