Ir para conteúdo

Rasinsk

Campones
  • Total de itens

    58
  • Registro em

  • Última visita

Tudo que Rasinsk postou

  1. Antonio664, o suposto bug que vc encontrou na qual os bixos passam por cima de field n é bug, mas sim uma correçao de bug. O bug mesmo era os bixos nao passarem por cima de fields porque isso seria tirado muito proveito pelos players.
  2. entao pq vc mesmo n entra no link '-'
  3. Como assim seu pc explodiu? serio oq é esse link? -.-
  4. Como executa os comandos na database? alguem pode dizer?
  5. Depende do que está na talkaction, va na pasta talkaction e abra em bloco de notas o arquivo talkaction.xml la vai ter a palava usada pra executar tal script.
  6. Sistema excelente, nunca tinha visto antes, vai me ajuda muito, REP+ 1 pergunta: como edita o tempo q vai mudar a estação? (nao em dias da semana como ta ali mas em horas)
  7. Parabéns, bom tutorial
  8. Legal a magia, inovações é que trazem perspectivas
  9. Aqui não funcionou, funciona no tfs 0.4?
  10. Ótimo tutorial, da pra entender fácil com tutoriais assim, ta de parabéns!
  11. Fantástico o sistema, com ele n precisa mais se complica com scripts longos de magia pra empurra a criatura ou player, REP+
  12. O tutorial é de fácil compreensão, nenhuma dificuldade, ta de parabéns
  13. Tente: local MIN = 3.8 local MAX = 4.0 local exhaust = createConditionObject(CONDITION_EXHAUST) setConditionParam(exhaust, CONDITION_PARAM_TICKS, (getConfigInfo('timeBetweenExActions') - 100)) function onUse(cid, item, fromPosition, itemEx, toPosition) if isPlayer(itemEx.uid) == FALSE and if getPlayerVocation(cid) ~= 1, 2, 5, 6 then return FALSE end if hasCondition(cid, CONDITION_EXHAUST_HEAL) == TRUE then doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED) return TRUE end if doPlayerAddMana(itemEx.uid, math.random((getPlayerLevel(cid) * MIN), (getPlayerLevel(cid) * MAX))) == LUA_ERROR then return FALSE end doAddCondition(cid, exhaust) doSendMagicEffect(getThingPos(itemEx.uid), CONST_ME_MAGIC_BLUE) doCreatureSay(itemEx.uid, "", TALKTYPE_ORANGE_1) return TRUE end Se não der certo me avise (mande por pm preferencialmente), pq n estou em meu computador portanto não testei.
  14. Rasinsk

    [Ajuda] Spell

    Tente este: local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, CONST_ME_SMALLPLANTS) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -15.5, -150, -15.3, -150) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, CONST_ME_ICETORNADO) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -0.0, -0, -0.0, -0) arr1 = { {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, } arr2 = { {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) setCombatArea(combat1, area1) setCombatArea(combat2, area2) local function onCastSpell1(parameters) doCombat(parameters.cid, parameters.combat1, parameters.var) end local function onCastSpell2(parameters) doCombat(parameters.cid, parameters.combat2, parameters.var) end function onCastSpell(cid, var) local parameters = { cid = cid, var = var, combat1 = combat1, combat2 = combat2 } addEvent(onCastSpell1, 100, parameters) addEvent(onCastSpell2, 1200, parameters) -- aqui altera o tempo em que vai executar o 2° efeito, é dado em miléssimos, para alterar só mudar o 1200 pra um outro tempo em que o 2° efeito vai ser executado end e este: pl = getPlayerLevel(cid) m = 1000*pl -- aqui vai ser um nureo multiplicado pelo level do player para adicionar em mana, se quiser altere a fórmula local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_PURPLE) setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, 1) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) function onCastSpell(cid, var) doPlayerAddMana(cid, m) return doCombat(cid, combat, var) end Não estou no meu computador portanto não testei, se der algum erro me avise ou mande pm.
  15. Seção errada, para servidores derivados de tibia vc deve colocar seu tópico aqui: http://www.xtibia.co...ores-derivados/ Reportado para mover para a área correta já.
  16. Pega no TFS 0.4?
  17. Muito bom o sistema, REP+
  18. Eu não sei como é direito a função do promotion mas se vc souber, coloque que o player ganha promotion quando tem um storage X, dai coloque pra passar um tempo (30dias) e depois que passar o tempo, ele remova o storage que deixa o player com a promotion. O porém é que vai ter que colocar o promotion em creaturescripts dizendo que ao ter o storage tem o promotion (junto com os troço de login e logout) eu acho, e o npc separado vendendo a storage do promotion.
  19. Rasinsk

    War Of Imperium

    [01/11/2012 17:12:00] (luaDoCreateTeleport) Tile not found Acho que seu serv no tem o tile (o piso) que vai ser usado no woe, basta vc procurar no script o id do tile e alterar para um existente ou criar um tile no id do script.
  20. Palavra de conjuração: Chidori Damage: energy Formula: setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -1, 30, -1, 45) Vocações: todas Adicional:assim como no desenho, e no jogos de naruto de byond, quando vc usa a spell/jutsu vai aparece o efeito no personagem e vai ficar la, se eu andar pra alguma direçao vai continuar soltando o efeito no personagem e só vai hitar quando eu estiver do lado do player ou monstro e appertar botao contra ele. Ex.: o player ta do meu lado direito e eu to com a spell ativa, pra eu hita ele basta eu apertar o botao direito para andar contra o player alvo.
  21. Concordo com thales93, poste sua dúvida aqui, tenho certeza que todos tentarão ajudar e vc n vai precisar gastar nada. É um prejuízo gastar com otserv desse jeito sendo q pode pedir ajuda.
  22. Vou tentar fazer, dps mando resposta. Desculpe mas n consegui, eu n sabia por onde começar mas ai eu achei um npc que fazia isso que você pediu mas ele requer um level minimo e cobra em dinheiro pra enviar a mensagem. Tentei editar mas da erros q n sei concertar. Em todos caso deixo esse npc aqui para caso alguem consiga colocar um intervalo: Crie na pasta npc/script um arquivo chamado anunciante.lua e coloque isto: focus = 0 next_focus = 0 talk_start = 0 msgHi = 'Heylo! Would you like to broadcast anything?' msgBye = 'See you another time!' price = 2500 -- preço para poder mandar a mensagem inConvo = 0 broadcast = '' cast = '' target = 0 following = false attacking = false function onThingMove(creature, thing, oldpos, oldstackpos) end function onCreatureAppear(creature) end function onCreatureDisappear(cid, pos) if (focus == cid) then selfSay(msgBye) distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end end end function onCreatureTurn(creature) end function msgcontains(txt, str) return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)')) end function onCreatureSay(cid, type, msg) msg2 = msg msg = string.lower(msg) if (cast ~= '') then selfSay('does nothing') -- do nothing, wait until message has been broadcasted and npc has replied elseif (getDistanceToCreature(cid) >= 4 and focus == cid) then selfSay('Please come closer, '..getCreatureName(cid)..'. I can\'t hear what you are saying from over there.') elseif (type == 1) then if ((string.find(msg, '(%a*)hi(%a*)') or string.find(msg, '(%a*)hello(%a*)') or string.find(msg, '(%a*)heylo(%a*)') or string.find(msg, '(%a*)greetings(%a*)')) and (focus == 0) and getDistanceToCreature(cid) < 4) then selfSay(msgHi) focus = cid talk_start = os.clock() inConvo = 1 elseif ((string.find(msg, '(%a*)hi(%a*)') or string.find(msg, '(%a*)hello(%a*)') or string.find(msg, '(%a*)heylo(%a*)') or string.find(msg, '(%a*)greetings(%a*)')) and (focus ~= cid) and getDistanceToCreature(cid) < 4) then if (next_focus > 0 and getDistanceToCreature(next_focus) < 4) then selfSay('Take a nap while I help the ones before you, ' .. getCreatureName(cid) .. '.') else selfSay('I\'ll soon come to you, ' .. getCreatureName(cid) .. '.') next_focus = cid end elseif (focus == cid) then talk_start = os.clock() if ((msgcontains(msg, 'broadcast') or msgcontains(msg, 'say')) and inConvo == 0) then if (getPlayerLevel(cid) >= 30) then -- level mínimo para poder mandar a mensagem selfSay('Do you want me to broadcast anything for you?') inConvo = 1 else selfSay('Come back when you\'re older!') end elseif (msgcontains(msg, 'yes') and inConvo == 1) then selfSay('Tell me what you want me to broadcast.') inConvo = 2 elseif (msgcontains(msg, 'no') and inConvo == 1) then selfSay('Perhaps tomorrow then..') if (next_focus > 0 and getDistanceToCreature(next_focus) < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' elseif (inConvo == 2 and (msg ~= 'stop')) then if (string.len(msg) > 90) then selfSay('I am sorry, but your message can not be longer than 90 letters, including spaces and other characters. Say a new message or say STOP to end.') else broadcast = msg2 selfSay('Do you want to pay '..price..' gold for me to broadcast this message? "'..broadcast..'"') inConvo = 3 end elseif (msgcontains(msg, 'yes') and inConvo == 3) then if (doPlayerRemoveMoney(cid, price) == 1) then selfSay('/b '..getCreatureName(cid)..' says: '..broadcast) saycast = os.clock() inConvo = 1 io.output(io.open("broadcast.log", "a")) io.write("["..os.date("%y.%m.%d %X").."] <"..getCreatureName(cid).."> "..broadcast.."\n") io.close() cast = broadcast else selfSay('You can not afford this service. Please come back another time when you have more money!') if (next_focus > 0) then distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' end end elseif (msgcontains(msg, 'no') and inConvo == 3) then selfSay('Ok then.') inConvo = 0 broadcast = '' elseif (string.find(msg, '(%a*)job(%a*)')) then selfSay('I have the strongest voice in the world! People sometimes pay me to broadcast things for them.') inConvo = 0 elseif (string.find(msg, '(%a*)bye(%a*)')) then selfSay(msgBye) if (next_focus > 0) then distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' end end end end end function onCreatureChangeOutfit(creature) end function onThink() if (cast ~= '' and (os.clock() - saycast) > 1) then selfSay('Do you want to broadcast anything else?') cast = '' elseif (os.clock() - talk_start) > 30 then if (focus > 0) then selfSay(msgBye) if (next_focus > 0) then distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' end elseif (focus ~= 0) then distFocus = getDistanceToCreature(focus) if (distFocus ~= nil and distFocus > 5) then selfSay(msgBye) if (next_focus > 0) then distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 end else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' end end end Depois na pasta NPC crie um arquivo chamado Anunciante.xml e coloque isto: <?xml version="1.0" encoding="UTF-8"?> <npc name="Anunciante" script="data/npc/scripts/anunciante.lua" walkinterval="2000" floorchange="0"> <health now="150" max="150"/> <look type="75" head="114" body="0" legs="114" feet="0" addons="2"/> </npc> Ps. acho que esse npc reuqer que o serv tenha o comando /b de envia broadcast de Gms, ADM e tals
  23. Coloquei em vez de NPC, uma talkaction (veja se vc vai gosta + desse, se ainda prefirir o npc me fale): Vá na pasta talkactions/scripts e crie um arquivo chamado mensagem.lua e coloque isso: function onSay(cid, words, param) local storage = 4444 local exhaustTime = 10 * 60 -- 10 minutos local message = getCreatureName(cid) .. " [" .. getPlayerLevel(cid) .. "]: " .. param if exhaust.check(cid, storage) == TRUE then doPlayerSendCancel(cid, "Você só pode enviar uma mensagem a cada ".. math.ceil(exhaustTime / 60) .." minutos.") return TRUE end exhaustion.set(cid, storage, exhaustTime) doBroadcastMessage(cid, message, MESSAGE_EVENT_ADVANCE) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Broadcast sent.") return TRUE end Depois va na pasta talkactions e abra o arquivo talkactions.xml e coloque a seguinte tag: <talkaction log="yes" words="/msg" event="script" value="mensagem.lua"/> Pronto, o comando é /msg (mensagem) Te ajudei? REP+
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...