AN
pedido

Npc De Recompensa

Por AnneMotta, 23 de jun. de 2012 em Scripts

20
5.9k
AnneMottaA
23 de junho de 2012 às 19:50

Bom, eu precisava de um npc que entregasse premios por level.

 

Por exemplo, joão atingiu o level 50 ele pode ir no npc e pegar tal recompensa, se ele ja tiver

 

pegado a recompensa o npc ira falar que ele ja pegou e por ai vai...

VodkartV
23 de junho de 2012 às 20:27

especifique melhor seu pedido, serão quais leveis por exemplo? serão items? ou só exp?

detalhes.

AnneMottaA
23 de junho de 2012 às 21:36

não precisa por o level, e recompensa depois eu edito isso, não necessita de exp só items mesmo.

VodkartV
23 de junho de 2012 às 21:41

Bom, eu precisava de um npc que entregasse premios por level.

não precisa por o level

 

wtf? quero saber o seguinte, ele só vai receber o prêmio no level 50 por exemplo, e depois se ele atingir o level 100 recebe mais alguma coisa?

ou só vai ser pra um certo nível mesmo...

AnneMottaA
23 de junho de 2012 às 21:42

é, seria level 50, 100, 150 e 200.

VodkartV
23 de junho de 2012 às 21:45

Ah, agora sim tia :D

se ngm responder, qndo tiver um tempinho eu entrego o npc.

abraçs

AnneMottaA
24 de junho de 2012 às 11:28

sim sr.

 

a espera de uma luz.

VodkartV
24 de junho de 2012 às 12:07

outra coisa, serão vários items? exemplo:

 

2 fire sword, 3 crown legs e 2 aol

 

ou só um item e dinheiro? pq se for mais de um item eu coloco uma função ;x

 

 

obs: vc usa aquele npc ainda do simple task 2.0? pq lá tem as funções e tal... responde ai

Editado Junho 24 por Vodkart

AnneMottaA
24 de junho de 2012 às 12:38

não tenho ele aqui, mais posso por, a respeito dos items, seria 1 item por level.

VodkartV
24 de junho de 2012 às 13:11

não tenho ele aqui, mais posso por, a respeito dos items, seria 1 item por level.

 

Não precisa, é só um item então de boa, vou almoçar e depois entrego

vlw

 

 

-------------------------------------------------

 

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
local msg = string.lower(msg)
tabble = {
[50] = {item = {2173,1}, storage = 201320},
[100] = {item = {2160,5}, storage = 201321},
[150] = {item = {2123,1}, storage = 201322},
[200] = {item = {2466,1}, storage = 201320}
}
if isInArray({"recompensa","reward", "receber", "level"}, msg) then
npcHandler:say("Olá guerreiro, eu posso entregar recompensas para o level {50}, {100}, {150} e {200}! qual dos leveis você deseja receber a recompensa?", cid)
talkState[talkUser] = 1
elseif talkState[talkUser] == 1 then
if tabble[getNumber(msg)] then
if getPlayerStorageValue(cid, tabble[getNumber(msg)].storage) <= 0 then
if getPlayerLevel(cid) >= getNumber(msg) then
doPlayerAddItem(cid,tabble[getNumber(msg)].item[1],tabble[getNumber(msg)].item[2])
setPlayerStorageValue(cid, tabble[getNumber(msg)].storage, 1)
npcHandler:say("Parabéns! Você recebeu "..tabble[getNumber(msg)].item[2].." "..getItemNameById(tabble[getNumber(msg)].item[1]), cid)
else
npcHandler:say("Desculpe, mas você não tem level para receber essa recompensa!", cid)
end
else
npcHandler:say("Desculpe, mas você já recebeu a sua recompensa!", cid)
end
else
npcHandler:say("Desculpe, mas não tenho recompensa para esse level!", cid)
end
elseif isInArray({"no","nao"}, msg)  then  
selfSay("Then not.", cid)  
talkState[talkUser] = 0  
npcHandler:releaseFocus(cid)  
end
return TRUE
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
function getNumber(txt)
x = string.gsub(txt,"%a","")
x = tonumber(x)
if x ~= nill and x > 0 then
return x
else
return 0
end
end

Editado Junho 24 por Vodkart

milbradtM
24 de junho de 2012 às 13:51

Rapaz, ou você tem muito tempo... ou ja trabalha com programação em lua... ou é muito craneo e fas tudo muito rapido...ou é alienigena.. hsuahusahs

 

fas tudo parecer tão simples, vou começar a anotar e verificar cada coisa em uma script para ver se tem muito mistério ou apenas prestar atenção para criar las.

 

Vai ser util em algo no meu server de narutibia happy.png

 

Rep+

VodkartV
24 de junho de 2012 às 13:54

hj é domingo > tenho tempo

e lua não tem mistério, se aprende fácil, basta querer aprender tbm

Nathan96N
24 de junho de 2012 às 13:57

Belo npc Rep +, Thiago da pra entrar msn ?

KUNGLOWK
24 de junho de 2012 às 13:57

Vodkart poderia me passar um meio de contato com você?

VodkartV
24 de junho de 2012 às 14:02

@nathan

 

blz, to terminando de assistir o filme e já entro

 

@kung

 

thiagoredlife@hotmail.com