Ir para conteúdo
  • Cadastre-se

Posts Recomendados

 
--------------------------------------------------------------------------------------------
------------------------------------ Advanced Addon NPC ------------------------------------
-------------------------------- Script made by teh_pwnage ---------------------------------
--------------- Special thanks to: mokerhamer, Xidaozu and Jiddo, deaths'life --------------
------------------------------- Thanks also to everyone else -------------------------------
------------------------------ NPC based on Evolutions V0.7.7 ------------------------------
--------------------------------------------------------------------------------------------
 
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
 
-- OTServ event handling functions start
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
 
 
-- OTServ event handling functions end
 
function creatureSayCallback(cid, type, msg)
-- Place all your code in here. Remember that hi, bye and all that stuff is already handled by the npcsystem, so you do not have to take care of that yourself.
if(npcHandler.focus ~= cid) then
return false
end
 
preco = getPlayerLevel(cid)*3
    bless = getPlayerBlessing(cid,1)
vezes = getResets(cid)
rubys = (getPlayerLevel(cid)*4000)*(vezes*30*4)/1000000
 
if msgcontains(msg, 'aol1') then
selfSay('Você Deseja Comprar Uma Aol1 Por 50k?')
talk_state = 1
 
elseif msgcontains(msg, 'aol2') then
selfSay('Você Deseja Comprar Uma Aol2 Por 50kk?')
talk_state = 2
 
elseif msgcontains(msg, 'aol3') then
selfSay('Você Deseja Comprar Uma Aol3 Por 100kk?')
talk_state = 3
 
elseif msgcontains(msg, 'gdsjghsjg') then
selfSay('I can energyze your necklace for 50k, amulet for 100k or your magic amulet for 150k, do you want energyze?')
talk_state = 4
 
elseif msgcontains(msg, 'bless') or msgcontains(msg, 'blessing') then
selfSay('Bless a mortal? Hmm... Sure I can bless, but it will not be cheap, what do you say about ' .. preco .. 'k?')
talk_state = 5
 
elseif msgcontains(msg, 'reset') then
if vezes == -1 or vezes == 0 then
selfSay('Reset a god? Hmm... First time? Ok, i will do it free this time!')
talk_state = 6
else
selfSay('Reset a god? Hmm... Sure I can, but it will not be cheap, what do you say about ' .. rubys .. ' ruby coins?')
talk_state = 6
end
 
 
elseif msgcontains(msg, 'job') then
selfSay('I am a servent of Merlian!')
 
elseif msgcontains(msg, 'offer') then
selfSay('I can do an element item or energyze your element item, i only need all "necklace", "amulet" ou "magic" amulet, also can bless a little mortal and reset a god!')
 
elseif msgcontains(msg, 'sell') then
selfSay('I am not a merchant!')
 
elseif msgcontains(msg, 'buy') then
selfSay('I am not a merchant!')
 
elseif msgcontains(msg, 'quest') then
selfSay('Ha! You are only a novice!')
 
elseif msgcontains(msg, 'mission') then
selfSay('Ha! You are only a novice!')
 
-- neck
elseif talk_state == 1 then
if msgcontains(msg, 'yes') then
if getPlayerItemCount(cid,2160) >= 5 then
selfSay('Its all yours!')
doPlayerSendTextMessage(cid,22,"Voce recebeu um Elemental necklace.")
  doSendMagicEffect(getPlayerPosition(cid),12)
doPlayerRemoveItem(cid,2160,10)
doPlayerAddItem(cid,13682,1)
talk_state = 0
else
selfSay('You dont have this itens!')
talk_state = 0
end
end
-- amulet
 
elseif talk_state == 2 then
if msgcontains(msg, 'yes') then
if getPlayerItemCount(cid,13685) >= 50 then
selfSay('Its all yours!')
doPlayerSendTextMessage(cid,22,"Voce recebeu um Spirit Elemental amulet.")
  doSendMagicEffect(getPlayerPosition(cid),12)
doPlayerRemoveItem(cid,13685,50)
doPlayerAddItem(cid,13683,1)
talk_state = 0
else
selfSay('You dont have this itens!')
talk_state = 5
end
end
 
elseif talk_state == 3 then
if msgcontains(msg, 'yes') then
if getPlayerItemCount(cid,13685) >= 100 then
selfSay('Its all yours!')
doPlayerSendTextMessage(cid,22,"Voce recebeu um Elemental magic amulet.")
  doSendMagicEffect(getPlayerPosition(cid),12)
doPlayerRemoveItem(cid,13685,100)
doPlayerAddItem(cid,13684,1)
talk_state = 0
else
selfSay('You dont have this itens!')
talk_state = 5
end
end
-- energ
 
elseif talk_state == 4 then
if msgcontains(msg, 'yes') and getPlayerItemCount(cid,2197) >= 1 then
if pay(cid,50000) then
selfSay('Its all yours!')
doPlayerSendTextMessage(cid,22,"Voce recebeu Energizou seu Elemental necklace.")
  doSendMagicEffect(getPlayerPosition(cid),12)
doPlayerRemoveItem(cid,2197,1)
doPlayerAddItem(cid,13682,1)
talk_state = 0
else
selfSay('You dont have this money!')
talk_state = 0
end
 
elseif msgcontains(msg, 'yes') and getPlayerItemCount(cid,2173) >= 1 then
if pay(cid,100000) then
selfSay('Its all yours!')
doPlayerSendTextMessage(cid,22,"Voce recebeu Energizou seu Spirit Elemental amulet.")
  doSendMagicEffect(getPlayerPosition(cid),12)
doPlayerRemoveItem(cid,2173,1)
doPlayerAddItem(cid,13683,1)
talk_state = 0
else
selfSay('You dont have this money!')
talk_state = 0
end
 
elseif msgcontains(msg, 'yes') and getPlayerItemCount(cid,2125) >= 1 then
if pay(cid,150000) then
selfSay('Its all yours!')
doPlayerSendTextMessage(cid,22,"Voce recebeu Energizou seu Elemental magic amulet.")
  doSendMagicEffect(getPlayerPosition(cid),12)
doPlayerRemoveItem(cid,2125,1)
doPlayerAddItem(cid,13684,1)
talk_state = 0
else
selfSay('You dont have this money!')
talk_state = 0
end
 
elseif msgcontains(msg, 'yes') and getPlayerItemCount(cid,2197) >= 0 and getPlayerItemCount(cid,2125) >= 0 and getPlayerItemCount(cid,2173) >= 0 then
selfSay('You dont have this item!')
talk_state = 0
 
 
 
end
 
-- bless
 
elseif talk_state == 5 then
if msgcontains(msg, 'yes') then
if bless then
selfSay('You are already blessed my little mortal.')
talk_state = 0
else
        if isPremium(cid) then
if pay(cid,preco*1000) then
selfSay('Receive this bless mortal, with the gods touch i bless you!')
doPlayerSendTextMessage(cid,22,"Voce recebeu a benção de Isolda.")
                doPlayerAddBlessing(cid, 1)
                doPlayerAddBlessing(cid, 2)
  doSendMagicEffect(getPlayerPosition(cid),12)
talk_state = 0
else
selfSay('Sorry mortal, but you dont have this monney!')
talk_state = 0
end
else
selfSay('Sorry but only can bless a mortal premmy.')
talk_state = 0
end
 
end
end
 
-- reset
 
elseif talk_state == 6 then
--rubys = (getPlayerLevel(cid)*4000)*(vezes*10)/1000000)
if msgcontains(msg, 'yes') then
        if isPremium(cid) then
        if getPlayerLevel(cid) >= 500 then
        if getPlayerVocation(cid) >= 9 then
--if pay(cid,(getPlayerLevel(cid)*4000)*(vezes*10)) then
 
 
        if getPlayerVocation(cid) == 13 then -- deuses
        if getPlayerLevel(cid) >= 510 then
if getPlayerItemCount(cid,13685) >= rubys then
selfSay('Welcome new god!')
doPlayerSendTextMessage(cid,22,"Você resetou seu personagem.")
health = getPlayerMaxHealth(cid)
mana = getPlayerMaxMana(cid)
doPlayerAbortExp(cid,getPlayerExperience(cid))
           doPlayerIncExp(cid,4200)
setPlayerMaxHealth(cid, (health/10)*(vezes+1))
doPlayerAddHealth(cid,(health/10)*(vezes+1))
setPlayerMaxMana(cid, (mana/45)*(vezes+13))
doPlayerAddMana(cid,(mana/45)*(vezes+13))
           setPlayerMaxCapacity(cid,360)
doPlayerAddMagicLevel(cid,30)
  doSendMagicEffect(getPlayerPosition(cid),12)
doPlayerAddResets(cid,1)
doPlayerRemoveItem(cid,13685,rubys)
talk_state = 0
else
selfSay('Sorry mortal, but you dont have this monney!')
talk_state = 0
end
else
selfSay('Sorry, but only gods level 510 or above can do that!')
talk_state = 0
end
end
        if getPlayerVocation(cid) == 14 then
        if getPlayerLevel(cid) >= 510 then
if getPlayerItemCount(cid,13685) >= rubys then
selfSay('Welcome new god!')
doPlayerSendTextMessage(cid,22,"Você resetou seu personagem.")
health = getPlayerMaxHealth(cid)
mana = getPlayerMaxMana(cid)
doPlayerAbortExp(cid,getPlayerExperience(cid))
           doPlayerIncExp(cid,4200)
setPlayerMaxHealth(cid, (health/10)*(vezes+1))
doPlayerAddHealth(cid,(health/10)*(vezes+1))
setPlayerMaxMana(cid, (mana/45)*(vezes+13))
doPlayerAddMana(cid,(mana/45)*(vezes+13))
           setPlayerMaxCapacity(cid,360)
doPlayerAddMagicLevel(cid,30)
  doSendMagicEffect(getPlayerPosition(cid),12)
doPlayerAddResets(cid,1)
doPlayerRemoveItem(cid,13685,rubys)
talk_state = 0
else
selfSay('Sorry mortal, but you dont have this monney!')
talk_state = 0
end
else
selfSay('Sorry, but only gods level 510 or above can do that!')
talk_state = 0
end
end
        if getPlayerVocation(cid) == 15 then
        if getPlayerLevel(cid) >= 510 then
if getPlayerItemCount(cid,13685) >= rubys then
selfSay('Welcome new god!')
doPlayerSendTextMessage(cid,22,"Você resetou seu personagem.")
           
health = getPlayerMaxHealth(cid)
mana = getPlayerMaxMana(cid)
doPlayerAbortExp(cid,getPlayerExperience(cid))
           doPlayerIncExp(cid,4200)
setPlayerMaxHealth(cid, (health/20)*(vezes+10))
doPlayerAddHealth(cid,(health/20)*(vezes+10))
setPlayerMaxMana(cid, (mana/25)*(vezes+7))
doPlayerAddMana(cid,(mana/25)*(vezes+7))
           setPlayerMaxCapacity(cid,360)
doPlayerAddMagicLevel(cid,2)
doPlayerAddSkill(cid,4,25) 
doPlayerAddSkill(cid,5,25) 
  doSendMagicEffect(getPlayerPosition(cid),12)
doPlayerAddResets(cid,1)
doPlayerRemoveItem(cid,13685,rubys)
talk_state = 0
else
selfSay('Sorry mortal, but you dont have this monney!')
talk_state = 0
end
else
selfSay('Sorry, but only gods level 510 or above can do that!')
talk_state = 0
end
end
 
        if getPlayerVocation(cid) == 16 then
        if getPlayerLevel(cid) >= 510 then
if getPlayerItemCount(cid,13685) >= rubys then
selfSay('Welcome new god!')
doPlayerSendTextMessage(cid,22,"Você resetou seu personagem.")
health = getPlayerMaxHealth(cid)
mana = getPlayerMaxMana(cid)
doPlayerAbortExp(cid,getPlayerExperience(cid))
           doPlayerIncExp(cid,4200)
