TQuery

TQuery.min / TQuery.max メソッド

このTQueryオブジェクトが格納しているすべてのActorのうち,指定された値の最小(最大)値を返します.

書式1

t.min(key)
t.max(key)

このTQueryオブジェクトが格納しているすべてのActorにおける, key(文字列)で指定された名前をもつフィールドの値の最小(最大)値

書式2

t.min(func)
t.max(func)

このTQueryオブジェクトが格納しているすべてのActorについて,そえrぞれ そのActorを第1引数に渡してfunc(関数)を呼び出した結果の最小(最大)値

all(Enemy).min("x")  //すべてのEnemyオブジェクトにおけるxの値の最小値

※min,maxメソッドで返される値は最小値,最大値そのもの(数値等)であり,最小値,最大値をもつオブジェクトではありません.オブジェクトを返す場合は次のminObj, maxObjメソッドを使います.

TQuery.minObj / TQuery.maxObj メソッド

このTQueryオブジェクトが格納しているすべてのActorのうち,指定された値の最小(最大)値をもつオブジェクトを返します.

書式はmin, maxと同じです.返されるのはオブジェクト(Actor)です.

all(Enemy).minObj("x")  //すべてのEnemyオブジェクトにおける,xの値が最小のオブジェクト(一番左にいるEnemy)

最小値,最大値をもつオブジェクトが複数ある場合

TQuery.min / TQuery.max メソッド

このTQueryオブジェクトが格納しているすべてのActorのうち,指定された値の最小(最大)値をもつオブジェクトだけからなるTQueryオブジェクトを返します.

書式はmin, maxと同じですが,返されるはTQueryオブジェクトです.

最小値,最大値をもつオブジェクトからランダムに1つ返すには次のようにします.

all(Enemy).min("x").random()  //すべてのEnemyオブジェクトにおける,xの値が最小のオブジェクト(一番左にいるEnemy)
//一番左にいるEnemyが複数の場合,その中からランダムに1つ選ぶ