配列使った方が簡単じゃないかな
オブジェクト名というのは実際にはオブジェクトのインデックスを指していて
これは0から始まる数値だから、そのまま配列の添字として使える

果物を取った時には、親オブジェクトで global.fruit[object_index] += 1; とする
それぞれの個数を参照するのは global.fruit[apple], global.fruit[orange] みたいな感じでOK

面倒なのは初期化だけかな。配列の要素がまだ存在しない時だけ0にしてやりたいから
ちょっとインチキくさいけどCreateイベントで
variable_global_array_set("fruit", object_index, variable_global_array_get("fruit", object_index));