[ Reprovado ][ Reprovado ][Tutorial] Criando Spells

Makelin1
em Lixeira Pública

Makelin1

Absoft User =D
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 21/03/12Posts: 651Char no Tibia: Pussycat !

Ola Xtibia resolvi criar esse tutorial. Para os iniciantes aprederem sozinhos. Organizei em Spoiler os Tipos de Magia.

 

Spell De Attack:

 

Spoiler

#O Corpo da Spell:

 

#Simples: 1 Efeito

Spoiler

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE,COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_EFFECT,CONST_ME_HITAREA)

setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1.0, -500, 1.6, -600)

 

arr = {

{0, 1, 0},

{1, 3, 1},

{0, 1, 0}

}

local area = createCombatArea(arr)

setCombatArea(combat, area)

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

 

#Simples: 2 Efeitos

Spoiler

local combat1 = createCombatObject()

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_POISONDAMAGE)

setCombatParam(combat1, COMBAT_PARAM_EFFECT, 21)

setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -6.0, -100, -3.0, -250)

 

local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)

setCombatParam(combat2, COMBAT_PARAM_EFFECT, 20)

setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -1.0, -500, -1.3, -680)

 

arr1 = {

{0, 1, 0},

{1, 3, 1},

{0, 1, 0}

}

 

 

 

 

arr2 = {

{1, 0, 1},

{0, 3, 0},

{1, 0, 1}

}

 

 

 

local area1 = createCombatArea(arr1)

local area2 = createCombatArea(arr2)

setCombatArea(combat1, area1)

setCombatArea(combat2, area2)

 

local function onCastSpell1(parameters)

doCombat(parameters.cid, combat1, parameters.var)

end

 

local function onCastSpell2(parameters)

doCombat(parameters.cid, combat2, parameters.var)

end

 

function onCastSpell(cid, var)

local parameters = { cid = cid, var = var}

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 100, parameters)

 

return TRUE

end

 

#Contruindo a Spell

 

#Fazendo Sua Magia: Simples 1 Efeito

Spoiler

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE,COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_EFFECT,CONST_ME_HITAREA)

setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1.0, -500, 1.6, -600)

 

setCombatParam(combat, COMBAT_PARAM_TYPE,COMBAT_PHYSICALDAMAGE) -> Tipo De Dano

setCombatParam(combat, COMBAT_PARAM_EFFECT,CONST_ME_HITAREA) -> Efeito da magia

setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1.0, -500, 1.0, -600) -> Formula do HIT da Spell

 

arr = {

{0, 1, 0},

{1, 2, 1},

{0, 1, 0}

}

 

Local em que a Spell vai sair ou seja, aonde esta o 2 sera o player.

Obs: Botando 2 o efeito da magia nao sai no player, botando 3 o efeito sai encima do player tb

 

local area = createCombatArea(arr)

setCombatArea(combat, area)

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

Nao mecheremos aqui, pois é uma spell simples.

 

 

#Fazendo Sua Magia: 2 Efeitos

Spoiler

local combat1 = createCombatObject()

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_POISONDAMAGE)

setCombatParam(combat1, COMBAT_PARAM_EFFECT, 21)

setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -6.0, -100, -3.0, -250)

 

local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)

setCombatParam(combat2, COMBAT_PARAM_EFFECT, 20)

setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -1.0, -500, -1.3, -680)

 

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_POISONDAMAGE) -> Tipo de Dano do primeiro efeito

setCombatParam(combat1, COMBAT_PARAM_EFFECT, 21) -> Primeiro Efeito

setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -6.0, -100, -3.0, -250) -> Formula do HIT do primeiro efeito

 

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE) -> Tipo de dano do segundo efeito

setCombatParam(combat2, COMBAT_PARAM_EFFECT, 20) -> Segundo Efeito

setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -1.0, -500, -1.3, -680) -> Formula do Hit do segundo efeito

 

arr1 = {

{0, 1, 0},

{1, 3, 1},

{0, 1, 0}

}

 

arr2 = {

{1, 0, 1},

{0, 3, 0},

{1, 0, 1}

}

arr1 = Onde a spell vai se 'criar' o primeiro efeito

arr2 = onde a spell vai se 'criar' o segundo efeito

 

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 100, parameters)

addEvent(onCastSpell1, 100, parameters) -> Quantos segundos apos a fala da magia ira criar o primeiro efeito

addEvent(onCastSpell2, 100, parameters) -> Quantos segundos apos a fala da magia ira criar o segundo efeito

Obs: 100= 1 segundo, 300= 3 segundos, 1000= 10 segundos

 

 

Spell De Cura:

Spoiler

#Corpo da Spell:

Spoiler

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)

setCombatParam(combat, COMBAT_PARAM_EFFECT, 36)

setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)

setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 11, 15)

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

 

#Criando Sua Spell:

 

#Fazendo Sua Magia:

Spoiler

 

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)

Esse Sera o a spell ira fazer

 

setCombatParam(combat, COMBAT_PARAM_EFFECT, 36)

Esse sera o efeito dela

 

setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

Aqui e que essa spell nao é agressiva, entao pode ser usada em protect zone

 

setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)

Essa magia vai curar paralyze

 

setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 11, 15)

Formula da magia, o quanto ela vai healar.

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

Nao precisamos mecher.

 

 

Spell de Suport:

Spoiler

#Corpo da Spell:

#Correr:

Spoiler

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)

setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

 

local condition = createConditionObject(CONDITION_HASTE)

setConditionParam(condition, CONDITION_PARAM_TICKS, 33000)

setConditionFormula(condition, 0.3, -24, 0.3, -24)

setCombatCondition(combat, condition)

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

#Luz

Spoiler

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)

setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

 

