Ir para conteúdo

RigBy

Visconde
  • Total de itens

    411
  • Registro em

  • Última visita

  • Dias Ganhos

    10

Tudo que RigBy postou

  1. Dia Ruim
    1. HeltonMuniz2

      HeltonMuniz2

      Todos temos um \o/ força ai

  2. C - Parece com o royal crossbow só que pintado de preto. I - O começo parece uma escopeta. H - O começo também parece uma escopeta.
  3. 2 dias sem net ,e osso.
  4. Hmm, ok passei 2 dias sem net então daqui pra segunda eu posto a versão 2.0 com algumas modificações.
  5. RigBy

    Sistema akstuki

    To no celular, Nao sei pra que tanta dificuldade eu ja fiz o system so basta vc posta la oque deve melhora Creatserv pra que vc quer que aparecar a msg, se o sistema Muda o nome do player, falando que ele e da akatsuki Duuh eu ja fiz esse sistema la no topico
  6. @Junior 001 Vlw, totalmente funcional. @DuuhCarvalho Obrigado. @Creatserv Nunca joguei Nto ,eu sique tenho o tibia 8.54 no PC então não sei se fico totalmente igual ao do nto. Pois eu fiz esse me baseando nos pedidos de script Não da bonus de xp mais se você criar uma script que cheque a storage que eu pois la em cima vai funciona. Cria um topico la no pedido e duvidas que eu vejo como funciona e tento fazer.
  7. RigBy

    System akatsuki

    Essa dai pode ta com alguns erros. Eu fiz outro mais elaborado http://www.xtibia.com/forum/topic/229599-akatsuki-system-advance-10-heart-system/ Comente la oque deve melhorar pra versão 2.0
  8. Akatsuki System + Heart System Introdução - tava vendo muitas pessoas precisando desses dois sistema então resolvi criar o meu próprio. - Não ta igual ao do NTOUltimate pois nunca joguei esse servidor. O que tem no Akatsuki system 1.0? - Verifica se sua vocação pode fazer parte da akatsuki - Verificar sua vocação e adiciona outra diferente? - Troca de outfit dependendo da sua vocação - Da bonus de hp e mp - Adicionar o nome [Akatsuki] no seu nick exemplo [Akatsuki] RigBy - Aplica uma storage quando você entra pra akatsuki (com isso da pra você fazer bonusXp) - storage é 85798723243 valor 1 O que tem no Heart System - Ele só te da o coração se você for acima de tal level - adiciona o nome da pessoa no coração Vamos la a script Npc.xml <?xml version="1.0" encoding="UTF-8"?> <npc name="[Akatsuki] Tobi" script="data/npc/scripts/AkatsukiSystem.lua" walkinterval="2000" speed="0" floorchange="0"> <health now="100" max="100"/> <look type="128" head="0" body="0" legs="0" feet="0" addons="0"/> <parameters> <parameter key="message_greet" value="Hello You who joins {akatsuki}?"/> </parameters> </npc> Npc/Script/AkatsukiSystem.lua -- Do not remove the credits -- -- [NPC] Akatsuki System -- -- developed by Rigby -- -- Especially for the Xtibia.com -- 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 local level = 1 -- Level preciso pra entra para akatsuki local itemid = 5943 -- id do coração local quantidade = 6 -- quantos hearts e preciso local bonushp = 300000 -- quanto de bonus de life vai ganha local bonusmp = 30000 -- quanto de bonus de mana vai ganha local config = { --[Vocation] = ( Nova Vocation, New Outfit ) [1] = { 5, 128}, [2] = { 6, 129}, [3] = { 7, 130}, [4] = { 8, 131}, } function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if msgcontains(msg, 'akatsuki') then if getPlayerVocation(cid) ~= config then if getPlayerStorageValue(cid, 85798723243) == -1 then if getPlayerLevel(cid) >= level then selfSay('Are you sure you want to join the Akatsuki?.', cid) talkState[talkUser] = 1 else selfSay('You there and very weak, vain talk to you when you have level '..level..'.', cid) end else selfSay('You already part of the akatsuki!', cid) end else selfSay('Do not need you now!', cid) end end if talkState[talkUser] == 1 and msgcontains(msg, 'yes') then selfSay('To prove their loyalty, you have to bring '..quantidade..' {hearts}.', cid) talkState[talkUser] = 2 end if talkState[talkUser] == 2 and msgcontains(msg, 'hearts') then if getPlayerItemCount(cid, 5943) >= 6 then local voc = config[getPlayerVocation(cid)] doPlayerSetVocation(cid, voc[1]) local outfit = {lookType = voc[2]} doCreatureChangeOutfit(cid, outfit) setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+bonushp) setCreatureMaxMana(cid, getCreatureMaxMana(cid)+bonusmp) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) doPlayerRemoveItem(cid, 5943, 6) doCreatureAddMana(cid, getCreatureMaxMana(cid)) setPlayerStorageValue(cid,85798723243,1) db.executeQuery("UPDATE `players` SET `name` = '[Akatsuki] "..getCreatureName(cid).."' WHERE `id` = "..getPlayerGUID(cid)..";") addEvent(doRemoveCreature, 5*1000, cid, true) doPlayerSendTextMessage(cid,25,'You will be kicked in 5 seconds to enter the akatsuki!') selfSay('Congratulations now you are part of akatsuki.', cid) talkState[talkUser] = 0 else selfSay('No use to fool me, you do not have '..quantidade..' hearts, goes behind.', cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Heart System Creaturescript/script/heartsystem -- Do not remove the credits -- -- [CREATURESCRIPT] Heart System -- -- developed by Rigby -- -- Especially for the Xtibia.com -- function onKill(cid, target, lastHit) local item = 5943 -- id do coração local level = 300 -- level necessário para tira o coração if isPlayer(cid) and isPlayer(target) then if getPlayerLevel(target) >= level then local add = doPlayerAddItem(cid, item, 1) doItemSetAttribute(add, "description","Esse coração é de "..getPlayerName(target).." que foi morto no level "..getPlayerLevel(target).." por "..getPlayerName(cid)..".") doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Voce Mato " ..getPlayerName(target).. ".") doSendMagicEffect(getPlayerPosition(cid),12) end end return true end Creaturescript.xml Tag <event type="kill" name="HeartSys" event="script" value="heartsystem.lua"/> Podem comenta duvidas, opiniões ou melhoramento para que haja a versão 2.0
  9. Essa script e minha hehehehe. eu tenho essa que foi um colega que passo pra min pra eu da uma editada.pode usar. 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 local config = { --[Vocation] = ( Nova Vocation, New Outfit ) [1] = { 800, 453}, [2] = { 800, 453}, [3] = { 800, 453}, [4] = { 800, 453}, [5] = { 800, 453}, [6] = { 800, 453}, [7] = { 800, 453}, [8] = { 800, 453}, [9] = { 800, 453}, [10] = { 800, 453}, [11] = { 800, 453}, [12] = { 800, 453}, [131] = { 132, 34}, [144] = { 145, 15}, [155] = { 156, 15}, [167] = { 168, 173}, [179] = { 180, 178}, [191] = { 192, 184}, [205] = { 206, 190}, [217] = { 218, 221}, [229] = { 230, 281}, [242] = { 243, 60}, [254] = { 255, 351}, [265] = { 266, 334}, [275] = { 276, 80}, [286] = { 287, 338}, [296] = { 297, 198} } function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if getPlayerItemCount(cid, 5943, 6) then if msgcontains(msg, 'yes') and getPlayerStorageValue(cid,30026) == 4 then selfSay('You are reborn.', cid) focus = 0 talk_start = 0 elseif msgcontains(msg, 'reborn') and getPlayerLevel(cid) < 350 and getPlayerStorageValue(cid,30025) ~= 4 then selfSay('Hehe, I say If you READY. You do not have 350 level.', cid) elseif msgcontains(msg, 'reborn') then selfSay('Are you sure? {yes}', cid) talkState[talkUser] = 2 elseif msgcontains(msg, 'yes') and talkState[talkUser] ==2 and getPlayerLevel(cid) >= 350 then local voc = config[getPlayerVocation(cid)] doPlayerSetVocation(cid, voc[1]) local outfit = {lookType = voc[2]} doCreatureChangeOutfit(cid, outfit) doPlayerRemoveItem(cid, 5943, 6) setPlayerStorageValue(cid,30026,4) talkState[talkUser] = 0 elseif msgcontains(msg, '') and getPlayerLevel(cid) ~= 350 then selfSay('Desculpe, ' .. getCreatureName(cid) .. '! Voce precisa ter level 350+ para se tornar membro da akatsuki.', cid) talkState[talkUser] = 0 elseif msgcontains(msg, '') and talkState[talkUser] == 2 then selfSay('Desculpe, ' .. getCreatureName(cid) .. '! Voce precisa reverter ou transformar para se tornar membro da akatsuki.', cid) talkState[talkUser] = 0 elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then selfSay('Ate mais.', cid) focus = 0 talk_start = 0 end else selfSay('Hehe, Voce não tem os corações.', cid) return true end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Desculpa a falta de dentificação e pq eu uso tab pra da espaço e do com preguiça de da espaço agora bye
  10. RigBy

    Cooldown Bar

    Primeiramente não vim aqui pra pedi tudo de mão beijada, so quero que me explique se tem como e como fazer. Eu to criando meu próprio servidor e comecei a usa otclient. So que eu não sei mexer muito com otclient então comecei a ler o tutoriais e achei o cooldown system do banana fight mas teve um problema ele não checa sua vocação pois pra checa vocação so na versão 9.5 com a função getVocation ja que meu servidor e 8.6 ai eu pensei que tal eu usa storage pra cada vocação. então essa e minha duvida tem alguma função que checa a storage do player?? e como usa ela. Eu uso o Otclient Win 0.6.4
  11. kkkkkkkkkk, muto bom duuh. belo script.xD @edit esqueci de fala eu to criando uma script que pode ate combinar com o seu amanha quando eu chega de viajem eu posto aqui no xtibia hehehe
  12. Até que fim amanha vo pra casa.
  13. Cara antes de fazer pedido assim da uma olhada no google. eu fiz uma script igualzinha a que vc que pra um cara veja aqui akatsuki system @edit olha aqui a script editada so basta troca o npc. 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 vocation = 120 -- vocation que precisa ter, tipo 120 naruto local outfit = 123 -- outfit que vai ganha local item = 5943 -- ID do Item que necessita para trocar(coração) local quantidade = 10 -- quantidade de corações local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if(msgcontains(msg, 'yes')) then if getPlayerVocation(cid) == vocation then if getPlayerItemCount(cid, item) < quantidade then selfSay('Não tente me enganar, voce não tem os '..quantidade..' corações !', cid) else doPlayerRemoveItem(cid, item, quantidade) doCreatureChangeOutfit(cid, outfit) selfSay('Voce agora faz parte da akatsuki.', cid) end else selfSay('Voce nao tem a vocacao nessessaria.', cid) end else selfSay('Voce tem que fala yes pra troca.', cid) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) pronto testa ai
  14. RigBy

    onStatsChange

    Não so bom com explicação mas so posso fala uma coisa. onStatsChange significa Estatísticas sobre Mudança Ela a ativada quando muda seu status. exemplo: quando o bicho te ataca ela e ativada. quando você se reala ela e ativada. sempre que muda algum status no player ela e ativada. paraments cid -- Quem ativa a função(player) attacker -- quem te caso o dano type -- tipo do dano(LOSS ou GAIN) combat -- tipo do dano como fire, ice.. value -- valor do dano exemplo de uma script que usa onStatsChange Unknown heal Duvidas pode fala
  15. pq, assim não tem graça. mas eu já tive uma ideia pro próximo oms.
  16. Eu tinha usado mas deu um problema quando eu fui coloca que o tópico fico todo bagunçado mas eu já ajeitei. flw
  17. Dodge System Introdução: - Fiz esse sistema pra ajuda um cara aqui no xtibia - Desculpa deu um erro na hora que eu fui posta. O que ele faz: - O sistema consiste em defender % dos ataques recebidos. Por Exemplo: Com 1 de dodge, voce vai ter 10% de chance de defender. Com 10 de dodge (vocês podem editar) você vai ter 50% de chance de defender, cada pedra (8302) que voce usar, sua skill de dodge aumenta em 1 ponto, podendo no maximo ter 100 pontos Vamos la. em creaturescript: dodgecombat.lua local storagedodge = 98798644 -- storage do dodge local cor = 35 -- cor do texto local effect = 30 -- id do magic effect local msg = "DODGE!" -- msg local dodge = { {min = 1, max = 2, chance = 10}, -- se o dodge tiver entre 1 e 2 tem 10% de chance de da dodge. {min = 3, max = 4, chance = 20}, -- podem ser configurada portanto que não passe do limite {min = 5, max = 6, chance = 30}, -- vocês pode adicionar mas se quiserem {min = 7, max = 8, chance = 40}, {min = 9, max = 10, chance = 45}, {min = 11, max = math.huge, chance = 50} } function onStatsChange(cid, attacker, type, combat, value) if not isCreature(cid) then return false end for _, tudo in pairs(dodge) do if getPlayerStorageValue(cid, storagedodge) >= tudo.min and getPlayerStorageValue(cid, storagedodge) <= tudo.max then local chancex = math.random(1, 100) if chancex <= tudo.chance then if combat ~= COMBAT_HEALING then doSendMagicEffect(getCreaturePosition(cid), effect) doSendAnimatedText(getCreaturePosition(cid), msg, cor) return false end end end end return true end Creaturescript.xml tag <event type="StatsChange" name="CombatDodge" event="script" value="CombatDodge.lua"/> Login.lua antes do ultimo return true registerCreatureEvent(cid, "CombatDodge") em action: dodgestone.lua local limite = 100 -- limite de dodge local storagedodge = 98798644 -- storage do dodge function onUse(cid, item, fromPosition, itemEx, toPosition) if getPlayerStorageValue(cid, storagedodge) == -1 then doPlayerSetStorageValue(cid, storagedodge, (getPlayerStorageValue(cid, storagedodge)) + 2) doPlayerSendCancel(cid, " DodgeSKILL:["..getPlayerStorageValue(cid, storagedodge).."/"..limite.."].") elseif getPlayerStorageValue(cid, storagedodge) >= -1 and getPlayerStorageValue(cid, storagedodge) <= limite then doPlayerSetStorageValue(cid, storagedodge, (getPlayerStorageValue(cid, storagedodge)) + 1) doPlayerSendCancel(cid, " DodgeSKILL:["..getPlayerStorageValue(cid, storagedodge).."/"..limite.."].") doRemoveItem(item.uid, 1) else doPlayerSendCancel(cid, "Voce ja chego no maximo.DodgeSKILL:["..getPlayerStorageValue(cid, storagedodge).."/"..limite.."]") end return true end action.xml tag <action itemid="8302" event="script" value="dodgestone.lua"/> Comente oque deve melhora, oque ta de errado.
  18. Você esqueceu de coloca o if e o then, em algumas partes da script. e não precisa disso if getPlayerMoney(cid) <=999 then -- so basta vc usa else aqui o código pra que você entenda function onUse(cid, item, frompos, item2, topos) -- função clika no item if getPlayerStorageValue(cid, 2670) == -1 then -- vai cheka se a storage dele e -1, todo os player tem todas as storage mas sempre e -1. if getPlayerMoney(cid) >= 1000 then -- aqui vai cheka se ele tem 1000 de dinheiro doPlayerRemoveMoney(cid, 1000) -- aqui remove 1000 de dinheiro doPlayerSendTextMessage(cid,22,"Parabens!.") -- msg que vai manda pro player doPlayerAddItem(cid,12216,20) -- vai adiciona o item 12216 e 20 quantidades setPlayerStorageValue(cid,2670,1) -- vai muda a storage dele pra 1 pra que ele não possa fazer a quest denovo else -- caso o getPlayerMoney for falso ele NÃO usa essas funções /\ doPlayerSendCancel(cid, "Voçê Precisa de 100dl para poder comprar!") -- msg falando que o valor foi falso end -- terminar a chekagem do dinheiro else -- caso a storage for falsa doPlayerSendCancel(cid, "Voçê ja pego o item.") -- manda uma msg falando que foi falso end -- termina a função de chekagem de storage return true -- não sei muito explica isso end -- fecha a função clika no item so ruim com explicação mas espero que tenha entendido aqui o code sem essas msg que eu coloquei pra você entender function onUse(cid, item, frompos, item2, topos) if getPlayerStorageValue(cid, 2670) == -1 then if getPlayerMoney(cid) >= 10000 then doPlayerRemoveMoney(cid, 1000) doPlayerSendTextMessage(cid,22,"Parabens!.") doPlayerAddItem(cid,12216,20) setPlayerStorageValue(cid,2670,1) else doPlayerSendCancel(cid, "Voçê Precisa de 100dl para poder comprar!") end else doPlayerSendCancel(cid, "Voçê ja pego o item.") end return true end
  19. Seria bom uma spells, eu gosto de spell.Zuera Muito bom, aumentando cada vez mais o RPG do tibia. Uma dica coloca tempo pra pode usa senão os cara vai usa todas hora.Vão solar morga hehehhe.
  20. E porque a maiorias dos jogos de RPG o que me chama mas a atenção são as spells. Fiz me baseando na vocação necromancer de AQW kkkkkk.
  21. Isso deve ser porque você ta usando a mesma storage em todos os baus.Cada quest deve ter uma storage diferente senão buga. Dei uma editada pra te ajuda. local storage = 20001 -- sempre que criar uma quest nova modifique aqui, nunca repita local itemid = 7451 -- item que vai ganha local quantidade = 1 -- quantidade function onUse(cid, item, frompos, item2, topos)if item.uid == 20611 then queststatus = getPlayerStorageValue(cid,storage) if queststatus == -1 then doPlayerPopupFYI(cid, "Você ganhou um item DONATE!") doPlayerAddItem(cid, itemid, quantidade) setPlayerStorageValue(cid,storage,1) else doPlayerPopupFYI(cid, "Você já pegou um item DONATE!") end else return 0 end return 1 end
  22. @Mers Tutorial Sim e uma spells, tem o creaturescript e a spell que serve pra ativar o creaturescript. @killua Hehehe, eu ate já tenho uma ideia só que eu to viajando e onde eu to a net cai tipo em 2 e 2 minutos e demora pra volta isso atrapalha muito pra eu pesquisar. Vo começar a botar em pratica minha ideia quando eu volta
  23. Vlw eu vo tentar ter mais ideia boa pra pode participa do oms.
  24. Caraca foi mesmo tinha esquecido desse, eu vo usa onLogin, vlw ai @edit :Pronto ja editei o topico.
  • Quem Está Navegando   0 membros estão online

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