Esempio n. 1
0
static void
start_board (GcomprisBoard *agcomprisBoard)
{

  if(agcomprisBoard!=NULL)
    {
      gcomprisBoard=agcomprisBoard;
      gcomprisBoard->level=1;
      gcomprisBoard->maxlevel=6;
      gcomprisBoard->sublevel=1;
      gcomprisBoard->number_of_sublevel=1; /* Go to next level after this number of 'play' */
      gc_bar_set(GC_BAR_LEVEL);

      gc_set_default_background(goo_canvas_get_root_item(gcomprisBoard->canvas));

      gc_drag_start(goo_canvas_get_root_item(gcomprisBoard->canvas),
		    (GcDragFunc)item_event,
		    GC_DRAG_MODE_DEFAULT);

      hanoi_next_level();

      gamewon = FALSE;
      pause_board(FALSE);
    }
}
Esempio n. 2
0
/* =====================================================================
 *
 * =====================================================================*/
static void start_board (GcomprisBoard *agcomprisBoard) {

  if(agcomprisBoard!=NULL) {

    gcomprisBoard=agcomprisBoard;

    /* disable im_context */
    gcomprisBoard->disable_im_context = TRUE;

    gc_set_default_background(goo_canvas_get_root_item(gcomprisBoard->canvas));

    gcomprisBoard->level=1;
    gcomprisBoard->maxlevel=20;

    /* The mode defines if we run 2D or 3D */
    /* Default mode is 2D */
    modeRelative=FALSE;
    modeIsInvisible=FALSE;
    run_fast_possible=TRUE;
    if(!gcomprisBoard->mode)
      modeIs2D=TRUE;
    else if(g_ascii_strncasecmp(gcomprisBoard->mode, "2DR", 3)==0) {
      /* 2D Relative */
      modeIs2D=TRUE;
      modeRelative=TRUE;
    } else if(g_ascii_strncasecmp(gcomprisBoard->mode, "2DI", 3)==0) {
      modeIs2D=TRUE;
      modeIsInvisible=TRUE;
    } else if(g_ascii_strncasecmp(gcomprisBoard->mode, "2D", 2)==0) {
      modeIs2D=TRUE;
    } else if(g_ascii_strncasecmp(gcomprisBoard->mode, "3D", 2)==0) {
      modeIs2D=FALSE;
      run_fast_possible=FALSE;
    }

    if(!modeIs2D || modeIsInvisible) {
      RsvgHandle *svg_handle;
      svg_handle = gc_rsvg_load("maze/maze-2d-bubble.svg");
      if(svg_handle) {
	gc_bar_set_repeat_icon(svg_handle);
	g_object_unref(svg_handle);
	gc_bar_set(GC_BAR_LEVEL|GC_BAR_REPEAT_ICON);
      } else {
	gc_bar_set(GC_BAR_LEVEL|GC_BAR_REPEAT);
      }
    } else {
      /* 2D Regular mode */
      gc_bar_set(GC_BAR_LEVEL);
    }
    gc_bar_location(-1, -1, 0.6);

    gamewon = FALSE;

    maze_next_level();
    pause_board(FALSE);
  }
}
Esempio n. 3
0
static void
twoDdisplay()
{
  gc_sound_play_ogg ("sounds/flip.wav", NULL);
  gc_set_default_background(goo_canvas_get_root_item(gcomprisBoard->canvas));

  if (threedgroup)
    g_object_set (threedgroup, "visibility", GOO_CANVAS_ITEM_INVISIBLE, NULL);
  g_object_set (boardRootItem, "visibility", GOO_CANVAS_ITEM_VISIBLE, NULL);
  threeDactive=FALSE;
}
Esempio n. 4
0
/* set initial values for the next level */
static void fifteen_next_level()
{
  gc_set_default_background(goo_canvas_get_root_item(gcomprisBoard->canvas));

  gc_bar_set_level(gcomprisBoard);

  fifteen_destroy_all_items();
  gamewon = FALSE;

  /* Create the level */
  fifteen_create_item(goo_canvas_get_root_item(gcomprisBoard->canvas));


}
Esempio n. 5
0
static void start_board (GcomprisBoard *agcomprisBoard)
{

  if(agcomprisBoard!=NULL)
    {
      gcomprisBoard=agcomprisBoard;
      gcomprisBoard->level=1;
      gcomprisBoard->maxlevel=1;
      gcomprisBoard->sublevel=1;
      gcomprisBoard->number_of_sublevel=1; /* Go to next level after this number of 'play' */
      gc_bar_set(0);
      gc_bar_location(10, -1, 0.6);

      gc_set_default_background(goo_canvas_get_root_item(gcomprisBoard->canvas));

      wordprocessor_create();

      pause_board(FALSE);

    }
}