Bonzim, dá pra fazer algumas coisas boas
![]()
Abraços
Por MatheusGlad, 15 de nov. de 2010 em Noticias - Arquivo
Bonzim, dá pra fazer algumas coisas boas
![]()
Abraços
Parabéns, Matheus.
Seus scripts estão ficando muito bons, o que demonstra seu avanço no campo da programação LUA.
info
Grupo: Conde
Registrado: 09/09/09
Posts: 528
Reputação: +424
Char no Tibia: Emekalo Makalo

Funçao atualizada, agora da pra botar actionids nos items!
info
Grupo: Administrador
Registrado: 08/07/05
Posts: 5.8k
Reputação: +1.4k
Gênero: Outro

Bem legal matheus =p
Estamos pensando em fazer um concurso de idéias e scripts para o mapa da cidade xtibia.com
que está sendo feita no CEM ...
Convidaremos todos para participar, a criatividade da comunidade é muito legal =p
info
Grupo: Conde
Registrado: 09/09/09
Posts: 528
Reputação: +424
Char no Tibia: Emekalo Makalo

Bem legal, to aqui pra ajudar, qlqr coisa eh so chamar
POST 666 FUCK YEAAAAAAHHHHHHHHHHH
muito bom cara esse script tenho grandes ideias no que usar ele ![]()
info
Grupo: Herói
Registrado: 28/11/10
Posts: 3.4k
Reputação: +585
Gênero: Masculino

info
Grupo: Conde
Registrado: 09/09/09
Posts: 528
Reputação: +424
Char no Tibia: Emekalo Makalo
Function:
function doCreateItemInArea(firstpos, area, tab) -- function by MatheusMkalo for i, z in pairs(area) do pos = {x=firstpos.x, y=firstpos.y+i-1, z=firstpos.z} for s, x in pairs(z) do pos.x = firstpos.x+s-1 if tab[x] or type(x) == "table" then for l = 1, type(x) == "table" and #x or 1 do item = doCreateItem(type(x) == "table" and (not tab[x[l]].name and tab[x[l]].itemid or getItemIdByName(tab[x[l]].name)) or (not tab[x].name and tab[x].itemid or getItemIdByName(tab[x[l]].name)), type(x) == "table" and (tab[x[l]].count == nil and 1 or tab[x[l]].count) or tab[x].count == nil and 1 or tab[x].count, pos) doItemSetAttribute(item, "aid", type(x) == "table" and (tab[x[l]].actionid == nil and 0 or tab[x[l]].actionid) or tab[x].actionid == nil and 0 or tab[x].actionid) end end end end return TRUE endBem oque ela faz eu acho que ja da pra saber né, mas pra quem nao sabe ingles:
A funçao cria itens em uma area.
Como usar a function:
Bem pra usar eh bem simples, basta criar uma area parecida com a de uma magia e botar a posiçao do primeiro "sqm"
Uma talkaction que cria itens em volta do player:
Vou explicar mais um pouco as coisas:
Oque esta em vermelho eh a pos do primeiro sqm da area que seria o de azul:
Oque esta em rosa seria a area que no caso eh a areacreate.
Oque esta em laranja sao oque os numeros na area vao representar:
local items = {
[1] = {itemid = 2160, count = 1},
[2] = {itemid = 2160, count = 2},
[3] = {itemid = 2160, count = 3},
}
No caso dessa tabela, aonde estiver o numero 1 na area, vai criar 1 item de id 2160 aonde estiver 2, criara 2 items de id 2160, e assim por diante.
Voce nao é obrigado a colocar uma quantidade voce pode deixar somente o itemid que nao ira bugar.
Algumas propriedades a mais:
Se voce quiser criar varios items no mesmo tile voce pode, voce so precisa botar eles entre chaves assim:
local areacreate = {
{{3,2}, {1,2}, {3,1}},
{{3,1}, 0, {1,2}},
{{2,3}, {3,2}, {3,3}},
}
Voce pode trocar o itemid = 2160 por name = "Crystal Coin" que ira ir perfeitamente:
local items = {
[1] = {name = "Golden Helmet"},
[2] = {name = "Magic Plate Armor"},
[3] = {name = "Crystal Coin", count = 5},
}
local areacreate = {
{{3,2}, {1,2}, {3,1}},
{{3,1}, 0, {1,2}},
{{2,3}, {3,2}, {3,3}},
}
Voce pode botar actionids nos items assim:
local items = {
[1] = {name = "Golden Helmet"},
[2] = {name = "Magic Plate Armor", actionid = 666},
[3] = {name = "Crystal Coin", count = 5},
}
Lembre-se que todos os items 2 que forem criados terao akele actionid.
Pronto, use e abuse. Nao gaste seu rep+ comigo, so um elogio ja ta otimo.
Algumas areas e ids para brincar:
Trapado entre paredes:
Casa improvisada: (Nescessario bastante espaço)
Editado Novembro 15 por MatheusMkalo