Ir para conteúdo

DuuhCarvalho

Conde
  • Total de itens

    988
  • Registro em

  • Última visita

  • Dias Ganhos

    22

Tudo que DuuhCarvalho postou

  1. 2ª função: local target = getCreatureTarget(cid) local health = 100 doCreatureAddHealth(target, -health) a primeira não entendi .
  2. Aqui ocorre a explosão de boa.. creio que o membro shoguns também testou e não ocorreu esse erro , se não ele teria comentado ! bom vamos conversar no privado e te ajudo a resolver ! Algumas imagens : Bin Laden System 2.0
  3. Bin Laden System Para quem já viu o Bin Laden System, o 2.0 não é muito diferente . Agora não é mais por item... Você fala " Vai " o monster é sumonado! Depois você fala " Agora " e o monster Explode . segue o video : https://www.youtube.com/watch?v=PSY15xkpkA4 Colocando o script no seu server : vá em data / spells / scripts / summon.. e cria um arquivo.lua com o nome ( monster_bomb ) e cola isso dentro : 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 time = 1 -- tempo para usar a magia novamente. local storage = 123654 -- storage. function onCastSpell(cid, var) local player = getCreaturePosition(cid) if getPlayerStorageValue(cid, storage) - os.time() <= 0 then for i = 0, #monsters do if (monsters[i].chance > math.random(1, 100)) then local creature = doCreateMonster(monsters[i].monster, player) doConvinceCreature(cid, creature) doSendMagicEffect(player, CONST_ME_MAGIC_BLUE) setPlayerStorageValue(cid, storage, os.time()+time*1*60) return true end end else doPlayerSendCancel(cid, "Você já tem um Monster Equipado com Bomba.") end return true end Agora também em script / summon crie outro arquivo.lua com o nome ( monster_bomb_explosion ).. e cole isso dentro : local min = 100 -- dano minimo. local max = 500 -- dano máximo. local areaa = createCombatArea { -- Área da explosão. {1, 1, 1, 1, 1}, {1, 1, 1, 1, 1}, {1, 1, 3, 1, 1}, {1, 1, 1, 1, 1}, {1, 1, 1, 1, 1} } local storage = 123654 -- A mesma storage do script anterior. function onCastSpell(cid, var) if getPlayerStorageValue(cid, storage) - os.time() >= 0 then for _, pid in ipairs(getCreatureSummons(cid)) do doAreaCombatHealth(cid, COMBAT_FIREDAMAGE, getCreaturePosition(pid), areaa, -min, -max, CONST_ME_FIREAREA) doRemoveCreature(pid) end end return true end tags que vai em spells.Xml: <instant name="Bin Laden" words="Vai" lvl="30" mana="500" prem="0" exhaustion="1965" needlearn="0" event="script" value="summon/monster_bomb.lua"> <vocation id="1"/> <vocation id="5"/> </instant> <instant name="Bin Laden Bomb" words="Agora" lvl="30" mana="500" prem="0" exhaustion="1965" needlearn="0" event="script" value="summon/monster_bomb_explosion.lua"> <vocation id="1"/> <vocation id="5"/> </instant> name = Nome da spell. lvl = level que pode usar. mana = o quando te mana que consome . value = nome do arquivo.lua, como ta na pasta summon primeiro vai "summon/ nome do arquivo.lua" vocation id = id da vocação que pode usar a spell. É isso pessoal.
  4. tenta mudar a área , vá em data / spells / lib abre o arquivo spells.lua e ver as áreas que tem
  5. local area ta 2 areas deixa apenas uma ex: local area = createCombatArea(AREA_BEAM5)
  6. DuuhCarvalho

    Quest

    sim coloca só em uniqueid se não der certo , tente usar 2 tag em actions.Xml <action uniqueid="1919" script="QuestHpSpeed.lua"/> <action uniqueid="2323" script="QuestHpSpeed.lua"/>
  7. DuuhCarvalho

    Erro Npc Quest

    coloca pro npc fazer a checagem antes de remover !
  8. DuuhCarvalho

    Quest

    dar algum erro quando você dar use ? no RME coloque a uniqueid apenas em uniqueID e não em ActionID. lembrando que tá a mesma storage o player so pode pegar a recompensa de 1 báu , tem que escolher ! acabei de ver que você usou um Ctrl c, Ctrl V na posição , pesquise por isso no script do bau 1.. doTeleportThing(cid, pos) e coloque isso : doTeleportThing(cid, pos1)
  9. o erro ocorre porque tem 2 áreas definidas no script , deixe apenas uma ! local area = createCombatArea(AREA_BEAM5, AREADIAGONAL_BEAM5)
  10. Boa ! continue assim trazendo ótimos conteúdos pro fórum.
  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. esse erro ocorre quando não foi localizado o arquivo.lua que você colocou na tag em spells.Xml ex: se o nome do arquivo.lua em spells/summon for monster_bomb.lua a tag em spells.xml ficará : value="summon/monster_bomb.lua">
  13. Você me tem, de um jeitinho que ninguém nunca me teve.
  14. Bom no meu ot não aconteceu isso , mais depois vejo isso pra você , agora to sem tempo. obrigado pessoal >< . Shoguns ja tentou colocar doRemoveItem(item.uid, 1) ? não sei se vai funfar, e também tiver que formatar o notebook agora tenho que instalar tudo de novo e to sem tempo tenta ae ... Este tópico já foi visualizado por 53 usuário(s) legal espero que muita gente use !
  15. DuuhCarvalho

    Quest

    <action uniqueid="1111;2222" script="Nome do Arquivo.lua"/> se você coloca por exemplo uniqueId 1010 no báu 1 do script e 2020 no baú 2 do script você você coloca 1010;2020 na tag e coloca a uniqueid que você colocou no script do baú 1 no rme e a uniqueid do baú 2 no outro baú .
  16. DuuhCarvalho

    Quest

    coloca o script em data / action / scripts e a tag em actions.xml '-'
  17. DuuhCarvalho

    Quest

    -- baú 1 function onUse(cid, item, frompos, item2, topos) local uniqueId1 = 1111 -- unique id do baú 1 local storage = 1015 -- storage local item = XXXX -- item que vai ganhar no baú 1 local quant = X -- quantidade de item. local pos1 = {x= 160, y= 54, z= 7} -- para onde o player será teleportado ao terminar a quest. if item.uid == uniqueId1 then if getPlayerStorageValue(cid, storage) <= 0 then doPlayerAddItem(cid, item, quant) doTeleportThing(cid, pos) setPlayerStorageValue(cid, storage, 1) else doPlayerSendCancel(cid, "Você já fez essa quest!") end end return true end -- baú 2 function onUse(cid, item, frompos, item2, topos) local uniqueId2 = 2222 -- unique id do baú 2. local storage1 = 1015 -- storage , se deixar a mesma do bau 1, o player poderá pegar o item de 1 baú. local item1 = XXXX -- item que ganha no baú 2 local quant1 = X -- quantidade de item. local pos1 = {x= 160, y= 54, z= 7} -- para onde o player será teleportado. if item.uid == uniqueId2 then if getPlayerStorageValue(cid, storage1) <= 0 then doPlayerAddItem(cid, item1, quant1) doTeleportThing(cid, pos1) setPlayerStorageValue(cid, storage1, 1) else doPlayerSendCancel(cid, "Você já fez essa quest!") end end return true end actions.Xml.. <action uniqueid="1111;2222" script="Nome do Arquivo.lua"/> uniqueid = coloca a uniqueid do baú 1 e a do baú 2 entre .. ; ... a unique id vai nos baús pelo mapa editor.
  18. testa ae.. local speed = 10 --quanto de speed vai aumentar. function onUse(cid, item, fromPosition, itemEx, toPosition) if getPlayerStorageValue(cid,54321) < 1 then doChangeSpeed(cid, speed) setPlayerStorageValue(cid, 54321, 1) doRemoveItem(item.uid) else doPlayerSendCancel(cid, "Você so pode adicionar Speed 1 vez.") end return true end ele vai adicionar uma speed ao player , se a speed do player for 100 , se você colocar 10 vai fica 110 ...
  19. que porra é essa shoguns ? usando 2 else em apenas um if ;s e qual o motivo de 3 end ?
  20. Bom ao que parece deu certo ! . reportado para que movam.
  21. Opa desculpa a demora , foi siim !
  22. testa ... function onUse(cid, item, fromPosition, itemEx, toPosition) local config= { removeOnUse = "yes" -- remover quando usar ("yes" or "no") } local diamond = id do diamante -- id do diamante local quant = 1 -- quantos diamantes vai remover ! local days = 31 -- dias que serão adicionados local daysvalue = days * 24 * 60 * 60 local storageplayer = getPlayerStorageValue(cid, 33339) local timenow = os.time() if doPlayerRemoveItem(cid, diamond, quant) == TRUE then if getPlayerStorageValue(cid, 33339) - os.time() <= 0 then time = timenow + daysvalue else time = storageplayer + daysvalue end end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram adicionados ".. days .." dias de VIP no seu character.") doPlayerAddPremiumDays(cid, 31) setPlayerStorageValue(cid, 33339, time) local quantity = math.floor((getPlayerStorageValue(cid, 33339) - timenow)/(24 * 60 * 60)) doSendMagicEffect(getPlayerPosition(cid), math.random(28,30)) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce tem ".. quantity .." dias de VIP restantes.") if (config.removeOnUse == "yes") then doRemoveItem(item.uid, 1) end return true end
  23. Nome : Eduardo Idade : 17 Scripter < como mostra no perfil . Alguns de meus trabalhos estāo na minha assinatura ! Desculpa se minha resposta está incompleta , estou pelo celular Meu ultimo trabalho foi o Bin Laden system .
  24. data / globalevents / scripts .. ta lá o script que faz o evento abrir ! a área do imperador fica ao lado do templo !
  • Quem Está Navegando   0 membros estão online

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