Postado Abril 17, 2020 5 anos Autor 5 minutos atrás, KOLISAO disse: Tenta agr local nomeItem, itemNull, qtd = "NOME DO ITEM", 5805, 1 local config = { [storageX] = {"NOME DO ITEM", {item_id, QTD}}, [storageY] = {"NOME DO ITEM", {item_id, QTD}} } function onKill(cid, target, lastHit) if (not isPlayer(cid)) or (not isPlayer(target)) then return true end for storage, itemId in pairs(config) do if getPlayerStorageValue(cid, storage) >= 1 then doPlayerAddItem(cid, itemId[2]) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, "Você matou ".. getPlayerName(target) .." e recebeu ".. itemId[1] ..".") else doPlayerAddItem(cid, itemNull, qtd) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, "Você matou ".. getPlayerName(target) .." e recebeu ".. nomeItem ..".") end break end return true end mesma coisa, tando com a storage e mesmo assim recebo o item que não precisa de storage.
Postado Abril 17, 2020 5 anos @OinomedRellik Testa aí, eu tinha esquecido de nomear as variáveis corretamente (muito tempo sem programar da nisso) local config = { storageX = 1001, itemX = 5943, countX = 1, StorageY = 1002, itemY = 5808, countY = 1, item0 = 5805, count0 = 1 } function onKill(cid, target, lastHit) if isPlayer(target) then if getPlayerStorageValue(target, config.storageX) == 1 then doPlayerAddItem(cid, config.itemX, config.countX) elseif getPlayerStorageValue(target, config.storageY) == 1 then doPlayerAddItem(cid, config.itemY, config.countY) else doPlayerAddItem(cid, config.item0, config.count0) end end return true end
Postado Abril 17, 2020 5 anos Autor 8 horas atrás, Storm disse: @OinomedRellik Testa aí, eu tinha esquecido de nomear as variáveis corretamente (muito tempo sem programar da nisso) local config = { storageX = 1001, itemX = 5943, countX = 1, StorageY = 1002, itemY = 5808, countY = 1, item0 = 5805, count0 = 1 } function onKill(cid, target, lastHit) if isPlayer(target) then if getPlayerStorageValue(target, config.storageX) == 1 then doPlayerAddItem(cid, config.itemX, config.countX) elseif getPlayerStorageValue(target, config.storageY) == 1 then doPlayerAddItem(cid, config.itemY, config.countY) else doPlayerAddItem(cid, config.item0, config.count0) end end return true end tem como por para os três items items ficarem com essa descrição? Esse eh o item de X. Que estava no level X no momento de ser assassinado por Y.
Postado Abril 17, 2020 5 anos @OinomedRellik Testa aí, mas acho que não vai dar certo: local config = { storageX = 1001, itemX = 5943, countX = 1, StorageY = 1002, itemY = 5808, countY = 1, item0 = 5805, count0 = 1 } function onKill(cid, target, lastHit) if isPlayer(target) then if getPlayerStorageValue(target, config.storageX) == 1 then local item = doPlayerAddItem(cid, config.itemX, config.countX) doSetItemSpecialDescription(item.uid, "Esse é o item de ".. getCreatureName(target) ..", que estava no level ".. getPlayerLevel(target) .." no momento de ser assassinado por ".. getCreatureName(cid) ..".") elseif getPlayerStorageValue(target, config.storageY) == 1 then local item = doPlayerAddItem(cid, config.itemY, config.countY) doSetItemSpecialDescription(item.uid, "Esse é o item de ".. getCreatureName(target) ..", que estava no level ".. getPlayerLevel(target) .." no momento de ser assassinado por ".. getCreatureName(cid) ..".") else local item = doPlayerAddItem(cid, config.item0, config.count0) doSetItemSpecialDescription(item.uid, "Esse é o item de ".. getCreatureName(target) ..", que estava no level ".. getPlayerLevel(target) .." no momento de ser assassinado por ".. getCreatureName(cid) ..".") end end return true end
Postado Abril 17, 2020 5 anos Autor 32 minutos atrás, Storm disse: @OinomedRellik Testa aí, mas acho que não vai dar certo: local config = { storageX = 1001, itemX = 5943, countX = 1, StorageY = 1002, itemY = 5808, countY = 1, item0 = 5805, count0 = 1 } function onKill(cid, target, lastHit) if isPlayer(target) then if getPlayerStorageValue(target, config.storageX) == 1 then local item = doPlayerAddItem(cid, config.itemX, config.countX) doSetItemSpecialDescription(item.uid, "Esse é o item de ".. getCreatureName(target) ..", que estava no level ".. getPlayerLevel(target) .." no momento de ser assassinado por ".. getCreatureName(cid) ..".") elseif getPlayerStorageValue(target, config.storageY) == 1 then local item = doPlayerAddItem(cid, config.itemY, config.countY) doSetItemSpecialDescription(item.uid, "Esse é o item de ".. getCreatureName(target) ..", que estava no level ".. getPlayerLevel(target) .." no momento de ser assassinado por ".. getCreatureName(cid) ..".") else local item = doPlayerAddItem(cid, config.item0, config.count0) doSetItemSpecialDescription(item.uid, "Esse é o item de ".. getCreatureName(target) ..", que estava no level ".. getPlayerLevel(target) .." no momento de ser assassinado por ".. getCreatureName(cid) ..".") end end return true end error que ocorre é esse Spoiler [Error - LuaInterface::loadFile] data/creaturescripts/scripts/news/heartecerebro.lua:21: ')' expected (to close '(' at line 20) near 'elseif' [Error - Event::checkScript] Cannot load script (data/creaturescripts/scripts/news/heartecerebro.lua) data/creaturescripts/scripts/news/heartecerebro.lua:21: ')' expected (to close '(' at line 20) near 'elseif' e meu script tá desse jeito Spoiler local config = { storageX = 1001, itemX = 5808, countX = 1, storageY = 1005, itemY = 2320, countY = 1, item0 = 5943, count0 = 1 } function onKill(cid, target, lastHit) if isPlayer(target) then if getPlayerStorageValue(target, config.storageX) == 1 then local item = doPlayerAddItem(cid, config.itemX, config.countX) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, "Você matou um {Membro da Akatsuki} e recebeu o Cerebro dele.") doSetItemSpecialDescription(item.uid, "Esse é o item de ".. getCreatureName(target) ..", que estava no level ".. getPlayerLevel(target) .." no momento de ser assassinado por ".. getCreatureName(cid) elseif getPlayerStorageValue(target, config.storageY) == 1 then local item1 = doPlayerAddItem(cid, config.itemY, config.countY) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, "Você matou um {Membro da Anbu} e recebeu o Craneo dele.") doSetItemSpecialDescription(item1.uid, "Esse é o item de ".. getCreatureName(target) ..", que estava no level ".. getPlayerLevel(target) .." no momento de ser assassinado por ".. getCreatureName(cid) else local item2 = doPlayerAddItem(cid, config.item0, config.count0) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, "Você matou um {Shinobi Neutro} e recebeu o Coração dele.") doSetItemSpecialDescription(item2.uid, "Esse é o item de ".. getCreatureName(target) ..", que estava no level ".. getPlayerLevel(target) .." no momento de ser assassinado por ".. getCreatureName(cid) end end return true end Editado Abril 17, 2020 5 anos por OinomedRellik (veja o histórico de edições)
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.