Ir para conteúdo

[Resolvido]Preciso De Npc Urgente


Nomade

Posts Recomendados

queria um npc de addon assim

 

vc chega no npc fala hi

npc: eu posso lhe oferecero first citizen addon, voce quer?

player:yes

NPC: Pronto

 

nao precisa dar item nada, só falar com o npc hi/yes/bye, ai ele da o addon, preciso só de 1 script do npc, e me ensine como coloca os outros addons, pra fazer outros npcs.

 

e pra otserv 8.6

 

e pq to criando um server de rpg com meu team super irado, ai preciso do npc assim.

pra ficar foda o server vou esconder os npcs e os players terão que achar os nps pra addons,

exemplo: o npc que da o first wayfarer vai ficar no final da inquisition e talz.

Editado por Nomade
Link para o comentário
Compartilhar em outros sites

não não, e pq to criando um server de rpg com meu team super irado, ai preciso do npc assim.

pra ficar foda o server vou esconder os npcs e os players terão que achar os nps pra addons,

exemplo: o npc que da o first wayfarer vai ficar no final da inquisition e talz.

Link para o comentário
Compartilhar em outros sites

ok fiz alguns para vc ver:

 

First addon cintezen:

 

 

NPC

 

First Cintizen.xml

<?xml version="1.0"?>
<npc name="First Cintizen" script="data/npc/scripts/addon_cintizen1.lua" walkinterval="5000" floorchange="0">
<health now="100" max="100"/>
<look type="128" head="78" body="88" legs="0" feet="88" addons="1"/>
<parameters>
<parameter key="message_greet" value="Ola |PLAYERNAME|. eu tenho um {addon} a lhe oferecer." />
</parameters>
</npc>

 

 

npc/script

 

addon_cintizen1.lua

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 

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

local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid 

-- first cintizen npc

local config = {
storage = 13001,
outfit_female = 136, -- numero da outfit,nesse caso é cintizen
outfit_male = 128,  -- numero da outfit,nesse caso é cintizen
addons = 1 -- addons que serão dados
} 


if(msgcontains(msg, 'addon') or msgcontains(msg, 'ADDON')) then 
selfSay('eu posso lhe oferecer o first citizen addon, voce quer? {yes} ', cid) 
talkState[talkUser] = 1 
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then 
if getPlayerStorageValue(cid, config.storage) == -1 then
if getPlayerSex(cid) == 0 then  
doPlayerAddOutfit(cid,config.outfit_female, config.addons)
else  
doPlayerAddOutfit(cid,config.outfit_male, config.addons)
end
setPlayerStorageValue(cid,config.storage,1) 
selfSay('aqui está seu addon!.', cid) 
talkState[talkUser] = 0 
else
selfSay('Você já recebeu seu addon.', cid) 
talkState[talkUser] = 0 
end
elseif msg == "no" and talkState[talkUser] == 1 then 
selfSay("Então vá embora!", cid) 
talkState[talkUser] = 0 
npcHandler:releaseFocus(cid) 
end 
return TRUE 
end 


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

 

 

 

 

Second addon cintezen:

 

 

 

NPC

 

 

Second Cintizen.xml

<?xml version="1.0"?>
<npc name="Second Cintizen" script="data/npc/scripts/addon_cintizen2.lua" walkinterval="5000" floorchange="0">
<health now="100" max="100"/>
<look type="128" head="78" body="88" legs="0" feet="88" addons="2"/>
<parameters>
<parameter key="message_greet" value="Ola |PLAYERNAME|. eu tenho um {addon} a lhe oferecer." />
</parameters>
</npc>

 

 

npc/script

 

addon_cintizen2.lua

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 

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

local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid 

-- second cintizen npc

local config = {
storage = 13002,
outfit_female = 136, -- numero da outfit,nesse caso é cintizen
outfit_male = 128,  -- numero da outfit,nesse caso é cintizen
addons = 2 -- addons que serão dados
} 


