Postado Setembro 12, 2012 12 anos Olá galera, esse é meu sistema vip é ingame. É este: Quote function onSay(cid, words, param, channel) local name = getCreatureName(cid) sorcerer = { pcoin = 19000, level = 1, text = "Parabens", } druid = { pcoin = 19000, level = 1, text = "Parabens", } paladin = { pcoin = 19000, level = 1, text = "Parabens", } knight = { pcion = 19000, level = 1, text = "Parabens", } if getPlayerVocation(cid) == 1 then voc = sorcerer elseif getPlayerVocation(cid) == 2 then voc = druid elseif getPlayerVocation(cid) == 3 then voc = paladin elseif getPlayerVocation(cid) == 4 then voc = knight else voc = nil end if voc ~= nil then if getPlayerLevel(cid) >= voc.level then if doPlayerRemoveItem(cid,6527,40) == TRUE then setPlayerPromotionLevel(cid, 1) db.executeQuery("UPDATE `players` SET `name` = '[VIP] "..name.."' WHERE `id` = "..getPlayerGUID(cid)..";") doSendMagicEffect(getCreaturePosition(cid),14) doSendAnimatedText(getCreaturePosition(cid),voc.text,49) setPlayerStorageValue(cid,1082,) else doPlayerSendTextMessage(cid,18,"Voce precisa de 40 Insane Coins para ser Vip.") end else doPlayerSendTextMessage(cid,18,"You need level "..voc.level.." to promote.") end else doPlayerSendTextMessage(cid,18,"Voce ja e Vip.") end return TRUE end Quando digito o comando !buyvip no game, ele usa 40 coins que pode ser comprado pelo site e dá Vip Eterna ao player, eu queria um adicionar mais 2 comandos, tipo: !buyvip "30 (iria usar menos coins, mas teria apenas 30 dias vip) !buyvip "60 (iria usar menos coins, mas teria 60 dias vip). O comando !buyvip compra vip eterna, talvez, podemos mudar para !buyvip "eterno. Então é isso galera, desde já agradeço! Mesmo que alguem não saiba como fazer, talvez me daria uma sugestão de um sistema diferente, que da para usar da mesma forma, mas comprando pelo site. Aguardo resposta. Obrigado!
Postado Setembro 12, 2012 12 anos Va em data / talkactions / scripts / e ponha o nome de algum arquivo para buyvipname e ponha isto tudo la dentro --((Script By Skyligh For #####.com))-- function onSay(cid, words, param) local money = 10000 -- Quanto de dinheiro vai remover do player if doPlayerRemoveMoney(cid,money) == TRUE then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você Não Tem Dinheiro Suficiente") return true end if setPlayerStorageValue(cid, 13545) <= 1 then db.executeQuery("UPDATE `players` SET `name` = '[Vip] "..getCreatureName(cid).."' WHERE `id` = "..getPlayerGUID(cid)..";") addEvent(doRemoveCreature, 5*1000, cid, true) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabéns Agora Você e um Vip Systema E Sera Kickado Daki 10 seg pra receber o [Vip] Nick") else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você Ja E Vip !") end return true end dps em talkactions.xml add isto la <talkaction words="!buyvip" event="script" value="buyvipname.lua"/> Creditos: Skyligh
Postado Setembro 12, 2012 12 anos , use !buyvip lista para maiores informações.") return true end local param = string.lower(param) if (param == "lista") then local str = "" str = str .. "~~ Preço ~~ :\n\n" for dias, quanti in pairs(tabela) do str = str..dias..": Dias custam ".. quanti .. " ".. getItemNameById(6527) .." /n Para vip eterna digite !buyvip eterna /n" end str = str .. "" doShowTextDialog(cid, 6527, str) end if param == "eterna" then dias = 9999 else dias = tonumber(param) end if doPlayerRemoveItem(cid, 6527, a) == true then db.executeQuery("UPDATE `players` SET `name` = '[Vip] "..getCreatureName(cid).."' WHERE `id` = "..getPlayerGUID(cid)..";") addEvent(doRemoveCreature, 5*1000, cid, true) doPlayerAddPremiumDays(cid, dias) doPlayerSendTextMessage(cid, 27, "Você agora é V.I.P(Very Important People) será kickado em 5 segundos para mudança de nome.") end return true end function onSay(cid, words, param) local tabela = { -- [dias] -- preço [10] = 30, [30] = 60, [60] = 90, [100] = 120 } local a = tabela[tonumber(param)] if not a then doPlayerSendCancel(cid, "Digite !buyvip dias, exêmplo !buyvip 10 [code]<talkaction words = "!buyvip" event = "script" value = "nome.lua"/> Retirado. Skype: joaoxtibia85.
Postado Setembro 12, 2012 12 anos Autor EDITADO. Vou testar e posto aqui, obrigado! REP+ pra vocês Editado Setembro 12, 2012 12 anos por Winicius (veja o histórico de edições)
Postado Setembro 12, 2012 12 anos Autor , use !buyvip lista para maiores informações.") return true end local param = string.lower(param) if (param == "lista") then local str = "" str = str .. "~~ Preço ~~ :\n\n" for dias, quanti in pairs(tabela) do str = str..dias..": Dias custam ".. quanti .. " ".. getItemNameById(6527) .." /n Para vip eterna digite !buyvip eterna /n" end str = str .. "" doShowTextDialog(cid, 6527, str) end if param == "eterna" then dias = 9999 else dias = tonumber(param) end if doPlayerRemoveItem(cid, 6527, a) == true then db.executeQuery("UPDATE `players` SET `name` = '[Vip] "..getCreatureName(cid).."' WHERE `id` = "..getPlayerGUID(cid)..";") addEvent(doRemoveCreature, 5*1000, cid, true) doPlayerAddPremiumDays(cid, dias) doPlayerSendTextMessage(cid, 27, "Você agora é V.I.P(Very Important People) será kickado em 5 segundos para mudança de nome.") end return true end function onSay(cid, words, param) local tabela = { -- [dias] -- preço [10] = 30, [30] = 60, [60] = 90, [100] = 120 } local a = tabela[tonumber(param)] if not a then doPlayerSendCancel(cid, "Digite !buyvip dias, exêmplo !buyvip 10 [code]<talkaction words = "!buyvip" event = "script" value = "nome.lua"/> Cara seu sistema está otimo, mas achei meio confuso os comandos. No caso seria: !buyvip 10, 30, 60 etc. !buyvip lista !buyvip eterna /n ? Eu testei o !buyvip 10, 30 e 60 e funcionou, colocou [VIP], mas não alterou o promotion para 1 na database. Seria possivel algum comando para ver quantos dias vip ainda falta? Agradeço desde já
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.