BlackTibia

No estás conectado. Conéctate o registrate

 » Open Tibia » Pedido de Scripts » 

Pedido de Spell + NPC

Pedido de Spell + NPC

#1 Pedido de Spell + NPC el Sáb Jul 20, 2013 9:10 am

Amy Azzkaban


Miembro
Hola! Necesito un spell sencillo, es como el exiva, pero que ataque a distancia.

Ejemplo del spell:

1- exi soul "Amy Azzkaban = Le llega una SD al player mencionado en el spell estando a distancia.
2- Que el daño sea similar a una SD.
3- El player que hace el spell pierde 100 souls y gasta 300 de mana.
4- El spell solo puede ser usado por Sorcerers.
5- El spell te lo vende un NPC.

Ejemplo del NPC:

1- Cuando lo saludes diga: Hola |PLAYERNAME|. Yo soy el hechicero Yoiker y vendo una poderosa {magia}.
2- Cuando le digas magia se abra la ventanita de trade y se vea un libro llamado, "exi soul" y cueste 3000 gp
3- El nombre del NPC es Yoiker the Sorcerer.
4- Si un player no es sorcerer que le advierta que el solo le enseña a sorcerers.


Espero me puedan ayudar, ya sea con el spell o con el NPC.

Doy rep+

Gracia.

#2 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 9:23 am

Amy Azzkaban


Miembro
Arriba!
Alguien me puede ayudar?

#3 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 10:03 am

CyberM


Scripter
estoy seguro que Yoiker lo podria hacer

#4 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 10:06 am

Amy Azzkaban


Miembro
[Tienes que estar registrado y conectado para ver este vínculo] escribió:estoy seguro que Yoiker lo podria hacer

Xaxaxaxa no se me ocurrió ningun nombre y justamente vi un tema de Yoiker y boooom tomé su nombre para tan malefico NPC :star: 

#5 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 12:33 pm

Strack


Scripter
el npc sera este:
yoiker the sorcerer.xml:
Código:
<?xml version="1.0"?>

<npc name="Yoiker the Sorcerer" script="data/npc/scripts/yoiker the sorcerer.lua" walkinterval="0" access="5" lookdir="3">
    <mana now="800" max="800"/>
    <health now="200" max="200"/>
    <look type="404" head="114" body="114" legs="113" feet="114" addons="0"/>
   <parameters>
      <parameter key="module_shop" value="1"/>
        <parameter key="message_greet" value="Hola |PLAYERNAME|!. Yo soy el hechicero Yoiker y vendo una poderosa {magia}." />
      <parameter key="shop_buyable" value="sword,2376,8"/>
    </parameters>
</npc>

scripts/yoiker the sorcerer.lua:
Código:

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 shopWindow = {}
  local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid
  local PremiumSpells = TRUE
  local AllSpells = FALSE
 
   local magias = {
      [itemid] = { buy = 3000, spell = "Exi Soul", name = "Exi Soul", vocations = {1}, level = 8, premium = 0}
   }
    local onBuy = function(cid, item, subType, amount, ignoreCap, inBackpacks)
      npcHandler:say("Has escogido la magia: " .. magias[item].spell .. " que cuesta " .. magias[item].buy .. " gold.", cid)
      if not getPlayerLearnedInstantSpell(cid, magias[item].spell) then
        if getPlayerLevel(cid) >= magias[item].level then
            if isInArray(magias[item].vocations, getPlayerVocation(cid)) then
              if getPlayerMoney(cid) >= magias[item].buy then
                  doPlayerRemoveMoney(cid, magias[item].buy)
                  playerLearnInstantSpell(cid, magias[item].spell)
                  doSendMagicEffect(getPlayerPosition(cid), 12)
                  npcHandler:say("Has aprendido " .. magias[item].spell, cid)
              else
                  npcHandler:say("You don't have enough money.", cid)
              end
            else
              npcHandler:say("This spell is not for your vocation.", cid)
            end
        else
            npcHandler:say("You need to obtain a level of " .. magias[item].level .. " or higher to be able to learn this spell.", cid)
        end
      else
        npcHandler:say("You already know this spell.", cid)
      end
      return true
  end
 
  if msgcontains(msg, 'magia') and isSorcerer(cid) then
      --npcHandler:say("Here are the spells that you can learn from me.", cid)
      for var, item in pairs(magias) do
        if (not getPlayerLearnedInstantSpell(cid, item.spell) and getPlayerLevel(cid) >= item.level and isInArray(item.vocations, getPlayerVocation(cid)) and (item.premium == 1 and PremiumSpells == TRUE or item.premium == 0)) or AllSpells == TRUE then
            table.insert(shopWindow, {id = var, subType = 0, buy = item.buy, sell = 0, name = item.name})
        end
      end
      openShopWindow(cid, shopWindow, onBuy, onSell)
   elseif not isSorcerer(cid) then
      npcHandler:say("Solo enseño magia a los sorcerer.", cid)
   end
    return true
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