if(msgcontains(msg, 'addon') or msgcontains(msg, 'ADDON')) then 
selfSay('eu posso lhe oferecer o second citizen addon, voce quer? {yes} ', cid) 
talkState[talkUser] = 1 
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then 
if getPlayerStorageValue(cid, config.storage) == -1 then
if getPlayerSex(cid) == 0 then  
doPlayerAddOutfit(cid,config.outfit_female, config.addons)
else  
doPlayerAddOutfit(cid,config.outfit_male, config.addons)
end
setPlayerStorageValue(cid,config.storage,1) 
selfSay('aqui está seu addon!.', cid) 
talkState[talkUser] = 0 
else
selfSay('Você já recebeu seu addon.', cid) 
talkState[talkUser] = 0 
end
elseif msg == "no" and talkState[talkUser] == 1 then 
selfSay("Então vá embora!", cid) 
talkState[talkUser] = 0 
npcHandler:releaseFocus(cid) 
end 
return TRUE 
end 


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

 

 

 

 

First Hunter addon:

 

 

 

NPC

 

First Hunter.xml

<?xml version="1.0"?>
<npc name="First Hunter" script="data/npc/scripts/addon_hunter1.lua" walkinterval="5000" floorchange="0">
<health now="100" max="100"/>
<look type="129" head="78" body="88" legs="0" feet="88" addons="1"/>
<parameters>
<parameter key="message_greet" value="Ola |PLAYERNAME|. eu tenho um {addon} a lhe oferecer." />
</parameters>
</npc>

 

 

npc/script

 

addon_hunter1.lua

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 

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

local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid 

-- first hunter npc

local config = {
storage = 13003,
outfit_female = 137, -- numero da outfit,nesse caso é hunter
outfit_male = 129,  -- numero da outfit,nesse caso é hunter
addons = 1 -- addons que serão dados
} 


if(msgcontains(msg, 'addon') or msgcontains(msg, 'ADDON')) then 
selfSay('eu posso lhe oferecer o first hunter addon, voce quer? {yes} ', cid) 
talkState[talkUser] = 1 
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then 
if getPlayerStorageValue(cid, config.storage) == -1 then
if getPlayerSex(cid) == 0 then  
doPlayerAddOutfit(cid,config.outfit_female, config.addons)
else  
doPlayerAddOutfit(cid,config.outfit_male, config.addons)
end
setPlayerStorageValue(cid,config.storage,1) 
selfSay('aqui está seu addon!.', cid) 
talkState[talkUser] = 0 
else
selfSay('Você já recebeu seu addon.', cid) 
talkState[talkUser] = 0 
end
elseif msg == "no" and talkState[talkUser] == 1 then 
selfSay("Então vá embora!", cid) 
talkState[talkUser] = 0 
npcHandler:releaseFocus(cid) 
end 
return TRUE 
end 


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

 

 

 

Second Hunter addon:

 

 

 

 

NPC

 

 

Second Hunter.xml

<?xml version="1.0"?>
<npc name="Second Hunter" script="data/npc/scripts/addon_hunter2.lua" walkinterval="5000" floorchange="0">
<health now="100" max="100"/>
<look type="129" head="78" body="88" legs="0" feet="88" addons="2"/>
<parameters>
<parameter key="message_greet" value="Ola |PLAYERNAME|. eu tenho um {addon} a lhe oferecer." />
</parameters>
</npc>

 

 

npc/script

 

addon_hunter2.lua

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 

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

local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid 

-- second cintizen npc

local config = {
storage = 13004,
outfit_female = 137, -- numero da outfit,nesse caso é hunter
outfit_male = 129,  -- numero da outfit,nesse caso é hunter
addons = 2 -- addons que serão dados
} 


if(msgcontains(msg, 'addon') or msgcontains(msg, 'ADDON')) then 
selfSay('eu posso lhe oferecer o first hunter addon, voce quer? {yes} ', cid) 
talkState[talkUser] = 1 
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then 
if getPlayerStorageValue(cid, config.storage) == -1 then
if getPlayerSex(cid) == 0 then  
doPlayerAddOutfit(cid,config.outfit_female, config.addons)
else  
doPlayerAddOutfit(cid,config.outfit_male, config.addons)
end
setPlayerStorageValue(cid,config.storage,1) 
selfSay('aqui está seu addon!.', cid) 
talkState[talkUser] = 0 
else
selfSay('Você já recebeu seu addon.', cid) 
talkState[talkUser] = 0 
end
elseif msg == "no" and talkState[talkUser] == 1 then 
selfSay("Então vá embora!", cid) 
talkState[talkUser] = 0 
npcHandler:releaseFocus(cid) 
end 
return TRUE 
end 


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

 

 

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...