aboutsummaryrefslogtreecommitdiffstats
path: root/src/entities/trashcan.c
blob: 880bc4c5cdf030ce89789c936e90626cb35d9942 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include "trashcan.h"

void initTrashcan(Entity* entity)
{
  entity->box = entityBoxFromScale(TRASHCAN_SCALE, TRASHCAN_WIDTH,
                                   TRASHCAN_HEIGHT);
}

void updateTrashcan(Entity* entity, Game* game)
{
  int frame = (int)(GetTime() * TRASHCAN_ANIMATION_SPEED) % TRASHCAN_FRAMES;

  Rectangle rect = (Rectangle){
    .x = frame * TRASHCAN_WIDTH,
    .y = 0.0,
    .width = TRASHCAN_WIDTH,
    .height = TRASHCAN_HEIGHT
  };

  DrawBillboardRec(
    game->player.camera,
    game->assets.textures[TRASHCAN_TEXTURE],
    rect,
    entity->position,
    (Vector2){TRASHCAN_SCALE * (TRASHCAN_WIDTH / TRASHCAN_HEIGHT),
              TRASHCAN_SCALE},
    WHITE);
}