ZA

Magia Com Storage.

Por Zaroth1, 26 de ago. de 2010 em Scripts

script
11
2.7k
Zaroth1Z
26 de agosto de 2010 às 18:07

Olá , Boa noite ._.

 

bom, eu queria um script, axo que ele nao é tao dificil DD=

 

vamos la:

voce nao pode soltar uma magia, entao:

 

voce está em uma quest, e chega no final dela, voce clica no baú , e recebe uma mensagem "voce ganhou uma nova magia "nome da magia"

 

e dai voce pode soltar a magia, ;X

VodkartV
27 de agosto de 2010 às 00:19

então

 

vc coloca a magia para ser usada só se ele tiver a storage da sua quest(bau)

 

bjs

Zaroth1Z
27 de agosto de 2010 às 18:17

explica melhor ? DD:

 

como eu faço .-.

netflatN
27 de agosto de 2010 às 18:44

Você iria utilizar essa função no baú:

 

setPlayerStorageValue(uid,key,n)

 

E essa na magia:

 

getPlayerStorageValue(uid, key)

 

Eu acho que é isso mesmo =P

Editado Agosto 27 por Cykotitan

VodkartV
27 de agosto de 2010 às 20:00

vou explicar

 

exemplo:

 

Na sua quest que vc vai fazer ao abrir um BAU ele vai ganhar uma storage automaticamente,essa storage que vai fazer a checkagem para ver se ele ja fez ou não a quest...

 

supondo que a storage do seu bau seje 10301

 

tudo bem,ele termino a quest e agora poderá usar essa magia...

 

ai ficaria assim na magia: ( magia usada para exemplo foi a exevo gran mas frigo)

 

 

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_ENERGYHIT)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGYBALL)
setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 1.4, 2.8, 40, 70)

local area = createCombatArea(AREA_CIRCLE3X3)
setCombatArea(combat, area)

local storage = 10301

function onCastSpell(cid, var) 
if getPlayerStorageValue(cid,storage) >= 1 then  -- para ver se ele pode usar a storage
return doCombat(cid, acombat, var) 
else  
doPlayerSendCancel(cid, "Desculpe,Você tem que terminar a quest para usar está magia.")  
end  
return TRUE 
end

 

entendeu?

Editado Agosto 27 por Vodkart

Zaroth1Z
28 de agosto de 2010 às 11:21

Brigado Vodk,

 

mmais quando solta a magia o player ainda fala a magia...

eéra pra da false ta ligado?!

era pra sair fumacinha, mais nao sai.. tudo bem vo ve se consigo aqui

:DD

brigado rs

MatheusGladM
28 de agosto de 2010 às 11:29

Bota assim:

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_ENERGYHIT)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGYBALL)
setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 1.4, 2.8, 40, 70)

local area = createCombatArea(AREA_CIRCLE3X3)
setCombatArea(combat, area)

local storage = 10301

function onCastSpell(cid, var) 
if getPlayerStorageValue(cid,storage) >= 1 then  -- para ver se ele pode usar a storage
return doCombat(cid, combat, var) 
else  
return FALSE and doPlayerSendCancel(cid, "Desculpe,Você tem que terminar a quest para usar está magia.")  
end  
return TRUE 
end

Editado Agosto 28 por MatheusMkalo

Zaroth1Z
28 de agosto de 2010 às 13:43

é, agora deu certo, mais ele nao aparece uma mensagem dizendo "voce nao pode soltar a magia porqe nao terminou a quest"

saca?

 

 

porqe agora tá assim

eu solto ela sem storage, ela nao aparece msg nem nada D=

 

riri

mais brigado pelo passo ;@

VodkartV
28 de agosto de 2010 às 13:58

tenta assim:

 

local storage = 10301 

function onCastSpell(cid, var)  
if getPlayerStorageValue(cid,storage) >= 1 then  -- para ver se ele pode usar a storage 
return doCombat(cid, combat, var)  
else   
doPlayerSendCancel(cid, "Desculpe,Você tem que terminar a quest para usar está magia.")
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) 
end   
return FALSE  
end

Zaroth1Z
28 de agosto de 2010 às 14:25

Fecho!..

 

Agora funciono :D

 

Valeu Matheus e valeu Vodk =***

 

pode fechar *-*

 

Rep+

28 de agosto de 2010 às 14:53

Tópico movido para a subseção referente a esta área.

Caso o usuário precise de ajuda avançada, deverá utilizar o mesmo tópico.

 

Abraços.