This is all based on arrays of strings, which is bad in the first place...
if Text = '/tele 1' then begin
MovePlayer(ID, StrToInt(TeleeX[1]), StrToInt(TeleeY[1]));
end;
if Text = '/tele 2' then begin
MovePlayer(ID, StrToInt(TeleeX[2]), StrToInt(TeleeY[2]));
end;
if Text = '/tele 3' then begin
MovePlayer(ID, StrToInt(TeleeX[3]), StrToInt(TeleeY[3]));
end;
Or, even better... (you should start using this)
case Text of
'/tele 1': MovePlayer(ID, StrToInt(TeleeX[1]), StrToInt(TeleeY[1]));
'/tele 2': MovePlayer(ID, StrToInt(TeleeX[2]), StrToInt(TeleeY[2]));
'/tele 3': MovePlayer(ID, StrToInt(TeleeX[3]), StrToInt(TeleeY[3]));
end;
If you're gonna go with arrays of integers/singles then you need to put StrToInt around the ReadINI's.