Func recharge

Old version of from HL1. No reason to use it.