Yeah,I can understand your example of overlapped. But for cases like getting player, we are actually getting a child from the parent class. Then why can’t we directly create a variable and set it as an object reference? This way of direct communication seems to have the same result as casting.