setWeaponProperty
Altera um atributo de um elemento arma.
Sintaxe
Seção intitulada “Sintaxe”bool setWeaponProperty ( weapon aArma, string propriedade, number valor )bool setWeaponProperty ( weapon aArma, "fire_rotation", number x, number y, number z )Parâmetros
Seção intitulada “Parâmetros”| Nome | Tipo | Padrão | Descrição |
|---|---|---|---|
aArma | weapon | — | Elemento arma a alterar. |
propriedade | string | — | Um dos nomes da tabela abaixo. |
valor | number | — | Novo valor. fire_rotation recebe três números, ou um Vector3. |
Propriedades que um elemento arma aceita:
| Propriedade | Tipo | Significado |
|---|---|---|
damage | number | Dano de cada tiro. Guardado como número inteiro de 16 bits: a parte fracionária é descartada. |
accuracy | number | Multiplicador de precisão; 1 é a precisão do próprio tipo de arma. |
target_range | number | Até onde a arma adquire um alvo. |
weapon_range | number | Até onde os tiros de fato alcançam. |
fire_rotation | três números | Rotação da boca do cano, em graus, como x, y, z. |
Retorno
Seção intitulada “Retorno”true quando o atributo foi escrito, false quando o elemento não é uma arma, quando o nome da propriedade não é um dos cinco acima, ou quando o valor não é um número. Um nome de propriedade desconhecido ou um valor inválido também escrevem o motivo no console de debug; uma propriedade que existe mas não é uma das cinco devolve false em silêncio.
O nome da propriedade é comparado sem diferenciar maiúsculas de minúsculas, e uma string numérica como "25" é aceita como número.
local torreta = createWeapon("minigun", 0, 0, 5)setWeaponProperty(torreta, "damage", 5)setWeaponProperty(torreta, "weapon_range", 150)setWeaponProperty(torreta, "fire_rotation", 0, 0, 90)
-- lendo de voltalocal dano = getWeaponProperty(torreta, "pro", "damage")local rx, ry, rz = getWeaponProperty(torreta, "pro", "fire_rotation")