The problem is that you defined your CGPoint as pointer
just change your code
from
@property (nonatomic) CGPoint* directionUsed;
to
@property (nonatomic) CGPoint directionUsed;
Edit
In order to assign a value to directionUsed
you need to allocate the struct first
You need to change your code
from
self.directionUsed->x = x;
self.directionUsed->y = y;
to
CGPoint point;
point.x = x;
point.y = y;
self.directionUsed = point;