Вставь твой фикс в любой скрипт, где использовалась стандартная strval и компилятор выплюнет ошибку (одна из причин, по которой не стоит менять логику стандартных функций).
Да и не всегда требуется проверка того, вёл ли игрок число. Это может быть заранее известно (если информация, например, не игроком вводилась).
Для подобных случаев гораздо проще использовать sscanf:
PHP код:
new string[] = "AZAZA 123",
value;
sscanf(string, "I(-1)", value);
if(value == -1)
return;
Естественно "-1" нужно заменять на подходящее по случаю значение (то, которое игрок не может ввести)