#include <common.h> #include <world.h> #include <ui.h> #include <entities.h> extern World *currentWorld; extern std::vector<Entity*>entity; extern std::vector<NPC>npc; extern std::vector<Structures *>build; extern Player *player; int giveTestQuest(NPC *speaker){ ui::dialogBox(speaker->name,"Here, have a quest!"); player->qh.assign("Test"); return 0; } int compTestQuest(NPC *speaker){ if(player->qh.hasQuest("Test")){ ui::dialogBox(speaker->name,"Ooo, that's a nice quest you got there. Lemme finish that for you ;)."); player->qh.finish("Test"); return 0; }else{ ui::dialogBox(speaker->name,"You need to get a quest from %s first.",entity[1]->name); return 1; } } void initEverything(void){ unsigned int i; World *test=new World(); test->generate(SCREEN_WIDTH/2); test->addLayer(400); test->addLayer(100); test->addPlatform(150,100,100,10); test->addHole(100,150); currentWorld=test; // Make the player player=new Player(); player->spawn(0,100); // Make structures entity.push_back(new Entity()); build.push_back(new Structures()); entity[0]=build[0]; build[0]->spawn(STRUCTURET,0,10); IndoorWorld *iw=new IndoorWorld(); iw->generate(200); build[0]->inside=iw; for(i=0;i<entity.size()+1;i++){ entity[i]->inWorld=test; switch(i){ case 1: NPCp(entity[i])->addAIFunc(giveTestQuest); break; case 2: NPCp(entity[i])->addAIFunc(compTestQuest); break; default: break; } } }