Ir para conteúdo
  • 0

Magia só para Vips?


Kimbly

Pergunta

Eu aqui novamente enchendo o saco mais eu gostaria de saber como coloco essa magia:

 

local scom1 = createCombatObject()
local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatFormula(combat1, COMBAT_FORMULA_SKILL, 0, -600, 6.0, -650)
arr1 = {
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}
}
local area1 = createCombatArea(arr1)
setCombatArea(scom1, area1)
function onTargetTile(cid, pos)
local EFEITO = 5
doSendDistanceShoot(getThingPos(cid), pos, EFEITO)
doCombat(cid, combat1, positionToVariant(pos))
end
setCombatCallback(scom1, CALLBACK_PARAM_TARGETTILE, "onTargetTile")

local function onCastSpell1(parameters)
doCombat(parameters.cid, scom1, parameters.var)
end
function onCastSpell(cid, var)
local parameters = { cid = cid, var = var}
addEvent(onCastSpell1, 100, parameters)
return TRUE
end

 

só pra jogadores vip, uso o Perfect Vip System 3.0 do Vodkart (http://www.xtibia.co...-vip-system-30/)

 

Muito obrigado pela atenção de todos!

 

@Edit~

 

 

Bem já que ninguém se apos a fazer ou me mostrar ou criar um script que funciona-se fui atras de um em outros forum e achei um porem é com storage e o sistema do vodkart acho que não possui storage, bem só acho que não possui o script é esse:

function onCastSpell(cid, var)
if getPlayerStorageValue(cid, 9898, 1) - os.time() <= 0 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Desculpe, só jogadores vips usam está magia!")
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
else
return doCombat(cid, combat, var)
end	
return TRUE  
end

 

Ele bloqueia muito bem a spell porem quando é adicionado a vip ao player ele continua sem soltar a magia pelo falo dessa script usar storage

if getPlayerStorageValue(cid, 9898, 1) - os.time() <= 0 then

 

Se alguém souber mudar esse script para a Perfect Vip System 3.0 do Vodkart eu agradeço...

Editado por Kimbly
Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

 

Se preferir acho que nem é nescessario usar storage, tente adicionar essa tag antes do return.

 

 

if not isPremium(cid) then

return doPlayerSendCancel(cid, 'You need premium account')
end

 

 

Obvio que eh necessario checar storage. Ele quer checar se eh VIP, nao se eh premium account.

 

@TOPIC

 

Nao sei pra que complicar tanto uma simples checagem de storage... Nao sei nem de onde tiraram o os.time. Pedidos como esse ja foram atendidos mais de mil vezes aqui no forum, se vc procurasse iria achar.

Eu nao costumo atender pedidos nesses casos. Alem disso, ta na area errada.

Mas vou atender dessa vez:


local scom1 = createCombatObject()
local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatFormula(combat1, COMBAT_FORMULA_SKILL, 0, -600, 6.0, -650)
arr1 = {
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}
}
local area1 = createCombatArea(arr1)
setCombatArea(scom1, area1)
function onTargetTile(cid, pos)
local EFEITO = 5

if getPlayerStorageValue(cid, 9898) < 1 then
    doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
    return doPlayerSendCancel(cid, "Voce precisa ser VIP pra usar essa magia")
    end
doSendDistanceShoot(getThingPos(cid), pos, EFEITO)
doCombat(cid, combat1, positionToVariant(pos))
end
setCombatCallback(scom1, CALLBACK_PARAM_TARGETTILE, "onTargetTile")

local function onCastSpell1(parameters)
doCombat(parameters.cid, scom1, parameters.var)
end
function onCastSpell(cid, var)
local parameters = { cid = cid, var = var}
addEvent(onCastSpell1, 100, parameters)
return TRUE
end
Editado por amoeba13
Link para o comentário
Compartilhar em outros sites

  • 0

Simples, você tem que saber o numero de storage vip do seu servidor, exemplo, o numero do meu storage vip eh 2235, ai iria ficar assim.

if getPlayerStorageValue(cid, 2235, 1) - os.time() <= 0 then

Entendeu? ^^

Link para o comentário
Compartilhar em outros sites

  • 0

Essa seção não deve ser usada para pedidos ou dúvidas, temos uma seção específica para isso. Por favor, preste mais atenção da próxima vez.
Movido para Pedidos e Dúvidas - Scripting.

Link para o comentário
Compartilhar em outros sites

  • 0

Ta na cara que o dono do tópico não entra mais.

 

amoeba13

 

O script dele ja esta correto, ele só queria aprender a mudar o storage porque não tava funcionando com o numero de storage que tava, uma coisa que é facil de se faser. E checar premium account e a mesma coisa.

Link para o comentário
Compartilhar em outros sites

  • 0

Ta na cara que o dono do tópico não entra mais.

 

amoeba13

 

O script dele ja esta correto, ele só queria aprender a mudar o storage porque não tava funcionando com o numero de storage que tava, uma coisa que é facil de se faser. E checar premium account e a mesma coisa.

Nossa so agr vi q eh de maio e vc reviveu... Se o sistema de vip dele eh por storage nao adianta checar se é premium

Link para o comentário
Compartilhar em outros sites

  • 0

Realmente, também nem tinha percebido que o tópico era antigo. Como a dúvida tá resolvida, vou mover pra seção de resolvidos mesmo sem confirmação do usuário, pra possivelmente ajudar alguém com o mesmo problema.

 

Tópico movido para a seção de dúvidas e pedidos resolvidos.

Editado por Omega
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...