-
-
Adicionar mais posicoes
Basta seguir o modelo da tabela; adicionar o nome do monstro, junto da posição onde quer que ele de spawn: local config = { monster = { [1] = {name = "Witch", position = {x = 79, y = 88, z = 6}}, [2] = {name = "Hydra", position = {x = 79, y = 89, z = 6}}, [3] = {name = "Dragon", position = {x = 79, y = 90, z = 6}}, }, removeTime = 20 -- Configurado em minutos } function onThink(interval, lastExecution) for index, monster in ipairs(config.monster) do local creature = doCreateMonster(monster.name, monster.position) addEvent(function() if not isCreature(creature) then return end doRemoveCreature(creature) end, config.removeTime * 60 * 1000) end return true end
-
Adicionar mais posicoes
Como funciona o script? Qual é a intenção com ele? Daí eu vejo de criar algo um pouco mais elaborado, ou uma forma melhor/mais fácil de configurar
-
Alterar XYZ pra onde vai o teleport do pokemon.
envia o script do comando em questão, as vezes é configurado através dele mesmo
-
erro no script de castspell item
mas no primeiro pedido foi exatamente isso que pediu, jogador só conseguiria utilizar se tivesse X item na bag kkkk tanto que não tem verificação se o item está equipado ou não, apenas se o jogador possui o item sobre o segundo pedido, o que acontece exatamente quando você tenta usar a spell? consegue fazer um gif? eu havia testado e tava ok
-
erro no script de castspell item
não entendi, o primeiro script você pediu de uma forma, o segundo você pediu de outra (só utilizar se estiver no slot) como você realmente quer o script?
-
erro no script de castspell item
a spell já funcionava anteriormente? não alterei nada na funcionalidade dela (buffs, e afins) vou testar depois
-
-
Talk Action para teletransportar em um local fixo
opa, não havia notado que era pra 1.x hahaha bom que já fica aí pra quem usa 0.x valeu Luan o/
-
-
Storage na Talcaktion
para fazer com que seja necessário o jogador possuir uma storage pra utilizar o comando, basta adicionar uma verificação no código: if getPlayerStorageValue(cid, storageNecessaria) ~= valorDaStorage then return doPlayerSendCancel(cid, "Você não possui tal tal tal") end
-
Talk Action para teletransportar em um local fixo
fiz esse código aqui, pra ficar mais fácil de adicionar mais cidades posteriormente, sem ter que mexer no "código", só adicionar na tabela mesmo local config = { cities = { ["thais"] = { name = "Thais City", pos = {x = 141, y = 379, z = 7} }, ["carlin"] = { name = "Carlin City", pos = {x = 142, y = 379, z = 7} }, ["venore"] = { name = "Venore City", pos = {x = 143, y = 379, z = 7} }, ["kazordoon"] = { name = "Kazordoon City", pos = {x = 144, y = 379, z = 7} }, ["yalahar"] = { name = "Yalahar City", pos = {x = 145, y = 379, z = 7} }, }, effect = 39 } function onSay(cid, words, param, channel) if (param == "") then return doPlayerSendCancel(cid, string.format("No parameters. Try this instead: %s cityname.", words)) end local cities = "" for city, values in pairs (config.cities) do cities = city .. ", " .. cities cities = cities:gsub(", $", ".") end if not config.cities[param] then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, string.format("Available cities: %s", cities)) return doPlayerSendCancel(cid, "Invalid city. A list of available cities has been sent to you. Check your Default Channel.") end doTeleportThing(cid, config.cities[param].pos) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, string.format("You have been teleported to %s.", config.cities[param].name)) doSendMagicEffect(getPlayerPosition(cid), config.effect) return true end
-
erro no script de castspell item
vou dar uma olhada, e envio aqui -------- testa aí local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, 30000) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, 10) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, 25) setConditionParam(condition, CONDITION_PARAM_BUFF, true) setCombatCondition(combat, condition) local config = { exhaustionStorage = 13101, exhaustionTime = 30.0, ringId = 7116, effect = 112 } function onCastSpell(cid, var) if exhaustion.check(cid, config.exhaustionStorage) == TRUE then doPlayerSendCancel(cid, "Podera usar novamente dentro de 30 segundos.") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) return false end local ringName = getItemNameById(config.ringId) if getPlayerSlotItem(cid, CONST_SLOT_RING).itemid ~= config.ringId then return doPlayerSendCancel(cid, string.format("You do not have a %s equipped.", ringName)) end for k = 1, 100 do addEvent(function() if isCreature(cid) then local pos1 = {x = getPlayerPosition(cid).x + 0, y = getPlayerPosition(cid).y + 0, z = getPlayerPosition(cid).z} doSendMagicEffect(pos1, config.effect) end end, 1 + ((k-1) * 300)) end exhaustion.set(cid, config.exhaustionStorage, config.exhaustionTime) return doCombat(cid, combat, var) end
-
-
erro no script de castspell item
me informa o id do item, e a quantidade, pra eu arrumar tudo
-
-
-
-
erro no script de castspell item
agora o seu primeiro if tem dois "end", só precisa de um
-
erro no script de castspell item
você colocou duas onCastSpell(cid, var), e uma delas não está fechada (que é a primeira), pode deletar ela, e manter apenas a de baixo daí só copiar o que tem dentro da primeira onCastSpell e jogar pra baixo, onde está a segunda
-
erro no script de castspell item
Envia aqui quais foram as alterações que você fez, que fica melhor de explicar/ver o que errou no script
-
erro no script de castspell item
Precisa fazer a verificação se o jogador possui tal item, para isso, basta utilizar a função getPlayerItemCount(cid, itemid) function onGetFormulaValues(cid, level, maglevel) local levelTotal = level local min = (levelTotal * 4) / 5 + (maglevel * 25) / 2 local max = (levelTotal * 5) / 5 + (maglevel * 27) / 2 return -min, -max end local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 33) setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 46) setCombatCallback(combat1, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") local function onCastSpell1(parameters) if not isPlayer(parameters.cid) then return true end doCombat(parameters.cid, parameters.combat1, parameters.var) end local config = { requiredItem = {itemid = 2675, count = 1} -- Coloque o id do item necessário em: 'itemid = aqui', e a quantidade necessária do item em: 'count = aqui' } function onCastSpell(cid, var) local parameters = {cid = cid, var = var, combat1 = combat1} local itemName = getItemNameById(config.requiredItem.itemid) if getPlayerItemCount(cid, config.requiredItem.itemid) < config.requiredItem.count then if config.requiredItem.count == 1 then doPlayerSendCancel(cid, string.format("You need %d %s to use this spell.", config.requiredItem.count, itemName)) else doPlayerSendCancel(cid, string.format("You need %d %ss to use this spell.", config.requiredItem.count, itemName)) end return end for k = 1, 10 do addEvent(function() if isCreature(cid) then addEvent(onCastSpell1, 1, parameters) end end, 1 + ((k-1) * 300)) end return true end