Postado Novembro 30, 2014 10 anos Este é um post popular. Fala galera do TK, tudo certinho? então, primeiramente quero dizer que sou iniciante do iniciante do iniciante em script, estou estudando os tutoriais aqui no fórum a uma semana, então se tiver alguma critica construtiva eu vou aceitar com todo prazer aiiii que delicia cara, e peguem leve comigo por favor O que ela faz? Ela te deixa imortal durante 10 segundos (configurável) muda seu outfit (configurável) e tem cooldown de 2 minutos (configurável). Testado em: TFS 8.54 0.4 rev3777 Vídeo: http://youtu.be/5iL8V2Y1BIQ OBS: A principio eu queria deixar que o player que usasse essa magia não receberia dano algum, mas como eu sei pouco de script eu fiz que o player ganhe 100000 de vida e recupere 100000 de vida por segundo (configurável). OBS2: Peguei alguns exemplos de magias do xWhiteWolf aqui no fórum, como o cooldown e a troca de outfit masculina e feminina então 50% dos créditos vão para ele. OBS3: É uma MAGIA simples é fácil de fazer mas como não achei no fórum acredito possa interessar a alguém. Vá em spells/scripts e crie um arquivo chamado immortal.lua e coloque isso dentro: local vida = 100000 local tempo = 10000 local moutifit = {lookType = 268, lookHead = 0, lookBody = 114, lookLegs = 114, lookFeet = 114, lookTypeEx = 0, lookAddons = 3} local foutifit = {lookType = 269, lookHead = 114, lookBody = 114, lookLegs = 114, lookFeet = 114, lookTypeEx = 0, lookAddons = 3} local cooldown = 120 local storage = 34214 local sex = getPlayerSex(cid) local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_REGENERATION) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, vida) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local condition2 = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition2, CONDITION_PARAM_STAT_MAXHEALTH, vida) setConditionParam(condition2, CONDITION_PARAM_TICKS, tempo) setConditionParam(condition2, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition, condition2) function onCastSpell(cid, var) if os.time() - getPlayerStorageValue(cid, storage) >= cooldown then doPlayerSetStorageValue(cid, storage, os.time()) else doPlayerSendTextMessage(cid, 20, "Your spell is in cooldown, you must wait "..(cooldown - (os.time() - getPlayerStorageValue(cid, storage))).." seconds.") return false end if sex == 0 then doSetCreatureOutfit(cid, foutifit, tempo) doSendAnimatedText(getPlayerPosition(cid), "Immortal!", TEXTCOLOR_WHITE) doPlayerSendTextMessage(cid,20,"You are immortal.") else doSetCreatureOutfit(cid, moutifit, tempo) doSendAnimatedText(getPlayerPosition(cid), "Immortal!", TEXTCOLOR_WHITE) doPlayerSendTextMessage(cid,20,"You are immortal.") end return doCombat(cid, combat, var), doAddCondition(cid, condition2) and doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) end Agora vá abra spells.xml e adicione isso: <instant name="Immortal" words="utito immortal" lvl="100" manapercent="30" prem="1" aggressive="0" selftarget="1" exhaustion="2000" needlearn="0" event="script" value="immortal.lua"> <vocation id="7"/> <vocation id="17"/> </instant> OBS4: Sei que eu poderia diminuir o tamanho do script colocando apenas uma vez que ele diga "Immortal!" e a mensagem no console, só que eu não consigo fazer desculpa. Configuração: local vida = Vida que o player vai ganhar e a vida que ele vai recuperar por segundo. local tempo = Tempo que vai durar a spell (1000 = 1 segundo). local moutifit = Outifit masculina. local foutifit = Outifit feminina. local cooldown = Tempo do cooldown (1 = 1 segundo). local storage = Storage do cooldown, certifique de usar um numero que não esteja sendo usado em seu servidor. Criticas e sugestões por favor.
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.