Ir para conteúdo
  • 0

npc que cobra algo e dps da algo em troca


xugrude456

Pergunta

olá galera então, gostaria de uma help de vcs

tenho script aki que da storange mas queria que ele desse storage mas cobrase algo entroca

e tipo ele desse storage pra certa vocation

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0
20 horas atrás, gabriel28 disse:

@xugrude456
Quando tiver pedidos assim, já posta o script junto pra agilizar. Essa minha resposta de agora já poderia conter a solução.

me perdoe sou novo,

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

--------------------------- Configuração Inicial ------------------------------------
local strg = 9785 -- Valor da Storage

--------------------------- Configuração das Falas  -----------------------------------
if (msgcontains(msg, 'storage')) then
        if getPlayerStorageValue(cid, strg) < 1 then
        selfSay('Deseja receber a permissao?', cid)
        talkState[talkUser] = 1
    else
        selfSay('Voce ja recebeu a permissao.', cid)
        talkState[talkUser] = 0
    end

--------------------------- Falas de Entrada  -----------------------------------

elseif(msgcontains(msg, 'yes') or msgcontains(msg, 'sim') and talkState[talkUser] == 1) then
        if getPlayerStorageValue(cid, strg) < 1 then
            setPlayerStorageValue(cid, strg, 1)
            selfSay('Permissao concedida com sucesso.', cid)
            talkState[talkUser] = 0
        else
            selfSay('Permissao ja concedida anteriormente.', cid)
        return false
        end

--------------------------- Falas de Rejeição  -----------------------------------
elseif(msgcontains(msg, 'no') or msgcontains(msg, 'nao') and isInArray({1}, talkState[talkUser])) then
        talkState[talkUser] = 0
        selfSay('Tudo bem entao.', cid)

--------------------------- FIM do SCRIPT ---------------------------------------
    end
  return true
end

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

Link para o comentário
Compartilhar em outros sites

  • 0

@xugrude456

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

--------------------------- Configuração Inicial ------------------------------------
local strg = 9785 -- Valor da Storage
local item = xxxx -- id do item
local quant = yyy --quantidade

--------------------------- Configuração das Falas  -----------------------------------
if (msgcontains(msg, 'storage')) then
        if getPlayerStorageValue(cid, strg) < 1 then
        selfSay('Deseja receber a permissao? Para isso, deve me trazer X quantia do item Y', cid)
        talkState[talkUser] = 1
    else
        selfSay('Voce ja recebeu a permissao.', cid)
        talkState[talkUser] = 0
    end

--------------------------- Falas de Entrada  -----------------------------------

elseif(msgcontains(msg, 'yes') or msgcontains(msg, 'sim') and talkState[talkUser] == 1) then
        if getPlayerStorageValue(cid, strg) < 1 then
			if doPlayerRemoveItem(cid, item, quant) then
				setPlayerStorageValue(cid, strg, 1)
				selfSay('Permissao concedida com sucesso.', cid)
				talkState[talkUser] = 0
			else
				selfSay('Voce nao tem o item.', cid)
				talkState[talkUser] = 0
			end	
        else
            selfSay('Permissao ja concedida anteriormente.', cid)
        return false
        end

--------------------------- Falas de Rejeição  -----------------------------------
elseif(msgcontains(msg, 'no') or msgcontains(msg, 'nao') and isInArray({1}, talkState[talkUser])) then
        talkState[talkUser] = 0
        selfSay('Tudo bem entao.', cid)

--------------------------- FIM do SCRIPT ---------------------------------------
    end
  return true
end

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

 

Link para o comentário
Compartilhar em outros sites

  • 0

@xugrude456
 

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

--------------------------- Configuração Inicial ------------------------------------
local strg = 9785 -- Valor da Storage
local item = xxxx -- id do item
local quant = yyy --quantidade
local vocs = {zzz, www} -- id das vocaçao que irao poder receber a permissao

--------------------------- Configuração das Falas  -----------------------------------
if (msgcontains(msg, 'storage')) then
        if getPlayerStorageValue(cid, strg) < 1 then
        selfSay('Deseja receber a permissao? Para isso, deve me trazer X quantia do item Y', cid)
        talkState[talkUser] = 1
    else
        selfSay('Voce ja recebeu a permissao.', cid)
        talkState[talkUser] = 0
    end

--------------------------- Falas de Entrada  -----------------------------------

elseif(msgcontains(msg, 'yes') or msgcontains(msg, 'sim') and talkState[talkUser] == 1) then
        if getPlayerStorageValue(cid, strg) < 1 then
			if isInArray(vocs, getPlayerVocation(cid)) then
				if doPlayerRemoveItem(cid, item, quant) then
					setPlayerStorageValue(cid, strg, 1)
					selfSay('Permissao concedida com sucesso.', cid)
					talkState[talkUser] = 0
				else
					selfSay('Voce nao tem o item.', cid)
					talkState[talkUser] = 0
				end	
			else
				selfSay('Sua vocaçao nao pode receber a permissao.', cid)
				return false
			end	
        else
            selfSay('Permissao ja concedida anteriormente.', cid)
			return false
        end

--------------------------- Falas de Rejeição  -----------------------------------
elseif(msgcontains(msg, 'no') or msgcontains(msg, 'nao') and isInArray({1}, talkState[talkUser])) then
        talkState[talkUser] = 0
        selfSay('Tudo bem entao.', cid)

--------------------------- FIM do SCRIPT ---------------------------------------
    end
  return true
end

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

 

