• 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!

Mountseller

Sir Druidixx

New Member
Joined
Dec 15, 2012
Messages
16
Reaction score
0
hi people, I need a script for a npc.
So one addon npc where you get the addons for items, only meant for mount
So that is a npc where you can get the mount for the corresponding item

thanks in advance​

sry for my bad english!
 
Here We Are :)
XML:
<?xml version="1.0"?>
<npc name="Mount Seller" script="data/npc/scripts/buymount.lua" walkinterval="1" floorchange="0">
<health now="100" max="100"/>
   <look type="335" head="0" body="88" legs="0" feet="0" addons="3" mount="379"/>
<parameters>
<parameter key="message_greet" value="Hello |PLAYERNAME|.I have many {mounts} to sell for you!" />
</parameters>
</npc>

And

Lua:
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
function AddMount(cid, message, keywords, parameters, node) --by vodka
if(not npcHandler:isFocused(cid)) then
return false
end
if (isPlayerPremiumCallback == nil or isPlayerPremiumCallback(cid) == true or parameters.premium == false) then
if(parameters.level ~= nil and getPlayerLevel(cid) < parameters.level) then
npcHandler:say('You must reach level ' .. parameters.level .. ' to buy this mount.', cid)
elseif canPlayerRideMount(cid, parameters.mountid) then
npcHandler:say('you already have this mount!', cid)
elseif not doRemoveItemsFromList(cid,parameters.items) then
npcHandler:say('Sorry You need '..getItemsFromList(parameters.items)..' to buy this mount!', cid)
else
doPlayerAddMount(cid, parameters.mountid)
npcHandler:say('Here is your mount!', cid)
npcHandler:resetNpc()
end
else
npcHandler:say('I can only allow premium players to buy this mount.', cid)
end
npcHandler:resetNpc()
return true
end
local mounts = {
{"widow queen", items = {{6527,10}}, mountid = 1, level = 10, premium = true},
{"racing bird", items = {{6527,5}}, mountid = 2, level = 15, premium = true},
{"war bear", items = {{6527,5}}, mountid = 3, level = 15, premium = true},
{"black sheep", items = {{6527,7}}, mountid = 4, level = 15, premium = true},
{"midnight panther", items = {{6527,10}}, mountid = 5, level = 15, premium = true},
{"draptor", items = {{6527,20}}, mountid = 6, level = 15, premium = true},
{"titanica", items = {{6527,20}}, mountid = 7, level = 15, premium = true},
{"tin lizzard", items = {{6527,15}}, mountid = 8, level = 15, premium = true},
{"blazebringer", items = {{6527,25}}, mountid = 9, level = 15, premium = true},
{"rapid boar", items = {{6527,15}}, mountid = 10, level = 15, premium = true},
{"stampor", items = {{6527,30}}, mountid = 11, level = 15, premium = true},
{"undead cavebear", items = {{6527,30}}, mountid = 12, level = 15, premium = true},
{"mounts", text = "I sell these mounts: {Widow Queen},{Racing Bird},{War Bear},{Black Sheep},{Midnight Panther},{Draptor},{Titanica},{Tin Lizzard},{Blazebringer},{Rapid Boar},{Stampor},{Undead Cavebear}"}
}
for i = 1, #mounts do local get = mounts[i] if type(get.items) == "table" then
local node = keywordHandler:addKeyword({get[1]}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = "You want to buy the mount " .. get[1] .. " for "..getItemsFromList(get.items).." ?"})
node:addChildKeyword({"yes"}, AddMount, {items = get.items,mountid = get.mountid, level = get.level, premium = get.premium})
node:addChildKeyword({"no"}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = "Ok, then.", reset = true})
else keywordHandler:addKeyword({get[1]}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = get.text}) end end
mounts = nil npcHandler:addModule(FocusModule:new())

Rep++ If It Helpful For You
 
Back
Top