Ir para conteúdo
  • Cadastre-se

Monster%252FNPC [NPC] Supreme Vocation + Walk com efeito


Posts Recomendados

Olá galera do tibiaking , me adicionaram muito no msn , pedindo sistema da "Terceira Vocation" com um walk effect system.

Script : Um NPC que vende a terceira vocaçao e dá o efeito de walk.

Como Funciona : Voce vai lá no npc , e compra sua vocation , quando voce compra o NPC te desloga. e quando voce entrar , voce vai ficar soltando uns efeitos legais :)

Então galera , vamos ao Scripts =x

Em Data/XML/Vocations.xml , edite :

Voce vai encontrar um <!-- --> , Cobrindo as vocaçoes com os ids (9 , 10 , 11 e 12) , Remova esses sinais .

Como está :

<!--

<vocation id="9" name="Epic Master Sorcerer" description="an epic master sorcerer" needpremium="0" gaincap="10" gainhp="5" gainmana="30" gainhpticks="4" gainhpamount="10" gainmanaticks="2" gainmanaamount="10" manamultiplier="1.1" attackspeed="2000" soulmax="200" gainsoulticks="15" fromvoc="5" lessloss="50">

<formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/>

<skill fist="1.5" club="2.0" sword="2.0" axe="2.0" distance="2.0" shielding="1.5" fishing="1.1" experience="1.0"/>

</vocation>

<vocation id="10" name="Epic Elder Druid" description="an epic elder druid" needpremium="0" gaincap="10" gainhp="5" gainmana="30" gainhpticks="4" gainhpamount="10" gainmanaticks="2" gainmanaamount="10" manamultiplier="1.1" attackspeed="2000" soulmax="200" gainsoulticks="15" fromvoc="6" lessloss="50">

<formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/>

<skill fist="1.5" club="1.8" sword="1.8" axe="1.8" distance="1.8" shielding="1.5" fishing="1.1" experience="1.0"/>

</vocation>

<vocation id="11" name="Epic Royal Paladin" description="an epic royal paladin" needpremium="0" gaincap="20" gainhp="10" gainmana="15" gainhpticks="3" gainhpamount="10" gainmanaticks="3" gainmanaamount="10" manamultiplier="1.4" attackspeed="2000" soulmax="200" gainsoulticks="15" fromvoc="7" lessloss="50">

<formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/>

<skill fist="1.2" club="1.2" sword="1.2" axe="1.2" distance="1.1" shielding="1.1" fishing="1.1" experience="1.0"/>

</vocation>

<vocation id="12" name="Epic Elite Knight" description="an epic elite knight" needpremium="0" gaincap="25" gainhp="15" gainmana="5" gainhpticks="8" gainhpamount="10" gainmanaticks="4" gainmanaamount="10" manamultiplier="3.0" attackspeed="2000" soulmax="200" gainsoulticks="15" fromvoc="8" lessloss="50">

<formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/>

<skill fist="1.1" club="1.1" sword="1.1" axe="1.1" distance="1.4" shielding="1.1" fishing="1.1" experience="1.0"/>

</vocation>

-->

Como deve Ficar :

</vocation>

<vocation id="9" name="Epic Master Sorcerer" description="an epic master sorcerer" needpremium="0" gaincap="10" gainhp="5" gainmana="30" gainhpticks="4" gainhpamount="10" gainmanaticks="2" gainmanaamount="10" manamultiplier="1.1" attackspeed="2000" soulmax="200" gainsoulticks="15" fromvoc="5" lessloss="50">

<formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/>

<skill fist="1.5" club="2.0" sword="2.0" axe="2.0" distance="2.0" shielding="1.5" fishing="1.1" experience="1.0"/>

</vocation>

<vocation id="10" name="Epic Elder Druid" description="an epic elder druid" needpremium="0" gaincap="10" gainhp="5" gainmana="30" gainhpticks="4" gainhpamount="10" gainmanaticks="2" gainmanaamount="10" manamultiplier="1.1" attackspeed="2000" soulmax="200" gainsoulticks="15" fromvoc="6" lessloss="50">

<formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/>

<skill fist="1.5" club="1.8" sword="1.8" axe="1.8" distance="1.8" shielding="1.5" fishing="1.1" experience="1.0"/>

</vocation>

<vocation id="11" name="Epic Royal Paladin" description="an epic royal paladin" needpremium="0" gaincap="20" gainhp="10" gainmana="15" gainhpticks="3" gainhpamount="10" gainmanaticks="3" gainmanaamount="10" manamultiplier="1.4" attackspeed="2000" soulmax="200" gainsoulticks="15" fromvoc="7" lessloss="50">

<formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/>

<skill fist="1.2" club="1.2" sword="1.2" axe="1.2" distance="1.1" shielding="1.1" fishing="1.1" experience="1.0"/>

</vocation>

<vocation id="12" name="Epic Elite Knight" description="an epic elite knight" needpremium="0" gaincap="25" gainhp="15" gainmana="5" gainhpticks="8" gainhpamount="10" gainmanaticks="4" gainmanaamount="10" manamultiplier="3.0" attackspeed="2000" soulmax="200" gainsoulticks="15" fromvoc="8" lessloss="50">

<formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/>

<skill fist="1.1" club="1.1" sword="1.1" axe="1.1" distance="1.4" shielding="1.1" fishing="1.1" experience="1.0"/>

</vocation>

Agora , Vamos criar o script de Walk System . Explicando : o script de walk system , é um efeito que fica saindo de voce por determinados segundos . o tempo voce edita dentro do script

Vá em Data/CreatureScript/Scripts , crie um arquivo .lua chamado walksystem.lua , e lá dentro adicione :

local time = 5 -- Tempo em segundos que irá aparescer o Efeito

local storage = 34112 -- Não mude a nao ser que voce saiba o que está fazendo

local effects = {1, 2, 3, 4} -- Numero dos efeitos das vocations (1 = Supreme Sorc, 2 = Supreme Druid, 3 = Supreme Pala , 4 = Supreme Kina)

local function onEffect(cid)

doSendMagicEffect(getPlayerPosition(cid),effects[getPlayerVocation(cid)])

addEvent(function() onEffect(cid) end,time*1000)

end

function onLogin(cid)

if getPlayerVocation(cid) == 9 and getPlayerStorageValue(cid,storage) >= 1 then

onEffect(cid)

elseif getPlayerVocation(cid) == 10 and getPlayerStorageValue(cid,storage) >= 1 then

onEffect(cid)

elseif getPlayerVocation(cid) == 11 and getPlayerStorageValue(cid,storage) >= 1 then

onEffect(cid)

elseif getPlayerVocation(cid) == 12 and getPlayerStorageValue(cid,storage) >= 1 then

onEffect(cid)

return true

end

end

Configurando :

Local Time = 5 -- é o tempo que irá soltar o efeito "em segundos"

Local Storage = -- Aconselho nao mexer.

Local Effects = {1,2,3,4} , No Numero 1 , Voce coloca o efeito do S. Sorcerer, no 2 , do Druid , do 3 do Pala e no 4 , do Kina

-- Pronto Configurado =x

Agora vá em Creaturescript.xml e adicione a seguinte tag :


<event type="login" name="WalkSystem" event="script" value="walksystem.lua"/>

agora volte na pasta Scripts (do CreatureEvents) e lá em Login.lua , antes do ultimo return true adicione :

registerCreatureEvent(cid,"WalkSystem")

Agora vamos criar o NPC que vende a vocation Vá em Data/NPC/Scripts , crie um arquivo chamado npcsupreme.lua e lá dentro adicione


<?xml version="1.0" encoding="UTF-8"?>

<npc name="Feplh" script="duelo.lua" walkinterval="2000" floorchange="0">

<health now="100" max="100"/>

<look type="139" head="20" body="39" legs="45" feet="7" addons="0"/>

<parameter key="message_greet" value="Olá |PlayerName| Voce Deseja Duelar Comigo? {duel}."/>

</npc>

Então é isso galera , tenha bom proveito

Ajudei REP+ , Atrapalhei , REP+ pq eu tentei =x

local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local level = 80 -- Level nescessário local price = 50000 -- Valor da supreme vocation local storage = 34112 -- Não Mude if msgcontains(msg, 'supreme promotion') then selfSay('Voce precisa ser level "..level.." e ter "..price.." Gold Coins, Voce esta pronto para isso?', cid) return true end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid if msgcontains(msg, 'yes') then if getPlayerVocation(cid) == 5 then setPlayerVocation(cid,9) setPlayerStorageValue(cid,storage,1) talkState[talkUser] = 1 elseif getPlayerVocation(cid) == 6 then setPlayerVocation(cid,10) setPlayerStorageValue(cid,storage,1) talkState[talkUser] = 2 elseif getPlayerVocation(cid) == 7 then setPlayerVocation(cid,11) setPlayerStorageValue(cid,storage,1) talkState[talkUser] = 3 elseif getPlayerVocation(cid) == 8 then setPlayerVocation(cid,12) setPlayerStorageValue(cid,storage,1) talkState[talkUser] = 4 elseif getPlayerVocation(cid) == 9 or getPlayerVocation(cid) == 10 or getPlayerVocation(cid) == 11 or getPlayerVocation(cid) == 12 then selfSay('Voce ja tem a supreme vocation', cid) talkState[talkUser] = 0 return true end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
Agora crie um XML , chamado snpc E dentro adicione

sign1z.png

Clique na imagem e veja nosso TOPICO OFFICIAL

Link para o post
Compartilhar em outros sites
  • 2 months later...
  • 1 year later...

desculpa depois de 2 anos reviver aki sjoaisjas, mais quando eu boto essa walksystem.lua nao loga nem um char no meu ot mais, dai eu tiro a script loga normal, akguem ajuda?

Link para o post
Compartilhar em outros sites
  • 1 month later...

namoral fi npc com script errado.. ta dando erro!!

Se Ajudei Clique no rep_up.png ao Lado, Não Custa nada :D!!

Link para o post
Compartilhar em outros sites

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo