Poradnik jak zbudować npc.
NPC jest to postać sterowana przez komputer
która np. sprzedaje żeczy
za ladą lub teleportuje itd...
1.Tworzymy plik np. Sprzedawca.xml i w nim
wpisujemy:
"<?xml version="1.0"?>
<npc name="Nazwa" script="data/npc/scripts/nazwa pliku.lua" access="3"
lookdir="2">
<mana now="ile many" max="ile many"/>
<health now="ile hp" max="ile hp"/>
<look type="Wygląd" head="wygląd głowy" body="wygląd ciała" legs="wyg.
spodni" feet="buty" corpse="id ciała które po zginięciu leży"/>
</npc>"
2.Teraz kopiujemy jakiś plik npc w folderze
(data\npc\scripts) w formacie lua
i edytujemy mowę powitalną:
"if ((string.find(msg, '(%a*)co powiedzieć aby się
odezwał(%a*)')) and (focus == 0)) and getDistanceToCreature(cid) < 4
then
selfSay('Czesc ' .. creatureGetName(cid) .. '! sprzedaje cos
tam...".')
focus = cid
talk_start = os.clock()"
Jeśli chcemy aby npc coś sprzedawał to dodajemy:
"elseif msgcontains(msg, 'co powiesz aby sprzedał')
and focus == cid then
buy(cid,numer przedmiotu,ilość,koszt sprzedaży)
talk_start = os.clock()"
można też zamienić w linijce:
"buy(cid,numer przedmiotu,ilość,koszt
sprzedaży)"
Czyli jak zamienisz buy
na sell to npc będzie kupował żeczy
Zmiana pożegnania:
"elseif string.find(msg, '(%a*)bye(%a*)') and
getDistanceToCreature(cid) < 4 then
selfSay('Zapraszam spowrotem, ' .. creatureGetName(cid) .. '!')
focus = 0
talk_start = 0"
w linijce:
selfSay('Zapraszam spowrotem,
' .. creatureGetName(cid) .. '!')
po napisaniu do npc. "Bye"on żegna się z tobą tym
tekstem:
elseif string.find(msg,
'(%a*)bye(%a*)') and getDistanceToCreature(cid) < 4 then
zmieniamy słowo "bye" na pożegnanie jakie gracz ma
powiedzieć aby npc
zakończył rozmowę i pożegnał się.
Koniec
:)
|