Link para o comentário
Compartilhar em outros sites

  • 0
11 minutos atrás, gabriel28 disse:

@xugrude456
 


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

--------------------------- Configuração Inicial ------------------------------------
local strg = 9785 -- Valor da Storage
local item = xxxx -- id do item
local quant = yyy --quantidade
local vocs = {zzz, www} -- id das vocaçao que irao poder receber a permissao

--------------------------- Configuração das Falas  -----------------------------------
if (msgcontains(msg, 'storage')) then
        if getPlayerStorageValue(cid, strg) < 1 then
        selfSay('Deseja receber a permissao? Para isso, deve me trazer X quantia do item Y', cid)
        talkState[talkUser] = 1
    else
        selfSay('Voce ja recebeu a permissao.', cid)
        talkState[talkUser] = 0
    end

--------------------------- Falas de Entrada  -----------------------------------

elseif(msgcontains(msg, 'yes') or msgcontains(msg, 'sim') and talkState[talkUser] == 1) then
        if getPlayerStorageValue(cid, strg) < 1 then
			if isInArray(vocs, getPlayerVocation(cid)) then
				if doPlayerRemoveItem(cid, item, quant) then
					setPlayerStorageValue(cid, strg, 1)
					selfSay('Permissao concedida com sucesso.', cid)
					talkState[talkUser] = 0
				else
					selfSay('Voce nao tem o item.', cid)
					talkState[talkUser] = 0
				end	
			else
				selfSay('Sua vocaçao nao pode receber a permissao.', cid)
				return false
			end	
        else
            selfSay('Permissao ja concedida anteriormente.', cid)
			return false
        end

--------------------------- Falas de Rejeição  -----------------------------------
elseif(msgcontains(msg, 'no') or msgcontains(msg, 'nao') and isInArray({1}, talkState[talkUser])) then
        talkState[talkUser] = 0
        selfSay('Tudo bem entao.', cid)

--------------------------- FIM do SCRIPT ---------------------------------------
    end
  return true
end

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

 

obrigado sua ajuda foi muito boa s2

Link para o comentário
Compartilhar em outros sites

  • 0
2 horas atrás, gabriel28 disse:

@xugrude456
 


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

--------------------------- Configuração Inicial ------------------------------------
local strg = 9785 -- Valor da Storage
local item = xxxx -- id do item
local quant = yyy --quantidade
local vocs = {zzz, www} -- id das vocaçao que irao poder receber a permissao

--------------------------- Configuração das Falas  -----------------------------------
if (msgcontains(msg, 'storage')) then
        if getPlayerStorageValue(cid, strg) < 1 then
        selfSay('Deseja receber a permissao? Para isso, deve me trazer X quantia do item Y', cid)
        talkState[talkUser] = 1
    else
        selfSay('Voce ja recebeu a permissao.', cid)
        talkState[talkUser] = 0
    end

--------------------------- Falas de Entrada  -----------------------------------

elseif(msgcontains(msg, 'yes') or msgcontains(msg, 'sim') and talkState[talkUser] == 1) then
        if getPlayerStorageValue(cid, strg) < 1 then
			if isInArray(vocs, getPlayerVocation(cid)) then
				if doPlayerRemoveItem(cid, item, quant) then
					setPlayerStorageValue(cid, strg, 1)
					selfSay('Permissao concedida com sucesso.', cid)
					talkState[talkUser] = 0
				else
					selfSay('Voce nao tem o item.', cid)
					talkState[talkUser] = 0
				end	
			else
				selfSay('Sua vocaçao nao pode receber a permissao.', cid)
				return false
			end	
        else
            selfSay('Permissao ja concedida anteriormente.', cid)
			return false
        end

--------------------------- Falas de Rejeição  -----------------------------------
elseif(msgcontains(msg, 'no') or msgcontains(msg, 'nao') and isInArray({1}, talkState[talkUser])) then
        talkState[talkUser] = 0
        selfSay('Tudo bem entao.', cid)

--------------------------- FIM do SCRIPT ---------------------------------------
    end
  return true
end

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

 

Muito bom valeu vou usar tbm

Mas me tira uma duvida. Eu tenho um sv cm varias voc. Ai queria q tipo um naruto pudesse escolher entre a skin anbu e Akatsuki. Como faço isso?

Topp 

 

Obrigado

Link para o comentário
Compartilhar em outros sites

  • 0

@jondrops
Você vai mudar aqui:

local vocs = {zzz, www}

Então poem algo como:
local naruto = {id das vocs naruto}
local sasuke = {id das vocs sasuke}

E então nessa parte:

if isInArray(vocs, getPlayerVocation(cid)) then

Fica:
if isInArray(naruto, getPlayerVocation(cid)) then
      script

elseif isInArray(sasuke, getPlayerVocation(cid)) then

      script

end

 

Link para o comentário
Compartilhar em outros sites

  • 0
9 horas atrás, gabriel28 disse:

@jondrops
Você vai mudar aqui:


local vocs = {zzz, www}

Então poem algo como:
local naruto = {id das vocs naruto}
local sasuke = {id das vocs sasuke}

E então nessa parte:


if isInArray(vocs, getPlayerVocation(cid)) then

Fica:
if isInArray(naruto, getPlayerVocation(cid)) then
      script

elseif isInArray(sasuke, getPlayerVocation(cid)) then

      script

end

 

Vou testar. Se funfar amanha dou os rep+ 

Acabou por hj os rep kk

Valeu @gabriel28

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...