Pular para o conteúdo

removeWorldModel

Compartilhada Mundo

Remove do mapa todos os objetos de um modelo dentro de uma esfera.

-- servidor
bool removeWorldModel ( number modelo, number raio, number x, number y, number z [, number interior = -1 ] )
-- cliente
bool, number removeWorldModel ( number modelo, number raio, number x, number y, number z [, number interior = -1 ] )
NomeTipoPadrãoDescrição
modelonumber—Identificador do modelo, de 0 a 65535. No cliente, um valor fora dessa faixa dá a volta em vez de ser recusado.
raionumber—Raio da esfera de remoção. Precisa ser zero ou positivo no servidor; o cliente não confere.
x, y, znumber—Centro da esfera.
interiornumber-1Interior afetado. -1 afeta todos.

No servidor, true, ou false se o modelo ou o raio estiverem fora do intervalo aceito. No cliente, dois valores: true e a quantidade de objetos que saíram do mundo nessa chamada — essa quantidade é 0 quando nenhum objeto daquele modelo estava presente na esfera. Argumentos do tipo errado, ou uma chamada feita antes de o mundo do jogo carregar, devolvem apenas false com um aviso, sem o segundo valor.

Feita no servidor, a remoção vale para o servidor inteiro: ela chega a todos os jogadores conectados e é reaplicada em quem entrar depois. Feita no cliente, ela vale só para o mundo daquele jogador.

No servidor, uma remoção totalmente contida numa remoção já existente do mesmo modelo é ignorada, e ainda assim devolve true.

-- servidor: tira as árvores de um trecho da estrada para todos os jogadores
removeWorldModel(620, 100, 1500, -1200, 15)
-- cliente: a mesma limpeza, só na tela deste jogador
local ok, quantidade = removeWorldModel(620, 100, 1500, -1200, 15)
outputDebugString("objetos retirados: " .. quantidade)