Pular para o conteúdo

setFoliageVertices

Compartilhada Vegetação OOP vegetacao:setVertices(...)

Move o triângulo inteiro de uma mancha de vegetação. As plantas são replantadas sobre o novo triângulo.

bool setFoliageVertices ( element aVegetacao, number x1, number y1, number z1, number x2, number y2, number z2, number x3, number y3, number z3 )
NomeTipoPadrãoDescrição
aVegetacaoelement—A mancha de vegetação.
x1, y1, z1number—Novo primeiro canto do triângulo.
x2, y2, z2number—Novo segundo canto do triângulo.
x3, y3, z3number—Novo terceiro canto do triângulo.

No cliente cada canto também pode ser passado como um único Vector3 no lugar dos três números; o servidor recebe apenas números soltos.

true quando os vértices foram aceitos, ou false com um aviso quando o elemento não é vegetação ou deixou de existir.

O servidor não valida o novo triângulo: ele aceita os vértices e os envia aos jogadores; se algo cresce, cada cliente decide. No cliente a mancha é replantada sobre o novo triângulo, e quando o replante falha — por exemplo, quando o novo triângulo é pequeno demais para caber um único quadro de planta — a chamada devolve false, mas os vértices ficam salvos e o jogo planta de novo assim que consegue.

-- move a mancha 5 unidades para o norte
local x1, y1, z1, x2, y2, z2, x3, y3, z3 = getFoliageVertices(mancha)
setFoliageVertices(mancha, x1, y1 + 5, z1, x2, y2 + 5, z2, x3, y3 + 5, z3)