From 68f44090ed7d0f4c5393cf3fb3ef045b281c6a16 Mon Sep 17 00:00:00 2001 From: Linus Probert Date: Mon, 4 Mar 2019 16:06:13 +0100 Subject: [PATCH] Add amt sprite to all items where value != 0 --- src/item_builder.c | 54 ++++++++++++++++++++++++---------------------- 1 file changed, 28 insertions(+), 26 deletions(-) diff --git a/src/item_builder.c b/src/item_builder.c index b5dc442..0d45ab2 100644 --- a/src/item_builder.c +++ b/src/item_builder.c @@ -79,27 +79,6 @@ pickup_dagger(Item *item, Player *player) gui_log("You collect a dagger"); } -static Item * -create_item(const char *path0, const char *path1, SDL_Rect clip, void (*cb)(Item*, Player*)) -{ - Item *item; - - item = item_create(); - Texture *t0 = texturecache_add(path0); - Texture *t1 = NULL; - if (path1) - t1 = texturecache_add(path1); - - item->sprite = sprite_create(); - sprite_set_texture(item->sprite, t0, 0); - sprite_set_texture(item->sprite, t1, 1); - item->sprite->dim = GAME_DIMENSION; - item->sprite->clip = clip; - item->effect = cb; - - return item; -} - static Sprite * create_number_subsprite(SDL_Color fg, SDL_Color outline, @@ -121,6 +100,27 @@ create_number_subsprite(SDL_Color fg, return sprite; } +static Item * +create_item(const char *path0, const char *path1, SDL_Rect clip, void (*cb)(Item*, Player*)) +{ + Item *item; + + item = item_create(); + Texture *t0 = texturecache_add(path0); + Texture *t1 = NULL; + if (path1) + t1 = texturecache_add(path1); + + item->sprite = sprite_create(); + sprite_set_texture(item->sprite, t0, 0); + sprite_set_texture(item->sprite, t1, 1); + item->sprite->dim = GAME_DIMENSION; + item->sprite->clip = clip; + item->effect = cb; + + return item; +} + static Item * create_priced_item(double price, const char *path0, @@ -134,11 +134,6 @@ create_priced_item(double price, Sprite *priceSprite = create_number_subsprite(C_YELLOW, C_BLACK, "$%.0f", item->price); linkedlist_append(&item->subsprites, priceSprite); - Sprite *valueSprite = create_number_subsprite(C_BLUE, C_BLACK, "$.1f", item->value); - valueSprite->offset.x = item->sprite->dim.width - valueSprite->dim.width; - valueSprite->offset.y = item->sprite->dim.height - valueSprite->dim.height; - linkedlist_append(&item->subsprites, valueSprite); - return item; } @@ -247,6 +242,13 @@ item_builder_build_item(ItemKey key, int level) break; } + if (item->value != 1) { + Sprite *valueSprite = create_number_subsprite(C_BLUE, C_BLACK, "%.1f", item->value); + valueSprite->offset.x = item->sprite->dim.width - valueSprite->dim.width; + valueSprite->offset.y = item->sprite->dim.height - valueSprite->dim.height; + linkedlist_append(&item->subsprites, valueSprite); + } + return item; }