Ir para conteúdo

[Exercícios - Aula 7 (Parte 1)] Respostas


Roksas

Posts Recomendados

14y2xlc.jpg

Saudações galerinha, num nível já alto da Escolinha, aprendemos diversas coisas da linguagem, e neste tópico estarei postando as respostas dos alunos e correções.

divisor.png

Allan Harlen:

 

 

 

 

 

--------------- 10 funçoes -------------
local config = {
monster = "Demon", posi = {x = 1168, y = 1465, z = 7}, storage = 1589, quant = -1, level = 300, mana = 1000
}

function onUse(cid, item, frompos, item2, topos)

if getPlayerLevel(cid) >= level then
    doSummonMonster(config.monster, config.posi)
        doRemoveItem(item.uid, config.quant)
            setPlayerStorageValue(cid, config.storage, config.quant)
                doSendMagicEffect(pos, config.effects)
                    doCreatureAddMana(cid, config.mana)
                        elseif getPlayerStorageValue(cid) >= storage then
                            doPlayerSendCancel(cid, "Voce nao tem "..storage.." correta")
                                else
                                    doPlayerSendCancel(cid, "Voce nao tem lvl "..level.." para usar este item")
    end
end
----------------------------- tarefa de add 100 gps ---------
function onUse(cid, item, frompos, item2, topos)
    doPlayerAddMoney(cid, 100)
end
----------------- explicar --------------
--[[ Aki e assim so passa por um tile se tiver x storage se tiver a storage voce e teleportado para x local caso contrario manda uma mensagem de sendcancell ]]--
function onStepIn(cid, item, pos)                                                                                                                       
teleport1 ={x=154, y=43, z=7} -- teleport que o thing tava faland oaonde vai teleporta quando passar
if isPlayer(cid) then --
local storage = 15420 -- storage que a storage vip fala
if item.actionid == storage then  -- action da tile que so passa com x storage
vip = getPlayerStorageValue(cid,storage)-- storage vip
if vip == -1 then  --remove storage vip
doPlayerSendCancel(cid,"frases")  -- mensagem de canlcel
doTeleportThing(cid,teleport1)  ------- teleporta para a posiçaõ do teleport1
else
end
end
end
end

 

Nota: 5,00

OBS: Você errou bastante na identação e não entendeu corretamente os exercícios.

 

 

 

 

Matheus Ribeiro:

 

 

 

 

 

-- 1º Exercício:
 
function onUse(cid, item, frompos, item2, topos)
         doPlayerAddMoney(cid, 100)
         doRemoveItem(item.uid,1)
end
 
-- OU
 
function onUse(cid, item, frompos, item2, topos)
         doPlayerAddMoney(cid, 100)
end
 
-- 2º Exercício:
 
function onUse(cid, item, frompos, item2, topos)
 
 local levelnecessario = 50
 local table = {
 [1] = "rat",
 [2] = "demon skeleton",
 }
 local aleatorio = math.random(1,2)
 local summon = doSummonCreature(table[aleatorio],getPlayerPosition(cid))
 
         if getPlayerLevel(cid) >= levelnecessario then
            doRemoveItem(item.uid,1)
            doConvinceCreature(cid, summon)
            doCreatureSay(cid, 'me ajude '..table[aleatorio], 1) -- momento pokemon '-'
            doSendDistanceShoot(getCreaturePosition(cid),getCreaturePosition(summon), 3)
         else
            doPlayerSendCancel(cid, 'Você deve ter level '..levelnecessario..' ou mais')
            doSendMagicEffect(getCreaturePosition(cid), 1)  
         end
end
 
-- 3º Exercício:
 
-- <globalevent name="mensagem" interval="500" script="mensagem.lua"/>  a tag que irá chamar o script em um intervalo de 500 milisegundos
 
-- [( Script created by Doidin for XTibia.com )] --
function onThink(interval, lastExecution) -- ao pensar ( quando o script for chamado)
MENSAGEM = { -- tabela MENSAGEM
"FRASE 1",
"FRASE 2",
"FRASE 3",
"FRASE 4",
"FRASE 5",
}
 
doBroadcastMessage(MENSAGEM[math.random(1,#MENSAGEM)],22) -- envia uma mensagem aleatoria que está na tabela MENSAGEM
return TRUE
end
 

Nota: 7,00

OBS: Não entendeu corretamente o primeiro exercício, identação quase correta.

 

 

 

 

Pablo Rodrigues:

 

 

 

 

 

[Primeira Tarefa]

function onUse(cid, item, frompos, item2, topos)
if getPlayerLevel(cid) >= 10 then
doPlayerAddItem (cid,2158,100)
end
end


[Segunda Tarefa]

function onUse(cid)
local lv = 10
local storage = 8991

    if getPlayerStorageValue(cid, storage) >= 1 then
        doPlayerSendCancel(cid,"Você ja pegou o item.")
    return true
    end

        if getPlayerLevel(cid) >= lv then
            doPlayerSendTextMessage(cid, 20, "Você precissa ser menor que level "..lv..".")
            doCreatureAddHealth(cid, -100)
            doPlayerRemoveMoney(cid, 10000)
            doPlayerFeed(cid, 1000)
        return true
        end

        setPlayerStorageValue(cid, storage,1)
        doPlayerAddLevel(cid, 1)
        doPlayerAddMoney(cid,100000)
        doPlayerSendTextMessage(cid,20,"Parabéns, Tome seus 100k")
        doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
 return true
end


[Terceira Tarefa]

-- Script feito por tiagoduuarte
function onUse(cid, item, frompos, item2, topos) --- Função inicia e é utilizada para executar o script, no caso é uma action
doRemoveItem(item.uid,5944) --- Esta função remove o item 5944 do player ( Soul Orb )
doPlayerAddItem(cid,6529) --- Esta função adiciona ao player o item 6529 ( Infernal Bolt)
doSendMagicEffect(topos,12) --- Manda um efeito para player
doPlayerSendTextMessage(cid,22,"Você ganhou infernal bolts.") --- Ao trocar a soul orb pela infernal bolt esta mensagem é enviada
end --- fecha o escopo do function

 

Nota: 7,00

OBS: Você está quase conseguindo identar, mas não soube resolver o primeiro exercício como foi pedido.

 

 

 

 

É isso aí galerinha, em breve posto as respostas da segunda parte.

 

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...