#include "generale.h" #include "assets.h" #include "game.h" void initGenerale(Entity * entity, Game * game) { entity->model = &game->assets.models[GENERALE_ASSET]; entity->collisionModel = entityCreateCollisionModel(*entity->model); entity->transformedCollisionModel = entityCreateCollisionModel(*entity->model); setEntityRadius(entity); // Allocate data. entity->data = KF_MALLOC(sizeof(Generale)); if (entity->data == NULL) { ALLOCATION_ERROR; return; } Generale * data = (Generale*)entity->data; data->flyToPoint = (EntityFlyToPointInfo){ .controller.bangbang.speed = 85.0, .controller.bangbang.stopAt = 0.0, .controlType = ENTITY_FLY_TO_POINT_BANG_BANG, .rotationSpeed = 0.0, .applyRotation = false }; data->zigzag = GENERALE_ZIG; } void closeGenerale(Entity * entity) { if (entity->data != NULL) KF_FREE(entity->data); entityFreeCollisionModel(entity->collisionModel); entityFreeCollisionModel(entity->transformedCollisionModel); } void updateGenerale(Game * game, Entity * entity) { entityUpdateLastValues(entity); entityCheckTransformedCollisionModel(entity); } void drawGenerale(Game * game, Entity * entity) { entityDraw(entity); } void getTargetGenerale(Game * game, Entity * entity) { Entity * player = getEntityFromWorld(game->world, 0); Vector3 dis = Vector3Subtract( }