Muinto Bao Stylo Rep ++
- Fórum
- OTServ
- Recursos
- Scripting
- NPCs, monsters e raids
- Npc que troca Diamond por Premium - PDA
ST
npc
Npc que troca Diamond por Premium - PDA
Por StyloMaldoso, 16 de fev. de 2013 em NPCs, monsters e raids
diamond
to
premium
accout
script
3
1.3k
info
Grupo: Campones
Registrado: 14/10/12
Posts: 66
Reputação: +6
Char no Tibia: kalawalo

16 de fevereiro de 2013 às 22:19
2 semanas depois...


info
Grupo: Infante
Registrado: 25/01/12
Posts: 1.6k
Reputação: +330
Bom pessoal vim hoje com outro scripter meu de npc, esse é simples ele troca diamond por premium account, mais to postando esse scripter pois voceis terão muita facilidade de edita-lo para oque bem quizer..exemplo, eu queru que remova 3 hd e da 30 dia de vip é possível sim mais vamos lá.
Data/npc/xxx.lua
<?xml version="1.0" encoding="UTF-8"?> <npc name="Npc Vip" script="xxx.lua" walkinterval="0" floorchange="0" access="5" level="1" maglevel="1"> <health now="150" max="150"/> <look type="664" head="114" body="119" legs="114" feet="114" corpse="2212"/> <parameters> <parameter key="message_greet" value="Welcome |PLAYERNAME|, talk to me help? talk {Premium to help me}"/> </parameters> </npc>agora em
Data/npc/Script/xxx.lua
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 msg = string.lower(msg) --------- local SysT_VIP = { Diamond_ID = xxx, Premium_VIP = {days = 30, cost = 10}, } if (msgcontains(msg, 'premium') or msgcontains(msg, 'vip')) then selfSay("Olá, você deseja ser vip? eu posso lhe dar 30 dias de VIP, mais somente se você tiver oque eu necessito, digite Premmy para continuar!", cid) talkState[talkUser] = 1 return true elseif msgcontains(msg, 'Premmy') and talkState[talkUser] == 1 then if getPlayerItemCount(cid, SysT_VIP.Diamond_ID) >= Premium_VIP.cost then selfSay("você não tem o item necessario e aquantidade necessario para eu lhe da os dias de VIP, volte aqui quando tive-los!", cid) return true end selfSay("Parabéns me ajudo e muito, toma ai sua recompensa 30 dias de Premium!", cid) doPlayerRemoveItem(cid, SysT_VIP.Diamond_ID, SysT_VIP.Premium_VIP.cost) doPlayerAddPremiumDays(cid, SysT_VIP.Premium_VIP.days) doSendMagicEffect(getThingPos(cid), 29) selfSay("Adeus!", cid) talkState[talkUser] = 0 return true end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())Esse npc não cheguei testa, fiz para um lek, mais resolvi posta aqui para voceis editar do jeito que bem quizer.{PDA}
*Explicações
para voce edita do jeito bem mais simples so meicher nessa tabela
local SysT_VIP = { Diamond_ID = xxx, Premium_VIP = {days = 30, cost = 10}, }em diamond_ID na frente voce coloka o id do diamond, creio eu que é 2145.. mais se tu quizer exemplo coloka 1 Stone, vamos supor LEAF stone o ID dela é 11441 alí, ai em
Premium_VIP = {days = 30, cost = 10},ai em "cost" vai remover 10 LEAF STONE do player so mudando o ID ali, e days sera o tanto de vip que sera adicionado..se tu quizer adiciona algo mais de premio ao player lá no fim perto de ....
você adiciona oque bem quizer exemplo.. vamos tenta adiciona 1 level ao player ficando..
Aquele "1" vai adiciona 1 level ao player, ai se voceis quizerem que adicione algo a + no npc tipo teleporta pra qualquer posição a comprar premium so comenta no topíco, boa sorte ae.
Editado Fevereiro 16 por StyloMaldoso