Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate

Autor Topic: Ayuda con Jewel Bank Script LUA  (Visto 410 veces)

0 Miembros and 1 Guest are viewing this topic.

Offline Elnegrox Posteado: March 14, 2024, 02:01:18 AM

  • 0 puntos por ventas
  • *
  • Rank: Dedicado
  • Posts: 32
  • Gracias recibida: 14
  • ve
Estoy usando estos archivos

https://tuservermu.com.ve/index.php?topic=45113.0

Buenas, alguien me podria ayudar? Estoy usando este codigo,agregué apenas las lineas de comando y conexion SQL


Code: [Select]
BridgeFunctionAttach("OnReadScript","ScriptBankDep_OnReadScript")
BridgeFunctionAttach("OnCommandManager","ScripBankDep_OnCommandManager")

function ScriptBankDep_OnReadScript()

if(not SQLCheck()) then

SQLConnect("MuOnline_EX501","sa","1234567890")

end

end

function ScripBankDep_OnCommandManager(aIndex,code,arg)

if(code == 89) then

BankDep(aIndex,arg)

return 1

end

return 0
end

function BankDep(aIndex,arg)
local User = GetObjectAccount(aIndex)
SQLQuery("SELECT TOP (1) memb___id, BSoul, BBless, BLife, BChaos, BCreation, BGuardian, BHarmony, BRefin, BLowRefin, BGemstone FROM MEMB_INFO WHERE memb___id='"..User.."' order by memb___id")
SQLFetch()
SQLClose()
local joia = CommandGetArgString(arg,0)
local quantidade = CommandGetArgNumber(arg,1)
if quantidade <= 0 then
NoticeSend(aIndex,1,"O número de jóias a ser depositado deve ser maior do que 0")
else
if joia == "bless" then
local blessinv = InventoryGetItemCount(aIndex,7181,-1)
if quantidade <= blessinv then
InventoryDelItemCount(aIndex,7181,-1,quantidade)
SQLQuery("Update MEMB_INFO set BBless=BBless+"..quantidade.." where memb___id='"..User.."'")
NoticeSend(aIndex,1,string.format("Você adicionou "..quantidade.." Bless ao seu banco!"))
else
NoticeSend(aIndex,1,"Você não tem essa quantidade de Bless para depositar")
end
elseif joia == "soul" then
local soulinv = InventoryGetItemCount(aIndex,7182,-1)
if quantidade <= soulinv then
InventoryDelItemCount(aIndex,7182,-1,quantidade)
SQLQuery("Update MEMB_INFO set BSoul=BSoul+"..quantidade.." where memb___id='"..User.."'")
NoticeSend(aIndex,1,string.format("Você adicionou "..quantidade.." Soul ao seu banco!"))
else
NoticeSend(aIndex,1,"Você não tem essa quantidade de Soul para depositar")
end
elseif joia == "life" then
local lifeinv = InventoryGetItemCount(aIndex,7184,-1)
if quantidade <= lifeinv then
InventoryDelItemCount(aIndex,7184,-1,quantidade)
SQLQuery("Update MEMB_INFO set BLife=BLife+"..quantidade.." where memb___id='"..User.."'")
NoticeSend(aIndex,1,string.format("Você adicionou "..quantidade.." Life ao seu banco!"))
else
NoticeSend(aIndex,1,"Você não tem essa quantidade de Life para depositar")
end
elseif joia == "chaos" then
local chaosinv = InventoryGetItemCount(aIndex,6159,-1)
if quantidade <= chaosinv then
InventoryDelItemCount(aIndex,6159,-1,quantidade)
SQLQuery("Update MEMB_INFO set BChaos=BChaos+"..quantidade.." where memb___id='"..User.."'")
NoticeSend(aIndex,1,string.format("Você adicionou "..quantidade.." Chaos ao seu banco!"))
else
NoticeSend(aIndex,1,"Você não tem essa quantidade de Chaos para depositar")
end
elseif joia == "creation" then
local creationinv = InventoryGetItemCount(aIndex,7190,-1)
if quantidade <= creationinv then
InventoryDelItemCount(aIndex,7190,-1,quantidade)
SQLQuery("Update MEMB_INFO set BCreation=BCreation+"..quantidade.." where memb___id='"..User.."'")
NoticeSend(aIndex,1,string.format("Você adicionou "..quantidade.." Creation ao seu banco!"))
else
NoticeSend(aIndex,1,"Você não tem essa quantidade de Creation para depositar")
end
elseif joia == "guardian" then
local guardianinv = InventoryGetItemCount(aIndex,7199,-1)
if quantidade <= guardianinv then
InventoryDelItemCount(aIndex,7199,-1,quantidade)
SQLQuery("Update MEMB_INFO set BGuardian=BGuardian+"..quantidade.." where memb___id='"..User.."'")
NoticeSend(aIndex,1,string.format("Você adicionou "..quantidade.." Guardian ao seu banco!"))
else
NoticeSend(aIndex,1,"Você não tem essa quantidade de Guardian para depositar")
end
elseif joia == "harmony" then
local harmonyinv = InventoryGetItemCount(aIndex,7210,-1)
if quantidade <= harmonyinv then
InventoryDelItemCount(aIndex,7210,-1,quantidade)
SQLQuery("Update MEMB_INFO set BHarmony=BHarmony+"..quantidade.." where memb___id='"..User.."'")
NoticeSend(aIndex,1,string.format("Você adicionou "..quantidade.." Harmony ao seu banco!"))
else
NoticeSend(aIndex,1,"Você não tem essa quantidade de Harmony para depositar")
end
elseif joia == "hrefin" then
local hrefininv = InventoryGetItemCount(aIndex,7212,-1)
if quantidade <= hrefininv then
InventoryDelItemCount(aIndex,7212,-1,quantidade)
SQLQuery("Update MEMB_INFO set BRefin=BRefin+"..quantidade.." where memb___id='"..User.."'")
NoticeSend(aIndex,1,string.format("Você adicionou "..quantidade.." High Refin ao seu banco!"))
else
NoticeSend(aIndex,1,"Você não tem essa quantidade de High Refin para depositar")
end
elseif joia == "lrefin" then
local lrefininv = InventoryGetItemCount(aIndex,7211,-1)
if quantidade <= lrefininv then
InventoryDelItemCount(aIndex,7211,-1,quantidade)
SQLQuery("Update MEMB_INFO set BLowRefin=BLowRefin+"..quantidade.." where memb___id='"..User.."'")
NoticeSend(aIndex,1,string.format("Você adicionou "..quantidade.." Low Refin ao seu banco!"))
else
NoticeSend(aIndex,1,"Você não tem essa quantidade de Low Refin para depositar")
end
elseif joia == "gemstone" then
local gemnsinv = InventoryGetItemCount(aIndex,7209,-1)
if quantidade <= gemnsinv then
InventoryDelItemCount(aIndex,7209,-1,quantidade)
SQLQuery("Update MEMB_INFO set BGemstone=BGemstone+"..quantidade.." where memb___id='"..User.."'")
NoticeSend(aIndex,1,string.format("Você adicionou "..quantidade.." Gemstone ao seu banco!"))
else
NoticeSend(aIndex,1,"Você não tem essa quantidade de Gemstone para depositar")
end
else
NoticeSend(aIndex,1,"Você deve escolher uma jóia válida.")
end
end
end

El estado del banco funciona bien, mas en el caso de deposito de joyas siempre recibo este mensaje:


Code: [Select]
	if quantidade <= 0 then
NoticeSend(aIndex,1,"O número de jóias a ser depositado deve ser maior do que 0")

Tambien dejare aqui el código ScriptCore.lua para que ustedes puedan ver las opciones, agradecido por la ayuda
Code: [Select]
require("System\\ScriptDefine")
require("System\\ScriptReader")


BridgeFunctionTable = {}


function BridgeFunctionAttach(BridgeName,FunctionName)

if BridgeName == "OnReadScript" then

if BridgeFunctionTable[1] == nil then BridgeFunctionTable[1] = {} end
table.insert(BridgeFunctionTable[1],{Function=FunctionName})

elseif BridgeName == "OnShutScript" then

if BridgeFunctionTable[2] == nil then BridgeFunctionTable[2] = {} end
table.insert(BridgeFunctionTable[2],{Function=FunctionName})

elseif BridgeName == "OnTimerThread" then

if BridgeFunctionTable[3] == nil then BridgeFunctionTable[3] = {} end
table.insert(BridgeFunctionTable[3],{Function=FunctionName})

elseif BridgeName == "OnCommandManager" then

if BridgeFunctionTable[4] == nil then BridgeFunctionTable[4] = {} end
table.insert(BridgeFunctionTable[4],{Function=FunctionName})

