• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

NPC SANTA CLAUS TFS 1.0 10.30

apoccalypse1

New Member
Joined
Jun 14, 2008
Messages
17
Reaction score
0
please help the npc does not work a picture of the console

447c.png

lib
HTML:
function timeString(timeDiff)
local dateFormat = {
{"day", timeDiff / 60 / 60 / 24},
{"hour", timeDiff / 60 / 60 % 24},
{"minute", timeDiff / 60 % 60},
{"second", timeDiff % 60}
}

local out = {}
for k, t in ipairs(dateFormat) do
local v = math.floor(t[2])
if(v > 0) then
table.insert(out, (k < #dateFormat and (#out > 0 and ', ' or '') or ' and ') .. v .. ' ' .. t[1] .. (v ~= 1 and 's' or ''))
end
end

return table.concat(out)
end

HTML:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Santa Claus" script="santa.lua" walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="160" head="0" body="112" legs="93" feet="95"/>
</npc>

HTML:
 local PRESENT_STORAGE = 29885 -- Storage ID
local gifts = {
{10, 6531, 1}, -- 1% to get Santa Hat [10]
{30, 6512, 1}, -- 3% to get Santa Doll [30]
{40, 2112, 1}, -- 4% to get Teddy Bear [40]
{100, 2160, 10}, -- 10% to get 10 Crystal Coins [100]
{150, 2688, 10}, -- 15% to get 10 Candy Canes [150]
{150, 2152, 100}, -- 15% to get 100 Platinum Coins [150]
{200, 2111, 5}, -- 20% to get 10 Snowballs [200]
{250, 2675, 10}, -- 25% to get 10 Orange [250]
{350, 2674, 15}, -- 35% to get 10 Red Apples [350]
{500, 2687, 10} -- 50% to get 10 Cookies [500]
}

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)

function onCreatureAppear(cid) npcHandler:eek:nCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:eek:nCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:eek:nCreatureSay(cid, type, msg) end
function onThink() npcHandler:eek:nThink() end

function SantaNPC(cid, message, keywords, parameters, node) 
if(not npcHandler:isFocused(cid)) then 
return false 
end 
if (parameters.present == true) then 
if (getPlayerStorageValue(cid, PRESENT_STORAGE) == 1) then
selfSay("Do not try to trick me! You have already recieved your present...", cid)
return true
end

local item = {} 
local reward = 0
local count = ""
for i = 1, #gifts do
item = gifts
if (math.random(0,999) < item[1]) then 
reward = item[2] 
subType = item[3] 
if subType > 1 then 
count = subType .. " " 
end 
break 
end 
end 
doPlayerAddItem(cid, reward, subType) 
setPlayerStorageValue(cid, PRESENT_STORAGE, 1)
npcHandler:say('HO-HO-HO! I have ' .. count .. getItemNameById(reward) .. ' for you.', cid)
else 
npcHandler:say('Come back when you start behaving.', cid) 
end 
npcHandler:resetNpc() 
return true 
end 

npcHandler:setMessage(MESSAGE_GREET, "HO-HO-HO, Merry Christmas |PLAYERNAME|. I have presents for the good children.") 

local noNode = KeywordNode:new({'no'}, SantaNPC, {present = false}) 
local yesNode = KeywordNode:new({'yes'}, SantaNPC, {present = true}) 

local node = keywordHandler:addKeyword({'present'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Have you been well behaved and good this year?...'}) 
node:addChildKeywordNode(yesNode)
node:addChildKeywordNode(noNode)

npcHandler:addModule(FocusModule:new())
 
Change
Code:
function onCreatureAppear(cid) npcHandler:eek:nCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:eek:nCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:eek:nCreatureSay(cid, type, msg) end
function onThink() npcHandler:eek:nThink() end
To
Code:
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

The missing Lua tags changed : o into : eek :
 
Back
Top