Может быть, вам стоит попробовать другой подход. Отправьте пользовательское событие из вашего класса игрока.
Пусть ваша среда слушает событие. Внутри слушателя устанавливается свойство этого события.
Когда событие возвращается к классу игрока, он может получить значение из события. Таким образом, ваш класс игрока может функционировать без AvEnvironment, так что это немного больше ООП.
Код в вашем классе игрока будет выглядеть примерно так:
function fetchEvXs() : Number
{
var playerEvent:PlayerEvent = new PlayerEvent(PlayerEvent.REQUEST_XS);
dispatchEvent(playerEvent);
return playerEvent.xs;
}
у вашего класса Environment должен быть такой слушатель:
player.addEventListener(PlayerEvent.REQUEST_XS, onRequestXs);
function onRequestXs(e:PlayerEvent) : void
{
e.xs = 100;
}