ルームのリスタートは、改めてそのルームに移動したのと同じと考えるべし。
そのルームに配置されているインスタンスは全て作り直されるので、それまでルーム内で変更されていたものはリセットされてしまう。
ということなので、そのルームに配置されているオブジェクト等で変数Aを変更していても無駄。
(ただし、persistent指定のオブジェクトならその限りにあらず)

つまるところ、グローバル変数を使用しろということ。
ルーム間をまたいで変数を保持したければ、グローバル変数を使うのが最も楽な方法だ。
ぶつかったときに、
global.A = 1
というようにしておけばよい。