А если попробовать сделать так.
К примеру:
Жизни=100
Броня=100
Урон пуль = 10
Quote
if global.shield>0
{global.shield-=other.uron; with other instance_destroy ()}
// на последний выстрел можно сжульничать
if global.shield<=0
{health-=other.uron; with other instance_destroy ()}
Если нужно сделать броню пропускающую урон, то:
Quote
if global.shield>0
{global.shield-=other.uron/2; health-=other.uron/2; with other instance_destroy ()}
и т.д.
Так же проще будет. И броня бронёй будет. Я бы сделал, что-то подобное и сосредоточил внимание на других нюансах.