gtkballs.c: consistent indentation
This commit is contained in:
parent
efce62f435
commit
751e9cf82e
249
src/gtkballs.c
249
src/gtkballs.c
@ -24,161 +24,166 @@
|
|||||||
#include "mainwin.h"
|
#include "mainwin.h"
|
||||||
|
|
||||||
gint destroy_lines(gboolean count_score) {
|
gint destroy_lines(gboolean count_score) {
|
||||||
gint i = game_destroy_lines(count_score);
|
gint i = game_destroy_lines(count_score);
|
||||||
if(count_score && i) {
|
if (count_score && i) {
|
||||||
gint ml = rules_get_destroy();
|
gint ml = rules_get_destroy();
|
||||||
gint sc = game_get_score();
|
gint sc = game_get_score();
|
||||||
gint nsc = sc + ml * 2 + (i - ml) * (i - ml) * 2 + (1 - pref_get_show_next_colors());
|
gint nsc = sc + ml * 2 + (i - ml) * (i - ml) * 2 + (1 - pref_get_show_next_colors());
|
||||||
mw_set_user_score(nsc);
|
mw_set_user_score(nsc);
|
||||||
}
|
}
|
||||||
draw_board();
|
draw_board();
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
|
|
||||||
void undo_move(GtkWidget *widget, gpointer data) {
|
void undo_move(GtkWidget *widget, gpointer data) {
|
||||||
game_restore_state_from_undo();
|
game_restore_state_from_undo();
|
||||||
stop_jumping_animation();
|
stop_jumping_animation();
|
||||||
mw_set_hi_score(game_get_hi_score());
|
mw_set_hi_score(game_get_hi_score());
|
||||||
mw_set_user_score(game_get_score());
|
mw_set_user_score(game_get_score());
|
||||||
menu_set_sensitive_undo(FALSE);
|
menu_set_sensitive_undo(FALSE);
|
||||||
draw_board();
|
draw_board();
|
||||||
draw_next_balls();
|
draw_next_balls();
|
||||||
}
|
}
|
||||||
|
|
||||||
gint random_color(void) {
|
gint random_color(void) {
|
||||||
return (gint)(((gfloat)rules_get_colors()) * rand() / (RAND_MAX + 1.0));
|
return (gint)(((gfloat)rules_get_colors()) * rand() / (RAND_MAX + 1.0));
|
||||||
}
|
}
|
||||||
|
|
||||||
gint random_cell(void) {
|
gint random_cell(void) {
|
||||||
return (gint)(((gfloat)rules_get_width() * rules_get_height()) * rand() / (RAND_MAX + 1.0));
|
return (gint)(((gfloat)rules_get_width() * rules_get_height()) * rand() / (RAND_MAX + 1.0));
|
||||||
}
|
}
|
||||||
|
|
||||||
void new_turn(gint number, gboolean first) {
|
void new_turn(gint number, gboolean first)
|
||||||
gint i, k = 0, free_cells_number, c;
|
{
|
||||||
struct score_board scoreboard[10];
|
gint i, k = 0, free_cells_number, c;
|
||||||
|
struct score_board scoreboard[10];
|
||||||
|
|
||||||
do {
|
do {
|
||||||
timer_start();
|
timer_start();
|
||||||
|
|
||||||
k = 0;
|
k = 0;
|
||||||
if(number < rules_get_next()) {
|
if (number < rules_get_next()) {
|
||||||
number = rules_get_next();
|
number = rules_get_next();
|
||||||
}
|
}
|
||||||
|
|
||||||
if((free_cells_number = game_count_free_cells()) <= number) {
|
if ((free_cells_number = game_count_free_cells()) <= number) {
|
||||||
if(!read_score(scoreboard, NULL, NULL) ||
|
if (!read_score(scoreboard, NULL, NULL) ||
|
||||||
game_get_score() > scoreboard[9].score) {
|
game_get_score() > scoreboard[9].score) {
|
||||||
input_name_dialog();
|
input_name_dialog();
|
||||||
}
|
}
|
||||||
new_game();
|
new_game();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
do {
|
do {
|
||||||
i = random_cell();
|
i = random_cell();
|
||||||
if(board_get_at_node(i) < 1) {
|
if (board_get_at_node(i) < 1) {
|
||||||
if(first) {
|
if (first) {
|
||||||
c = 1 + random_color();
|
c = 1 + random_color();
|
||||||
board_set_at_node(i, c);
|
board_set_at_node(i, c);
|
||||||
} else {
|
} else {
|
||||||
board_set_at_node(i, next_get(k));
|
board_set_at_node(i, next_get(k));
|
||||||
}
|
}
|
||||||
k++;
|
k++;
|
||||||
} else {
|
} else {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
/* I hope that k!=0 */
|
/* I hope that k!=0 */
|
||||||
if(k <= rules_get_next()) {
|
if (k <= rules_get_next()) {
|
||||||
next_set(k - 1, 1 + random_color());
|
next_set(k - 1, 1 + random_color());
|
||||||
}
|
}
|
||||||
} while(k < ((number < free_cells_number) ? number : free_cells_number));
|
} while (k < ((number < free_cells_number) ? number : free_cells_number));
|
||||||
|
|
||||||
if(!first) {
|
if (!first) {
|
||||||
draw_next_balls();
|
draw_next_balls();
|
||||||
/* if line complete, don't increase user's score--it's not his merit */
|
/* if line complete, don't increase user's score--it's not his merit */
|
||||||
destroy_lines(FALSE);
|
destroy_lines(FALSE);
|
||||||
}
|
}
|
||||||
} while((free_cells_number = game_count_free_cells()) == rules_get_width() * rules_get_height());
|
} while ((free_cells_number = game_count_free_cells()) == rules_get_width() * rules_get_height());
|
||||||
}
|
}
|
||||||
|
|
||||||
void new_game(void){
|
void new_game(void)
|
||||||
stop_jumping_animation();
|
{
|
||||||
game_init_game(NULL, NULL);
|
stop_jumping_animation();
|
||||||
menu_set_sensitive_undo(FALSE);
|
game_init_game(NULL, NULL);
|
||||||
new_turn(rules_get_destroy(), TRUE);
|
menu_set_sensitive_undo(FALSE);
|
||||||
mw_set_user_score(0);
|
new_turn(rules_get_destroy(), TRUE);
|
||||||
draw_next_balls();
|
mw_set_user_score(0);
|
||||||
draw_board();
|
draw_next_balls();
|
||||||
|
draw_board();
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(int argc, char **argv) {
|
|
||||||
gint i;
|
|
||||||
struct timeval tv;
|
|
||||||
struct timezone tz;
|
|
||||||
struct score_board scoreboard[10];
|
|
||||||
gchar *err, *mapfile;
|
|
||||||
|
|
||||||
/* setup all i18n stuff */
|
int main(int argc, char **argv)
|
||||||
|
{
|
||||||
|
gint i;
|
||||||
|
struct timeval tv;
|
||||||
|
struct timezone tz;
|
||||||
|
struct score_board scoreboard[10];
|
||||||
|
gchar *err, *mapfile;
|
||||||
|
|
||||||
|
/* setup all i18n stuff */
|
||||||
#ifdef ENABLE_NLS
|
#ifdef ENABLE_NLS
|
||||||
bindtextdomain (PACKAGE, LOCALEDIR);
|
bindtextdomain (PACKAGE, LOCALEDIR);
|
||||||
textdomain (PACKAGE);
|
textdomain (PACKAGE);
|
||||||
bind_textdomain_codeset(PACKAGE, "UTF8");
|
bind_textdomain_codeset(PACKAGE, "UTF8");
|
||||||
#endif /* ENABLE_NLS */
|
#endif /* ENABLE_NLS */
|
||||||
|
|
||||||
/* drop privileges after spawning child with extra privs */
|
/* drop privileges after spawning child with extra privs */
|
||||||
if(score_setup() == -1) return 1;
|
if (score_setup() == -1)
|
||||||
setregid(getgid(), getgid());
|
return 1;
|
||||||
|
setregid(getgid(), getgid());
|
||||||
|
|
||||||
/* initialize random seed */
|
/* initialize random seed */
|
||||||
gettimeofday(&tv, &tz);
|
gettimeofday(&tv, &tz);
|
||||||
srand((unsigned int)tv.tv_usec);
|
srand((unsigned int)tv.tv_usec);
|
||||||
|
|
||||||
/* load user's preferences */
|
/* load user's preferences */
|
||||||
load_preferences();
|
load_preferences();
|
||||||
|
|
||||||
/* initialize gtk */
|
/* initialize gtk */
|
||||||
gtk_init(&argc, &argv);
|
gtk_init (&argc, &argv);
|
||||||
|
|
||||||
/* load theme, fallback to default if specifed theme cannot be loaded */
|
/* load theme, fallback to default if specifed theme cannot be loaded */
|
||||||
if(!(i = load_theme(pref_get_theme_name()))) {
|
if (!(i = load_theme(pref_get_theme_name()))) {
|
||||||
if(strcmp(pref_get_theme_name(), pref_get_default_theme_name()) != 0) {
|
if (strcmp(pref_get_theme_name(), pref_get_default_theme_name()) != 0) {
|
||||||
err = g_strdup_printf(_("Failed loading theme \"%s\"! Trying \"%s\"\n"), pref_get_theme_name(), pref_get_default_theme_name());
|
err = g_strdup_printf(_("Failed loading theme \"%s\"! Trying \"%s\"\n"), pref_get_theme_name(), pref_get_default_theme_name());
|
||||||
ut_simple_message_box(err);
|
ut_simple_message_box(err);
|
||||||
g_free(err);
|
g_free(err);
|
||||||
pref_set_theme_name(pref_get_default_theme_name());
|
pref_set_theme_name(pref_get_default_theme_name());
|
||||||
i = load_theme(pref_get_theme_name());
|
i = load_theme(pref_get_theme_name());
|
||||||
}
|
}
|
||||||
if(!i) {
|
if (!i) {
|
||||||
err = g_strdup_printf(_("Failed loading theme \"%s\"! Exiting.\n"), pref_get_theme_name());
|
err = g_strdup_printf(_("Failed loading theme \"%s\"! Exiting.\n"), pref_get_theme_name());
|
||||||
ut_simple_message_box(err);
|
ut_simple_message_box(err);
|
||||||
g_free(err);
|
g_free(err);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* create main application window */
|
/* create main application window */
|
||||||
mw_create(rules_get_width() * theme_get_width(), rules_get_height() * theme_get_height());
|
mw_create(rules_get_width() * theme_get_width(), rules_get_height() * theme_get_height());
|
||||||
|
|
||||||
/* initialize and start new game */
|
/* initialize and start new game */
|
||||||
game_init_game(NULL, NULL);
|
game_init_game(NULL, NULL);
|
||||||
new_turn(rules_get_destroy(), TRUE);
|
new_turn(rules_get_destroy(), TRUE);
|
||||||
remake_board(-1, 1);
|
remake_board(-1, 1);
|
||||||
|
|
||||||
/* read and set scores */
|
/* read and set scores */
|
||||||
if(!read_score(scoreboard, NULL, NULL)) {
|
if (!read_score(scoreboard, NULL, NULL)) {
|
||||||
ut_simple_message_box(_("Unable to read score.\n"));
|
ut_simple_message_box(_("Unable to read score.\n"));
|
||||||
}
|
}
|
||||||
mw_set_hi_score(scoreboard[0].score);
|
mw_set_hi_score(scoreboard[0].score);
|
||||||
mw_set_user_score(0);
|
mw_set_user_score(0);
|
||||||
|
|
||||||
mapfile = g_strconcat(getenv("HOME"), G_DIR_SEPARATOR_S, ".gtkballs",
|
mapfile = g_strconcat(getenv("HOME"), G_DIR_SEPARATOR_S, ".gtkballs",
|
||||||
G_DIR_SEPARATOR_S, "accel.map", NULL);
|
G_DIR_SEPARATOR_S, "accel.map", NULL);
|
||||||
gtk_accel_map_load(mapfile);
|
gtk_accel_map_load (mapfile);
|
||||||
|
|
||||||
/* enter main application loop */
|
/* enter main application loop */
|
||||||
gtk_main();
|
gtk_main();
|
||||||
|
|
||||||
gtk_accel_map_save(mapfile);
|
gtk_accel_map_save (mapfile);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user