elseif BridgeName == "OnCharacterEntry" then

if BridgeFunctionTable[5] == nil then BridgeFunctionTable[5] = {} end
table.insert(BridgeFunctionTable[5],{Function=FunctionName})

elseif BridgeName == "OnCharacterClose" then

if BridgeFunctionTable[6] == nil then BridgeFunctionTable[6] = {} end
table.insert(BridgeFunctionTable[6],{Function=FunctionName})

elseif BridgeName == "OnNpcTalk" then

if BridgeFunctionTable[7] == nil then BridgeFunctionTable[7] = {} end
table.insert(BridgeFunctionTable[7],{Function=FunctionName})

elseif BridgeName == "OnMonsterDie" then

if BridgeFunctionTable[8] == nil then BridgeFunctionTable[8] = {} end
table.insert(BridgeFunctionTable[8],{Function=FunctionName})

elseif BridgeName == "OnUserDie" then

if BridgeFunctionTable[9] == nil then BridgeFunctionTable[9] = {} end
table.insert(BridgeFunctionTable[9],{Function=FunctionName})

elseif BridgeName == "OnUserRespawn" then

if BridgeFunctionTable[10] == nil then BridgeFunctionTable[10] = {} end
table.insert(BridgeFunctionTable[10],{Function=FunctionName})

elseif BridgeName == "OnCheckUserTarget" then

if BridgeFunctionTable[11] == nil then BridgeFunctionTable[11] = {} end
table.insert(BridgeFunctionTable[11],{Function=FunctionName})

elseif BridgeName == "OnCheckUserKiller" then

if BridgeFunctionTable[12] == nil then BridgeFunctionTable[12] = {} end
table.insert(BridgeFunctionTable[12],{Function=FunctionName})

elseif BridgeName == "OnItemPick" then

if BridgeFunctionTable[13] == nil then BridgeFunctionTable[13] = {} end
table.insert(BridgeFunctionTable[13],{Function=FunctionName})

elseif BridgeName == "OnItemDrop" then

if BridgeFunctionTable[14] == nil then BridgeFunctionTable[14] = {} end
table.insert(BridgeFunctionTable[14],{Function=FunctionName})

elseif BridgeName == "OnPacketRecv" then

if BridgeFunctionTable[15] == nil then BridgeFunctionTable[15] = {} end
table.insert(BridgeFunctionTable[15],{Function=FunctionName})

elseif BridgeName == "OnSQLAsyncResult" then

if BridgeFunctionTable[16] == nil then BridgeFunctionTable[16] = {} end
table.insert(BridgeFunctionTable[16],{Function=FunctionName})

end

end


function BridgeFunction_OnReadScript()

if BridgeFunctionTable[1] ~= nil then

for n=1,#BridgeFunctionTable[1],1 do

_G[BridgeFunctionTable[1][n].Function]()

end

end

end


function BridgeFunction_OnShutScript()

if BridgeFunctionTable[2] ~= nil then

for n=1,#BridgeFunctionTable[2],1 do

_G[BridgeFunctionTable[2][n].Function]()

end

end

end


function BridgeFunction_OnTimerThread()

if BridgeFunctionTable[3] ~= nil then

for n=1,#BridgeFunctionTable[3],1 do

_G[BridgeFunctionTable[3][n].Function]()

end

end

end


function BridgeFunction_OnCommandManager(aIndex,code,arg)

if BridgeFunctionTable[4] ~= nil then

for n=1,#BridgeFunctionTable[4],1 do

local ret = _G[BridgeFunctionTable[4][n].Function](aIndex,code,arg)

if ret ~= 0 then return 1 end

end

end

return 0

end


function BridgeFunction_OnCharacterEntry(aIndex)

if BridgeFunctionTable[5] ~= nil then

