Solutions
-
Zanrix's post in (Resolvido)Critical! and Dodge! was marked as the answer
-
Zanrix's post in (Resolvido)[PEDIDO] Ajudar a entender um script was marked as the answer<raid name="Demodras" file="bosses/Demodras.xml" interval2="1440" margin="120" chance="15" /> file = Nesse arquivo vai ter as informações sobre a raid, quais criaturas serão sumonadas, em quais coordenadas cada uma delas vai aparecer.
margin = O tempo em minutos, depois de aberto o servidor, que vai acontecer a raid.
interval2 = O tempo em minutos, que depois de ter acontecido a raid pela primeira vez, vai acontecer novamente.
chance = Um outro parâmetro que você pode colocar, pra caso não queira que aconteça sempre a cada intervalo de tempo, ou seja, a cada 1440 minutos vai ter 15% de chance de acontecer.
-
Zanrix's post in (Resolvido)Piso x dia was marked as the answerUnique id do piso no map editor: 8321
movements.xml
<movevent event="StepIn" uniqueid="8321" script="pisosemanal.lua" /> pisosemanal.lua
local config = { uniqueid = 8321, dia_semana = "sunday", mensagem = "Você só pode passar aqui domingo" } local function pushBack(cid, position, fromPosition) doTeleportThing(cid, fromPosition, false) doSendMagicEffect(position, CONST_ME_MAGIC_BLUE) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, config.mensagem) end function onStepIn(cid, item, position, fromPosition) if item.uid == config.uniqueid then local day = string.lower(os.date("%A")) if day ~= config.dia_semana then pushBack(cid, position, fromPosition) end end return true end
-
Zanrix's post in (Resolvido)Comando para comprar food? was marked as the answer<talkaction words="!food;/food" event="script" value="buyfood.lua"/>
local config = { price = 1000, food_id = 2789, msg = "Você comprou 100 brown mushrooms." } function onSay(cid, words, param, channel) if doPlayerRemoveMoney(cid, config.price) then doPlayerAddItem(cid, config.food_id, 100) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.msg) end return true end
-
Zanrix's post in (Resolvido)script !comprar skill (RESOLVIDO).. was marked as the answerAntes da primeira linha do código, coloca isso:
local function isChampionknocker(cid) return isInArray({13, 14}, getPlayerVocation(cid)) end
-
Zanrix's post in (Resolvido)Sistema de Invasao was marked as the answerTenta assim:
local config = { day = "Sunday", ----> SEI QUE E NESSA LINHA, JA EDITEI ELA DE TODOS OS TIPOW E O TELEPORT NÃO ABRE ! pos = {x=172, y=44, z=7}, topos = {x=733, y=507, z=7}, time = 2, -- tempo que o teleport ira sumir em minutos msg_open = "O portal do BOSS DIVINE BRONZE estara aberto durante 2 minutos. Corra para derrota-lo.", msg_teste = "O portal do BOSS DIVINE BRONZE estara aberto durante 2 minutos. Corra para derrota-lo.", msg_close = "O portal do BOSS DIVINE BRONZE se fechou.", color = 27 } local function DelTp() local t = getTileItemById(config.pos, 1387) if t then doRemoveItem(t.uid, 1) doSendMagicEffect(config.pos, CONST_ME_POFF) end end function onTime() --if (os.date("%A") == config.day) then doCreateTeleport(1387, config.topos, config.pos) doBroadcastMessage(config.msg_open) doBroadcastMessage(config.msg_teste, config.color) addEvent(DelTp, config.time*60*1000) addEvent(doBroadcastMessage, config.time*60*1000, config.msg_close) --end return true end
-
Zanrix's post in (Resolvido)[Skill Reducer] não retorna valor aleatório. was marked as the answerDa uma testada aí
local combats, conditions = {}, {} for i=20,70 do combats[i] = createCombatObject() setCombatParam(combats[i], COMBAT_PARAM_EFFECT, CONST_ME_ENERGYHIT) setCombatParam(combats[i], COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY) end for i=20,70 do conditions[i] = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(conditions[i], CONDITION_PARAM_TICKS,10000) setConditionParam(conditions[i],CONDITION_PARAM_STAT_MAGICLEVELPERCENT, i) setCombatCondition(combats[i], conditions[i]) end local area = createCombatArea(AREA_CIRCLE2X2) setCombatArea(combats[i], area) function onCastSpell(cid, var) local random = math.random(20,70) return doCombat(cid, combats[random], var) end
-
Zanrix's post in (Resolvido)Ajuda com getCreaturePosition(cid) was marked as the answerSimples assim:
local posZ = getCreaturePosition(cid).z
-
Zanrix's post in (Resolvido)Dodge system com skill was marked as the answerTenta assim:
local percent = 0.5 local dodgeRate = 1 -- Deixando 1, a cada lvl de axe aumenta 1% a chance de dodge. Se colocar 2, cada lvl de axe aumenta 2% a chance de dodge. function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS and isCreature(attacker) and isPlayer(attacker) then if (getPlayerSkill(attacker, 3)*dodgeRate) >= math.random (0,100) then value = math.ceil(value*(percent)) doTargetCombatHealth(attacker, cid, combat, -value, -value, 255) doSendAnimatedText(getCreaturePos(cid), "DODGE", 6) return false end end return true end Se não der, tenta subir todos skills pra ver se algum outro que tá pegando, e se for outra coisa diga qual o problema que tá dando.