From 3994d87991496a140edbb7d67ddbebb9f82f3061 Mon Sep 17 00:00:00 2001 From: drumsetmonkey Date: Wed, 30 Sep 2015 08:06:06 -0400 Subject: Added quest files and file for names --- src/Quest.cpp | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main.cpp | 7 ++++++- 2 files changed, 68 insertions(+), 1 deletion(-) create mode 100644 src/Quest.cpp (limited to 'src') diff --git a/src/Quest.cpp b/src/Quest.cpp new file mode 100644 index 0000000..a42e42c --- /dev/null +++ b/src/Quest.cpp @@ -0,0 +1,62 @@ +#include + +const Quest QuestList[TOTAL_QUESTS]={ + Quest("Test","A test quest",0) +}; + +Quest::Quest(const char *t,const char *d,unsigned int x){ + size_t len; + title=(char *)malloc((len=strlen(t))); + strncpy(title,t,len); + desc=(char *)malloc((len=strlen(d))); + strncpy(desc,d,len); + xp=x; +} +Quest::~Quest(){ + free(title); + free(desc); + xp=0; +} + +QuestHandler::QuestHandler(){ + ccnt=0; +} +int QuestHandler::assign(const char *t){ + unsigned int i=0; + if(ccnt==QUEST_LIMIT) + return -1; + for(;ititle,t)){ + for(i++;ititle,t)){ + j=current[i]->xp; + for(i++;ibuild; int mx, my; +FILE* config; +FILE* names; + void logic(); void render(); @@ -151,6 +154,7 @@ void render(){ glMatrixMode(GL_PROJECTION); //set the matrix mode as projection so we can set the ortho size and the camera settings later on glPushMatrix(); //push the matrix to the top of the matrix stack glLoadIdentity(); //replace the entire matrix stack with the updated GL_PROJECTION mode +typedef struct { char* first; char glOrtho(player->loc.x-SCREEN_WIDTH/2,player->loc.x+SCREEN_WIDTH/2,0,SCREEN_HEIGHT,-1,1); glMatrixMode(GL_MODELVIEW); //set the matrix to modelview so we can draw objects glPushMatrix(); //push the matrix to the top of the matrix stack @@ -214,7 +218,8 @@ void logic(){ if(entity[i]->alive&&entity[i]->type == NPCT){ entity[i]->wander((rand()%120 + 30), &entity[i]->vel); if( pow((entity[i]->loc.x - player->loc.x),2) + pow((entity[i]->loc.y - player->loc.y),2) <= pow(35*HLINE,2)){ - if(mx >= entity[i]->loc.x && mx <= entity[i]->loc.x + entity[i]->width && my >= entity[i]->loc.y && my <= entity[i]->loc.y + entity[i]->width && (SDL_GetMouseState(NULL, NULL) & SDL_BUTTON(SDL_BUTTON_RIGHT))) + if(mx >= entity[i]->loc.x && mx <= entity[i]->loc.x + entity[i]->width && my >= entity[i]->loc.y && my <= entity[i]->loc.y + entity[i]->width + && (SDL_GetMouseState(NULL, NULL) & SDL_BUTTON(SDL_BUTTON_RIGHT))) entity[i]->interact(); } } -- cgit v1.2.3