Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --[[ Por Ryukiimaru
- Sistema de Craft
- Estrutura da tablea = CRAF.ITEMS~[idwork][rank][id]
- st = storage de base pra verificar
- qnt = quantidade total por unidade que é craftado
- name = ... nome
- itemid = itemid do item :D
- level = level requisitado minimo para craftar
- exp = experiência adiquirida por unidade ( mesmo que ele faça + de 1x por craft )
- recipe = receita requirida, {itemid, quantidade}, etc..
- desc = descrição do item
- ]]
- CRAFT = {}
- CRAFT.ITEMS = {}
- CRAFT.ITEMS[1] = {} -- Ex* Profissão Aventureiro, o index vai ser o id da profissão.
- CRAFT.ITEMS[1] = {}
- CRAFT.ITEMS[1]["E"] = {}
- CRAFT.ITEMS[1]["E"][1] = {st = 1, qnt = 1, itemid = 18609, level = 0, timeByUnit = 5, exp = 0, recipe = {{12187,1}}, desc = "Um tecido muito delicado, usado para produção de decorações e acessórios fashion. (0 exp)"}
- CRAFT.ITEMS[1]["E"][2] = {st = 2, unique = true, qnt = 20, itemid = 18610, level = 2, timeByUnit = 5, exp = 20, recipe = {{15998,1}}, desc = "Esse material é usado para acelerar o processo de produção de itens."}
- CRAFT.ITEMS[1]["E"][3] = {st = 3, unique = true, qnt = 1, itemid = 18611, level = 0, timeByUnit = 60*5, exp = 50, recipe = {{16103,50},{17094,25}}, desc = "Encoraje sua equipe com essa bandeira de guerra e ganhe 5% de experiência bônus."}
- CRAFT.ITEMS[1]["E"][4] = {st = 4, qnt = 5, itemid = 11806, level = 0, timeByUnit = 60*2, exp = 40, recipe = {{16058,10},{17094,5}}, desc = "Uma cadeira feita de madeira para decorar sua casa."}
- CRAFT.ITEMS[1]["E"][5] = {st = 5, qnt = 2, itemid = 11789, level = 0, timeByUnit = 60*5, exp = 70, recipe = {{16058,12},{17094,4}}, desc = "Uma mesa feita de madeira para decorar sua casa."}
- CRAFT.ITEMS[1]["E"][6] = {st = 6, qnt = 1, itemid = 1732, level = 0, timeByUnit = 60*4, exp = 50, recipe = {{16058,14},{17094,5}}, desc = "Um armário de madeira para decorar sua casa e guardar alguns objetos."}
- CRAFT.ITEMS[1]["E"][7] = {st = 7, qnt = 2, itemid = 1724, level = 0, timeByUnit = 60*10, exp = 50, recipe = {{16058,12},{17094,4}}, desc = "Um pequeno armário feito de madeira para decorar sua casa e guardar alguns objetos."}
- CRAFT.ITEMS[1]["E"][8] = {st = 8, qnt = 1, itemid = 18612, level = 15, timeByUnit = 60*60*2, exp = 500, recipe = {{18609,6},{17841,5},{16064,10},{15946,8},{17090,250},{17090,250},{17090,250},{17090,250}}, desc = "Você ama a natureza e sua frase preferida é paz e amor? Então essa roupa foi feita especialmente para você."}
- CRAFT.ITEMS[1]["E"][9] = {st = 9, qnt = 1, itemid = 18613, level = 15, timeByUnit = 60*60*2, exp = 500, recipe = {{18609,6},{17841,5},{12341,10},{17853,7},{17090,250},{17090,250},{17090,250},{17090,250}}, desc = "Você ama a natureza e sua frase preferida é paz e amor? Então essa roupa foi feita especialmente para você."}
- CRAFT.ITEMS[1]["E"][10] = {st = 10, qnt = 1, itemid = 18614, level = 17, timeByUnit = 60*60*2, exp = 750, recipe = {{12222,3},{18616,80},{18617,1},{5896,3},{17090,250},{17090,250},{17090,250},{17090,250}}, desc = "Você será um verdadeira chef quando estiver usando essa roupa especial."}
- CRAFT.ITEMS[1]["E"][11] = {st = 11, qnt = 1, itemid = 18615, level = 17, timeByUnit = 60*60*2, exp = 750, recipe = {{5946,7},{16092,20},{18609,3},{18618,1},{18619,1},{17090,250},{17090,250},{17090,250},{17090,250}}, desc = "Você está indo para a escola, garota? Então você precisa vestir seu uniforme antes."}
- CRAFT.ITEMS[1]["E"][12] = {st = 12, qnt = 1, itemid = 16297, level = 15, timeByUnit = 60*60*1, exp = 450, recipe = {{16058,200},{16084,200},{12200,100},{12182,2},{17094,200},{17090,200}}, desc = "Com esse equipamento é fácil explorar as profundezas do mar em segurança. (Uma das três partes da roupa de mergulho)"}
- CRAFT.ITEMS[1]["E"][13] = {st = 13, qnt = 1, itemid = 16298, level = 15, timeByUnit = 60*60*1, exp = 450, recipe = {{12161,200},{12334,100},{17094,200},{17090,200}}, desc = "Com esse equipamento é fácil explorar as profundezas do mar em segurança. (Uma das três partes da roupa de mergulho)"}
- CRAFT.ITEMS[1]["E"][14] = {st = 14, qnt = 1, itemid = 16296, level = 15, timeByUnit = 60*60*1, exp = 450, recipe = {{12161,200},{12188,2},{12170,10},{17094,200},{17090,200}}, desc = "Com esse equipamento é fácil explorar as profundezas do mar em segurança. (Uma das três partes da roupa de mergulho)"}
- CRAFT.ITEMS[1]["E"][15] = {st = 15, qnt = 1, itemid = 16294, level = 15, timeByUnit = 60*60*1, exp = 450, recipe = {{12201,3},{12175,14},{12171,25},{17094,200},{17090,200}}, desc = "Cansado de andar na neve? Essa parte da roupa de ski proporcionará grandes aventuras na neve."}
- CRAFT.ITEMS[1]["E"][16] = {st = 16, qnt = 1, itemid = 16295, level = 15, timeByUnit = 60*60*1, exp = 450, recipe = {{12196,18},{12164,200},{17094,200},{17090,200}}, desc = "Cansado de andar na neve? Essa parte da roupa de ski proporcionará grandes aventuras na neve."}
- CRAFT.ITEMS[1]["E"][17] = {st = 17, qnt = 1, itemid = 16293, level = 15, timeByUnit = 60*60*1, exp = 450, recipe = {{12177,10},{12153,2},{12172,5},{17094,200},{17090,200}}, desc = "Cansado de andar na neve? Essa parte da roupa de ski proporcionará grandes aventuras na neve."}
- CRAFT.ITEMS[1]["E"][18] = {st = 18, qnt = 1, itemid = 16424, level = 10, timeByUnit = 60*3, exp = 20, recipe = {{12154,2},{12163,72},{17090,200}}, desc = "Deixe o seu Bulbasaur ainda mais bonito com esse chapéu."}
- CRAFT.ITEMS[1]["E"][19] = {st = 19, qnt = 1, itemid = 16420, level = 10, timeByUnit = 60*3, exp = 20, recipe = {{16061,8},{12162,288},{17090,200}}, desc = "Espionagem, infiltração e inteligência são as características de um ninja. Seu charmander nunca mais será o mesmo."}
- CRAFT.ITEMS[1]["E"][20] = {st = 20, qnt = 1, itemid = 18651, level = 12, timeByUnit = 60*4, exp = 30, recipe = {{12158,2},{12161,72},{17090,200}}, desc = "Deixe seu Wartortle estiloso usando esse cachecol refinado."}
- CRAFT.ITEMS[1]["E"][21] = {st = 21, qnt = 1, itemid = 18620, level = 2, timeByUnit = 60*2, exp = 5, recipe = {{16062,4},{16076,72},{17090,200}}, desc = "Após passar por um treinamento de alto nível, sua Caterpie precisa apenas dessa boina para ser um verdadeiro militar."}
- CRAFT.ITEMS[1]["E"][22] = {st = 22, qnt = 1, itemid = 18621, level = 2, timeByUnit = 60*2, exp = 5, recipe = {{12171,40},{17090,200}}, desc = "Bombas, tiros e Guerra! Caterpie no estílo Rambo!"}
- CRAFT.ITEMS[1]["E"][23] = {st = 23, qnt = 1, itemid = 18622, level = 2, timeByUnit = 60*2, exp = 5, recipe = {{12171,40},{16076,150},{17090,200}}, desc = "Sem treinamento duro ou guerra, a Caterpie só quer ficar na moda."}
- CRAFT.ITEMS[1]["E"][24] = {st = 24, qnt = 1, itemid = 18623, level = 8, timeByUnit = 60*3, exp = 35, recipe = {{12171,40},{16063,2},{17090,200}}, desc = "Um simples acessório para tornar sua Butterfree o pokémon mais bonito do mundo!"}
- CRAFT.ITEMS[1]["E"][25] = {st = 25, qnt = 1, itemid = 18618, level = 8, timeByUnit = 60*3, exp = 35, recipe = {{16062,4},{12171,5},{17090,200}}, desc = "Um simples acessório para tornar sua Butterfree o pokémon mais bonito do mundo!"}
- CRAFT.ITEMS[1]["E"][26] = {st = 26, qnt = 1, itemid = 18624, level = 8, timeByUnit = 60*3, exp = 35, recipe = {{12153,8},{17090,200}}, desc = "Colocando ordem nos encrenqueiros da floresta, Capitã Butterfree está na área."}
- CRAFT.ITEMS[1]["E"][27] = {st = 27, qnt = 1, itemid = 18625, level = 4, timeByUnit = 60*2, exp = 25, recipe = {{12200,20},{16058,300},{17090,200}}, desc = "Está tendo uma festa fantasia na cidade ? Seu pidgey parece perfeito com esse addon."}
- CRAFT.ITEMS[1]["E"][28] = {st = 28, qnt = 1, itemid = 18626, level = 4, timeByUnit = 60*2, exp = 25, recipe = {{12200,25},{12208,1},{17090,200}}, desc = "Seu pidgey parece um cara bom? Eu garanto que usando esse bonè a impressãoo será outra."}
- CRAFT.ITEMS[1]["E"][29] = {st = 29, qnt = 1, itemid = 18627, level = 6, timeByUnit = 60*2, exp = 25, recipe = {{16059,2},{17090,200}}, desc = "O Halloween chegou? É hora de assustar as crianças com o Pidgey Zumbi."}
- CRAFT.ITEMS[1]["E"][30] = {st = 30, qnt = 1, itemid = 18628, level = 4, timeByUnit = 60*2, exp = 25, recipe = {{12173,23},{16084,300},{17090,200}}, desc = "Rattata usando uma touca de banho? Hmm, isso é estranho."}
- CRAFT.ITEMS[1]["E"][31] = {st = 31, qnt = 1, itemid = 18629, level = 14, timeByUnit = 60*2, exp = 80, recipe = {{12200,25},{16064,1},{17090,200}}, desc = "Embeleze seu Fearow com esse cachecol feito de penas especiais."}
- CRAFT.ITEMS[1]["E"][32] = {st = 32, qnt = 1, itemid = 18630, level = 14, timeByUnit = 60*2, exp = 80, recipe = {{16064,3},{17090,200}}, desc = "Embeleze seu Fearow com esse cachecol feito de penas especiais."}
- CRAFT.ITEMS[1]["E"][33] = {st = 33, qnt = 1, itemid = 18631, level = 14, timeByUnit = 60*4, exp = 70, recipe = {{12172,10},{17090,200}}, desc = "Embeleze seu Fearow com esse cachecol feito de penas especiais."}
- CRAFT.ITEMS[1]["E"][34] = {st = 34, qnt = 1, itemid = 18619, level = 10, timeByUnit = 60*3, exp = 60, recipe = {{17840,4},{17090,200}}, desc = "Que tal dar um toque mais feminino para a Arbok colocando arcos na cabeça dela?"}
- CRAFT.ITEMS[1]["E"][35] = {st = 35, qnt = 1, itemid = 18632, level = 10, timeByUnit = 60*3, exp = 60, recipe = {{12183,3},{17090,200}}, desc = "Que tal dar um toque mais feminino para a Arbok colocando arcos na cabeça dela?"}
- CRAFT.ITEMS[1]["E"][36] = {st = 36, qnt = 1, itemid = 16435, level = 10, timeByUnit = 60*3, exp = 60, recipe = {{12284,4},{12204,4},{17090,250}}, desc = "Que tal assustar algumas crianças com esse Pikachu Fantasma?"}
- CRAFT.ITEMS[1]["E"][37] = {st = 37, qnt = 1, itemid = 16434, level = 8, timeByUnit = 60*3, exp = 60, recipe = {{12284,2},{12164,62},{17090,200}}, desc = "Um pequeno acessório para deixar seu Pikachu estiloso e bonito."}
- CRAFT.ITEMS[1]["E"][38] = {st = 38, qnt = 1, itemid = 16433, level = 8, timeByUnit = 60*3, exp = 60, recipe = {{12176,15},{17090,200}}, desc = "Um pequeno acessório para deixar seu Pikachu estiloso e bonito."}
- CRAFT.ITEMS[1]["E"][39] = {st = 39, qnt = 1, itemid = 16431, level = 8, timeByUnit = 60*3, exp = 60, recipe = {{12284,1},{12176,8},{17090,200}}, desc = "Um pequeno acessório para deixar seu Pikachu estiloso e bonito."}
- CRAFT.ITEMS[1]["E"][40] = {st = 40, qnt = 1, itemid = 18637, level = 8, timeByUnit = 60*3, exp = 60, recipe = {{12177,12},{12208,1},{17090,200}}, desc = "Seu Sandshrew ficará assustador usando esse chapéu de cavaleiro."}
- CRAFT.ITEMS[1]["E"][41] = {st = 41, qnt = 1, itemid = 18638, level = 16, timeByUnit = 60*6, exp = 120, recipe = {{12177,12},{12208,1},{17090,250},{17090,150}}, desc = "Seu Sandslash está um pouco velho? Então certifique-se de comprar esse addon elegante para ele."}
- CRAFT.ITEMS[1]["E"][42] = {st = 42, qnt = 1, itemid = 18639, level = 18, timeByUnit = 60*6, exp = 132, recipe = {{16066,7},{12165,300},{17090,250},{17090,250},{17090,250},{17090,50}}, desc = "A melhor Nidoqueen possui essa faixa vermelha e é respeitada por isso."}
- CRAFT.ITEMS[1]["E"][43] = {st = 43, qnt = 1, itemid = 18640, level = 8, timeByUnit = 60*2, exp = 32, recipe = {{16103,82},{17850,3},{17090,200}}, desc = "O que foi isso que rapidamente apareceu e retornou para a terra? Era um Diglett? Parecia um ninja!"}
- CRAFT.ITEMS[1]["E"][44] = {st = 44, qnt = 1, itemid = 18641, level = 12, timeByUnit = 60*4, exp = 67, recipe = {{12157,20},{12186,1},{17090,200}}, desc = "Vista seu meowth como um dos personagens mais assustadores da televisão. Talvez ele possa aparecer nos seus sonhos?"}
- CRAFT.ITEMS[1]["E"][45] = {st = 45, qnt = 1, itemid = 18642, level = 10, timeByUnit = 60*3, exp = 55, recipe = {{12194,20},{12193,1},{17090,200}}, desc = "Por ter naturalmente o presente de teleportar, agora o Abra decidiu explorar o ramo da magia."}
- CRAFT.ITEMS[1]["E"][46] = {st = 46, qnt = 1, itemid = 18643, level = 8, timeByUnit = 60*2, exp = 35, recipe = {{17843,1},{16079,220},{17090,200}}, desc = "Seu machop será temido no ringue, o verdadeiro campeão."}
- CRAFT.ITEMS[1]["E"][47] = {st = 47, qnt = 1, itemid = 18644, level = 14, timeByUnit = 60*5, exp = 106, recipe = {{16068,10},{17090,200}}, desc = "Disfarce seu Victreebel para que ele não seja descoberto quando necessário. Tlavez ninguém o note."}
- CRAFT.ITEMS[1]["E"][48] = {st = 48, qnt = 1, itemid = 18645, level = 6, timeByUnit = 60*2, exp = 31, recipe = {{12155,10},{17852,1},{17090,200}}, desc = "Geodude com cara de bravo? Usando esse addon você nunca terá essa impressão."}
- CRAFT.ITEMS[1]["E"][49] = {st = 49, qnt = 1, itemid = 18646, level = 10, timeByUnit = 60*3, exp = 41, recipe = {{12204,2},{17090,200}}, desc = "Apesar de já ser assustador por natureza. o Haunter quer pregar ainda mais peças nas pessoas."}
- CRAFT.ITEMS[1]["E"][50] = {st = 50, qnt = 1, itemid = 16865, level = 14, timeByUnit = 60*4, exp = 85, recipe = {{12208,3},{12209,2},{17090,250},{17090,250},{17090,250},{17090,50}}, desc = "Torne seu Lickitung um verdadeiro mercenário."}
- CRAFT.ITEMS[1]["E"][51] = {st = 51, qnt = 1, itemid = 18648, level = 8, timeByUnit = 60*3, exp = 73, recipe = {{12210,3},{17090,200}}, desc = "Um Weezing fumando um cachimbo? Não pode ser verdade."}
- CRAFT.ITEMS[1]["E"][52] = {st = 52, qnt = 1, itemid = 18649, level = 10, timeByUnit = 60*3, exp = 78, recipe = {{12341,10},{17090,300}}, desc = "Uma Tangela com chapéu do bobo da corte? Isso é hilário."}
- CRAFT.ITEMS[1]["E"][53] = {st = 53, qnt = 1, itemid = 18650, level = 8, timeByUnit = 80*3, exp = 78, recipe = {{12341,5},{12204,3},{16083,100},{17090,300}}, desc = "Vista sua Tangela para o Halloween com essa fantasia de fantasma e assuste todas as crianças lá fora."}
- CRAFT.ITEMS[1]["D"] = {}
- CRAFT.ITEMS[1]["D"][1] = {st = 6, qnt = 1, itemid = 2000, level = 0, timeByUnit = 10, exp = 10, recipe = {{2001,2},{2002,2}}, desc = "Este é um item, e essa é sua descrição"}
- CRAFT.ITEMS[1]["D"][2] = {st = 7, qnt = 1, itemid = 2000, level = 22, timeByUnit = 10, exp = 10, recipe = {{2001,2},{2002,2}}, desc = "Este é um item, e essa é sua descrição"}
- CRAFT.ITEMS[1]["D"][3] = {st = 8, qnt = 1, itemid = 2000, level = 25, timeByUnit = 10, exp = 10, recipe = {{2001,2},{2002,2}}, desc = "Este é um item, e essa é sua descrição"}
- CRAFT.ITEMS[1]["D"][4] = {st = 9, qnt = 1, itemid = 2000, level = 30, timeByUnit = 10, exp = 10, recipe = {{2001,2},{2002,2}}, desc = "Este é um item, e essa é sua descrição"}
- CRAFT.ITEMS[1]["D"][5] = {st = 10, qnt = 1, itemid = 2000, level = 35, timeByUnit = 10, exp = 10, recipe = {{2001,2},{2002,2}}, desc = "Este é um item, e essa é sua descrição"}
- CRAFT.ITEMS[2] = {} -- Profissão de id 2
- CRAFT.ITEMS[3] = {}
- CRAFT.ITEMS[4] = {}
- CRAFT.DUST = 18610
- CRAFT.OPCODE = 103
- CRAFT.STORAGE = {
- BASEQNT = 8887400,
- BASECOLLECTED = 8888500,
- BASETIME = 8889600,
- }
- function CRAFT.sendInfo(cid, open_window)
- local work = getPlayerWork(cid)
- local ITEMS = CRAFT.ITEMS[work]
- local protocol = Protocol_create("work")
- if not ITEMS then
- doPlayerPopupFYI(cid, "Você não tem profissão.")
- return
- end
- Protocol_add(protocol, WORKS.LIST[work].name)
- Protocol_add(protocol, getWorkLevel(cid, work))
- Protocol_add(protocol, getWorkPercent(cid, work))
- Protocol_add(protocol, open_window)
- doSendPlayerExtendedOpcode(cid, CRAFT.OPCODE, table.tostring(protocol))
- end
- function CRAFT.sendItemsByRank(cid, rank, max_board)
- local ITEMS = CRAFT.ITEMS[getPlayerWork(cid)]
- if not ITEMS then
- doPlayerPopupFYI(cid, "Você não tem profissão.")
- return
- end
- if not ITEMS[rank] then
- doPlayerPopupFYI(cid, "Nenhum item para esta classificação.")
- return
- end
- local first, send_items, maxSend = true, {}, 5
- for id, info in ipairs(ITEMS[rank]) do
- local INFO = {}
- INFO.id = id
- INFO.qnt = info.qnt
- INFO.desc = info.desc
- INFO.name = getItemNameById(info.itemid)
- INFO.level = info.level
- INFO.timeByUnit = info.timeByUnit
- INFO.exp = info.exp
- INFO.storage_qnt = getPlayerStorageValue(cid, CRAFT.STORAGE.BASEQNT + info.st)
- INFO.storage_collected = getPlayerStorageValue(cid, CRAFT.STORAGE.BASECOLLECTED + info.st)
- INFO.storage_time = getPlayerStorageValue(cid, CRAFT.STORAGE.BASETIME + info.st)
- if INFO.storage_time > os.time() then
- INFO.storage_time = INFO.storage_time - os.time()
- else
- INFO.storage_time = 0
- end
- INFO.itemid = getItemInfo(info.itemid).clientId
- INFO.recipe = {}
- for _, item in pairs(info.recipe) do
- INFO.recipe[#INFO.recipe+1] = {
- getItemInfo(item[1]).clientId, item[2], getItemNameById(item[1])
- }
- end
- send_items[#send_items + 1] = INFO
- if #send_items == maxSend then
- CRAFT.sendItems(cid, rank, max_board, send_items, first)
- first = false
- send_items = {}
- end
- end
- if #send_items > 0 then
- CRAFT.sendItems(cid, rank, max_board, send_items, first)
- end
- end
- function CRAFT.sendItems(cid, rank, max_board, items, first)
- local protocol = Protocol_create("items")
- Protocol_add(protocol, first)
- Protocol_add(protocol, rank)
- Protocol_add(protocol, max_board)
- Protocol_add(protocol, items)
- doSendPlayerExtendedOpcode(cid, CRAFT.OPCODE, table.tostring(protocol))
- end
- function CRAFT.refreshItem(cid, rank, id)
- local ITEMS = CRAFT.ITEMS[getPlayerWork(cid)]
- if not ITEMS then
- doPlayerPopupFYI(cid, "Você não tem profissão.")
- return
- end
- if not ITEMS[rank] then
- doPlayerPopupFYI(cid, "Nenhum item para esta classificação.")
- return
- end
- local INFO = ITEMS[rank][id]
- if not INFO then
- doPlayerPopupFYI(cid, "Nenhum item com este ID. ")
- return
- end
- INFO.storage_qnt = getPlayerStorageValue(cid, CRAFT.STORAGE.BASEQNT + INFO.st)
- INFO.storage_collected = getPlayerStorageValue(cid, CRAFT.STORAGE.BASECOLLECTED + INFO.st)
- INFO.storage_time = getPlayerStorageValue(cid, CRAFT.STORAGE.BASETIME + INFO.st)
- if INFO.storage_time > os.time() then
- INFO.storage_time = INFO.storage_time - os.time()
- else
- INFO.storage_time = 0
- end
- local protocol = Protocol_create("refreshItem")
- Protocol_add(protocol, rank)
- Protocol_add(protocol, id)
- Protocol_add(protocol, INFO)
- doSendPlayerExtendedOpcode(cid, CRAFT.OPCODE, table.tostring(protocol))
- end
- function CRAFT.createItem(cid, rank, id, qnt)
- local ITEMS = CRAFT.ITEMS[getPlayerWork(cid)]
- if not ITEMS then
- doPlayerPopupFYI(cid, "Você não tem profissão.")
- return
- end
- if not ITEMS[rank] then
- doPlayerPopupFYI(cid, "Nenhum item para esta classificação.")
- return
- end
- local INFO = ITEMS[rank][id]
- if not INFO then
- doPlayerPopupFYI(cid, "Nenhum item com este ID.")
- return
- end
- if getWorkLevel(cid, getPlayerWork(cid)) < INFO.level then
- doPlayerPopupFYI(cid, "Nível insuficiente para criar este item.")
- return
- end
- local reqItem = ""
- for _, item in pairs(INFO.recipe) do
- local itemCount, reqCount = getPlayerItemCount(cid, item[1]), (item[2] * qnt)
- if itemCount < reqCount then
- reqItem = reqItem..(#reqItem == 0 and "Faltam: " or ", ")..(reqCount - itemCount).." "..getItemNameById(item[1])
- end
- end
- if #reqItem > 0 then
- doPlayerPopupFYI(cid, "Você não tem os materiais necessários.\n"..reqItem..".")
- return
- end
- for _, item in pairs(INFO.recipe) do
- doPlayerRemoveItem(cid, item[1], (item[2] * qnt))
- end
- -- VERIFICAÇÕES DA RECEITA E NIVEL
- local currentQnt = getPlayerStorageValue(cid, CRAFT.STORAGE.BASEQNT + INFO.st)
- local currentTime = getPlayerStorageValue(cid, CRAFT.STORAGE.BASETIME + INFO.st)
- setPlayerStorageValue(cid, CRAFT.STORAGE.BASEQNT + INFO.st, (currentQnt <= 0 and 0 or currentQnt) + qnt)
- setPlayerStorageValue(cid, CRAFT.STORAGE.BASETIME + INFO.st, (INFO.timeByUnit * qnt) + (currentTime > os.time() and currentTime or os.time()))
- CRAFT.refreshItem(cid, rank, id)
- end
- function CRAFT.speedUp(cid, rank, id)
- local ITEMS = CRAFT.ITEMS[getPlayerWork(cid)]
- if not ITEMS then
- doPlayerPopupFYI(cid, "Você não tem profissão.")
- return
- end
- if not ITEMS[rank] then
- doPlayerPopupFYI(cid, "Nenhum item para esta classificação.")
- return
- end
- local INFO = ITEMS[rank][id]
- if not INFO then
- doPlayerPopupFYI(cid, "Nenhum item com este ID.")
- return
- end
- local currentTime = getPlayerStorageValue(cid, CRAFT.STORAGE.BASETIME + INFO.st)
- if currentTime < os.time() then return end
- currentTime = currentTime - os.time()
- local dustCost = math.ceil(currentTime/(5*60))
- if getPlayerItemCount(cid, CRAFT.DUST) < dustCost then
- doPlayerPopupFYI(cid, "Não possui dusts suficientes")
- return
- end
- doPlayerRemoveItem(cid, CRAFT.DUST, dustCost)
- setPlayerStorageValue(cid, CRAFT.STORAGE.BASETIME + INFO.st, os.time()-1)
- CRAFT.refreshItem(cid, rank, id)
- end
- function CRAFT.collectItem(cid, rank, id)
- local ITEMS = CRAFT.ITEMS[getPlayerWork(cid)]
- if not ITEMS then
- doPlayerPopupFYI(cid, "Você não tem profissão.")
- return
- end
- if not ITEMS[rank] then
- doPlayerPopupFYI(cid, "Nenhum item para esta classificação.")
- return
- end
- local INFO = ITEMS[rank][id]
- if not INFO then
- doPlayerPopupFYI(cid, "Nenhum item com este ID.")
- return
- end
- local currentQnt = getPlayerStorageValue(cid, CRAFT.STORAGE.BASEQNT + INFO.st)
- currentQnt = (currentQnt < 0 and 0 or currentQnt)
- if currentQnt <= 0 then
- doPlayerPopupFYI(cid, "Nenhum item para coletar")
- return
- end
- local currentCollectable = getPlayerStorageValue(cid, CRAFT.STORAGE.BASECOLLECTED + INFO.st)
- currentCollectable = (currentCollectable < 0 and 0 or currentCollectable)
- local availableQnt = currentQnt - currentCollectable
- if availableQnt <= 0 then
- doPlayerPopupFYI(cid, "Nenhum item para coletar")
- return
- end
- local currentTime = getPlayerStorageValue(cid, CRAFT.STORAGE.BASETIME + INFO.st)
- if currentTime > os.time() then
- local collectable = math.floor(((currentQnt * INFO.timeByUnit) - (currentTime - os.time())) / INFO.timeByUnit)
- local availableCollectable = collectable - currentCollectable
- if availableCollectable <= 0 then
- doPlayerPopupFYI(cid, "Aguarde, não há itens para coletar")
- return
- end
- setPlayerStorageValue(cid, CRAFT.STORAGE.BASECOLLECTED + INFO.st, availableCollectable + (currentCollectable <= 0 and 0 or currentCollectable))
- giveWorkExp(cid, getPlayerWork(cid), INFO.exp * availableCollectable)
- if isItemStackable(INFO.itemid) then
- local item = doPlayerAddItem(cid, INFO.itemid, INFO.qnt * availableCollectable)
- if INFO.unique then
- doItemSetAttribute(item, "unique", 1)
- end
- else
- for i=1, INFO.qnt * availableCollectable do
- local item = doPlayerAddItem(cid, INFO.itemid, 1)
- if INFO.unique then
- doItemSetAttribute(item, "unique", 1)
- end
- end
- end
- else
- setPlayerStorageValue(cid, CRAFT.STORAGE.BASEQNT + INFO.st, -1)
- setPlayerStorageValue(cid, CRAFT.STORAGE.BASETIME + INFO.st, -1)
- setPlayerStorageValue(cid, CRAFT.STORAGE.BASECOLLECTED + INFO.st, -1)
- giveWorkExp(cid, getPlayerWork(cid), INFO.exp * availableQnt)
- if isItemStackable(INFO.itemid) then
- local item = doPlayerAddItem(cid, INFO.itemid, INFO.qnt * availableQnt)
- if INFO.unique then
- doItemSetAttribute(item, "unique", 1)
- end
- else
- for i=1, INFO.qnt * availableQnt do
- local item = doPlayerAddItem(cid, INFO.itemid, 1)
- if INFO.unique then
- doItemSetAttribute(item, "unique", 1)
- end
- end
- end
- end
- CRAFT.refreshItem(cid, rank, id)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement