Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''carvalho''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • 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

Encontrar resultados em...

Encontrar resultados que contenham...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Sou

Encontrado 20 registros

  1. Bom dia / Boa tarde / Boa noite a todos ! Estou a procura de alguns Npc's para meu Server de Pokemon. Estou focado na criação do mapa, que comecei do 0 e por isso gostaria da ajuda de vocês para que eu possa agilizar o maximo possivel. Dei uma vasculhada rápida no forum mas nao encontrei o que eu queria, então, quem puder ajudar, e quem nao puder também, fico agradecido. Peço que nao critiquem, e nem deem respostas com ofensas, afinal, não estou cobrando nada de ninguém, apenas pedindo uma ajuda a quem puder se disponibilizar. Vamos la ! OBS: Server PDA com Level e icon system. 1. Professor Carvalho. Função: - Dar a escolha dos 3 pokemons iniciais (lvl 5) e 10 pokebolas. Obs: Já tenho um no meu server, porém, ele está configurado apenas para definir e teleportar para a cidade inicial. 2. Npc de Batalha Funções: - Duelar 1x por dia com o player. - Pokemon do NPC da Xp para o seu pokemon. - Player so pode usar o numero de pokemons que o Npc possui. - Cobra um valor para batalhar. - Recompensa em dinheiro pela vitória. 3. Líder de Gym (Apenas 1, eu copio e edito os outros) Funções: - Duelar apenas 1x com o player. - Player pode usar todos os seus pokemons. - Cobrar um valor para batalhar. - Recompensa com Insignia. - Ter acesso a uma porta ou teleporte exclusivo apenas depois de vencer. 4. NPC Base para quest de task. Funções: - Matar X quantidade de pokemons selvagens. - Recompensa em dinheiro e xp para o player. 5. NPC Base para Quest de entregar itens. Funções: - NPC pede x itens. - Recompensa em itens. --------------------------------------------------------------------------------------------------//----------------------------------------------------------------------------------------------------- Possuo algumas dúvidas em relação a outras coisas também. Se alguem puder dar alguma dica de como arrumar ou conseguir as coisas abaixo, ficarei agradecido. • Independente do level selvagem do pokemon, meu poke recebe a mesma quantidade de exp. EX: Magikarp(1) - 20 xp Magikarp(5) - 20 xp • Adicionar barra de exp em baixo da barra de vida no pokemon. • Utilizar um sistema que quanto mais leveis o pokemom upe com o player, mais forte ele será. E mostrar a quantidade de leveis upados no look da ball. EX: Caterpie capturado no level 1 e upado até o level 10, será mais forte que um caterpie no level 10. EX BALL: Caterpie(10)[+9] --------------------------------------------------------------------------------------------------//----------------------------------------------------------------------------------------------------- Agradeço a todos pela coompreensão e por tirar um tempinho a ler o post. Qualquer coisa podem entrar em contato direto cmg por uma sala hamachi. Sala thloko, Senha 1234.
  2. 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 :
  3. 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 ><
  4. [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
  5. DuuhCarvalho

    Show off (Duuh)

    Vou mostrar aqui algumas imagens do mapa do meu serve in game. Espero que gostem.. #1 (RME) : #2 #3 #4 É isso comente ... Abraços
  6. 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
  7. DuuhCarvalho

    DuuhCarvalho [Galeria]

    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
  8. 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.
  9. É 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 .
  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"/>
×
×
  • Criar Novo...