• 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 of Trade Items!

djlucas15

New Member
Joined
Feb 18, 2008
Messages
99
Reaction score
0
Location
RS - Brasil
I searching one NPC of trade Items, TFS 0.3 Alpha 3
Crown Armor for Roya Steel

Or NPC of trade worn soft boots and 10k for new soft boots


Sorry for my english.
 
Code:
if msgcontains(msg, 'crown armor') then
    selfSay("Do you want to trade crown armor for royal steel?", cid)
    talkState = 1
elseif msgcontains(msg, 'yes') and talkState == 1 then
    if doPlayerTakeItem(cid, crownarmorid, 1) == TRUE then
        selfSay("Thanks dood, heres your royal steel!", cid)
        doPlayerAddItem(cid, royalsteelid, 1)
    else
        selfSay("You is no have crown armor b00b!", cid)
    end
    talkState = 0
elseif msgcontains(msg, 'no') and talkState == 1 then
    selfSay("As you wish o.O", cid)
    talkState = 0
end
 
Here is Aldo. (Soft Boots refill)

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

local Topic = {}

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

	if(msgcontains(msg, 'soft') or msgcontains(msg, 'boots')) then
		npcHandler:say('Do you want to repair your worn soft boots for 10000 gold coins?', cid)
		Topic[cid] = 1
	elseif(msgcontains(msg, 'yes') and Topic[cid] == 1) then
		if(getPlayerItemCount(cid, 6530) >= 1) then
			if(doPlayerRemoveMoney(cid, 10000)) then
				local item = getPlayerItemById(cid, true, 6530)
				doTransformItem(item.uid, 6132)
				npcHandler:say('Here you are.', cid)
			else
				npcHandler:say('Sorry, you don\'t have enough gold.', cid)
			end
		elseif(getPlayerItemCount(cid, 10021) >= 1) then
			if(doPlayerRemoveMoney(cid, 10000)) then
				local item = getPlayerItemById(cid, true, 10021)
				doTransformItem(item.uid, 6132)
				npcHandler:say('Here you are.', cid)
			else
				npcHandler:say('Sorry, you don\'t have enough gold.', cid)
			end
		elseif(getPlayerItemCount(cid, 6132) >= 1) then
			if(doPlayerRemoveMoney(cid, 10000)) then
				local item = getPlayerItemById(cid, true, 6132)
				doPlayerRemoveItem(cid,6132, 1)
				doPlayerAddItem(cid, 6132, 1)
				npcHandler:say('Here you are.', cid)
			else
				npcHandler:say('Sorry, you don\'t have enough gold.', cid)
			end
		else
			npcHandler:say('Sorry, you don\'t have the item.', cid)
		end
		Topic[cid] = 0
	elseif(msgcontains(msg, 'no') and isInArray({1}, Topic[cid])) then
		Topic[cid] = 0
		npcHandler:say('Ok then.', cid)
	end

	return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
 
PHP:
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)

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

item = 'You do not have the required items.'
done = 'Here you are.'

function creatureSayCallback(cid, type, msg)
    if(not npcHandler:isFocused(cid)) then
        return false
    end
    



        if msgcontains(msg, 'royal steel') then
            if getPlayerItemCount(cid,2487) >= 1 then
                selfSay('Did you bring me the Crown Armor ?', cid)
                talk_state = 7
            else
                selfSay('I need a {Crown Armor}, to give you the royal steel. Come back when you have it.', cid)
                talk_state = 0
            end
        elseif msgcontains(msg, 'yes') and talk_state == 7 then
            talk_state = 0
            if getPlayerItemCount(cid,2487) >= 1 then
                    if doPlayerRemoveItem(cid,2487,1) == TRUE then
                        doPlayerAddItem(cid,5887,1)
                                        selfSay(done, cid)
                    end
            else
                selfSay(item, cid)
            end


        
        elseif msgcontains(msg, 'no') and (talk_state >= 1 and talk_state <= 5) then
            selfSay('So Leave, LEAVE ME NOW!')
            talk_state = 0
        end
    return true
end

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