Postado Dezembro 25, 2016 8 anos Em 24/12/2016 em 23:21, PedroSTT disse: Ok , aqui esta : XML <instant name="Default" words="default" lvl="1" maglv="1" mana="25" exhaustion="1000" prem="0" needlearn="0" blockwalls="0" aggressive="1" event="script" value="Default.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> SCRIPT Mostrar conteúdo oculto Mostrar conteúdo oculto -- =============== COMBAT VARS =============== -- Areas/Combat for 0ms local combat0_Brush = createCombatObject() setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_ICEATTACK) setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatArea(combat0_Brush,createCombatArea({{1, 1, 1, 1, 1}, {1, 1, 1, 1, 1}, {1, 1, 2, 1, 1}, {1, 1, 1, 1, 1}, {1, 1, 1, 1, 1}})) setCombatFormula(combat0_Brush, COMBAT_FORMULA_LEVELMAGIC, 0, 0, 0, 0) local con___combat0_Brush = createConditionObject(0+CONDITION_PARALYZE) setCombatCondition(combat0_Brush, con___combat0_Brush) -- Areas/Combat for 400ms local combat4_Brush = createCombatObject() setCombatParam(combat4_Brush, COMBAT_PARAM_EFFECT, CONST_ME_ICEATTACK) setCombatParam(combat4_Brush, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatArea(combat4_Brush,createCombatArea({{1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 0, 0, 0, 0, 0, 1, 1}, {1, 1, 0, 0, 0, 0, 0, 1, 1}, {1, 1, 0, 0, 2, 0, 0, 1, 1}, {1, 1, 0, 0, 0, 0, 0, 1, 1}, {1, 1, 0, 0, 0, 0, 0, 1, 1}, {1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 1, 1, 1, 1, 1, 1}})) setCombatFormula(combat4_Brush, COMBAT_FORMULA_LEVELMAGIC, 0, 0, 0, 0) local con___combat4_Brush = createConditionObject(0+CONDITION_PARALYZE) setCombatCondition(combat4_Brush, con___combat4_Brush) -- Areas/Combat for 1100ms local combat11_Brush = createCombatObject() setCombatParam(combat11_Brush, COMBAT_PARAM_EFFECT, CONST_ME_ICEATTACK) setCombatParam(combat11_Brush, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatArea(combat11_Brush,createCombatArea({{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1}, {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1}, {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1}, {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1}, {1, 0, 0, 0, 0, 2, 0, 0, 0, 0, 1}, {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1}, {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1}, {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1}, {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1}, {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}})) setCombatFormula(combat11_Brush, COMBAT_FORMULA_LEVELMAGIC, 0, 0, 0, 0) local con___combat11_Brush = createConditionObject(0+CONDITION_PARALYZE) setCombatCondition(combat11_Brush, con___combat11_Brush) -- Areas/Combat for 1900ms local combat19_Brush = createCombatObject() setCombatParam(combat19_Brush, COMBAT_PARAM_EFFECT, CONST_ME_ICEATTACK) setCombatParam(combat19_Brush, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatArea(combat19_Brush,createCombatArea({{1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 0, 0, 0, 0, 0, 1, 1}, {1, 1, 0, 0, 0, 0, 0, 1, 1}, {1, 1, 0, 0, 2, 0, 0, 1, 1}, {1, 1, 0, 0, 0, 0, 0, 1, 1}, {1, 1, 0, 0, 0, 0, 0, 1, 1}, {1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 1, 1, 1, 1, 1, 1}})) setCombatFormula(combat19_Brush, COMBAT_FORMULA_LEVELMAGIC, 0, 0, 0, 0) local con___combat19_Brush = createConditionObject(0+CONDITION_PARALYZE) setCombatCondition(combat19_Brush, con___combat19_Brush) -- Areas/Combat for 2500ms local combat25_Brush = createCombatObject() setCombatParam(combat25_Brush, COMBAT_PARAM_EFFECT, CONST_ME_ICEATTACK) setCombatParam(combat25_Brush, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatArea(combat25_Brush,createCombatArea({{1, 1, 1, 1, 1}, {1, 1, 1, 1, 1}, {1, 1, 2, 1, 1}, {1, 1, 1, 1, 1}, {1, 1, 1, 1, 1}})) setCombatFormula(combat25_Brush, COMBAT_FORMULA_LEVELMAGIC, 0, 0, 0, 0) local con___combat25_Brush = createConditionObject(0+CONDITION_PARALYZE) setCombatCondition(combat25_Brush, con___combat25_Brush) -- =============== CORE FUNCTIONS =============== local function RunPart(c,cid,var,dirList,dirEmitPos) -- Part if (isCreature(cid)) then doCombat(cid, c, var) if (dirList ~= nil) then -- Emit distance effects local i = 2; while (i < #dirList) do doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList,y=dirEmitPos.y-dirList[i+1],z=dirEmitPos.z},dirList[1]) i = i + 2 end end endend function onCastSpell(cid, var) local startPos = getCreaturePosition(cid) RunPart(combat0_Brush,cid,var) addEvent(RunPart,400,combat4_Brush,cid,var) addEvent(RunPart,1100,combat11_Brush,cid,var) addEvent(RunPart,1900,combat19_Brush,cid,var) addEvent(RunPart,2500,combat25_Brush,cid,var) return true nao tem como deixa mas igual no video nao?
Postado Dezembro 25, 2016 8 anos Autor Em 25/12/2016 em 00:39, BangxD disse: nao tem como deixa mas igual no video nao? O que está diferente ?
Postado Dezembro 25, 2016 8 anos Em 25/12/2016 em 00:13, PedroSTT disse: XML <?xml version="1.0" encoding="UTF-8"?> <npc name="default" script="data/npc/scripts/default.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="118" head="0" body="0" legs="0" feet="0" addons="0"/> <parameters> <parameter key="message_greet" value="Olá |PLAYERNAME|. Fale {trade} para ver minhas ofertas, {bless} para compra bless somente acima do level {60}, {premium} para compra 5 dia de premium account e {price} para saber o preço" /> <parameter key="module_shop" value="1"/> <parameter key="shop_buyable" value="NOMEDOITEM,IDDOITEM,CUSTO"/> <parameter key="message_decline" value="Adeus, |PLAYER NAME|." /> <parameter key="message_walkaway" value="Adeus, |PLAYER NAME|." /> <parameter key="module_keywords" value="1" /> <parameter key="keywords" value="bless;premium" /> <parameter key="keyword_reply1" value="{first bless},{second bless},{third bless},{third bless},{fifth bless} or {all}" /> </parameters> </npc> SCRIPT Mostrar conteúdo oculto Mostrar conteúdo oculto 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 ------------------------------------------------------- CONFIG DO VIP -------------------------------------------------------------- local config = { days = 5, -- quantidade de dias que irá ganhar ao comprar itemid = 2190, -- id do item que ele precisará pra comprar qnt = 3, -- quantidade do item que ele precisará nome = "moedas" -- nome do item que ele precisara pra comprar a vip } if msgcontains(msg, "price") then selfSay("O valor do premium atualmente esta 300K por 5 dais , diga premium para comprar", cid) talkState[talkUser] = 1 return true end end if msgcontains(msg, "premium") then if getPlayerItemCount(cid, config.itemid) >= config.qnt then doPlayerAddPremiumDays(cid, config.days) selfSay("Muito bem! Aproveite!", cid) doPlayerRemoveItem(cid, config.itemid, config.qnt) doBroadcastMessage(" O Player "..getCreatureName(cid).." acabou de comprar "..config.days.." days premium ", 18) else selfSay("Você não tem "..config.qnt.." do item "..config.nome.." ", cid) end end ------------------------------------------------------- CONFIG DO BLESS -------------------------------------------------------------- local node1 = keywordHandler:addKeyword({"first bless"}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = "Do you want to buy the first blessing for 2000 (plus level depending amount) gold?"}) node1:addChildKeyword({"yes"}, StdModule.bless, {npcHandler = npcHandler, number = 1, premium = true, baseCost = 200000, levelCost = 6666, startLevel = 60, endLevel = 200}) node1:addChildKeyword({"no"}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = "Too expensive, eh?"}) local node2 = keywordHandler:addKeyword({"second bless"}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = "Do you want to buy the second blessing for 2000 (plus level depending amount) gold?"}) node2:addChildKeyword({"yes"}, StdModule.bless, {npcHandler = npcHandler, number = 2, premium = true, baseCost = 200000, levelCost = 6666, startLevel = 60, endLevel = 200}) node2:addChildKeyword({"no"}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = "Too expensive, eh?"}) local node3 = keywordHandler:addKeyword({"third bless"}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = "Do you want to buy the third blessing for 2000 (plus level depending amount) gold?"}) node3:addChildKeyword({"yes"}, StdModule.bless, {npcHandler = npcHandler, number = 3, premium = true, baseCost = 200000, levelCost = 6666, startLevel = 60, endLevel = 200}) node3:addChildKeyword({"no"}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = "Too expensive, eh?"}) local node4 = keywordHandler:addKeyword({"fourth bless"}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = "Do you want to buy the fourth blessing for 2000 (plus level depending amount) gold?"}) node4:addChildKeyword({"yes"}, StdModule.bless, {npcHandler = npcHandler, number = 4, premium = true, baseCost = 200000, levelCost = 6666, startLevel = 60, endLevel = 200}) node4:addChildKeyword({"no"}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = "Too expensive, eh?"}) local node5 = keywordHandler:addKeyword({"fifth bless"}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = "Do you want to buy the fifth blessing for 2000 (plus level depending amount) gold?"}) node5:addChildKeyword({"yes"}, StdModule.bless, {npcHandler = npcHandler, number = 5, premium = true, baseCost = 200000, levelCost = 666, startLevel = 60, endLevel = 200}) node5:addChildKeyword({"no"}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = "Too expensive, eh?"}) if msgcontains(msg, "all") then havebless = {} b_price = (2000 + ((math.min(130, getPlayerLevel(cid)) - 30) * 200)) if b_price < 2000 then b_price = 2000 end for i = 1, 5 do if(getPlayerBlessing(cid, i)) then table.insert(havebless,i) end end b_price = ((5 - #havebless) * b_price) if b_price == 0 then selfSay('You already have all available blessings.',cid) talkState[talkUser] = 0 return true end selfSay('Do you want to receive all blessings for ' .. b_price .. ' gold?',cid) talkState[talkUser] = 96 return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Não mechi na parte do bless , não entendo isso. Melhorei a script do NPC para você conseguir configurar melhor. achei muito bom, mas ainda o npc nao esta parecendo OldTaboos24hpor48h.com Inauguração DOMONIGO as 18:00 | 18/03/2018 | Stages | Custom Map |VENHA SER TOP TABOOS!
Postado Dezembro 25, 2016 8 anos Autor Em 25/12/2016 em 04:07, kinglekke disse: achei muito bom, mas ainda o npc nao esta parecendo Qual erro aparece na TFS ?
Postado Dezembro 25, 2016 8 anos Mostrar conteúdo oculto OldTaboos24hpor48h.com Inauguração DOMONIGO as 18:00 | 18/03/2018 | Stages | Custom Map |VENHA SER TOP TABOOS!
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.