donde pone
Código:
local magias = {
      [itemid] = { buy = 3000, spell = "Exi Soul", name = "Exi Soul", vocations = {1}, level = 8, premium = 0}
   }
por cada magia que quieras que venda añades una linea, itemId sera el id del item que quieras que se muestre, como un libro, un ham, etc. lo otro es facil de entender, spell el nombre de la spell para aprenderla y name el nombre que se mostrara en el trade


La spell como seria, por runa o instant?

#6 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 2:00 pm

Amy Azzkaban


Miembro
En consola me arrojó error el NPC:

[21/7/2013 14:27:52] [Error - NpcScript Interface] [21/7/2013 14:27:52] data/npc/scripts/Premiums NPC/yoiker the sorcerer.lua:onCreatureSay [21/7/2013 14:27:52] Description: [21/7/2013 14:27:52] ...ata/npc/scripts/Premiums NPC/yoiker the sorcerer.lua:20: table index is nil [21/7/2013 14:27:52] stack traceback: [21/7/2013 14:27:52] ...ata/npc/scripts/Premiums NPC/yoiker the sorcerer.lua:20: in function 'callback' [21/7/2013 14:27:52] data/npc/lib/npcsystem/npchandler.lua:456: in function 'onCreatureSay' [21/7/2013 14:27:52] ...ata/npc/scripts/Premiums NPC/yoiker the sorcerer.lua:7: in function <...ata/npc/scripts/Premiums NPC/yoiker the sorcerer.lua:7> escribió:

#7 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 2:35 pm

Strack


Scripter
le cambiaste itemid por otro id?

Código:
local magias = {
      [itemid] = { buy = 3000, spell = "Exi Soul", name = "Exi Soul", vocations = {1}, level = 8, premium = 0}
  }

donde pone itemid le pones cualquier ID, 2178 y saldra el dibujo de una crystal coin...

#8 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 3:20 pm

Amy Azzkaban


Miembro
Lo puse asi para probar:

Código:
local magias = {
      [2160] = { buy = 3000, spell = "Exi Soul", name = "Exi Soul", vocations = {1}, level = 8, premium = 0}
   }

Pero en la ventana de trade no aparece nada.

#9 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 3:35 pm

Strack


Scripter
si ya tienes la spell aprendida no aparece, tansolo si no la tienes

#10 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 3:38 pm

Amy Azzkaban


Miembro
[Tienes que estar registrado y conectado para ver este vínculo] escribió:si ya tienes la spell aprendida no aparece, tansolo si no la tienes

Aun no tengo la spell

#11 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 3:41 pm

Strack


Scripter
Yo lo probe y me funciono, pruebalo con un player normal no con god

#12 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 3:50 pm

Amy Azzkaban


Miembro
Lo probé con un tester player
Mi OTX está embrujado!

#13 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 3:56 pm

Amy Azzkaban


Miembro
[Tienes que estar registrado y conectado para ver esa imagen]

#14 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 4:22 pm

CyberM


Scripter
es que no usan TFS Genius. 

#15 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 4:25 pm

Amy Azzkaban


Miembro
[Tienes que estar registrado y conectado para ver este vínculo] escribió:es que no usan TFS Genius. 

CyberMiau [Tienes que estar registrado y conectado para ver esa imagen]

#16 Re: Pedido de Spell + NPC el Dom Jul 21, 2013 4:25 pm

Strack


Scripter
No he trabajado con otx asi que no se que diferencias tiene con tfs... si no marca error no se decite porque no funciona...

#17 Re: Pedido de Spell + NPC el Vie Jul 24, 2015 11:33 pm

gafogafogafo


Novato
como puedo hacer un tipo de modalidad asi como ese de que se muestre el trade asi como esa imagen que postearon como se puede hacer?

#18 Re: Pedido de Spell + NPC el Sáb Jul 25, 2015 12:02 am

naruto6


Miembro
usando un cliente custom llamado otclient, lo puedes buscar en el buscador del foro, en el post te explican como usarlo

#19 Re: Pedido de Spell + NPC Hoy a las 11:23 am

Contenido patrocinado


Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.

 

¿Quién está en línea?

En total hay 0 usuarios en línea: 0 Registrados, 0 Ocultos y 0 Invitado

Usuarios navegando en este foro: Ninguno

Forum Statistics

Nuestros miembros han públicado un total de posts en temas.
Actualmente hay miembros registrados.
Démosle la bienvenida al miembro más reciente,
La mayor cantidad de usuarios en línea ha sido de .