setPlayerMaxHealth(cid, (health/25)*(vezes+10))
doPlayerAddHealth(cid,(health/25)*(vezes+10))
setPlayerMaxMana(cid, (mana/15)*(vezes+6))
doPlayerAddMana(cid,(mana/15)*(vezes+6))
           setPlayerMaxCapacity(cid,360)
doPlayerAddSkill(cid,0,25) 
doPlayerAddSkill(cid,1,25) 
doPlayerAddSkill(cid,2,25) 
doPlayerAddSkill(cid,3,25) 
doPlayerAddSkill(cid,5,25)
                doPlayerAddMagicLevel(cid,2) 
  doSendMagicEffect(getPlayerPosition(cid),12)
doPlayerAddResets(cid,1)
doPlayerRemoveItem(cid,13685,rubys)
talk_state = 0
else
selfSay('Sorry mortal, but you dont have this monney!')
talk_state = 0
end
else
selfSay('Sorry, but only gods level 510 or above can do that!')
talk_state = 0
end
end
 
if getResets(cid) <= 0 and getPlayerVocation(cid) >= 13 and getPlayerLevel(cid) >= 500 then
setPlayerStorageValue(cid,7777,1)
end
 
        if getPlayerVocation(cid) >= 9 and getPlayerVocation(cid) < 13 then -- semis
if getPlayerItemCount(cid,6500) >= 25 then
selfSay('Oh! Now you are a god!')
 
        if getPlayerVocation(cid) >= 9 and getPlayerVocation(cid) < 11 then
doPlayerAddMagicLevel(cid,10)
           setPlayerMaxCapacity(cid,360)
end
        if getPlayerVocation(cid) == 11 then
doPlayerAddMagicLevel(cid,2)
doPlayerAddSkill(cid,4,10)
doPlayerAddSkill(cid,5,10)
           setPlayerMaxCapacity(cid,360)
end
        if getPlayerVocation(cid) == 12 then
           doPlayerAddSkill(cid,0,10)
           doPlayerAddSkill(cid,1,10)
           doPlayerAddSkill(cid,2,10)
           doPlayerAddSkill(cid,3,10)
           doPlayerAddSkill(cid,5,10)
           setPlayerMaxCapacity(cid,360)
end
 
doPlayerSendTextMessage(cid,22,"Você evoluiu seu espírito a Deus.")
doPlayerAbortExp(cid,getPlayerExperience(cid))
           doPlayerIncExp(cid,4200)
setPlayerMaxHealth(cid,185)
doPlayerAddHealth(cid,185)
setPlayerMaxMana(cid,35)
doPlayerAddMana(cid,35)
doPlayerSetVocation(cid, getPlayerVocation(cid)+4)
  doSendMagicEffect(getPlayerPosition(cid),12)
doPlayerRemoveItem(cid,6500,25)
talk_state = 0
 
else
selfSay('Sorry, but you dont have the 25 Demoniac Essences!')
talk_state = 0
end
end
 
else
selfSay('Sorry, but only gods i can do that!')
talk_state = 0
end
else
selfSay('Sorry, but only gods level 500 or above can do that!')
talk_state = 0
end
else
selfSay('Sorry but only can reset a god premmy.')
talk_state = 0
end
 
end
--end
 
------------------------------------------------ confirm no ------------------------------------------------
elseif msgcontains(msg, 'no') and (talk_state >= 1 and talk_state <= 34) then
selfSay('Ok than.')
talk_state = 0
end
-- Place all your code in here. Remember that hi, bye and all that stuff is already handled by the npcsystem, so you do not have to take care of that yourself.
return true
end
 
function teste(cid)
 
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
 
 
 
 
 
 
 
 
 
 
 
 
 
 
quero por para cobrar menos a cada reset, alguem sabe arruma isso ? ela ta cobrando muito caro para os reset
Link para o post
Compartilhar em outros sites
rubys = (getPlayerLevel(cid)*4000)*(vezes*30*4)/1000000

 

aqui tá a formula do dinheiro: é o level * 4000 * (qnts resets tem * 120) / 1000000

Só arrumar que fica do jeito que você quer

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Link para o post
Compartilhar em outros sites
  • 3 years later...

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.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo