w data/npc tworzymy Zajaczek Wielkanocny.xml I wpisujemy w nim
<?xml version="1.0"?> <npc name="Zajaczek Wielkanocny" script="data/npc/scripts/zajac.lua" access="3" lookdir="2"> <mana now="800" max="800"/> <health now="200" max="200"/> <look type="74" head="20" body="30" legs="40" feet="50"/>
A w data/npc/scripts tworzymy zajac.lua i wpisujemy w nim
focus = 0 talk_start = 0 target = 0 following = false attacking = false
function onThingMove(creature, thing, oldpos, oldstackpos)
end
function onCreatureAppear(creature)
end
function onCreatureDisappear(cid, pos) if focus == cid then selfSay('wesolego jajka.') focus = 0 talk_start = 0 end end
function onCreatureTurn(creature)
end
function msgcontains(txt, str) return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)')) end
function onCreatureSay(cid, type, msg) msg = string.lower(msg)
if (msgcontains(msg, 'czesc') and (focus == 0)) and getDistanceToCreature(cid) < 4 then selfSay('Siema ' .. creatureGetName(cid) .. '! Chcesz cos?).') selfLook(cid) focus = cid talk_start = os.clock()
elseif msgcontains(msg, 'czesc') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then selfSay('Sorki, ' .. creatureGetName(cid) .. '! Mam inne sprawy.')
elseif focus == cid then talk_start = os.clock()
if msgcontains(msg, 'manarune') then buy(cid,2270,100,0) elseif msgcontains(msg, 'mpa') then buy(cid,2472,1,0) elseif msgcontains(msg, 'dsl') then buy(cid,2469,1,0) elseif msgcontains(msg, 'sd') then buy(cid,2268,100,0) elseif msgcontains(msg, 'bohy') then buy(cid,2195,1,0) elseif msgcontains(msg, 'g helmet') then buy(cid,2471,1,0) elseif msgcontains(msg, '100 cc') then buy(cid,2160,100,0) elseif msgcontains(msg, 'm sword') then buy(cid,2400,1,0) elseif msgcontains(msg, 'b shield') then buy(cid,2523,1,0) elseif msgcontains(msg, '100 egg') then buy(cid,2695,100,0) elseif msgcontains(msg, 'backpack') then buy(cid,2003,1,0) elseif msgcontains(msg, 'nara') and getDistanceToCreature(cid) < 4 then selfSay('Nara, ' .. creatureGetName(cid) .. '!') focus = 0 talk_start = 0 end end end
function onCreatureChangeOutfit(creature)
end
function onThink() if (os.clock() - talk_start) > 30 then if focus > 0 then selfSay('Next Please...') end focus = 0 end if focus ~= 0 then if getDistanceToCreature(focus) > 5 then selfSay('Good bye then.') focus = 0 end end if focus == 0 then cx, cy, cz = selfGetPosition() randmove = math.random(1,20) if randmove == 1 then nx = cx + 1 end if randmove == 2 then nx = cx - 1 end if randmove == 3 then ny = cy + 1 end if randmove == 4 then ny = cy - 1 end if randmove >= 5 then nx = cx ny = cy end moveToPosition(nx, ny, cz) --summons = 30 --summons2 = 30 end end
|