aboutsummaryrefslogtreecommitdiff
path: root/src/entities/guidedMissile.c
diff options
context:
space:
mode:
authornathansmithsmith <nathansmith7@mailfence.com>2023-09-12 21:53:32 -0600
committernathansmithsmith <nathansmith7@mailfence.com>2023-09-12 21:53:32 -0600
commit7d4d948dfa92416c802229b1c444a44785ee2a0c (patch)
tree129fcf7141640ec8b3c7647de174755d04858ce2 /src/entities/guidedMissile.c
parentc759231e1e8570ffe5fdda2f1eb5d011b1c6a29f (diff)
Guided missile worky worky
Diffstat (limited to 'src/entities/guidedMissile.c')
-rw-r--r--src/entities/guidedMissile.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/entities/guidedMissile.c b/src/entities/guidedMissile.c
index 53cbaf8..b7f6b68 100644
--- a/src/entities/guidedMissile.c
+++ b/src/entities/guidedMissile.c
@@ -18,6 +18,8 @@ void initGuidedMissile(Entity * entity, Game * game) {
GuidedMissile * data = (GuidedMissile*)entity->data;
+ data->beenBorn = false; // NOT EVEN BORN YET! HA HA!!!
+
data->flyToPoint = (EntityFlyToPointInfo){
.controller.bangbang.speed = 80,
.controller.bangbang.stopAt = 0.0,
@@ -41,12 +43,24 @@ void updateGuidedMissile(Game * game, Entity * entity) {
Entity * player = getEntityFromWorld(game->world, 0);
GuidedMissile * data = (GuidedMissile*)entity->data;
+ // Life begins.
+ if (!data->beenBorn) {
+ data->beenBorn = true;
+ data->birthDay = GetTime();
+ }
+
entityFlyToPoint(entity, player->position, &data->flyToPoint);
// boom boom time
if (Vector3Distance(player->position, entity->position) <= GUIDED_MISSILE_BOOM_BOOM_AT)
guidedMissileGoBoomBoom(game, entity);
+ // Death countdown.
+ if (GetTime() - data->birthDay >= GUIDED_MISSILE_DEATH_DAY) {
+ guidedMissileGoBoomBoom(game, entity);
+ puts("Me is fucking dead!!!!");
+ }
+
entityCheckTransformedCollisionModel(entity);
}
@@ -67,5 +81,5 @@ void guidedMissileGoBoomBoom(Game * game, Entity * entity) {
// Remove its self from the world. I have thought of doing the same for years ):
entity->health = 0.0;
- printf("This fucker did %f damage\n", damage);
+ printf("This fucker died %f damage\n", damage);
}