Skymagnum
Marquês-
Total de itens
1025 -
Registro em
-
Última visita
-
Dias Ganhos
2
Tudo que Skymagnum postou
-
dúvida como eu faço para mover item sem usar esse metodo?
pergunta respondeu ao tonynamoral de Skymagnum em Scripts
local moves = {0, 2, 1, 1, 3} for i = 1, #moves do addEvent(doMoveItem, i * 100, item.uid, moves[i]) end Então no caso moveria, pra cima, pra baixo, pra direita, pra direita, pra esquerda. -
function onAdvance(cid, skill, oldLevel, newLevel) local toPos = {x = x, y = y, z = z} if skill == 8 then if newLevel == 55 then if getPlayerStorageValue(cid, 367221) < 1 then addEvent(doTeleportThing, 2 * 1000, cid, toPos) doPlayerSendTextMessage(cid, 27, "You advanced to level 55 and now has been teleported.") setPlayerStorageValue(cid, 367221, 1) end end end return true end tag: <event type="advance" name="advanceLev" event="script" value="nome_do_script.lua"/> login.lua registerCreatureEvent(cid, "advanceLev") function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) local itemId, quant = 2160, 10 if isPlayer(cid) then if getPlayerStorageValue(cid, 327116) < 0 then doPlayerAddItem(cid, itemId, quant) doPlayerSendTextMessage(cid, 27, "You win " .. quant .. "x " .. getItemNameById(itemId) .. ".") setPlayerStorageValue(cid, 327116, 1) end end return true end <movevent type="StepIn" actionid="X" event="script" value="nome_do_script.lua"/>
-
dúvida como eu faço para mover item sem usar esse metodo?
pergunta respondeu ao tonynamoral de Skymagnum em Scripts
Na verdade a função não é difícil, o problema é que não sei nenhuma função que pegue a posição de um item, no mais é fácil. function doMoveItem(item, dir) local uidPos = pegarPosiçãoDoItem(item.uid) uidPos.stackpos = 253 local dirTab = { [0] = {x = uidPos.x, y = uidPos.y - 1, z = uidPos.z}, [1] = {x = uidPos.x + 1, y = uidPos.y, z = uidPos.z}, [2] = {x = uidPos.x, y = uidPos.y + 1, z = uidPos.z}, [3] = {x = uidPos.x - 1, y = uidPos.y, z = uidPos.z} } return doRemoveItem(getThingFromPos(uidPos)) and doCreateItem(item.itemid, 1, dirTab[dir]) end exêmplo function onUse(cid, item) return doMoveItem(item.uid, getCreatureLookDirection(cid)) and true end lembrando que a função não está terminada, se eu achar alguma função que pegue a posição de um item eu termino ela, a action é só um exêmplo. Norte = 0 Leste = 1 Sul = 2 Oeste = 3 -
Para a magia durar mais você deve aumentar os números nessa linha: until seconds == 22000 só ir aumentando o 22000 até um resultado do seu gosto. Veja que para dar 22000 ele soltara os fogos 220 vezes: print(100 * 220) retorna 22000 então só aumenta os 22000 ali ;d.
-
dúvida como eu faço para mover item sem usar esse metodo?
pergunta respondeu ao tonynamoral de Skymagnum em Scripts
Não irá funcionar a função de teleport é exclusivamente para jogadores, se alguém souber uma função que pega a posição do item eu faço a função. -
Então, assim estaria correto: db.executeQuery("DELETE FROM `player_storage` WHERE `key` = " .. storage .." AND `player_id` = " .. getPlayerGUID(cid) ..";") ?
-
Olá, gostaria de pedir uma query que deletasse a storage do player. Não quero uma que coloque a storage 1, 2, 3, 4 etc... quero uma que delete ela mesmo como se não existisse, tentei fazer mais deu erro.
-
[8.6] The Heroes Of Time (High Exp / 24H)
tópico respondeu ao zani123 de Skymagnum em Lixeira Pública
Galera promoção de natal / 2x exp prolongado até dia 15. Fotos do novo script do Fireworks Rocket. depois vou fazer outro.- 4 respostas
-
- theheroesof the
- time
- (e 7 mais)
-
function onCastSpell(cid, var) local pos = getPosByDir(getCreaturePosition(cid), getCreatureLookDirection(cid),1) pos.stackpos = 253 if (isPlayer(getThingFromPos(pos).uid)) then player = getThingFromPos(pos).uid addEvent(doEmpurrePlayer, 1, cid, player, 1, getCreaturePosition(cid)) end doCombat(cid, combat6, var) addEvent(event7, 100, {id=cid, combat=combat1, var=var}) addEvent(event7, 200, {id=cid, combat=combat2, var=var}) addEvent(event7, 300, {id=cid, combat=combat3, var=var}) addEvent(event7, 400, {id=cid, combat=combat4, var=var}) addEvent(event7, 500, {id=cid, combat=combat5, var=var}) addEvent(event7, 600, {id=cid, combat=combat6, var=var}) return TRUE end usa esse onCastSpel, mais não esqueça de adicionar a função nas libs.
-
pedido matar o player com storage "x" ganha 1kk
pergunta respondeu ao RodriigoRobson de Skymagnum em Scripts
Hum não sabia dessa valeu ai quando liberar rep eu te dou ;P. -
pedido matar o player com storage "x" ganha 1kk
pergunta respondeu ao RodriigoRobson de Skymagnum em Scripts
Oneshot, Caotic, acho que é também bom colocar pra verificar se cid é um player se for um monstro pode dar erro no distro. -
dúvida existe alguma maneira disso funcionar? o.0
pergunta respondeu ao tonynamoral de Skymagnum em Scripts
Sim eu sei oque ela faz só que já abre uma caixa de dialogo quando você clica em algum item que dá para escrever tem isso nas sources. -
dúvida existe alguma maneira disso funcionar? o.0
pergunta respondeu ao tonynamoral de Skymagnum em Scripts
function onTextEdit(cid, item, newText) doShowTextDialog(cid, item.itemid, newText) return true end Mais qual a finalidade disso cara?. -
Acho que é melhor colocar para verificar se o target é player também.
-
Cara acho que vai dar erro porque o broadcastMessage está sem o 2 parâmetro que seta a cor da mensagem então use esse: function executeSave() broadcastMessage("Servidor salvo próximo salve em 2 horas.", 25) doSaveServer() end function onThink(interval, lastExecution, thinkInterval) broadcastMessage("Servidor será salvo em 5 segundos.", 25) addEvent(executeSave, 5 * 1000) return true end
-
é amigo precisa tambem criar o script em movements/script se nao como vai funcionar se voce so tiver a tag e nao tiver o script. Você está errado nesses caso não precisa de script porquê na tag está event="function" então é uma função das sources do servidor.
-
Cara while em tabela é meio zuado/podre for é bem mais fácil/limpo de trabalhar em tabelas.
-
dúvida Porque a minha magia nao esta dando certo?
pergunta respondeu ao tonynamoral de Skymagnum em Scripts
Testa aí, também coloquei uma verificação para que se o player deslogar durante o addEvent não aparecer erros no distro: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 13) local combat2 = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_POISONDAMAGE) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 1) local combat3 = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 15) function onGetFormulaValues(cid, level, skill, attack, factor) return -(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5)) end setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues") function onEnergy(cid) if not isCreature(cid) then return true end doCombat(cid, combat, var) end function onPoison(cid) if not isCreature(cid) then return true end doCombat(cid, combat2, var) end function onFlame(cid) if not isCreature(cid) then return true end doCombat(cid, combat3, var) end function onCastSpell(cid, var) addEvent(onPoison, 300, cid) addEvent(onFlame, 600, cid) addEvent(onEnergy, 900, cid) addEvent(onPoison, 1200, cid) addEvent(onFlame, 1500, cid) end -
CARA PARA DE MIMIMI E VAI SE FUDER VLW FLW ABÇS
-
ORRA CARA REBELDI V1D4 L@K4
-
Você é o mesmo cara que eu tenho no msn? eu joguei teu server no test quando nukaram ele e bugou teu pc, joao aki, server muito massa.
- 14 respostas
-
- tibia farm
- harvest moon
-
(e 3 mais)
Tags:
-
Tipo: TalkActions & Lib. Testado: Não. @Oque Faz?. Bom você fala o comando /cmd storageN, limit aí mostra os players que tem essa storage em um rank em forma decrescente(do maior pro menor). @Instalando. Primeiramente vá na pasta do seu servidor depois entre na pasta data depois na lib e agora no arquivo 050 - function e adicione esse conteúdo lá: function doOrderStorageRank(cid, storageId, limit) -- by Skyforever/magnum str = " - [ ~ Rank da storage " .. storageId .. "! Nome do jogador - value da storage." result = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = ".. storageId .." ORDER BY `value` DESC;") if result:getID() < 1 then str = "/nNingúem tem essa storage." return true end count = 1 while true do str = str .."/n" .. count .. "º " .. getPlayerNameByGUID(result:getDataInt("player_id")) .. " - " .. result:getDataInt("value") .. "" count = count + 1 if not result:next() or count > limit then break end result:free() end doShowTextDialog(cid, 2160, str) end agora vá para a pasta talkactions agora entre na pasta scripts duplique um arquivo da extensão .lua e renomeie para RankStorage e adicione o seguinte conteúdo dentro: --[[ Rank Storage System v.1 Created by: Skyforever Contact: joao_xtibia85@hotmail.com version: 1.0 ]]-- function onSay(cid, words, param, channel) local T = string.explode(param, ",") if tonumber(T[1]) and tonumber(T[2]) then if tonumber(T[2]) < 50 then local maxLimite = tonumber(T[2]) doOrderStorageRank(cid, T[1], maxLimite) else maxLimite = 50 end else doPlayerSendCancel(cid, 27, "Only numbers.") end return true end agora vá em talkactions.xml e adicione essa tag: <talkaction words="!rankstorage" event="script" value="RankStorage.lua"/> é isso esperem que gostem. Qualquer bug, dúvida ou sugestão favor postem no tópico!.
-
Porque ele deixou um espaço na ret ret = ret ..string.sub(n,0,1):upper()..string.sub(n,2).."AQUI" é só deixar assim ret = ret ..string.sub(n,0,1):upper()..string.sub(n,2)..""
-
Legal, parabéns mais poderia colocar um tempo para o ovo eclodir assim ficaria melhor, e também colocar para sumonar só uma hydra
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.