#pragma once struct gun { int (*update)(struct gun *self, struct entity *parent, struct entity *target); int timer, counter; int x, y; // offset from the parents center };