Jump to content

Search the Community

Showing results for tags 'duuh'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • xTibia - Notícias e Suporte
    • Regras
    • Noticias
    • Soluções
    • Projetos Patrocinados
    • Tutoriais para Iniciantes
    • Imprensa
  • OTServ
    • Notícias e Debates
    • OTServlist
    • Downloads
    • Recursos
    • Suporte
    • Pedidos
    • Show-Off
    • Tutoriais
  • OFF-Topic
    • Barzinho do Éks
    • Design
    • Informática

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Sou

Found 20 results

  1. Movements, são scripts que são executados após um Player * Passar por cima, Sair de cima, Equipar item, Desequipar item, Adicionar item, Remover item* Para isso existe algumas funções : function onEquip(cid, item, slot) -- Ao equiparfunction onDeEquip(cid, item, slot) -- Ao desequiparfunction onStepOut(cid, item, pos) -- Ao sair de cimafunction onStepIn(cid, item, pos) -- Ao pisar em cimafunction onAddItem(moveitem, tileitem, pos) -- Ao adicionar itemfunction onRemoveItem(moveitem, tileitem, pos) -- Ao remover item Exemplo de script com função : onEquip e onDeEquip ... Exemplo de script com função: onStepIn e onStepOut ... Para cria um novo script em movements, vá em data / movements / scripts , e crie um novo arquivo.lua depois é so colocar a tag em data / movements.xml . algumas funções get , set , do .. get : set : do :
  2. Hunter Baiak 2.0 Baiak totalmente editado, e com sistema exclusivo. Novos monsters. Novas áreas. Com Apenas uma Vip Que dar Acesso a 2 áreas. Área Free Para Players level 200 ou mais. Novos items. Novas Quests. Foram Removidos todos os arquivos inúteis. Removido todos os erros e bugs . e Muito Mais... Para se tornar Vip, Fazer quest vip Localizada no Templo. (Quest Vip *Nova*, que ganha também Set Wanted 2º melhor do Ot). Área Free Para Players level 200 ou + , totalmente editada . (Agora com Quest Para ganhar item Vip, localizada nos teleports). Aréa Hunter Vip editada. (Com 2 salas de teleportes, e com Quest Nova para Ganhar Set Spanker ( Melhor do Ot ) ), (Também com Npc que Vende acesso a segunda Área Hunter Vip.. também localizada no Templo). Templo totalmente Editado (Agora com npc's localizados em cima do templo), (Localiza-se também no templo o Evento Imperador). Distro totalmente Limpa ( Não tem 1 Erro ). Evento Imperador * Torne-se o Imperador e terá acesso a áreas Exclusivas e ganhe 50% a mais de EXP . Outros Players Tomarão seu Império. (Recupere-o) Claro que Você pode criar mais áreas , items , spells .. é só usar a função : if getPlayerStorageValue(cid, 48828) >= 1 then Área ilustrativa Templo : Templo Area Para Players Level 200 + , e templo Hunter Vip : Área Vip Hunter 2 : Final das Quests { ( Set Vip ) , (Hunter Vip Quest) e (Set Spanker) } ... é isso ! para melhor funcionamento recomendo mysql. database na pasta do ot.. ​alguns antivírus podem acusar viros, pelo fato de não reconhecer o arquivo Gostou ? Rep ><
  3. [talkactions] Bom, o titulo já diz tudo, você muda o nome de um certo player. /rn Nome do Player, Novo Nome, tempo para o player ser kickado(em segundos). Exemplo : /rn Duuh, Duuh Carvalho, 5 Simples, porem útil. Vá em data / talkactions / scripts. cria um arquivo lua e cola isso dentro : Coloque a tag em data / talkactions / talkactions.xml : <talkaction log="yes" words="/rn" access="4" event="script" value="NomeDoArquivo.lua"/> Simples
  4. Vou mostrar aqui algumas imagens do mapa do meu serve in game. Espero que gostem.. #1 (RME) : #2 #3 #4 É isso comente ... Abraços
  5. Fiz esse script a pedido do querido Kluivert. o titulo já diz tudo você cria um item com descrição . é muito simples , mais é bem útil para eventos premiações manualmente de eventos. Exemplo : /d 5785, Medalha Ganha no #1 AMA -- exemplo. Vá em data / talkactions / scripts. cria um arquivo lua e cola isso dentro : Coloque a tag em data / talkactions / talkactions.xml : <talkaction log="yes" words="/d" access="4" event="script" value="NomeDoArquivo.lua"/> Bem Simples
  6. Bom não sou Designer , mais sou um grande fã de quem é ! Quero muito aprender, acho tudo muito lindo *--*. Estou estudando(treinando) bastante. Nesse tópico estarei mostrando todo os meus "trabalhos". Cometem.. Deixe suas criticas, pois são elas que vão me ajudar. Sempre que possível estarei atualizando o tópico. Minhas primeiras : (01/04/2014) #Wallpapers (1366x768) #1 #2 Fiz essa do Xtibia mais não gostei ;/ #Assinaturas (500x200) #1 É isso, Abraços
  7. O system item summon funciona assim: Ao dar use em 'X' item, no caso eu use o item : , Você summona uma criatura aleatoriamente. E ao dar use Novamente você remove a criatura . vá em data / actions / scripts... Crie um arquivo.lua e cole isso dentro : local monsters = {"Demon", "Rat", "Orc", "Medusa", "Dragon", "Ferumbras"} -- todos os monsters que podem ser summonados. local time = 1 -- tempo em minutos para usar o item novamente. local storage = 10923 -- storage qualquer, que não esteja em uso. function onUse(cid, Item, fromPosition, itemEx, toPosition) local pos = getCreaturePosition(cid) local summon = getCreatureSummons(cid) if (table.maxn(summon) < 1) then if getPlayerStorageValue(cid, storage) - os.time() <= 0 then local mst = monsters[math.random(#monsters)] doConvinceCreature(cid, doCreateMonster(monsters[math.random(#monsters)], pos)) doPlayerSendTextMessage(cid, 22, "Você summonou uma Criatura!") setPlayerStorageValue(cid, storage, os.time() + time*60) for _, pid in ipairs (getCreatureSummons(cid)) do doSendMagicEffect(getCreaturePosition(pid), 15) doCreatureSay(pid, "Vou Te Ajudar", TALKTYPE_ORANGE_1) end else doPlayerSendCancel(cid, "Você só pode usar esse item a cada "..time.." Minuto(s).") end elseif (table.maxn(summon) > 0) then for _, pid in ipairs(getCreatureSummons(cid)) do doCreatureSay(pid, "Tchau", TALKTYPE_ORANGE_1) doSendMagicEffect(getCreaturePosition(pid), 2) doRemoveCreature(pid) end doPlayerSendTextMessage(cid, 22, "Você Removeu A Criatura.") end return true end obs: tudo que você deve configurar , está explicado no script. Agora vá em data / actions / actions.xml... e coloque a tag : <action itemid="4870" script="Nome do Arquivo.lua" /> -- itemid = Id do item, no caso ta o item que mostrei no inicio. Demonstração em Imagens : Simples, porém útil . Sem sono e no tédio saiu isso Abraços.
  8. É um item que ao usar troca o seu health com o health da criatura . Ex : Ta quase morrendo da use no item e será curado de acordo com o health da criatura. A criatura perderá life de acordo com seu health. Simples , porém útil ! obs: Ao dar use no item o mesmo será removido! Não terá de usar o item na criatura. Apenas der USE . Vá em data / actions / scripts. Cria um Arquivo.lua e coloca isso dentro : function onUse(cid, item, frompos, item2, topos) target = getCreatureTarget(cid) if target > 0 then local life = getCreatureMaxHealth(target) if isMonster(target) then doCreatureAddHealth(cid, life) doSendMagicEffect(getCreaturePosition(cid), 28) doCreatureAddHealth(target, -getCreatureMaxHealth(cid)) doRemoveItem(item.uid, 1) else doPlayerSendCancel(cid, "O Item só funciona com Monster.") doSendMagicEffect(getCreaturePosition(cid), 2) end else doPlayerSendCancel(cid, "Você não está atacando nenhum Monster.") doSendMagicEffect(getCreaturePosition(cid), 2) end return true end E em actions.xml cole a tag : <action itemid="IdDoItem" script="NomedoArquivo.lua"/> É isso.. Espero que seja útil para você ! comentem . esqueci... o player tem que está atacando o monster .
  9. dando uma de designer .. e muito ruim 'rs Mais : . é isso por enquanto , resolvi aprender , pq estou com um projeto em mente.. mais para isso preciso da ajuda de você .. (Critica!)
  10. Com a Potion multi healing você cura todos os players com profissões diferentes ! bom , eu usei a potion com id 8474 " " você escolhe a cura de cada profissão .. Ex : Se você quer que druid cure mana é so coloca mana no script mais se você quer que cure life é so colocar health no script .. assim com todas as profissões ! chega de blablabla ... vá em data / actions / scripts e crie um arquivo lua com o nome : potion_multi_healing.lua.. e cole isso dentro : function onUse(cid, item, fromPosition, itemEx, toPosition) local sorc = {tipo = 'mana', min = 100, max = 200} -- tipo = tipo de cura 'mana' ou 'health'... local druid = {tipo = 'mana', min = 100, max = 200} -- min = minimo que vai curar... local pala = {tipo = 'health', min = 300, max = 400} -- max = máximo que vai curar... local kina = {tipo = 'health', min = 400, max = 600} -- configure todos com sua preferência. local storage = 12390 -- uma storage qualquer .. local time = 2 -- tempo em segundos para usar a potion novamente .. if isPlayer(itemEx.uid) then if getPlayerStorageValue(cid, storage) - os.time() <= 0 then if getPlayerVocation(itemEx.uid) == 1 then if sorc.tipo == 'mana' then doCreatureAddMana(itemEx.uid, math.random(sorc.min, sorc.max)) doSendMagicEffect(getCreaturePosition(itemEx.uid), 12) doCreatureSay(itemEx.uid, "Sobe Mana!", TALKTYPE_ORANGE_1) elseif sorc.tipo == 'health' then doCreatureAddHealth(itemEx.uid, math.random(sorc.min, sorc.max)) doSendMagicEffect(getCreaturePosition(itemEx.uid), 13) doCreatureSay(itemEx.uid, "Sobe Life!", TALKTYPE_ORANGE_1) end setPlayerStorageValue(cid, storage, os.time()+time*1) elseif getPlayerVocation(itemEx.uid) == 2 then if druid.tipo == 'mana' then doCreatureAddMana(itemEx.uid, math.random(druid.min, druid.max)) doSendMagicEffect(getCreaturePosition(itemEx.uid), 12) doCreatureSay(itemEx.uid, "Sobe Mana!", TALKTYPE_ORANGE_1) elseif druid.tipo == 'health' then doCreatureAddHealth(itemEx.uid, math.random(druid.min, druid.max)) doSendMagicEffect(getCreaturePosition(itemEx.uid), 1) doCreatureSay(itemEx.uid, "Sobe Life!", TALKTYPE_ORANGE_1) end setPlayerStorageValue(cid, storage, os.time()+time*1) elseif getPlayerVocation(itemEx.uid) == 3 then if pala.tipo == 'mana' then doCreatureAddMana(itemEx.uid, math.random(pala.min, pala.max)) doSendMagicEffect(getCreaturePosition(itemEx.uid), 12) doCreatureSay(itemEx.uid, "Sobe Mana!", TALKTYPE_ORANGE_1) elseif pala.tipo == 'health' then doCreatureAddHealth(itemEx.uid, math.random(pala.min, pala.max)) doSendMagicEffect(getCreaturePosition(itemEx.uid), 13) doCreatureSay(itemEx.uid, "Sobe Life!", TALKTYPE_ORANGE_1) end setPlayerStorageValue(cid, storage, os.time()+time*1) elseif getPlayerVocation(cid) == 4 then if kina.tipo == 'mana' then doCreatureAddMana(itemEx.uid, math.random(kina.min, kina.max)) doSendMagicEffect(getCreaturePosition(itemEx.uid), 12) doCreatureSay(itemEx.uid, "Sobe Mana!", TALKTYPE_ORANGE_1) elseif kina.tipo == 'health' then doCreatureAddHealth(itemEx.uid, math.random(kina.min, kina.max)) doSendMagicEffect(getCreaturePosition(itemEx.uid), 13) doCreatureSay(itemEx.uid, "Sobe Life!", TALKTYPE_ORANGE_1) end setPlayerStorageValue(cid, storage, os.time()+time*1) else doPlayerSendCancel(cid, "Apenas Sorceres, Druids, Paladins e Knight podem Usar essa Potion!") end else doPlayerSendCancel(cid, "Você só pode usar essa potion a cada "..time.." segundos!") end else doPlayerSendCancel(cid, "Você só pode usar a potion em players.") end return true end agora vá em data / actions / actions.xml ... e coloque a tag : <action itemid="8474" script="potion_multi_healing.lua" /> É isso pessoal ! script criado para competição o melhor script. participem : http://www.xtibia.com/forum/topic/229900-o-melhor-script-8-inscricoes/
  11. Creaturescripts, são scripts executados ao * logar, atacar , morrer, matar, etc.. * Funções usadas para começar um script em Creaturescripts: onLogin(cid) -- Ao logar. onLogout(cid) -- Ao deslogar. onAdvance(cid, skill, oldLevel, newLevel) -- Ao upar. onStatsChange(cid, attacker, type, combat, value) -- Ao peder ou ganhar life, mana ou condições. onDirection(cid, old, current) -- não sei. onOutfit(cid, old, current) -- Não sei. (creio que ao usar outfit).. onSendMail(cid, receiver, item, openBox) -- Ao enviar carta. onReceiveMail(cid, sender, item, openBox) -- Ao receber uma carta. onTradeRequest(cid, target, item) -- Ao dar trade. onTradeAccept(cid, target, item, targetItem) -- ao aceitar trade. onJoinChannel(cid, channel, users) -- Ao entrar em um chat. onLeaveChannel (cid, channel, users) -- Ao sair do chat. onLook(cid, thing, position, lookDistance) -- Ao dar look onThink(cid, interval) -- Executado em Determinado tempo. onTextEdit(cid, item, newText) -- Ao escrever em item (book) onReportBug(cid, comment) -- ao Reportar bug. onAreaCombat(cid, tileItem, tilePosition, isAggressive) onPush(cid, target) -- Ao puxar. (criatura) onTarget(cid, target) -- Não sei (creio que ao seguir ou atacar) onFollow(cid, target) -- Ao seguir. (acompanhar) onCombat(cid, target) -- Parecido com onAttack. (qualquer tipo de ataque) onAttack(cid, target) -- Ao Atacar. onCast(cid, target) -- Ao lançar feitiço ou runa . onKill(cid, target, lastHit) -- Ao matar. onDeath(cid, corpse, deathList) -- Ao morrer. onPrepareDeath(cid, deathList) -- Antes de morrer. Exemplos de Scripts : onPrepareDeath: function onPrepareDeath(cid, lastHitKiller, mostDamageKiller) if (getCreatureSkullType(cid) >= 4) then if (getPlayerSlotItem(cid, CONST_SLOT_NECKLACE).itemid == 7890) then doCreatureSetDropLoot(cid, false) end return true end return true end Antes de morrer (quanto estiver morrendo) Se estiver com skull maior ou igual a 4 então se estiver usando o item 7890 então o player não vai perder loot ao morrer. onAdvance: function onAdvance(cid, skill, oldLevel, newLevel) if getPlayerLevel(cid) >= 200 then if getPlayerStorageValue(cid, 12345) <= 0 then doPlayerAddItem(cid, 2160, 100) doPlayerSendTextMessage(cid, 22, "Parabéns, você atingiu level 200 e ganhou 1kk de bonus!") doSendMagicEffect(getCreaturePosition(cid), 11) setPlayerStorageValue(cid, 12345, 1) end end return true end Ao upar level 200 então Se a storage 12345 do player for menor ou igual a 0 então Adicionar 100 itens com id 2160 ao player ( adiciona 1kk ao player) Manda uma mensagem "Parabéns, você atingiu level 200 e ganhou 1kk de bonus" Mandar efeito 11 na posição do player Mudar valor da storage 12345 para 1. onLogin: function onLogin(cid) doPlayerSendTextMessage(cid, 22, "Bem Vindo!") return true end Ao logar Mandar mensagem "Bem Vindo" ao player. onDeath: function onDeath(cid, corpse, killer) local name = "Demon" if isMonster(killer[1]) and isPlayer(cid) and getCreatureName(killer[1]) == name then doRemoveCreature(killer[1]) end return true end Ao morrer Se quem matou foi um monster e quem morreu foi um player, e o nome do monster que matou foi "Demon" então Remover o monster ("Demon") (scrip by Zipter) onKill: function onKill(cid, target, lastHit) if isPlayer(cid) and isPlayer(target) then doPlayerAddItem(cid, 2160, 20) end return true end Ao matar Se foi um player que matou outro player então adicionar 20 crystal coins(id 2160) ao player que matou Para adicionar seu script ao server: 1ª Vá em data / creaturescripts / script, crie um Arquivo.lua e cole seu script dentro. 2ª Adicione a tag: em creaturescripts.Xml.. <event type="preparedeath" name="forever amulet" event="script" value="aol.lua"/> Type = o tipo de função kill, death, login, preparedeath, joinchannel, reportbug, think ... name = Nome do Evento valu = Nome do Arquivo.lua 3ª adicione a tag : em data/creaturescripts/scripts/login.lua.. (obs: se seu script for de função onLogin não precisa adicionar essa tag) registerCreatureEvent(cid, "forever amulet") Entre " " , coloca o nome do Evento (o mesmo que você colocou em creaturescripts.Xml. É isso pessoal ! Não usei exemplo de todas as funções porque são muitas !
  12. Já respondeu a enquete? Então comente.. Qual o motivo da sua escolha ? ​Será mesmo necessário teleportes para hunts, ou é melhor um server mais "Aventureiro". Dê sua opinião ! e respeite a opinião do "Próximo". Percebi agora que não estava dando pra responder ao tópico ! rs Crie o tópico pra saber a opinião de vocês sobre o assunto, porque estou trabalhando em um projeto. quem respondeu por favor comenta ><
  13. O script é funciona assim .. Ao jogar X item no chão , e falar a magia. Ex: eu usei o item '' ao jogar esse item no chão e falar " Vai Loko " . obs : " 'Vai Loko ' foi a palavra que usei você pode escolher a sua" Ao fazer isso o item se transformará em um monster (aleatoriamente) . E logo depois o mesmo ira explodir. Isso mesmo , o monster vai explodir e causar um dano (min..max) em que estiver perto, exceto no próprio player. chega de papo! vá em data / spells / summon. cria um arquivo.lua com o nome ( monster_bomb.lua ), e cola isso dentro : obs: todas as explicações estão no próprio script. --[[script by DuuhCarvalho]]-- function onTargetTile(cid, pos) local monsters = { -- os monstro que podem ser sumonados. [0] = {monster = 'Skeleton', chance = 10}, -- cada monster tem uma chance de ser sumonado. [1] = {monster = 'Rat', chance = 30}, [2] = {monster = 'Orc', chance = 50}, [3] = {monster = 'Dragon', chance = 70}, [4] = {monster = 'Wolf', chance = 100}, } local getPos = pos getPos.stackpos = STACKPOS_TOP_MOVEABLE_ITEM_OR_CREATURE local time1 = 1 -- templo em minutos para usar a magia denovo. local itemId = 2193 -- id do item que precisa está no chão. local storage = 123654 -- storage . local dmgMin = 100 -- dano minimo da explosão. local dmgMax = 400 -- dano maximo da explosão. local time = 2 -- tempo em segundos para o monster explodir. function bomb() local areaa = pos.x * 4 and pos.y * 3 for _, pid in ipairs(getCreatureSummons(cid)) do doAreaCombatHealth(cid, COMBAT_FIREDAMAGE, getCreaturePosition(pid), areaa, -dmgMin, -dmgMax, CONST_ME_FIREAREA) doRemoveCreature(pid) end return true end local item = getThingFromPos(getPos) if item.itemid == itemId and item.uid > 0 and isMoveable(item.uid) then if getPlayerStorageValue(cid, storage) - os.time() <= 0 then for i = 0, #monsters do if (monsters[i].chance > math.random(1, 100)) then doConvinceCreature(cid, doCreateMonster(monsters[i].monster, pos)) doRemoveItem(item.uid) doSendMagicEffect(pos, CONST_ME_MAGIC_BLUE) setPlayerStorageValue(cid, storage, os.time()+time1*1*60) addEvent(bomb, time*1000) return true end end else doPlayerSendCancel(cid, "Você já tem um Monster Bomb, ou usou um a pouco tempo!") end end return false end local area, combat = createCombatArea(AREA_CIRCLE3X3), createCombatObject() setCombatArea(combat, area) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE) setCombatCallback(combat, CALLBACK_PARAM_TARGETTILE, "onTargetTile") function onCastSpell(cid, var) return doCombat(cid, combat, var) end agora vá em data / spells / spells.Xml.. e coloca a seguinte tag : <instant name="Bin Laden" words="PalavraMagica" lvl="30" mana="500" prem="0" exhaustion="1000" needlearn="0" event="script" value="summon/monster_bomb.lua"> <vocation id="1"/> <vocation id="5"/> </instant> words="PalavraMagica" ... coloca o que o player tem que falar para executa a magia É isso pessoal !
  14. Talkactions, são scripts que são executados * ao falar . Função : function onSay(cid, words, param) -- ao falar . Valores de Armazenamento: (Não tem que Editar). cid = Jogar que está falando . words = palavras faladas . param = parâmetros . Exemplo de Script : onSay . function onSay(cid, words, param) if doPlayerRemoveMoney(cid, 10000) == TRUE then doPlayerAddItem(cid, 2173, 1) doSendMagicEffect(getCreaturePosition(cid), 28) else doPlayerSendCancel(cid, "Você não tem dinheiro suficiente.") doSendMagicEffect(getCreaturePosition(cid), 2) end return true end Entendendo... Ao falar "Algo" definido em talkactions.Xml. verificar se o Player tem Money , 10000 (1 crystal coin). Se for verdadeiro (se remover o money do player) então Adicionar o 1 item 2173 ao player . e mandar magic effect 28 na posição do player. se não (se não remover 1 crystal coin do player) então.. Mandar mensagem ao player falando ("Você não tem dinheiro suficiente.") e mandar magic effect 2 na posição do player. finaliza . Tag : <talkaction words="!PalavraQueoPlayerTemQueFalar" script="NomeDoArquivo.lua"/> Para criar um novo Script, vá em data / talkactions / scripts. Cria um novo Arquivo.lua e coloca seu script dentro. Depois é só colocar a tag em talkactions.Xml . Algumas funções get, set, do .. Aqui.
  15. Actions, são scripts que são executado quando o Player * dar Use ou Use With * em algum item . Funções usadas para começar um script em Actions : function onUse(cid, item, frompos, item2, topos) -- Ao dar Use no item . function onUse(cid, item, fromPosition, itemEx, toPosition) -- ao dar Use with .. (Usar o item em algo) Valores de Armazenamento : (Você não tem que configurar) cid = Player que está usando o item. item = Item que está usando . fromPosition = Posição que to usando o item. toPosition = Para posição itemEx = Se o Personagem está usando o item em algo . (contém dados de "algo") Exemplo de Script : onUse . function onUse(cid, item, frompos, item2, topos) local level = 100 local pos = {x= 160, y= 54, z= 7} if getPlayerLevel(cid) >= level then doTeleportThing(cid, pos) else doPlayerSendTextMessage(cid, "Você precisa ter Level "..level.." ou mais.", 22) end return TRUE end Entendendo... Ao dar use no item. (definido em Action.Xml) Se o Player(cid) tiver level maior ou igual a 100 então o mesmo será teleportado para posicão X (no caso 160, 54, 7) . Tag em Actions.Xml : <action itemid="IDdoItem" script="NomedoArquivo.lua" /> Script com itemEx . function onUse(cid, item, fromPosition, itemEx, toPosition) local pos = {x= 160,y= 54,z= 7} if itemEx.itemid == 7131 then doTeleportThing(cid, pos) else doPlayerSendCancel(cid, "Você está usando o item no Lugar Errado") end return TRUE end Entendendo ... O item com use with será definido em Actions.Xml . Ao usar o item (item com use with) em algo . Se "algo" (itemEx.itemid) for 7131.. Se o Player tiver usando o item(com use with) no item 7131 então , o Player será teleportado para posição X. Tag em Actions.Xml: <action itemid="IDdoItem" script="NomedoArquivo.lua" /> IDdoItem = Item com use With . Para criar um novo script vá em data / actions / scripts e crie um novo Arquivo.lua Depois é so colocar a tag em data / actions / Action.Xml. Algumas Funções get, set, do ... Você encontra Aqui ! .
  16. Spells, são magias , servem pra curar, atacar, e tem também tem as que dão suporte . Função : function onCastSpell(cid, var) -- função da magia. Exemplo de script : local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_BIGCLOUDS) setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 5, 12) local area = createCombatArea(AREA_CROSS6X6) setCombatArea(combat, area) function onCastSpell(cid, var) return doCombat(cid, combat, var) end Entendendo : Exemplo de Spell : Healing e Suporte . (Use Como Base) Healing : Suporte : Efeitos : COMBAT_ : CONDITION_ (condições) É isso pessoal
  17. Criei esse script pra mim usar no meu ot, mais resolvi compartilhar com quem deseja. Muito simples, mais tem muita gente que precisa. primeiro vá em data / creaturescripts / scripts .. Apaga o arquivo firstitems.lua. e remova a tag em creaturescripts.xml ... <event type="login" name="FirstItems" event="script" value="firstitems.lua"/> Vamos para o script... vá em data / movements / scripts. cria um arquivo.lua e coloca isso dentro: --[[ Script by DuuhCarvalho ]]-- function onStepIn(cid, item, pos) local items = { [0] = {id = 2160, count = 20}, -- crystal coins [1] = {id = 7618, count = 20}, -- health potions [2] = {id = 7620, count = 20}, -- mana potions [3] = {id = 2554, count = 1}, -- shovel [4] = {id = 2120, count = 1}, -- rope [5] = {id = 2460, count = 1}, -- brass helmet [6] = {id = 2465, count = 1}, -- brass armor [7] = {id = 2478, count = 1}, -- brass legs [8] = {id = 2525, count = 1}, -- dwarven shield [9] = {id = 2643, count = 1}, -- leather boots } local storage = 1010 local pos = {x=292, y=161, z=7} -- posição para onde o player será teleportado local bpId = 1988 -- id da backpack if getPlayerStorageValue(cid, storage) <= 0 then if getPlayerVocation(cid) == 1 then -- vocação id 1 (master sorcerer) if getPlayerFreeCap(cid) >= 373 then local bp = doPlayerAddItem(cid, bpId, 1) for i = 0, #items do doAddContainerItem(bp, items[i].id, items[i].count) end doPlayerAddItem(cid, 2190, 1) -- Wand . doTeleportThing(cid, pos) setPlayerStorageValue(cid, storage, 1) else doPlayerSendCancel(cid, "Você não tem capacidade, remova algum item da sua BackPack.") end elseif getPlayerVocation(cid) == 2 then -- vocação id 2 (elder druid) if getPlayerFreeCap(cid) >= 397 then local bp = doPlayerAddItem(cid, bpId, 1) for i = 0, #items do doAddContainerItem(bp, items[i].id, items[i].count) end doPlayerAddItem(cid, 2182, 1) -- Rod. doTeleportThing(cid, pos) setPlayerStorageValue(cid, storage, 1) else doPlayerSendCancel(cid, "Você não tem capacidade, remova algum item da sua BackPack.") end elseif getPlayerVocation(cid) == 3 then -- vocação id 3 (royal paladin) if getPlayerFreeCap(cid) >= 359 then local bp = doPlayerAddItem(cid, bpId, 1) for i = 0, #items do doAddContainerItem(bp, items[i].id, items[i].count) end doPlayerAddItem(cid, 2410, 1) -- item de distance (no caso, throwing knife) doTeleportThing(cid, pos) setPlayerStorageValue(cid, storage, 1) else doPlayerSendCancel(cid, "Você não tem capacidade, remova algum item da sua BackPack.") end elseif getPlayerVocation(cid) == 4 then -- vocação id 4 (elite knight) if getPlayerFreeCap(cid) >= 377 then local bp = doPlayerAddItem(cid, bpId, 1) for i = 0, #items do doAddContainerItem(bp, items[i].id, items[i].count) end doPlayerAddItem(cid, 2392, 1) -- sword, axe ou club doTeleportThing(cid, pos) setPlayerStorageValue(cid, storage, 1) else doPlayerSendCancel(cid, "Você não tem capacidade, remova algum item da sua BackPack.") end end else doPlayerSendCancel(cid, "Você já ganhou seus items.") end return true end agora vá em data / movements / movements.Xml.. e coloque a tag : <movevent type="StepIn" uniqueid="UniqueId" event="script" value="NomedoArquivo.lua"/> uniqueid ="coloca qualquer um que não esteja sendo usado". Agora é só abrir o RME e colocar o uniqueid no teleporte ou tile ! Bem simples mais compartilhei na intenção de ajudar os iniciantes.
  18. Bom, eu usei "Estátua" no titulo, mais pode ser qualquer coisa . Ex : Parede, Pedra ... Ao falar "Algo" a estátua será removida, mais o player tem que está em X posição . (posição configurável) .. Agora chega de papo.. vá em data / talkaction / script .. cria um arquivo.lua , e coloca isso dentro : function onSay(cid, words, param) local second = 10 -- Tempo para a estátua aparecer denovo, em segundos. local trapPos = {x=159, y=55, z=7, stackpos = 1} -- posição da estátua local trap = getThingFromPos(trapPos) local trapId = 3739 -- id da estátua . local player = {x=160, y=54, z=7} -- posição que o player deve estar. function create() doCreateItem(trapId, 1, trapPos) doSendMagicEffect(trapPos, 6) return true end if getThingPos(cid).x ~= player.x or getThingPos(cid).y ~= player.y or getThingPos(cid).z ~= player.z then return doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você não pode utilizar este comando fora do SQM correto.") end if trap.itemid == trapId then doRemoveItem(trap.uid, 1) doSendMagicEffect(trapPos, 2) addEvent(create, second*1000) end return true end Agora vá em data / talkaction / talkaction.xml e coloca a tag .. <talkaction words="abra-te" script="NomeDoArquivo.lua"/> words = "abra-te" (coloca o que o player tem que falar) é isso .
  19. ​Sabe quando um player te trapa e não tem escapatória, Aqui a solução . Ao usar x item no Player Você troca de Posição com Ele . ​Claro que também não pode dar moleza pra quem foi traped . Você só pode usar o item a cada X minutos. E você só pode usar o item se não tiver com Skull. vamos lá .. em data / actions / scripts, crie um arquivo.lua e cole isso dentro : function onUse(cid, item, fromPosition, itemEx, toPosition) local time = 1 -- tempo por minuto local storage = 1961 -- storage local pos = getCreaturePosition(cid) local pos2 = getCreaturePosition(itemEx.uid) if isPlayer(itemEx.uid) then if getDistanceBetween(pos, pos2) == 1 then if getPlayerStorageValue(cid, storage) - os.time() <= 0 then if getCreatureSkullType(cid) == SKULL_NONE then doTeleportThing(cid, pos2) doTeleportThing(itemEx.uid, pos) doSendMagicEffect(pos, 4) doSendMagicEffect(pos2, 4) setPlayerStorageValue(cid, storage, os.time()+time*1*60) else doPlayerSendCancel(cid, "Você está com Skull.") end else doPlayerSendCancel(cid, "Você só pode usar esse item denovo a "..time.." Minutos.") end else doPlayerSendCancel(cid, "Você está muito longe do jogador.") end else doPlayerSendCancel(cid, "Você só pode usar este item em Players.") end return TRUE end e em Actions.xml coloque a tag : <action itemid="IDdoItem" script="NomeDoArquivo.lua"/>
×
×
  • Create New...