Pular para o conteúdo

getObjectProperty

Compartilhada Objetos OOP objeto:getProperty(...)objeto:getProperties()objeto.properties

Lê uma propriedade física de um objeto.

number getObjectProperty ( element oObjeto, string propriedade )
NomeTipoPadrãoDescrição
oObjetoelement—O objeto a consultar. No cliente, uma arma customizada (createWeapon) também é aceita.
propriedadestring—Uma das propriedades, ou "all".

Depende da propriedade:

PropriedadeRetorno
"mass", "turn_mass", "air_resistance", "elasticity", "buoyancy"Um número.
"center_of_mass"Três números: x, y, z.
"all"Uma tabela com as chaves mass, turn_mass, air_resistance, elasticity, buoyancy e center_of_mass.

A tabela do "all" muda de lado para lado: no cliente o center_of_mass vem como Vector3; no servidor, como uma tabela simples com x, y e z.

De onde vêm os valores:

  • no servidor, os valores guardados com o objeto: -1 para o que nenhum script definiu (centro de massa 0, 0, 0), nunca os valores próprios do jogo;
  • no cliente, os valores como esta máquina simula o objeto — os vivos para um objeto carregado no mundo, os últimos que um script definiu para um que não está.

Um argumento que não é um objeto, ou um nome de propriedade desconhecido, dá aviso no console de debug e devolve false; sem nenhuma propriedade, devolve false sem aviso.

local empuxo = getObjectProperty(caixa, "buoyancy")
local cx, cy, cz = getObjectProperty(caixa, "center_of_mass")
local tudo = getObjectProperty(caixa, "all")
outputDebugString("massa " .. tudo.mass .. ", elasticidade " .. tudo.elasticity)