Example #1
0
	bool Pipeline::loadCommands(TiXmlElement *xml)
	{
		for (TiXmlElement *stageelem = xml->FirstChildElement("Stage");
		     stageelem != 0;
		     stageelem = stageelem->NextSiblingElement("Stage"))
		{
			PipelineStage *newstage = new PipelineStage;
			newstage->enabled = true;
			const char *name = stageelem->Attribute("name");
			if (name)
				newstage->name = name;
			if (!loadStage(stageelem, newstage))
			{
				delete newstage;
				return false;
			}
			stages.push_back(newstage);
		}
		return true;
	}
Example #2
0
	Level::Level(string folder_p, string game_name) {
		folder = folder_p;
		terrain_info_file = "terrain";
		direct_light_name = "";

		spawn_yaw         = 0.0f;
		spawn_dead_height = -3000.0f;
		spawn_camera_view = LIBGENS_LEVEL_CAMERA_VIEW_FORWARD;
		spawn_position    = Vector3(0.0f, 0.0f, 0.0f);
		spawn_mode        = "Stand";
		spawn_speed       = 0.0f;
		spawn_time        = 0.0f;

		game_mode = LIBGENS_LEVEL_GAME_GENERATIONS;

		if (game_name == LIBGENS_LEVEL_GAME_STRING_UNLEASHED) {
			game_mode = LIBGENS_LEVEL_GAME_UNLEASHED;
		}

		loadStage();
		loadSceneEffect();
		loadSets();
		loadTerrain();
	}
Example #3
0
void MenuUpdate()
{
  Uint8 *keys;
  static float pulse=0.5f;
  static int delay=190;
  static int  flag=0;
  static float fadein =0.1f;
  static int cursor=0;
  keys = SDL_GetKeyState(NULL);
  if(inMenu == 2)
  {
    if(fadein < 1 && delay > 80)
    { 
      fadein += 0.03f;
    }else if(fadein > 0 && delay < 80)fadein -= 0.02f;
    glColor4f(fadein,fadein,fadein,fadein);
    DrawSprite(zfactory,(S_Data.xres*0.5f)-480,(S_Data.yres*0.5f)-450,0,0.8f);
    glColor4f(1,1,1,1);
    if(delay > 0) delay--;
    if(delay == 0)
    {
      delay=250;
      fadein =0.1f;
      inMenu = 3;
      return;
    }
  }
  if(inMenu == 3)
  {
    if(fadein < 1 && delay > 80)
    { 
      fadein += 0.03f;
    }else if(fadein > 0 && delay < 60)fadein -= 0.02f;
    glColor4f(fadein,fadein,fadein,fadein);
    playVideo("images/regoEngine",(S_Data.xres*0.5f)-128,(S_Data.yres*0.5f)-128, 256, 256, 150);
    glColor4f(1,1,1,1);
    if(delay > 0) delay--;
    if(delay == 0)
    {
      delay=10;
      fadein =0.1f;
      playergraphic(0,-10,0);
      inMenu = 1;
      return;
    }
  }
  if(inMenu == 1)
  {
    if(delay > 0) delay--;
    if((keys[SDLK_UP] || SDL_JoystickGetAxis(Stick,yaxis) < -32000 || SDL_JoystickGetButton(Stick,up)) && delay <= 0)
    {
      if(cursor != 0)cursor--;
      delay=10;
    }
    if((keys[SDLK_DOWN] || SDL_JoystickGetAxis(Stick,yaxis) > 32000 || SDL_JoystickGetButton(Stick,down)) && delay <= 0)
    {
      if(cursor != 2)cursor++;
      delay=10;
    }
    if(fadein < 1) fadein += 0.01f;
    if(flag == 0)
    {
      if(pulse < 1)
      {
        pulse += 0.08f;
      }else flag = 1;
    }
    if(flag == 1)
    {
      if(pulse > 0.5f)
      {
        pulse -= 0.08f;
      }else flag = 0;
    }

    if((keys[SDLK_RETURN]|| SDL_JoystickGetButton(Stick,fireNormalGun))&& delay <= 0)
    {
      if(cursor == 1)
      {
        inMenu=0;
        fadein =0.0f;
        loadStage("stages/stage1normal");
        return;
      }
      if(cursor == 0)
      {
        inMenu=0;
        fadein =0.0f;
        loadStage("stages/stage1easy");
        return;
      }
      if(cursor == 2)
      {
        inMenu=0;
        fadein =0.0f;
        loadStage("stages/stage1");
        return;
      }
    }
    drawScene();
    glColor4f(fadein,fadein,fadein,fadein);
    glEnable(GL_BLEND);
    DrawTxt("Shape Shifter",videobuffer,0,200,Red_,F_Medium);
    glDisable(GL_BLEND);
    if(fadein >= 0.6f)
    {
      if(cursor == 0)
      {
        glColor4f(pulse,0,0,1);
        DrawTxt("Easy",videobuffer,128,S_Data.yres - (700*0.5f),Red_,F_Small);
        glColor4f(1,1,1,1);
      }else  DrawTxt("Easy",videobuffer,128,S_Data.yres - (700*0.5f),Red_,F_Small);
      if(cursor == 1)
      {
        glColor4f(pulse,0,0,1);
        DrawTxt("Normal",videobuffer,128,S_Data.yres - (500*0.5f),Red_,F_Small);
        glColor4f(1,1,1,1);
      }else  DrawTxt("Normal",videobuffer,128,S_Data.yres - (500*0.5f),Red_,F_Small);
      if(cursor == 2)
      {
        glColor4f(pulse,0,0,1);
        DrawTxt("Extreme",videobuffer,128,S_Data.yres - (300*0.5f),Red_,F_Small);
        glColor4f(1,1,1,1);
      }else  DrawTxt("Extreme",videobuffer,128,S_Data.yres - (300*0.5f),Red_,F_Small);
    }else delay = 2;
    glColor4f(1,1,1,1);
  }

}