あなたはおそらくどちらかすでにこれを考え出した、または今ではコロナをあきらめ、ちょうどその答えは、私は私の2セントを追加しますここにありますしました:
あなたがにしたい任意のプロパティを追加することができますボールオブジェクト。明示的にプロパティを宣言する必要はありません。プロパティを値に割り当てると自動的に作成されます。あなたはあなたに衝突イベントハンドラを添付しましたと仮定すると、ことをやったら
ball.radius = 20
:たとえば、あなたがあなたの「ボール」オブジェクトを作成したらちょうどこれを行う、「半径」プロパティを追加するにはボール自体が、ボールは「自己」のパラメータとして渡され、あなたはself.radiusと半径を得ることができます:あなたは、いくつかの他のオブジェクトにイベントハンドラを接続した場合
local radius = self.radius
、ボールが渡されます「イベント」パラメータの「その他」のプロパティとして使用します。あなたはそれができる他の(非ボール)のオブジェクトを持っている場合は、もちろん
local radius = event.other.radius
:あなたは十分にイベントハンドラを取り付けたのであれば、あなたがしてボールの半径を取得したい、井戸のあなたの例を使用してこれらのオブジェクトに「半径」プロパティがない場合、「event.other」が実際には「ボール」オブジェクトであることを確認する必要があります。そうしないと、半径を取得しようとすると「無」となります。実際には、この動作を使用して、他のオブジェクトが実際にボールであることを検出することができます。
local radius = event.other.radius
if radius then
-- may be safe to assume event.other is a ball
else
-- something else hit the well
end
希望します。私はコロナに1ヶ月しかいませんので、...