local condition = createConditionObject(CONDITION_LIGHT)

setConditionParam(condition, CONDITION_PARAM_LIGHT_LEVEL, 6)

setConditionParam(condition, CONDITION_PARAM_LIGHT_COLOR, 215)

setConditionParam(condition, CONDITION_PARAM_TICKS, (6 * 60 + 10) * 1000)

setCombatCondition(combat, condition)

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

 

#Uma magia qualquer de trap

Spoiler

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_EFFECT, 2)

setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1497)

 

local arr = {

{0, 0, 0, 1, 0, 0 ,0},

{0, 0, 1, 1, 1, 0 ,0},

{0, 1, 0, 0, 0, 1 ,0},

{1, 0, 0, 2, 0, 0 ,1},

{0, 1, 0, 0, 0, 1 ,0},

{0, 0, 1, 1, 1, 0 ,0},

{0, 0, 0, 1, 0, 0 ,0}

}

 

 

local area = createCombatArea(arr)

setCombatArea(combat, area)

 

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

 

#Contruindo a Spell

 

#Correr

Spoiler

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)

Efeito da Magia

 

setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

Magia nao Agressiva, pode ser usada em Portect Zone

 

local condition = createConditionObject(CONDITION_HASTE)

Condição de Correr

 

setConditionParam(condition, CONDITION_PARAM_TICKS, 33000)

Tempo que vai durar, nesse caso 33 segundos

 

setConditionFormula(condition, 0.3, -24, 0.3, -24)

Formula da velocidade

 

setCombatCondition(combat, condition)

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

Nao Mechemos aqui

 

#Luz:

Spoiler

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)

Efeito da Magia

 

setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

Magia nao agressiva, para ser usada em protect zone

 

local condition = createConditionObject(CONDITION_LIGHT)

Condição de criar Luz

 

setConditionParam(condition, CONDITION_PARAM_LIGHT_LEVEL, 6)

Tamanho da Luz

 

setConditionParam(condition, CONDITION_PARAM_LIGHT_COLOR, 215)

Cor da Luz

 

setConditionParam(condition, CONDITION_PARAM_TICKS, (6 * 60 + 10) * 1000)

Tempo que vai durar

 

setCombatCondition(combat, condition)

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

Nao Mechemos aqui

 

#Uma Magia qualquer de Trap:

 

Spoiler

setCombatParam(combat, COMBAT_PARAM_EFFECT, 2)

Efeito que soltara, nesse caso "poff"

 

local arr = {

{0, 0, 0, 1, 0, 0 ,0},

{0, 0, 1, 1, 1, 0 ,0},

{0, 1, 0, 0, 0, 1 ,0},

{1, 0, 0, 2, 0, 0 ,1},

{0, 1, 0, 0, 0, 1 ,0},

{0, 0, 1, 1, 1, 0 ,0},

{0, 0, 0, 1, 0, 0 ,0}

}

Local em que as magic wall serao criadas

 

local area = createCombatArea(arr)

setCombatArea(combat, area)

 

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

Aqui nao mecheremos.

 

Bom é isso Pessoal.

Espero que tenham Gostado!

Obs: Quando eu tiver tempo, mostrarei todos os effects

Att

Smartbox

 

 

Ajudei ? + REP

 

Absoft Map

http://www.xtibia.co...__fromsearch__1

 

2575910.gif

xFkyx

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 22/03/11Posts: 39

Mal organizado, e poucas explicações.

Reprovado por mim.

 

ps: tente por em code os scripts

Makelin1

Absoft User =D
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 21/03/12Posts: 651Char no Tibia: Pussycat !

blz se eu for criar nova versao eu ponho blz ?

Att

Smartbox

 

 

Ajudei ? + REP

 

Absoft Map

http://www.xtibia.co...__fromsearch__1

 

2575910.gif

Beeki

Ex-Coordenador XDev
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 12/03/11Posts: 1900Gênero: MasculinoChar no Tibia: Nokte

#Reportado, local errado, correto seria Aprovação de Tutoriais.

 

 

@Topic

 

reprovado também, tópico mal formatado, falta melhorar um Pouco.

Fabio Augustus - Infraestrutura

Skype: guhsvasc

HisashiitYamaguti

O Cortiço - Aluísio Azevedo.
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 17/07/11Posts: 705

Tópico movido para a área correta.

Obrigado a quem reportou (Beeki).

hisashi.png

 

Piabeta Kun

Ex-Coordenador de Websites
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 23/12/08Posts: 2403Gênero: MasculinoChar no Tibia: Gordo Warlike

amgio evite postar conteudo ja saturado no forum! pois muitos scripts iguais dificultam a busca por algo na sessao! fora o fato da mal formataçao e erros ortografico!

 

use codes ou quotes para melhoe intendimento do conteudo até!

Daijobu!

 

Gabriel Couto

Anyur
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 22/04/11Posts: 2455Gênero: MasculinoChar no Tibia: Thyn Zare

Olá XTibiano!

 

Infelizmente, seu tutorial reprovado.

Procure por ajuda na seção de como formular um bom tutorial.

 

Grato pela atenção.

Movido.

Gabriel Couto, 23 anos. Acadêmico de Medicina.

Ex-Diretor Geral do XTibia.

 

www.tibiatv.com.br

 

 

Gabriel Couto

Anyur
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 22/04/11Posts: 2455Gênero: MasculinoChar no Tibia: Thyn Zare

Olá XTibiano!

 

Infelizmente, seu tutorial reprovado.

Procure por ajuda na seção de como formular um bom tutorial.

 

Grato pela atenção.

Movido.

Gabriel Couto, 23 anos. Acadêmico de Medicina.

Ex-Diretor Geral do XTibia.

 

www.tibiatv.com.br