Ir para conteúdo
  • Cadastre-se

NPC que venda vip com terceira promotion


Posts Recomendados

bom primeiro de tudo meu ot é um baiak bryaan 8.60, eu deletei o systema vip do bryaan (todos) e adicionei um npc que vendece vip promotion, mas eu queria que ao ele vende vip promotion ele também vendece o direito vip ao jogador, e como eu não tenho systema vip eu queria um simples que ao vc comprar do npc o promotion com vip vc pudece passar pelo sqm vip para entrar no vip city, ai tá o script do meu npc promotion :

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 price = 55000000

local vocations = {5,6,7,8}

if(msgcontains(msg, 'promotion') or msgcontains(msg, 'vip promotion')) then

selfSay('Você quer ser promovido vip por '..price..' moedas? {yes} ', cid)

talkState[talkUser] = 1

elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then

if isInArray(vocations, getPlayerVocation(cid)) then

if doPlayerRemoveMoney(cid,price) == TRUE then

if getPlayerVocation(cid) == 5 then doPlayerSetVocation(cid, 9)

end

if getPlayerVocation(cid) == 6 then doPlayerSetVocation(cid, 10)

end

if getPlayerVocation(cid) == 7 then doPlayerSetVocation(cid, 11)

end

if getPlayerVocation(cid) == 8 then doPlayerSetVocation(cid, 12)

end

selfSay('Parabens! Você foi promovido vip! ', cid)

talkState[talkUser] = 0

else

selfSay('Você não tem ' .. price .. ' moedas para ser promovido vip...', cid)

talkState[talkUser] = 0

end

else

selfSay('Desculpe, você precisa ter a member promotion para ser promovido vip.', cid)

talkState[talkUser] = 0

end

elseif msg == "no" and talkState[talkUser] >= 1 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())

desculpe nao ta como spoiler eu pesquisei tentei mais não funcionou :s espero por ajuda, obrigada !

Editado por serj100 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Fala rapaz, pelo que eu entendi, quando você ganha vip você ganha junto uma vocação? Exemplo "Vip Druid"?

Se for isso, coloque uma porta para vocação na entrada da área vip, assim, se a pessoa não for "Vip Druid/Sorcerer/Knight/Pally" ela não pode entrar.

Usa este script aqui:

function onUse(cid, item, frompos, item2, topos)

doorpos = {x=frompos.x, y=frompos.y, z=frompos.z}

playerpos = getPlayerPosition(cid)

playervoc = getPlayerVocationl(cid)

if item.uid == (id da porta) and doorpos.x == POSIÇÃOXAQUI and doorpos.y == POSIÇÃOYAQUI and doorpos.z == POSIÇÃOZAQUI then

if playervoc == (voc necessaria) then

doTeleportThing(cid,doorpos)

elseif playervoc == VOCAÇÃO playervoc == VOCAÇÃO playervoc == VOCAÇÃO then <---vocs erradas

doPlayerSendTextMessage(cid,22,"Apenas VOCAÇÃO podem passar.")

end

end

return 1

end

Legenda:

Salmão: ID da porta.

ROXO: Posição X, Y, Z da porta.

Amarelo: Vocação que precisa ser pra passar na porta (no caso a VIP)

Laranja: Vocações erradas (não poderão passar na porta)

Verde: Mensagem que será enviada ao player caso ele não tenha a vocação necessária para passar na porta.

É isso aí, se funcionar rep+, se não funcionar, não sei o que fazer :ha:

Link para o post
Compartilhar em outros sites

Vai em "data/actions/scripts" e cria um arquivo chamado "vocdoor" lá dentro, daí cola o script que postei antes.

Também sou iniciante em scripts! Se não der daí já não sei :bag:

Se der certo, não esquece do rep+, ainda não tenho nenhum, hahahaha.

Link para o post
Compartilhar em outros sites

VALEU MESMO CARA FUNFO AKI, CLIQUEI EM GOSTEI É ALI QUE DA REP? SE NÃO FOR É SO FALAR QUE EU CLICO COM MUITO PRAZER NO LOCAL CERTO PARA TE DAR REPUTAÇÃO ^^ VALEU MSMO :D

Link para o post
Compartilhar em outros sites

É ali mesmo! To aqui pra ajudar né? E quando precisar qm sabe ser ajudado, hahaha.

Você ta fazendo isso pro seu ot, certo? me adiciona no skype que eu vou jogar! :9

Skype: Alan-Eduardo12
Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo