1

I'm having some trouble with the error "1050: Cannot assign to a non-reference value." I'm still fairly new to coding, and so being unable to fix this error is frustrating, any help will be greatly appreciated.

var PracticeDummyHealth:int=50
var PlayerAttack:int=20;

public function PlayerAttackFunction(){
    if(PracticeDummyHealth>0){
        PracticeDummyHealth-PlayerAttack=PracticeDummyHealth;
    }
}
4

1 に答える 1

1

プロパティ/変数名ではない文法構造は、代入演算子の左側にあります。=

// expression                   = expression
PracticeDummyHealth-PlayerAttack=PracticeDummyHealth;
// which makes as much sense to ActionScript as .. it's not an equation solver :)
// 100 - 50 = 100

次の有効なコードと比較してください。

// variable         = new_value
PracticeDummyHealth = PracticeDummyHealth - PlayerAttack;
// or
PracticeDummyHealth -= PlayerAttack;

どちらの場合も、「参照」(読み取り: プロパティ/変数名) が(または化合物) の左側に表示されることに注意してください。この用語は左辺値を扱う仕様に由来するものであり、ここで適切なエラー メッセージが生成されないのは少し残念です。=-=

于 2012-11-04T07:00:32.793 に答える