summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXaviDCR92 <xavi.dcr@gmail.com>2017-08-26 17:54:03 +0200
committerXaviDCR92 <xavi.dcr@gmail.com>2017-08-26 17:54:03 +0200
commit4ca8c2d15b51c479dd890773643ea24440b3991f (patch)
tree59f134fac677d30187b78453f5b35280f57b0f94
parent845c7cba1d8efd16b073ca034eb8239b6616e681 (diff)
downloadpocketempires-4ca8c2d15b51c479dd890773643ea24440b3991f.tar.gz
+ Added Makefiles for dependencies
-rw-r--r--Building.c6
-rw-r--r--Libs/libarduino/Makefile29
-rw-r--r--Libs/libgamebuino/Makefile31
-rw-r--r--Libs/petit_fatfs/Makefile29
-rw-r--r--Libs/tinyFAT/Makefile28
-rw-r--r--Player.cpp2
-rw-r--r--Unit.c26
7 files changed, 139 insertions, 12 deletions
diff --git a/Building.c b/Building.c
index f2955e0..daecf24 100644
--- a/Building.c
+++ b/Building.c
@@ -40,7 +40,7 @@ void BuildingInit(void)
}
-uint8_t BuildingGetHpFromID(uint8_t id)
+uint8_t BuildingGetHpFromID(TYPE_BUILDING_ID id)
{
return BuildingHPTable[id];
}
@@ -100,12 +100,12 @@ void BuildingDraw(TYPE_CAMERA * ptrCamera, TYPE_BUILDING * ptrBuilding, bool bSe
}
-uint8_t BuildingGetWidthFromID(uint8_t id)
+uint8_t BuildingGetWidthFromID(TYPE_BUILDING_ID id)
{
return GfxGetWidthFromSpriteData(BuildingSprTable[id]->Data);
}
-uint8_t BuildingGetHeightFromID(uint8_t id)
+uint8_t BuildingGetHeightFromID(TYPE_BUILDING_ID id)
{
return GfxGetHeightFromSpriteData(BuildingSprTable[id]->Data);
}
diff --git a/Libs/libarduino/Makefile b/Libs/libarduino/Makefile
new file mode 100644
index 0000000..04253ec
--- /dev/null
+++ b/Libs/libarduino/Makefile
@@ -0,0 +1,29 @@
+include ../../Makefile.cfg
+
+PROJECT=arduino
+LIBNAME=lib$(PROJECT).a
+INCDIR=../../../include/$(PROJECT)
+LIBS_FOLDER=../../../lib
+
+OBJECTS= wiring.o wiring_analog.o wiring_digital.o \
+ wiring_pulse.o wiring_shift.o HardwareSerial.o Print.o \
+ Tone.o WMath.o WString.o WInterrupts.o forward.o SPI.o
+
+default: $(OBJECTS)
+ avr-ar rcs $(LIBNAME) $^
+ mkdir -p $(INCDIR)
+ cp *.h $(INCDIR)/
+ mkdir -p $(LIBS_FOLDER)
+ mv $(LIBNAME) $(LIBS_FOLDER)
+ avr-size $(LIBS_FOLDER)/$(LIBNAME)
+
+%.o: %.cpp
+ $(CXX) $< -o $@ $(DEFINE) $(INCLUDE) $(CC_FLAGS)
+
+%.o: %.c
+ $(CC) $< -o $@ $(DEFINE) $(INCLUDE) $(CC_FLAGS)
+
+clean:
+ rm -f *.o
+
+.PHONY: default
diff --git a/Libs/libgamebuino/Makefile b/Libs/libgamebuino/Makefile
new file mode 100644
index 0000000..e1facfb
--- /dev/null
+++ b/Libs/libgamebuino/Makefile
@@ -0,0 +1,31 @@
+include ../../Makefile.cfg
+
+PROJECT=gamebuino
+LIBNAME=lib$(PROJECT)
+INCLUDE_FOLDERS=petit_fatfs tinyFAT arduino
+INCLUDE_FOLDER=../../../include
+LIBS_FOLDER = ../../../lib
+LIBS=-L $(LIBS_FOLDER) $(foreach lib,$(INCLUDE_FOLDERS), -l$(lib))
+INCLUDE= $(foreach dir,$(INCLUDE_FOLDERS),-I$/$(INCLUDE_FOLDER)/$(dir))
+CFLAGS=-mmcu=$(MCU) $(CPU_SPEED) -Wall -Os -c -ffunction-sections -fdata-sections $(INCLUDE) $(LIBS)
+
+OBJECTS= Backlight.o Battery.o Buttons.o Display.o font3x3.o \
+ font3x5.o font5x7.o Gamebuino.o settings.o Sound.o
+
+default: $(OBJECTS)
+ avr-ar rcs $(LIBNAME).a $^
+ mkdir -p $(INCLUDE_FOLDER)/$(PROJECT)
+ cp *.h $(INCLUDE_FOLDER)/$(PROJECT)
+ cp settings.c $(INCLUDE_FOLDER)/$(PROJECT)
+ mv $(LIBNAME).a $(LIBS_FOLDER)
+
+%.o: %.cpp
+ $(CXX) $< -o $@ $(INCLUDE) $(DEFINE) $(CC_FLAGS)
+
+%.o: %.c
+ $(CC) $< -o $@ $(INCLUDE) $(DEFINE) $(CC_FLAGS)
+
+
+clean:
+ rm -f *.o
+ rm -f $(LIBS_FOLDER)/$(LIBNAME).a
diff --git a/Libs/petit_fatfs/Makefile b/Libs/petit_fatfs/Makefile
new file mode 100644
index 0000000..83ddb2d
--- /dev/null
+++ b/Libs/petit_fatfs/Makefile
@@ -0,0 +1,29 @@
+include ../../Makefile.cfg
+
+INCLUDE_FOLDERS=arduino
+INCLUDE_FOLDER=../../../include
+LIBS_FOLDER = ../../../lib
+LIBS=-L $(LIBS_FOLDER) $(foreach lib,$(INCLUDE_FOLDERS), -l$(lib))
+INCLUDE= $(foreach dir,$(INCLUDE_FOLDERS),-I$/$(INCLUDE_FOLDER)/$(dir))
+
+PROJECT=petit_fatfs
+LIBNAME=lib$(PROJECT).a
+
+OBJECTS=mmc.o petit_fatfs.o pff.o
+
+default: $(OBJECTS)
+ avr-ar rcs $(LIBNAME) $^
+ mkdir -p $(INCLUDE_FOLDER)/$(PROJECT)
+ cp *.h $(INCLUDE_FOLDER)//$(PROJECT)
+ mv $(LIBNAME) $(LIBS_FOLDER)
+ avr-size $(LIBS_FOLDER)/$(LIBNAME)
+
+%.o: %.cpp
+ $(CXX) $< -o $@ $(DEFINE) $(INCLUDE) $(CC_FLAGS)
+
+%.o: %.c
+ $(CC) $< -o $@ $(DEFINE) $(INCLUDE) $(CC_FLAGS)
+
+clean:
+ rm -f $(OBJECTS)
+ rm -f $(LIBS_FOLDER)/$(LIBNAME)
diff --git a/Libs/tinyFAT/Makefile b/Libs/tinyFAT/Makefile
new file mode 100644
index 0000000..2640178
--- /dev/null
+++ b/Libs/tinyFAT/Makefile
@@ -0,0 +1,28 @@
+include ../../Makefile.cfg
+
+PROJECT=tinyFAT
+INCLUDE_FOLDERS=tinyFAT arduino
+INCLUDE_FOLDER=../../../include
+LIBS_FOLDER = ../../../lib
+LIBS=-L $(LIBS_FOLDER) $(foreach lib,$(INCLUDE_FOLDERS), -l$(lib))
+INCLUDE= $(foreach dir,$(INCLUDE_FOLDERS),-I$/$(INCLUDE_FOLDER)/$(dir))
+LIBNAME=lib$(PROJECT).a
+
+OBJECTS=mmc.o tinyFAT.o
+
+default: $(OBJECTS)
+ avr-ar rcs $(LIBNAME) $^
+ mkdir -p $(INCLUDE_FOLDER)/$(PROJECT)
+ cp *.h $(INCLUDE_FOLDER)/$(PROJECT)
+ mv $(LIBNAME) $(LIBS_FOLDER)
+ avr-size $(LIBS_FOLDER)/$(LIBNAME)
+
+%.o: %.cpp
+ $(CXX) $< -o $@ $(INCLUDE) $(DEFINE) $(CC_FLAGS)
+
+%.o: %.c
+ $(CC) $< -o $@ $(INCLUDE) $(DEFINE) $(CC_FLAGS)
+
+clean:
+ rm -f $(OBJECTS)
+ rm -f $(LIBS_FOLDER)/$(LIBNAME)
diff --git a/Player.cpp b/Player.cpp
index 39886a9..46a6fd0 100644
--- a/Player.cpp
+++ b/Player.cpp
@@ -199,7 +199,7 @@ bool Player::checkNewBuildingPosition(TYPE_COLLISION_BLOCK * cb)
return true;
}
-bool Player::createBuilding(uint8_t id, TYPE_COLLISION_BLOCK cb)
+bool Player::createBuilding(TYPE_BUILDING_ID id, TYPE_COLLISION_BLOCK cb)
{
if(checkNewBuildingPosition(&cb) == false)
{
diff --git a/Unit.c b/Unit.c
index 3bede4a..e0da0e6 100644
--- a/Unit.c
+++ b/Unit.c
@@ -9,6 +9,8 @@
* Defines *
* **************************************/
+#define MAX_ACTION_LEVELS 2
+
/* **************************************
* Local prototypes *
* **************************************/
@@ -28,16 +30,27 @@ typedef struct
void (*pAction)(TYPE_UNIT*);
}TYPE_UNIT_ACTION;
+typedef enum t_availableactions
+{
+ ACTION_BUILD = 0,
+ ACTION_ATTACK,
+ MAX_ACTIONS
+}UNIT_AVAILABLE_ACTIONS;
+
/* Sprites */
static TYPE_SPRITE PeasantSpr;
static TYPE_SPRITE PeasantWalkingSpr;
/* Tables */
-static uint8_t const UnitHPTable[] = { 25 };
-static uint8_t const UnitSpeedTable[] = { 1 };
+static uint8_t const UnitHPTable[] = { [PEASANT] = 25 };
+static uint8_t const UnitSpeedTable[] = { [PEASANT] = 1 };
-static TYPE_UNIT_ACTION const UnitActionsTable_Level0[] = { {"Build", NULL} };
-static TYPE_UNIT_ACTION const UnitActionsTable_Level1[] = { {"Barracks", &UnitBuildAccept} };
+static TYPE_UNIT_ACTION const UnitActionsTable_Level0[MAX_ACTIONS] = { [ACTION_BUILD] = {"Build", NULL},
+ [ACTION_ATTACK] = {"Attack", NULL} };
+static TYPE_UNIT_ACTION const UnitActionsTable_Level1[MAX_ACTIONS] = { {"Barracks", &UnitBuildAccept} };
+
+static TYPE_UNIT_ACTION* const UnitActionsTable_LevelX[MAX_ACTION_LEVELS] = { &UnitActionsTable_Level0 ,
+ &UnitActionsTable_Level1 };
static TYPE_SPRITE * const UnitSprTable[] = {&PeasantSpr};
static TYPE_SPRITE * const UnitWalkingSprTable[] = {&PeasantWalkingSpr};
@@ -210,10 +223,7 @@ void UnitHandler(TYPE_UNIT * ptrUnit)
ptrUnit->mirror = true;
}
- if(bMoving == false)
- {
- ptrUnit->walking = false;
- }
+ ptrUnit->walking = bMoving;
}
}