for n=1,#BridgeFunctionTable[5],1 do

_G[BridgeFunctionTable[5][n].Function](aIndex)

end

end

end


function BridgeFunction_OnCharacterClose(aIndex)

if BridgeFunctionTable[6] ~= nil then

for n=1,#BridgeFunctionTable[6],1 do

_G[BridgeFunctionTable[6][n].Function](aIndex)

end

end

end


function BridgeFunction_OnNpcTalk(aIndex,bIndex)

if BridgeFunctionTable[7] ~= nil then

for n=1,#BridgeFunctionTable[7],1 do

local ret = _G[BridgeFunctionTable[7][n].Function](aIndex,bIndex)

if ret ~= 0 then return 1 end

end

end

return 0

end


function BridgeFunction_OnMonsterDie(aIndex,bIndex)

if BridgeFunctionTable[8] ~= nil then

for n=1,#BridgeFunctionTable[8],1 do

_G[BridgeFunctionTable[8][n].Function](aIndex,bIndex)

end

end

end


function BridgeFunction_OnUserDie(aIndex,bIndex)

if BridgeFunctionTable[9] ~= nil then

for n=1,#BridgeFunctionTable[9],1 do

_G[BridgeFunctionTable[9][n].Function](aIndex,bIndex)

end

end

end


function BridgeFunction_OnUserRespawn(aIndex,KillerType)

if BridgeFunctionTable[10] ~= nil then

for n=1,#BridgeFunctionTable[10],1 do

_G[BridgeFunctionTable[10][n].Function](aIndex,KillerType)

end

end

end


function BridgeFunction_OnCheckUserTarget(aIndex,bIndex)

if BridgeFunctionTable[11] ~= nil then

for n=1,#BridgeFunctionTable[11],1 do

local ret = _G[BridgeFunctionTable[11][n].Function](aIndex,bIndex)

if ret == 0 then return 0 end

end

end

return 1

end


function BridgeFunction_OnCheckUserKiller(aIndex,bIndex)

if BridgeFunctionTable[12] ~= nil then

for n=1,#BridgeFunctionTable[12],1 do

local ret = _G[BridgeFunctionTable[12][n].Function](aIndex,bIndex)

if ret == 0 then return 0 end

end

end

return 1

end


function BridgeFunction_OnItemPick(aIndex,index,ItemTable)

if BridgeFunctionTable[13] ~= nil then

for n=1,#BridgeFunctionTable[13],1 do

local ret = _G[BridgeFunctionTable[13][n].Function](aIndex,index,ItemTable)

if ret == 0 then return 0 end

end

end

return 1

end


function BridgeFunction_OnItemDrop(aIndex,index,x,y,ItemTable)

if BridgeFunctionTable[14] ~= nil then

for n=1,#BridgeFunctionTable[14],1 do

local ret = _G[BridgeFunctionTable[14][n].Function](aIndex,index,x,y,ItemTable)

if ret == 0 then return 0 end

end

end

return 1

end


function BridgeFunction_OnPacketRecv(aIndex,buff,size)

if BridgeFunctionTable[15] ~= nil then

for n=1,#BridgeFunctionTable[15],1 do

_G[BridgeFunctionTable[15][n].Function](aIndex,buff,size)

end

end

end


function BridgeFunction_OnSQLAsyncResult(label,param,result)

if BridgeFunctionTable[16] ~= nil then

for n=1,#BridgeFunctionTable[16],1 do

local ret = _G[BridgeFunctionTable[16][n].Function](label,param,result)

if ret == 1 then return 0 end

if ret == 2 then return 1 end

end

end

return 0

end



Gracias:


Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate


 

Related Topics

  Subject / Started by Replies Last post
3 Replies
1785 Views
Last post August 21, 2025, 07:59:49 PM
by BooM
2 Replies
2183 Views
Last post March 03, 2024, 07:20:46 PM
by ZabiinoOo
12 Replies
5053 Views
Last post October 19, 2024, 05:22:09 PM
by gambasoxd
0 Replies
366 Views
Last post August 05, 2024, 04:43:11 PM
by wiury
4 Replies
300 Views
Last post July 27, 2025, 07:21:21 PM
by SURFRAiT