(Please don't make the text in your post so big, as it's much easier to read it at its normal size. The forums use Markdown. Check out this article if you want to know how to use Markdown and what you can do with it.)
position
is a property of Node2D
. position
is a Vector2
storing offset the Node2D
has from its parent node. You can access and change position because your script extends Area
, which extends Node2D
, which means your script inherits the position
variable from Node2D
.
I could not find a article that really explains what inheritance is in programming as much/well as I'd like, but here's a decent article from Microsoft about inheritance in C#. (Because inheritance is a practically universal programming thing, the language really doesn't matter as far as learning goes).