Pesquisar na Comunidade
Mostrando resultados para as tags ''tutorial básico''.
Encontrado 1 registro
-
script Tutorial Básico Creaturescripts
um tópico no fórum postou DuuhCarvalho Tutoriais de Scripting
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 !