Postado Setembro 27, 2016 8 anos Oi tibianos, tudo certo? Bom, comecei a scriptar recentemente (ontem), e gostaria de saber como eu faço para adquirir uma certa quantia de premium account por x dias, por exemplo, por 1 dia. Eu modifiquei o norseman doll, pra ser nomeado de 1 dia VIP. E peguei um sistema que já postaram aqui há anos: Spoiler function onUse(cid, item, fromPosition, itemEx, toPosition) local config={ removeOnUse = "yes" } local days = 1 -- coloque os dias que serão a VIP! local daysvalue = days * 24 * 60 * 60 local storageplayer = getPlayerStorageValue(cid, 13500) local timenow = os.time() if getPlayerStorageValue(cid, 13500) - os.time() <= 0 then time = timenow + daysvalue else time = storageplayer + daysvalue end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens! Agora voce possui VIP por ".. days .." dias restantes! Acesso a areas exclusivas e compra de outros items foram concedidas a voce!") setPlayerStorageValue(cid, 13500, time) local quantity = math.floor((getPlayerStorageValue(cid, 13500) - timenow)/(24 * 60 * 60)) doSendMagicEffect(getPlayerPosition(cid), math.random(28,30)) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce tem ".. quantity .." dias de VIP restantes.") if (config.removeOnUse == "yes") then doRemoveItem(item.uid, 1) end return TRUE end Mas o que acontece, é que eu gostaria de adicionar account premium na conta do cara. Pore xemplo, depois do "doPlayerSendTextMessage" colocar algo que possa adicionar premium account para uma pessoa. Ou se preferirem, mandar um sistema parecido, só que adicione premium account. Muito obrigado :D
Postado Setembro 27, 2016 8 anos 1 hora atrás, Scrowzer Dark disse: Oi tibianos, tudo certo? Bom, comecei a scriptar recentemente (ontem), e gostaria de saber como eu faço para adquirir uma certa quantia de premium account por x dias, por exemplo, por 1 dia. Eu modifiquei o norseman doll, pra ser nomeado de 1 dia VIP. E peguei um sistema que já postaram aqui há anos: Ocultar conteúdo function onUse(cid, item, fromPosition, itemEx, toPosition) local config={ removeOnUse = "yes" } local days = 1 -- coloque os dias que serão a VIP! local daysvalue = days * 24 * 60 * 60 local storageplayer = getPlayerStorageValue(cid, 13500) local timenow = os.time() if getPlayerStorageValue(cid, 13500) - os.time() <= 0 then time = timenow + daysvalue else time = storageplayer + daysvalue end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens! Agora voce possui VIP por ".. days .." dias restantes! Acesso a areas exclusivas e compra de outros items foram concedidas a voce!") setPlayerStorageValue(cid, 13500, time) local quantity = math.floor((getPlayerStorageValue(cid, 13500) - timenow)/(24 * 60 * 60)) doSendMagicEffect(getPlayerPosition(cid), math.random(28,30)) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce tem ".. quantity .." dias de VIP restantes.") if (config.removeOnUse == "yes") then doRemoveItem(item.uid, 1) end return TRUE end Mas o que acontece, é que eu gostaria de adicionar account premium na conta do cara. Pore xemplo, depois do "doPlayerSendTextMessage" colocar algo que possa adicionar premium account para uma pessoa. Ou se preferirem, mandar um sistema parecido, só que adicione premium account. Muito obrigado :D doPlayerAddPremiumDays(cid, days) Esta é a função que você quer, apenas bote a quantia de dias no lugar de days. --EDIT cara esse script ai vai te dar storage, troque por esse: function onUse(cid, item, fromPosition, itemEx, toPosition) if doRemoveItem(item.uid, 1) then local days = 1 -- coloque os dias que serão a VIP! doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens! Agora voce possui VIP por ".. days .." dias restantes! Acesso a areas exclusivas e compra de outros items foram concedidas a voce!") doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce tem ".. getPlayerPremiumDays(cid) + days .." dias de VIP restantes.") doPlayerAddPremiumDays(cid, days) return true end end em local days = 1 Mude 1 pela quantia de dias que o player vai ganhar. Editado Setembro 27, 2016 8 anos por luangop tutorial (veja o histórico de edições) Te ajudei? Clique em Gostei ! ²²²d¬¬b²²² "She's got a smile that it seems to me...." ♪♪
Postado Setembro 27, 2016 8 anos Autor Muito obrigado, @luangop! Problema resolvido, mas não fechem o tópico por agora, porque se não for pedir muito, gostaria que me ensinasse como se faz pra somar os dias na mensagem. Por exemplo, se eu tenho 1 dia VIP, e comprei outro dia VIP e usei, aparece que "Agora você possui VIP por" dias somados (que seria 2 no caso) "dias restantes" Ps: Ainda vou testar o Script PS2:Agora que testei, vi que o proprio SCRIPT já tem isso. E se não for pedir muito novamente, gostaria de perguntar uma coisa: Pra adicionar itens de 7, 30 e 60 dias, eu preciso criar outras classes .lua? Obrigado! :D Editado Setembro 27, 2016 8 anos por Scrowzer Dark (veja o histórico de edições)
Postado Setembro 28, 2016 8 anos 7 horas atrás, Scrowzer Dark disse: Muito obrigado, @luangop! Problema resolvido, mas não fechem o tópico por agora, porque se não for pedir muito, gostaria que me ensinasse como se faz pra somar os dias na mensagem. Por exemplo, se eu tenho 1 dia VIP, e comprei outro dia VIP e usei, aparece que "Agora você possui VIP por" dias somados (que seria 2 no caso) "dias restantes" Ps: Ainda vou testar o Script PS2:Agora que testei, vi que o proprio SCRIPT já tem isso. E se não for pedir muito novamente, gostaria de perguntar uma coisa: Pra adicionar itens de 7, 30 e 60 dias, eu preciso criar outras classes .lua? Obrigado! :D Eu ja tinha botado a função de somar os dias.. Citar getPlayerPremiumDays(cid) + days Sobre 7, 30 e 60 dias, substitua seu script por esse: function onUse(cid, item, fromPosition, itemEx, toPosition) if doRemoveItem(item.uid, 1) then if item.itemid == XXXX then days = 7 elseif item.itemid == XXXX then days = 30 elseif item.itemid == XXXX then days = 60 else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Algo deu errado....") return true end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens! Agora voce possui VIP por ".. days .." dias restantes! Acesso a areas exclusivas e compra de outros items foram concedidas a voce!") doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce tem ".. getPlayerPremiumDays(cid) + days .." dias de VIP restantes.") doPlayerAddPremiumDays(cid, days) return true end end Explicando: if item.itemid == XXXX then days = 7 elseif item.itemid == XXXX then days = 30 elseif item.itemid == XXXX then days = 60 Onde ta XXXX coloca o ID do item de 7 dias Onde ta XXXX coloca o ID do item de 30 dias Onde ta XXXX coloca o ID do item de 60 dias Na tag do actions.xml, adicione o ID dos 3 items. Dessa forma: action itemid="XXXX;XXXX ;XXXX " Te ajudei? Clique em Gostei ! ²²²d¬¬b²²² "She's got a smile that it seems to me...." ♪♪
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.