summaryrefslogtreecommitdiff
path: root/src/resource.cpp
blob: c3e61d64b38fd1ba12c4d1ec959d770a2ab709dc (plain)
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
29
30
#include "resource.hpp"

Resource::Resource(Rectangle r)
{	
        rect = r;

        if(rect.x == 0 && rect.y == 0){
                rect.x = getRandom(30);
                rect.y = getRandom(30);
        }

        gfxData = GraphicsData(rect.x, rect.y, 0, 1, 0, RESOURCE_SIDES);

        type        = RESOURCE_TYPE;
        amount      = RESOURCE_AMOUNT_START;
        growAmount  = RESOURCE_GROW;
}

void Resource::eat(int bite)
{
	amount-=bite;
}

void Resource::grow()
{
        if(amount < RESOURCE_AMOUNT_MAX){
                amount+=growAmount; 
                rect.h = rect.w = map(amount,0,RESOURCE_AMOUNT_MAX,0,RESOURCE_SIZE_MAX);
        }
}