Ir para conteúdo

Roksas

Herói
  • Total de itens

    3611
  • Registro em

  • Última visita

  • Dias Ganhos

    60

Tudo que Roksas postou

  1. Muito legal cara, este evento é bem divertido se muitos players participarem. Parabéns ^^
  2. Obrigado Alex, colocaremos fé nessa garotada :_)
  3. Já pensou aprender a linguagem Lua? Criar seus próprios códigos e se divertir em seu servidor? Acesse já e inscreva-se: http://www.xtibia.com/forum/topic/218993-escolinha-de-scripting-inscricoes/
  4. Saudações meus jovens, durante um bom tempo estudei Lua e usei meus conhecimentos para ajudár-los e até mesmo para trabalhar. Nisto, gostaria de repassar meus conhecimentos para todos vocês, assim podendo criar seus próprios códigos em Lua. Aprender novas linguagens de programação, no caso Lua, nos abre muitas portas e estou disposto a ser um bom professor aos inscritos. Neste tópico faremos uma avaliação entre os candidatos, e entre eles, apenas 10 serão escolhidos para participar desta primeira Turma da Escolinha de Scripting. Os critérios de avaliação serão: - Idade; - Ter uma conta no Skype; - Conhecimento em Lua. Os interessados a se candidatar deverão preencher as seguintes informações abaixo e postá-las no tópico: Nome: Idade: Skype: Cidade aonde moro: Conhecimento em Lua: Quanto tempo fico disponível / online: Por que quero aprender Lua: Algum scripter que você procura se inspirar: Ao preencher, poste no tópico e boa sorte. Neste tópico se aplicam as regras gerais do fórum, favor não floodar, utilizem o mesmo apenas para se inscrever. Início das aulas: // Ainda não marcado \\
  5. Roksas

    DarkXPoke (DXP)

    @gristony Tome muito cuidado com suas palavras, já foram duas vezes hein. Espero que isso não se repita, se está com problemas no fórum, contate a equipe. Próxima vez receberá um alerta.
  6. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  7. Amigo, área incorreta. Nesta seção são postados APENAS códigos já prontos. O seu tópico será movido para a seção de pedidos e dúvidas e tentarei te ajudar. Preste mais atenção! // Bom, primeiramente vamos criar o código, no qual o GOD vai usar a alavanca. Vá em data/actions/scripts, crie um arquivo chamado event_lever.lua e adicione dentro: function onUse(cid, item, frompos, item2, topos) local toPos = {x = 500, y = 400, z = 7} local makePos = {x = 400, y = 500, z = 7} if getPlayerAccess(cid) < 4 then doPlayerSendTextMessage(cid, 20, "You no have access to do this.") return true end doCreateTeleport(1387, toPos, makePos) doSetItemActionId(getThingFromPos({x = makePos.x, y = makePos.y, z = makePos.z, stackpos = 1}).uid, 15340) return true end Nas linhas toPos e makePos, você irá encontrar variáveis com coordenadas. Em toPos coloque as coordenadas para onde o teleport vai levar, e o makePos coloque aonde ele vai ser criado. Muito bem! Agora basta ir em actions.xml e adicionar essa tag: <action actionid="15329" event="script" value="event_lever.lua"/> ///// Pronto, agora vamos criar o código, no qual ao entrar no teleporte remova os dwarvens rings. Vá em data/movements/scriptss, crie um arquivo chamado ent_event.lua e adicione dentro: function onStepIn(cid, item, pos) if getPlayerItemCount(cid, 2213) >= 1 or getPlayerItemCount(cid, 2215) >= 1 then doPlayerRemoveItem(cid, 2213) doPlayerRemoveItem(cid, 2215) doPlayerSendTextMessage(cid, 20, "Foram removidos os seus dwarvens rings por questões de segurança.") return true end return true end Em movements.xml adicione essa tag: <movevent type="StepIn" actionid="15340" event="script" value="ent_event.lua"/> Agora é só colocar ACTION ID 15329 na alavanca. Boa sorte ^^
  8. Como funciona o sistema de clãs? Dê + detalhes
  9. vollteeei rapaziada
  10. Creio que não EXISTA um 'verdadeiro', cada um cada um. Oo Mas tudo bem, rsrs, obrigado cara
  11. Roksas

    Big-War

    @rodrigo Fale direito com os usuários, cuidado com as palavras, na próxima será alerta.
  12. Sim, está teleportando para o templo ^^
  13. Cast System 1.0 Como vãao galera? Há quanto tempo não? Hoje eu vim trazer para vocês um sisteminha bem simples e legal, aonde você pode assistir os outros jogadores e vice-versa. Versão testada: TFS 8.6 0.4 and TFS 0.3.6 8.6 Comandos utilizados in-game: !cast on -- Ativa o seu Cast System, e permite os outros jogadores te assistirem; !cast off -- Desativa o seu Cast System; !cast exit -- Você sai do Cast no qual está assistindo; !cast NAME -- Começa a assistir um jogador (NAME). Instalação Vá em data/talkactions/scripts crie um arquivo chamado castSys.lua e adicione o seguinte código dentro do mesmo: --[[ Perfect Cast System 1.0 by Roksas Acesse ja XTibia.com =) ]]-- function onSay(cid, words, param) local player = getPlayerByName(param) if not isInArray({"list", "exit", "off", "on"}, param) and not param or param == "" then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "Enter the name of the player, which you want to cast in parameters.") return true end if param == "on" then if getPlayerStorageValue(cid, 10359) >= 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "Your Cast System is already running ONLINE!") return true end castOn(cid) doSendMagicEffect(getThingPos(cid), 39) doPlayerSendTextMessage(cid, 20, "You have activated your Cast System, now others can cast you, to disable this feature, use the parameter '!cast off'.") return true end if param == "off" then if getPlayerStorageValue(cid, 10359) < 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "Your Cast System is already OFFLINE!") return true end castOff(cid) doSendMagicEffect(getThingPos(cid), 39) doPlayerSendTextMessage(cid, 20, "You have disabled your Cast System, from now on no one can watch you, unless you turn on the Cast, using the parameter '!cast on'.") return true end if param == "exit" then if getPlayerStorageValue(cid, 12269) < 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "You no are casting players.") return true end cancelCast(cid) doSendMagicEffect(getThingPos(cid), 39) doPlayerSendTextMessage(cid, 20, "You stopped casting, use the parameter '!cast list' to see who can be casted.") return true end if param == "list" then if #whoCasted() < 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "At this time, no player can be casted, try again later.") return true end doPlayerSendTextMessage(cid, 20, "Players can be casteds:\n\n") for k, v in ipairs(whoCasted()) do doPlayerSendTextMessage(cid, 20, " - "..getCreatureName(v).."") end return true end if not isPlayer(player) then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "This player is offline or does not exist. Use the parameter '!cast list' to see who can be casted.") return true end if getPlayerStorageValue(player, 10359) < 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "You can only cast one person with the Cast System is activated, use the parameter '!cast list' to see who can be assisted.") return true end if getPlayerStorageValue(cid, 10359) >= 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "To cast a player, you must first disable your Cast System using the parameter '!cast off'.") return true end if not getTileInfo(getThingPos(cid)).protection then return doPlayerSendTextMessage(cid, 20, "You need enter in Protection Zone to use the Cast System.") and true end setPlayerStorageValue(cid, 12269, 1) castPlayer(cid, player) doSendMagicEffect(getThingPos(cid), 39) doPlayerSendTextMessage(cid, 20, "You are casting the player "..getCreatureName(player)..", to exit just use the command '!cast exit'.") doPlayerSendTextMessage(player, 20, "You are casted by "..getCreatureName(cid).." player to disable your Cast, simply use the parameter '!cast off'.") return true end function cancelCast(uid) mayNotMove(uid, false) doCreatureSetHideHealth(uid, false) setPlayerStorageValue(uid, 12269, -1) doRemoveCondition(uid, CONDITION_OUTFIT) return doTeleportThing(uid, getTownTemplePosition(getPlayerTown(uid))) or doTeleportThing(uid, getPlayerMasterPos(uid)) and true end function castOn(uid) return setPlayerStorageValue(uid, 10359, 1) and true end function castOff(uid) return setPlayerStorageValue(uid, 10359, -1) and true end function castPlayer(uid, player) if not isPlayer(player) then cancelCast(uid) return true end if getPlayerStorageValue(player, 10359) < 1 then cancelCast(uid) return true end if getPlayerStorageValue(uid, 12269) < 1 then cancelCast(uid) return true end mayNotMove(uid, true) doSetItemOutfit(uid, 1934, -1) doCreatureSetHideHealth(uid, true) doTeleportThing(uid, getThingPos(player)) return addEvent(castPlayer, 1 * 1000, uid, player) and true end function whoCasted() local casteds = {} for _, pid in ipairs(getPlayersOnline()) do if getPlayerStorageValue(pid, 10359) >= 1 then table.insert(casteds, pid) end end return #casteds > 0 and casteds or {} end Volte uma pasta (data/talkaction) abra com algum editor de texto o arquivo talkactions.xml e adicione essa tag em qualquer lugar: <talkaction words="!cast;/cast" event="script" value="castSys.lua"/> Muito bem, após isso siga para a pasta data/creaturescripts/scripts, faça o mesmo, crie um arquivo chamado castSys.lua e adicione isso dentro: function onLogout(cid) if getPlayerStorageValue(cid, 12269) > 0 then doPlayerSendCancel(cid, "To logout, you need to exit the Cast System first. Use the parameter '!cast exit'.") return false end setPlayerStorageValue(cid, 10359, -1) return true end function onStatsChange(cid, attacker, type, combat, value) if not isCreature(cid) then return true end if getPlayerStorageValue(cid, 12269) >= 1 and isMonster(attacker) or isPlayer(attacker) then return false end return true end function onAttack(cid, target) if not isPlayer(cid) or not isPlayer(target) then return true end if getPlayerStorageValue(cid, 12269) > 0 then doRemoveCondition(cid, CONDITION_INFIGHT) return false end return true end Já no arquivo creaturescripts.xml, você vai adicionar essa tag: <event type="attack" name="castAttack" event="script" value="castSys.lua"/> <event type="statschange" name="castHits" event="script" value="castSys.lua"/> <event type="logout" name="castLogout" event="script" value="castSys.lua"/> E no arquivo login.lua você vai adicionar essas 3 linhas: registerCreatureEvent(cid, "castAttack") registerCreatureEvent(cid, "castHits") registerCreatureEvent(cid, "castLogout") Para que o player que está assitindo ao outro não use magias enquanto está assistindo, coloque essas linhas abaixo dentro de cada script das magias, debaixo da linha: function onCastSpell(cid, var) Coloque: if getPlayerStorageValue(cid, 12269) >= 1 then return doPlayerSendCancel(cid, "You is casting, not is possible.") and false end Faça a mesma coisa com as quests, embaixo de: function onUse(cid, item, frompos, item2, topos) Prontinho galera, basta reiniciar o servidor e usar, é isto por hoje, espero que tenham gostado, ideias/sugestões para futuras versões, bugs ou críticas sobre o sistema, basta deixar um simples comentário aí no tópico, estarei aqui para atendê-los. Obrigado pela atenção, façam bom uso.
  14. Roksas

    Exhausted

    Tópico movido para a seção de dúvidas e pedidos resolvidos.
  15. Roksas

    Exhausted

    Bom amigao, farei de uma maneira bem simples, aqui vai: function onUse(cid, item, frompos, item2, topos) local wallPos = {x = 998, y = 995, z = 7, stackpos = 1} local wallRem = getThingFromPos(wallPos) local exhau = 60 local timeBack = 12 if getPlayerStorageValue(cid, 12229) > os.time() then return doPlayerSendCancel(cid, "You are exhausted, wait "..getPlayerStorageValue(cid, 12229) - os.time().." seconds.") and true end if wallRem.itemid == 1054 then doRemoveItem(wallRem.uid, 1) addEvent(doCreateItem, timeBack * 1000, 1054, wallPos) setPlayerStorageValue(cid, 12229, os.time() + exhau) else doPlayerSendCancel(cid, "No have wall in this position.") end return true end Basta configurar as coordenadas (x, y, z) na "primeira" linha do codigo goodlucks.
  16. Seria mais ou menos isso? Va em data/talkactions/scripts, crie um arquivo chamado petCome.lua e adicione dentro: function onSay(cid, words, param) local gainMana = 10000 local monsterS = "Dragon" if getPlayerStorageValue(cid, 13479) > os.time then return doPlayerSendCancel(cid, "Aguarde "..getPlayerStorageValue(cid, 13479) - os.time.." segundos para summonar o PET novamente.") and true end addChakra(cid, gainMana) setPlayerStorageValue(cid, 13479, os.time() + 10) doConvinceCreature(cid, doCreateMonster(monsterS, getThingPos(cid))) return true end function addChakra(uid, chakra) if #getCreatureSummons(cid) < 1 then return true end doCreatureAddMana(uid, chakra) return addEvent(addChakra, 1 * 1000, uid, chakra) and true end Em talkactions.xml adicione: <talkaction words="!pet" event="script" value="petCome.lua"/> Da um reload ou reinicia e fala !pet No inicio do script voce configura quanto de mana e qual monstro sumona.
  17. Nossa, demais mesmo cara, adorei o mapa, esta trazendo o RPG de volta. Obrigado por compartilhar conosco, aprovado!
  18. Boa cara, agora que esta em alta servidores do tipo, isso ajuda muito a dar aquela boa editadinha em seu mapa, obrigado por compartilhar o seu RME com a comunidade do XTibia, o seu download foi aprovado!
  19. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  20. Nossa, legal amigo, bem simples, não precisa baixar nada, sem riscos pois utiliza a linguagem MS-DOS ^^ Obrigado por compartilhar, aprovado!
  21. Agora que percebo, a denúncia confere PostadorHunter, na realidade já existe estas aulas e não são suas TaaG, desculpe mas terei de fechar seu tópico.
  22. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  • Quem Está Navegando   0 membros estão online

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