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

local shopModule = ShopModule:new()
npcHandler:addModule(shopModule)

--shopModule:addSellableItem({'strange talisman'},2161, 30, 'strange talisman')
--shopModule:addSellableItem({'magic lightwand'},2162, 35, 'magic lightwand')
--shopModule:addSellableItem({'might ring'},2164, 250, 'might ring')
--shopModule:addSellableItem({'stealth ring'},2165, 200, 'stealth ring')
--shopModule:addSellableItem({'power ring'},2166, 50, 'power ring')
--shopModule:addSellableItem({'energy ring'},2167, 100, 'energy ring')
--shopModule:addSellableItem({'life ring'},2168, 50, 'life ring')
--shopModule:addSellableItem({'time ring'},2169, 100, 'time ring')
--shopModule:addSellableItem({'emerald bangle'},2127, 800, 'emerald bangle')
--shopModule:addSellableItem({'ruby necklace'},2133, 2000, 'ruby necklace')
--shopModule:addSellableItem({'silver brooch'},2134, 150, 'silver brooch')
--shopModule:addSellableItem({'ring of the sky'},2123, 30000, 'ring of the sky')
--shopModule:addSellableItem({'crystal necklace'},2125, 400, 'crystal necklace')
--shopModule:addSellableItem({'scarab amulet'},2135, 200, 'scarab amulet')
shopModule:addSellableItem({'doll'},2110, 200, 'doll')
shopModule:addSellableItem({'demonbone amulet'},2136, 32000, 'demonbone amulet')
shopModule:addSellableItem({'ancient amulet'},2142, 250, 'ancient amulet')
shopModule:addSellableItem({'silver amulet'},2170, 50, 'silver amulet')
shopModule:addSellableItem({'platinum amulet'},2171, 2500, 'platinum amulet')
shopModule:addSellableItem({'bronze amulet'},2172, 50, 'bronze amulet')
shopModule:addSellableItem({'orb'},2176, 750, 'orb')
shopModule:addSellableItem({'mind stone'},2178, 100, 'mind stone')
shopModule:addSellableItem({'gold ring'},2179, 8000, 'gold ring')
shopModule:addSellableItem({'terra rod'},2181, 2000, 'terra rod')
shopModule:addSellableItem({'snakebite rod'},2182, 100, 'snakebite rod')
shopModule:addSellableItem({'hailstorm rod'},2183, 3000, 'hailstorm rod')
shopModule:addSellableItem({'necrotic rod'},2185, 1000, 'necrotic rod')
shopModule:addSellableItem({'moonlight rod'},2186, 200, 'moonlight rod')
shopModule:addSellableItem({'wand of inferno'},2187, 3000, 'wand of inferno')
shopModule:addSellableItem({'wand of decay'},2188, 1000, 'wand of decay')
shopModule:addSellableItem({'wand of cosmic energy'},2189, 2000, 'wand of cosmic energy')
shopModule:addSellableItem({'wand of vortex'},2190, 100, 'wand of vortex')
shopModule:addSellableItem({'wand of dragonbreath'},2191, 200, 'wand of dragonbreath')
shopModule:addSellableItem({'mysterious fetish'},2194, 50, 'mysterious fetish')
shopModule:addSellableItem({'boots of haste'},2195, 30000, 'boots of haste')
shopModule:addSellableItem({'stone skin amulet'},2197, 500, 'stone skin amulet')
shopModule:addSellableItem({'elven amulet'},2198, 100, 'elven amulet')
shopModule:addSellableItem({'garlic necklace'},2199, 50, 'garlic necklace')
shopModule:addSellableItem({'protection amulet'},2200, 100, 'protection amulet')
shopModule:addSellableItem({'dragon necklace'},2201, 100, 'dragon necklace')
shopModule:addSellableItem({'sword ring'},2207, 100, 'sword ring')
shopModule:addSellableItem({'axe ring'},2208, 100, 'axe ring')
shopModule:addSellableItem({'club ring'},2209, 100, 'club ring')
shopModule:addSellableItem({'dwarven ring'},2213, 100, 'dwarven ring')
shopModule:addSellableItem({'ring of healing'},2214, 100, 'ring of healing')
shopModule:addSellableItem({'blessed ankh'},2327, 100, 'blessed ankh')
shopModule:addSellableItem({'cobrafang dagger'},2351, 2, 'cobrafang dagger')
shopModule:addSellableItem({'sword'},2376, 25, 'sword')
shopModule:addSellableItem({'two handed sword'},2377, 450, 'two handed sword')
shopModule:addSellableItem({'battle axe'},2378, 80, 'battle axe')
shopModule:addSellableItem({'hand axe'},2380, 4, 'hand axe')
shopModule:addSellableItem({'halberd'},2381, 400, 'halberd')
shopModule:addSellableItem({'spike sword'},2383, 1000, 'spike sword')
shopModule:addSellableItem({'rapier'},2384, 5, 'rapier')
shopModule:addSellableItem({'sabre'},2385, 12, 'sabre')
shopModule:addSellableItem({'axe'},2386, 7, 'axe')
shopModule:addSellableItem({'spear'},2389, 3, 'spear')
shopModule:addSellableItem({'war hammer'},2391, 1200, 'war hammer')
shopModule:addSellableItem({'fire sword'},2392, 4000, 'fire sword')
shopModule:addSellableItem({'giant sword'},2393, 17000, 'giant sword')
shopModule:addSellableItem({'morning star'},2394, 90, 'morning star')
shopModule:addSellableItem({'ice rapier'},2396, 1000, 'ice rapier')
shopModule:addSellableItem({'mace'},2398, 30, 'mace')
shopModule:addSellableItem({'silver dagger'},2402, 500, 'silver dagger')
shopModule:addSellableItem({'serpent sword'},2409, 900, 'serpent sword')
shopModule:addSellableItem({'throwing knife'},2410, 7, 'throwing knife')
shopModule:addSellableItem({'poison dagger'},2411, 50, 'poison dagger')
shopModule:addSellableItem({'broadsword'},2413, 500, 'broadsword')
shopModule:addSellableItem({'dragon lance'},2414, 9000, 'dragon lance')
shopModule:addSellableItem({'battle hammer'},2417, 88, 'battle hammer')
shopModule:addSellableItem({'scimitar'},2419, 150, 'scimitar')
shopModule:addSellableItem({'obsidian lance'},2425, 500, 'obsidian lance')
shopModule:addSellableItem({'naginata'},2426, 2000, 'naginata')
shopModule:addSellableItem({'guardian halberd'},2427, 11000, 'guardian halberd')
shopModule:addSellableItem({'knight axe'},2430, 2000, 'knight axe')
shopModule:addSellableItem({'fire axe'},2432, 8000, 'fire axe')
shopModule:addSellableItem({'dragon hammer'},2434, 2000, 'dragon hammer')
shopModule:addSellableItem({'skull staff'},2436, 6000, 'skull staff')
shopModule:addSellableItem({'epee'},2438, 8000, 'epee')
shopModule:addSellableItem({'daramanian mace'},2439, 110, 'daramanian mace')
shopModule:addSellableItem({'daramanian waraxe'},2440, 1000, 'daramanian waraxe')
shopModule:addSellableItem({'heavy machete'},2442, 90, 'heavy machete')
shopModule:addSellableItem({'hammer of wrath'},2444, 30000, 'hammer of wrath')
shopModule:addSellableItem({'heavy mace'},2452, 50000, 'heavy mace')
shopModule:addSellableItem({'war axe'},2454, 12000, 'war axe')
shopModule:addSellableItem({'steel helmet'},2457, 190, 'steel helmet')
shopModule:addSellableItem({'chain helmet'},2458, 17, 'chain helmet')
shopModule:addSellableItem({'leather helmet'},2461, 3, 'leather helmet')
shopModule:addSellableItem({'devil helmet'},2462, 1000, 'devil helmet')
shopModule:addSellableItem({'plate armor'},2463, 400, 'plate armor')
shopModule:addSellableItem({'chain armor'},2464, 70, 'chain armor')
shopModule:addSellableItem({'brass armor'},2465, 150, 'brass armor')
shopModule:addSellableItem({'golden armor'},2466, 20000, 'golden armor')
shopModule:addSellableItem({'leather armor'},2467, 12, 'leather armor')
shopModule:addSellableItem({'golden legs'},2470, 90000, 'golden legs')
shopModule:addSellableItem({'magic plate armor'},2472, 150000, 'magic plate armor')
shopModule:addSellableItem({'warrior helmet'},2475, 5000, 'warrior helmet')
shopModule:addSellableItem({'knight armor'},2476, 5000, 'knight armor')
shopModule:addSellableItem({'knight legs'},2477, 5000, 'knight legs')
shopModule:addSellableItem({'strange helmet'},2479, 500, 'strange helmet')
shopModule:addSellableItem({'noble armor'},2486, 900, 'noble armor')
shopModule:addSellableItem({'crown armor'},2487, 12000, 'crown armor')
shopModule:addSellableItem({'crown legs'},2488, 12000, 'crown legs')
shopModule:addSellableItem({'dark armor'},2489, 400, 'dark armor')
shopModule:addSellableItem({'dark helmet'},2490, 250, 'dark helmet')
shopModule:addSellableItem({'crown helmet'},2491, 2500, 'crown helmet')
shopModule:addSellableItem({'dragon scale mail'},2492, 40000, 'dragon scale mail')
shopModule:addSellableItem({'crusader helmet'},2497, 6000, 'crusader helmet')
shopModule:addSellableItem({'royal helmet'},2498, 30000, 'royal helmet')
shopModule:addSellableItem({'dwarven armor'},2503, 30000, 'dwarven armor')
shopModule:addSellableItem({'steel shield'},2509, 80, 'steel shield')
shopModule:addSellableItem({'wooden shield'},2512, 3, 'wooden shield')
shopModule:addSellableItem({'battle shield'},2513, 95, 'battle shield')
shopModule:addSellableItem({'mastermind shield'},2514, 70000, 'mastermind shield')
shopModule:addSellableItem({'guardian shield'},2515, 2000, 'guardian shield')
shopModule:addSellableItem({'dragon shield'},2516, 4000, 'dragon shield')
shopModule:addSellableItem({'bonelord shield'},2518, 1200, 'bonelord shield')
shopModule:addSellableItem({'crown shield'},2519, 8000, 'crown shield')
shopModule:addSellableItem({'demon shield'},2520, 30000, 'demon shield')
shopModule:addSellableItem({'dark shield'},2521, 400, 'dark shield')
shopModule:addSellableItem({'tower shield'},2528, 8000, 'tower shield')
shopModule:addSellableItem({'black shield'},2529, 800, 'black shield')
shopModule:addSellableItem({'ancient shield'},2532, 900, 'ancient shield')
shopModule:addSellableItem({'vampire shield'},2534, 15000, 'vampire shield')
shopModule:addSellableItem({'castle shield'},2535, 5000, 'castle shield')
shopModule:addSellableItem({'medusa shield'},2536, 9000, 'medusa shield')
shopModule:addSellableItem({'phoenix shield'},2539, 16000, 'phoenix shield')
shopModule:addSellableItem({'scarab shield'},2540, 2000, 'scarab shield')
shopModule:addSellableItem({'bone shield'},2541, 80, 'bone shield')
shopModule:addSellableItem({'patched boots'},2641, 2000, 'patched boots')
shopModule:addSellableItem({'steel boots'},2645, 30000, 'steel boots')
shopModule:addSellableItem({'chain legs'},2648, 25, 'chain legs')
shopModule:addSellableItem({'blue robe'},2656, 10000, 'blue robe')
shopModule:addSellableItem({'mystic turban'},2663, 150, 'mystic turban')
shopModule:addSellableItem({'voodoo doll'},3955, 400, 'voodoo doll')
shopModule:addSellableItem({'beastslayer axe'},3962, 1500, 'beastslayer axe')
shopModule:addSellableItem({'leopard armor'},3968, 1000, 'leopard armor')
shopModule:addSellableItem({'bonelord helmet'},3972, 7500, 'bonelord helmet')
shopModule:addSellableItem({'crocodile boots'},3982, 1000, 'crocodile boots')
shopModule:addSellableItem({'spectral stone'},4851, 50, 'spectral stone')
shopModule:addSellableItem({'pirate boots'},5462, 3000, 'pirate boots')
shopModule:addSellableItem({'light shovel'},5710, 300, 'light shovel')
shopModule:addSellableItem({'skull helmet'},5741, 40000, 'skull helmet')
shopModule:addSellableItem({'pirate voodoo doll'},5810, 500, 'pirate voodoo doll')
shopModule:addSellableItem({'pirate knee breeches'},5918, 200, 'pirate knee breeches')
shopModule:addSellableItem({'pirate shirt'},6095, 500, 'pirate shirt')
shopModule:addSellableItem({'pirate hat'},6096, 1000, 'pirate hat')
shopModule:addSellableItem({'tortoise shield'},6131, 150, 'tortoise shield')
shopModule:addSellableItem({'death ring'},6300, 1000, 'death ring')
shopModule:addSellableItem({'death ring'},6301, 1000, 'death ring')
shopModule:addSellableItem({'ruthless axe'},6553, 45000, 'ruthless axe')
shopModule:addSellableItem({'brutetamers staff'},7379, 1500, 'brutetamers staff')
shopModule:addSellableItem({'mammoth whopper'},7381, 300, 'mammoth whopper')
shopModule:addSellableItem({'demonrage sword'},7382, 36000, 'demonrage sword')
shopModule:addSellableItem({'relic sword'},7383, 25000, 'relic sword')
shopModule:addSellableItem({'mystic blade'},7384, 30000, 'mystic blade')
shopModule:addSellableItem({'mercenary sword'},7386, 12000, 'mercenary sword')
shopModule:addSellableItem({'diamond sceptre'},7387, 3000, 'diamond sceptre')
shopModule:addSellableItem({'vile axe'},7388, 30000, 'vile axe')
shopModule:addSellableItem({'heroic axe'},7389, 30000, 'heroic axe')
shopModule:addSellableItem({'dragon slayer'},7402, 15000, 'dragon slayer')
shopModule:addSellableItem({'berserker'},7403, 40000, 'berserker')
shopModule:addSellableItem({'assassin dagger'},7404, 20000, 'assassin dagger')
shopModule:addSellableItem({'haunted blade'},7407, 8000, 'haunted blade')
shopModule:addSellableItem({'wyvern fang'},7408, 1500, 'wyvern fang')
shopModule:addSellableItem({'northern star'},7409, 10000, 'northern star')
shopModule:addSellableItem({'queens sceptre'},7410, 10000, 'queens sceptre')
shopModule:addSellableItem({'ornamented axe'},7411, 20000, 'ornamented axe')
shopModule:addSellableItem({'titan axe'},7413, 4000, 'titan axe')
shopModule:addSellableItem({'abyss hammer'},7414, 20000, 'abyss hammer')
shopModule:addSellableItem({'cranial basher'},7415, 30000, 'cranial basher')
shopModule:addSellableItem({'nightmare blade'},7418, 35000, 'nightmare blade')
shopModule:addSellableItem({'dreaded cleaver'},7419, 15000, 'dreaded cleaver')
shopModule:addSellableItem({'onyx flail'},7421, 22000, 'onyx flail')
shopModule:addSellableItem({'jade hammer'},7422, 25000, 'jade hammer')
shopModule:addSellableItem({'lunar staff'},7424, 5000, 'lunar staff')
shopModule:addSellableItem({'taurus mace'},7425, 500, 'taurus mace')
shopModule:addSellableItem({'amber staff'},7426, 8000, 'amber staff')
shopModule:addSellableItem({'chaos mace'},7427, 9000, 'chaos mace')
shopModule:addSellableItem({'bonebreaker'},7428, 10000, 'bonebreaker')
shopModule:addSellableItem({'dragonbone staff'},7430, 3000, 'dragonbone staff')
shopModule:addSellableItem({'furry club'},7432, 1000, 'furry club')
shopModule:addSellableItem({'sapphire hammer'},7437, 7000, 'sapphire hammer')
shopModule:addSellableItem({'crystal sword'},7449, 600, 'crystal sword')
shopModule:addSellableItem({'shadow sceptre '},7451, 5000, 'shadow sceptre ')
shopModule:addSellableItem({'spiked squelcher'},7452, 5000, 'spiked squelcher')
shopModule:addSellableItem({'noble axe'},7456, 10000, 'noble axe')
shopModule:addSellableItem({'fur boots'},7457, 2000, 'fur boots')
shopModule:addSellableItem({'norse shield'},7460, 1500, 'norse shield')
shopModule:addSellableItem({'krimhorn helmet'},7461, 200, 'krimhorn helmet')
shopModule:addSellableItem({'ragnir helmet'},7462, 400, 'ragnir helmet')
shopModule:addSellableItem({'mammoth fur cape'},7463, 6000, 'mammoth fur cape')
shopModule:addSellableItem({'mammoth fur shorts'},7464, 850, 'mammoth fur shorts')
shopModule:addSellableItem({'fiery relic sword'},7745, 25000, 'fiery relic sword')
shopModule:addSellableItem({'fiery mystic blade'},7746, 30000, 'fiery mystic blade')
shopModule:addSellableItem({'fiery dragon slayer'},7748, 15000, 'fiery dragon slayer')
shopModule:addSellableItem({'fiery heroic axe'},7751, 30000, 'fiery heroic axe')
shopModule:addSellableItem({'fiery war axe'},7753, 12000, 'fiery war axe')
shopModule:addSellableItem({'fiery cranial basher'},7756, 30000, 'fiery cranial basher')
shopModule:addSellableItem({'icy relic sword'},7764, 25000, 'icy relic sword')
shopModule:addSellableItem({'icy mystic blade'},7765, 30000, 'icy mystic blade')
shopModule:addSellableItem({'icy dragon slayer'},7767, 15000, 'icy dragon slayer')
shopModule:addSellableItem({'icy heroic axe'},7770, 30000, 'icy heroic axe')
shopModule:addSellableItem({'icy war axe'},7772, 12000, 'icy war axe')
shopModule:addSellableItem({'icy cranial basher'},7775, 30000, 'icy cranial basher')
shopModule:addSellableItem({'earth relic sword'},7855, 25000, 'earth relic sword')
shopModule:addSellableItem({'earth mystic blade'},7856, 30000, 'earth mystic blade')
shopModule:addSellableItem({'earth dragon slayer'},7858, 15000, 'earth dragon slayer')
shopModule:addSellableItem({'earth heroic axe'},7861, 30000, 'earth heroic axe')
shopModule:addSellableItem({'earth war axe'},7863, 12000, 'earth war axe')
shopModule:addSellableItem({'earth cranial basher'},7866, 30000, 'earth cranial basher')
shopModule:addSellableItem({'energy relic sword'},7870, 25000, 'energy relic sword')
shopModule:addSellableItem({'energy mystic blade'},7871, 30000, 'energy mystic blade')
shopModule:addSellableItem({'energy dragon slayer'},7873, 15000, 'energy dragon slayer')
shopModule:addSellableItem({'energy heroic axe'},7876, 30000, 'energy heroic axe')
shopModule:addSellableItem({'energy war axe'},7878, 12000, 'energy war axe')
shopModule:addSellableItem({'energy cranial basher'},7881, 30000, 'energy cranial basher')
shopModule:addSellableItem({'terra mantle'},7884, 11000, 'terra mantle')
shopModule:addSellableItem({'terra legs'},7885, 11000, 'terra legs')
shopModule:addSellableItem({'terra boots'},7886, 2500, 'terra boots')
shopModule:addSellableItem({'terra amulet'},7887, 1500, 'terra amulet')
shopModule:addSellableItem({'glacier amulet'},7888, 1500, 'glacier amulet')
shopModule:addSellableItem({'lightning pendant'},7889, 1500, 'lightning pendant')
shopModule:addSellableItem({'magma amulet'},7890, 1500, 'magma amulet')
shopModule:addSellableItem({'magma boots'},7891, 2500, 'magma boots')
shopModule:addSellableItem({'glacier shoes'},7892, 2500, 'glacier shoes')
shopModule:addSellableItem({'lightning boots'},7893, 2500, 'lightning boots')
shopModule:addSellableItem({'magma legs'},7894, 11000, 'magma legs')
shopModule:addSellableItem({'lightning legs'},7895, 11000, 'lightning legs')
shopModule:addSellableItem({'glacier kilt'},7896, 11000, 'glacier kilt')
shopModule:addSellableItem({'glacier robe'},7897, 11000, 'glacier robe')
shopModule:addSellableItem({'lightning robe'},7898, 11000, 'lightning robe')
shopModule:addSellableItem({'magma coat'},7899, 11000, 'magma coat')
shopModule:addSellableItem({'magma monocle'},7900, 2500, 'magma monocle')
shopModule:addSellableItem({'lightning headband'},7901, 2500, 'lightning headband')
shopModule:addSellableItem({'glacier mask'},7902, 2500, 'glacier mask')
shopModule:addSellableItem({'terra hood'},7903, 2500, 'terra hood')
shopModule:addSellableItem({'hibiscus dress'},8873, 3000, 'hibiscus dress')
shopModule:addSellableItem({'skullcracker armor'},8889, 18000, 'skullcracker armor')
shopModule:addSellableItem({'paladin armor'},8891, 15000, 'paladin armor')
shopModule:addSellableItem({'underworld rod'},8910, 4400, 'underworld rod')
shopModule:addSellableItem({'northwind rod'},8911, 1500, 'northwind rod')
shopModule:addSellableItem({'springsprout rod'},8912, 3600, 'springsprout rod')
shopModule:addSellableItem({'wand of starstorm'},8920, 3600, 'wand of starstorm')
shopModule:addSellableItem({'wand of draconia'},8921, 1500, 'wand of draconia')
shopModule:addSellableItem({'wand of voodoo'},8922, 4400, 'wand of voodoo')
shopModule:addSellableItem({'guardian boots'},11240, 35000, 'guardian boots')
shopModule:addSellableItem({'zaoan armor'},11301, 14000, 'zaoan armor')
shopModule:addSellableItem({'zaoan helmet'},11302, 45000, 'zaoan helmet')
shopModule:addSellableItem({'zaoan shoes'},11303, 5000, 'zaoan shoes')
shopModule:addSellableItem({'zaoan legs'},11304, 14000, 'zaoan legs')
shopModule:addSellableItem({'drakinata'},11305, 10000, 'drakinata')
shopModule:addSellableItem({'sai'},11306, 16500, 'sai')
shopModule:addSellableItem({'zaoan sword'},11307, 30000, 'zaoan sword')
shopModule:addSellableItem({'drachaku'},11308, 10000, 'drachaku')
shopModule:addSellableItem({'twin hooks'},11309, 500, 'twin hooks')
shopModule:addSellableItem({'bone shoulderplate'},11321, 150, 'bone shoulderplate')
shopModule:addSellableItem({'warmasters wristguards'},11322, 200, 'warmasters wristguards')
shopModule:addSellableItem({'zaoan halberd'},11323, 500, 'zaoan halberd')
shopModule:addSellableItem({'spiked iron ball'},11325, 100, 'spiked iron ball')
shopModule:addSellableItem({'cursed shoulder spikes'},11327, 320, 'cursed shoulder spikes')
shopModule:addSellableItem({'wailing widows necklace'},11329, 3000, 'wailing widows necklace')
shopModule:addSellableItem({'zaogun shoulderplates'},11331, 150, 'zaogun shoulderplates')
shopModule:addSellableItem({'high guards shoulderplates'},11333, 130, 'high guards shoulderplates')
shopModule:addSellableItem({'legionnaire flags'},11334, 500, 'legionnaire flags')
shopModule:addSellableItem({'broken halberd'},11335, 100, 'broken halberd')
shopModule:addSellableItem({'twiceslicer'},12613, 28000, 'twiceslicer')
shopModule:addSellableItem({'draken boots'},12646, 40000, 'draken boots')
shopModule:addSellableItem({'trashed draken boots'},12660, 40000, 'trashed draken boots')


npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())