ED
dúvida

Duvida "docreatetile"

Por eduardo190696, 11 de set. de 2012 em Scripts

tile house duvida script
script
6
938
eduardo190696E
11 de setembro de 2012 às 16:46

Oi, Como vão vocês ?

 

Bom, queria saber uma coisa, to montando um script que precisa criar uma área 10x10 com um certo tile.

 

Quero saber se tem como fazer um jeito que crie uma área 10x10 a partir do player, Isso mesmo, o Player é o ponto 0.

 

ao invez de fazer 1 linha para cada tile

local posnx1 = {x=ppos.x, y=ppos.y, z=ppos.z}
local posnx2 = {x=ppos.x -1, y=ppos.y, z=ppos.z}
local posny1 = {x=ppos.x, y=ppos.y -1, z=ppos.z}
local pospx1 = {x=ppos.x +1, y=ppos.y, z=ppos.z}
local pospy1 = {x=ppos.x, y=ppos.y +1, z=ppos.z}

algum jeito que faça uma área 10x10 a partir do player e que na hora de criar o tile não precise adicionar 1 linha para cada tile

doCreateTile(CONSTRUCTIONS[item.itemid], posnx1)

doCreateTile(CONSTRUCTIONS[item.itemid], posnx1)
doCreateTile(CONSTRUCTIONS[item.itemid], posnx2)
doCreateTile(CONSTRUCTIONS[item.itemid], posny1)
doCreateTile(CONSTRUCTIONS[item.itemid], pospx1)
doCreateTile(CONSTRUCTIONS[item.itemid], pospy1)

 

se alguém puder me ajudar agradeço com meu +rep

15790911
11 de setembro de 2012 às 16:59

Das duas perguntas, a unica que consigo responder é que estou bem!! :)

 

(

Oi, Como vão vocês ?
)
brun123B
11 de setembro de 2012 às 17:15

Só lembrando que uma área 10x10 não tem centro...

dá pra fazer em 3 linhas de código o que você quer, usando for, exemplo:

 

for x = -5, 5 do
for y = -5, 5 do
	local p = getThingPos(cid)
	p.x = p.x + x
	p.y = p.y + y
	doCreateTile(CONSTRUCTIONS[item.itemid], p)
end
end

 

Esse código vai criar uma área 11x11 sendo a posição do player o centro

Editado Setembro 11 por brun123

eduardo190696E
11 de setembro de 2012 às 17:39

Perfeito brun123 +rep pra tu, só mais uma duvida, como faço para esse tile ficar salvo dentro de uma house.

 

Ele cria certinho só que quando reinicia o ot o tile some.

 

E como posso fazer para criar uma parede envolta dos ultimo tiles, sendo que usaria 3 ou 4 ids diferentes

brun123B
11 de setembro de 2012 às 17:47

não tem como salvar o tile de house por script lua não, só pelo map editor mesmo...

só se você criar um arquivo que vai ser lido no startup do server e faz com que a house seja modificada antes de qualquer player fizer login

é um script avançado e não rola de fazer agora, outro dia se der vontade eu até faço

 

pra ver se o tile está na extremidade é só usar essa checagem dentro dos 2 loops:

 

if math.abs(x) == 5 or math.abs(y) == 5 then
-- algum código, tipo criar uma parede
end

MatheusEnjoyM
12 de setembro de 2012 às 00:56

Das duas perguntas, a unica que consigo responder é que estou bem!! :)

 

(

Oi, Como vão vocês ?
)

 

Levando em consideração a cicustancias não entendo isso como Flood, mais peço que isso não se repita.