aspect ratio tweaks

This commit is contained in:
Sebastian Krzyszkowiak 2012-12-11 02:04:31 +01:00
parent 4792af13ec
commit 6ddf347f8f
5 changed files with 48 additions and 31 deletions

15
REFACTORING Normal file
View file

@ -0,0 +1,15 @@
[X] Loading
[X] Menu
[X] Intro
[X] Moonwalk
[X] Pauza
[ ] Mapa
[ ] Obrazek
[ ] Wskaźniki
[ ] Level 1
[ ] Przeszkody
[ ] HP
[ ] Pozycja Derpy
[ ] Animacja Derpy
[ ] Owlicious
[ ] About

View file

@ -34,7 +34,7 @@ void AnimPage(struct Game *game, int page, ALLEGRO_COLOR tint) {
if (page==3) { amount1=3; amount2=3; }
if (page==5) { amount1=5; amount2=3; anim*=2; }
if (page<6) al_draw_tinted_bitmap_region(game->intro.animsprites[page-1],tint,game->viewportWidth*0.3125*(int)fmod(anim,amount1),game->viewportHeight*0.63*(((int)(anim/amount1))%amount2),game->viewportWidth*0.3125, game->viewportHeight*0.63,offset+game->viewportWidth*0.08, game->viewportHeight*0.18,0);
if (page<6) al_draw_tinted_bitmap_region(game->intro.animsprites[page-1],tint,game->viewportHeight*1.6*0.3125*(int)fmod(anim,amount1),game->viewportHeight*0.63*(((int)(anim/amount1))%amount2),game->viewportHeight*1.6*0.3125, game->viewportHeight*0.63,offset+game->viewportWidth*0.08, game->viewportHeight*0.18,0);
amount1 = 2;
amount2 = 2;
@ -42,7 +42,7 @@ void AnimPage(struct Game *game, int page, ALLEGRO_COLOR tint) {
if (page==2) { amount1=3; amount2=3; }
if (page==4) { amount1=5; amount2=3; anim*=2; }
if (page<5) al_draw_tinted_bitmap_region(game->intro.animsprites[page],tint,game->viewportWidth*0.3125*(int)fmod(anim,amount1),game->viewportHeight*0.63*(((int)(anim/amount1))%amount2),game->viewportWidth*0.3125, game->viewportHeight*0.63,offset+game->viewportWidth*1.08, game->viewportHeight*0.18,0);
if (page<5) al_draw_tinted_bitmap_region(game->intro.animsprites[page],tint,game->viewportHeight*1.6*0.3125*(int)fmod(anim,amount1),game->viewportHeight*0.63*(((int)(anim/amount1))%amount2),game->viewportHeight*1.6*0.3125, game->viewportHeight*0.63,offset+game->viewportWidth*1.08, game->viewportHeight*0.18,0);
}
void FillPage(struct Game *game, int page) {
@ -109,9 +109,9 @@ void FillPage(struct Game *game, int page) {
draw_text(4, "turned his muffinzombies against Twilight");
draw_text(4, "and her friends, trapping them in their");
draw_text(4, "own homes. With the bearers of the");
draw_text(4, "Elements out of the way, he now waits until");
draw_text(4, "chaos takes hold of the world, so he can");
draw_text(4, "rule Equestria once again.");
draw_text(4, "Elements out of the way, he now waits");
draw_text(4, "until chaos takes hold of the world,");
draw_text(4, "so he can rule Equestria once again.");
al_hold_bitmap_drawing(false);
break;
case 5:
@ -213,15 +213,15 @@ void Intro_Preload(struct Game *game, void (*progress)(struct Game*, float)) {
game->intro.in_animation = false;
game->intro.anim = 0;
game->intro.animsprites[0] = LoadScaledBitmap("intro/1.png", (int)(game->viewportWidth*0.3125)*2, game->viewportHeight*0.63*2);
game->intro.animsprites[0] = LoadScaledBitmap("intro/1.png", (int)(game->viewportHeight*1.6*0.3125)*2, game->viewportHeight*0.63*2);
PROGRESS;
game->intro.animsprites[1] = LoadScaledBitmap("intro/2.png", (int)(game->viewportWidth*0.3125)*4, game->viewportHeight*0.63*3);
game->intro.animsprites[1] = LoadScaledBitmap("intro/2.png", (int)(game->viewportHeight*1.6*0.3125)*4, game->viewportHeight*0.63*3);
PROGRESS;
game->intro.animsprites[2] = LoadScaledBitmap("intro/3.png", (int)(game->viewportWidth*0.3125)*3, game->viewportHeight*0.63*3);
game->intro.animsprites[2] = LoadScaledBitmap("intro/3.png", (int)(game->viewportHeight*1.6*0.3125)*3, game->viewportHeight*0.63*3);
PROGRESS;
game->intro.animsprites[3] = LoadScaledBitmap("intro/4.png", (int)(game->viewportWidth*0.3125)*2, game->viewportHeight*0.63*2);
game->intro.animsprites[3] = LoadScaledBitmap("intro/4.png", (int)(game->viewportHeight*1.6*0.3125)*2, game->viewportHeight*0.63*2);
PROGRESS;
game->intro.animsprites[4] = LoadScaledBitmap("intro/5.png", (int)(game->viewportWidth*0.3125)*5, game->viewportHeight*0.63*3);
game->intro.animsprites[4] = LoadScaledBitmap("intro/5.png", (int)(game->viewportHeight*1.6*0.3125)*5, game->viewportHeight*0.63*3);
PROGRESS;
game->intro.table_bitmap =LoadScaledBitmap("intro/paper.png", game->viewportWidth, game->viewportHeight);

View file

@ -81,10 +81,11 @@ void Loading_Load(struct Game *game) {
game->loading.loading_bitmap = al_create_bitmap(game->viewportWidth, game->viewportHeight);
game->loading.image = LoadScaledBitmap("loading.png", game->viewportWidth, game->viewportHeight);
game->loading.image = LoadScaledBitmap("loading.png", game->viewportHeight*2, game->viewportHeight);
al_set_target_bitmap(game->loading.loading_bitmap);
al_draw_bitmap(game->loading.image, 0, 0, 0);
al_clear_to_color(al_map_rgb(193,225,218));
al_draw_bitmap(game->loading.image, game->viewportWidth-al_get_bitmap_width(game->loading.image), 0, 0);
al_draw_text_with_shadow(game->font, al_map_rgb(255,255,255), game->viewportWidth*0.0234, game->viewportHeight*0.84, ALLEGRO_ALIGN_LEFT, "Loading...");
al_draw_filled_rectangle(0, game->viewportHeight*0.985, game->viewportWidth, game->viewportHeight, al_map_rgba(128,128,128,128));
al_set_target_bitmap(al_get_backbuffer(game->display));

View file

@ -124,8 +124,8 @@ void Menu_Draw(struct Game *game) {
if (tint < 0.000004) { PrintConsole(game, "random tint %f", tint); game->menu.mountain_position = (game->viewportWidth*(rand()/(float)RAND_MAX)/2)+game->viewportWidth/2; }
al_draw_tinted_bitmap(game->menu.mountain,al_map_rgba_f(tint,tint,tint,tint),game->menu.mountain_position, 0,0);
al_draw_scaled_bitmap(game->menu.cloud,0,0,al_get_bitmap_width(game->menu.cloud), al_get_bitmap_height(game->menu.cloud), game->viewportWidth*(sin((game->menu.cloud_position/40)-4.5)-0.3), game->viewportHeight*0.35, al_get_bitmap_width(game->menu.cloud)/2, al_get_bitmap_height(game->menu.cloud)/2,0);
al_draw_bitmap(game->menu.cloud2,game->viewportWidth*(game->menu.cloud2_position/100.0), game->viewportHeight/1.5,0);
al_draw_bitmap(game->menu.image,0, game->viewportHeight*0.55,0);
al_draw_bitmap(game->menu.cloud2,game->viewportWidth*(game->menu.cloud2_position/100.0), game->viewportHeight-(game->viewportWidth*(1240.0/3910.0))*0.7,0);
al_draw_bitmap(game->menu.image,0, game->viewportHeight-(game->viewportWidth*(1240.0/3910.0)),0);
al_draw_bitmap(game->menu.pinkcloud_bitmap,(game->viewportWidth*0.12) + (cos((game->menu.cloud_position/25+80)*1.74444))*40, 0,0);
al_draw_bitmap(game->menu.cloud,game->viewportWidth*game->menu.cloud_position/100, game->viewportHeight*0.1,0);
@ -187,19 +187,19 @@ void Menu_Preload(struct Game *game, void (*progress)(struct Game*, float)) {
game->menu.options.width = game->width;
game->menu.options.height = game->height;
game->menu.loaded = true;
game->menu.image = LoadScaledBitmap( "menu/menu.png", game->viewportWidth, game->viewportHeight*0.45);
game->menu.image = LoadScaledBitmap( "menu/menu.png", game->viewportWidth, game->viewportWidth*(1240.0/3910.0));
PROGRESS;
game->menu.mountain = LoadScaledBitmap( "menu/mountain.png", game->viewportWidth*0.055, game->viewportHeight/9 );
game->menu.mountain = LoadScaledBitmap( "menu/mountain.png", game->viewportHeight*1.6*0.055, game->viewportHeight/9 );
PROGRESS;
game->menu.cloud = LoadScaledBitmap( "menu/cloud.png", game->viewportWidth*0.5, game->viewportHeight*0.25 );
game->menu.cloud = LoadScaledBitmap( "menu/cloud.png", game->viewportHeight*1.6*0.5, game->viewportHeight*0.25 );
PROGRESS;
game->menu.cloud2 = LoadScaledBitmap( "menu/cloud2.png", game->viewportWidth*0.2, game->viewportHeight*0.1 );
game->menu.cloud2 = LoadScaledBitmap( "menu/cloud2.png", game->viewportHeight*1.6*0.2, game->viewportHeight*0.1 );
PROGRESS;
game->menu.logo = LoadScaledBitmap( "menu/logo.png", game->viewportWidth*0.3, game->viewportHeight*0.35 );
game->menu.blurbg = al_create_bitmap(game->viewportWidth*0.3, game->viewportHeight*0.35);
game->menu.blurbg2 = al_create_bitmap(game->viewportWidth*0.3, game->viewportHeight*0.35);
game->menu.logo = LoadScaledBitmap( "menu/logo.png", game->viewportHeight*1.6*0.3, game->viewportHeight*0.35 );
game->menu.blurbg = al_create_bitmap(game->viewportHeight*1.6*0.3, game->viewportHeight*0.35);
game->menu.blurbg2 = al_create_bitmap(game->viewportHeight*1.6*0.3, game->viewportHeight*0.35);
PROGRESS;
game->menu.logoblur = al_create_bitmap(game->viewportWidth*0.3+4, game->viewportHeight*0.35+4);
game->menu.logoblur = al_create_bitmap(game->viewportHeight*1.6*0.3+4, game->viewportHeight*0.35+4);
al_set_target_bitmap(game->menu.logoblur);
al_clear_to_color(al_map_rgba(0,0,0,0));
float alpha = (1.0/40.0);
@ -213,9 +213,10 @@ void Menu_Preload(struct Game *game, void (*progress)(struct Game*, float)) {
}
al_set_target_bitmap(al_get_backbuffer(game->display));
PROGRESS;
game->menu.glass = LoadScaledBitmap( "menu/glass.png", game->viewportWidth*0.3, game->viewportHeight*0.35 );
game->menu.glass = LoadScaledBitmap( "menu/glass.png", game->viewportHeight*1.6*0.3, game->viewportHeight*0.35 );
PROGRESS;
game->menu.pinkcloud = LoadScaledBitmap( "menu/pinkcloud.png", game->viewportWidth*0.33125, game->viewportHeight*0.8122);
//game->menu.pinkcloud = LoadScaledBitmap( "menu/pinkcloud.png", game->viewportWidth*0.33125, game->viewportHeight*0.8122);
game->menu.pinkcloud = LoadScaledBitmap( "menu/pinkcloud.png", game->viewportHeight*0.8122*(1171.0/2218.0), game->viewportHeight*0.8122);
PROGRESS;
al_set_new_bitmap_flags(ALLEGRO_MEMORY_BITMAP);
game->menu.rain = al_load_bitmap( GetDataFilePath("menu/rain.png") );
@ -265,14 +266,14 @@ void Menu_Preload(struct Game *game, void (*progress)(struct Game*, float)) {
exit(-1);
}
game->menu.pinkcloud_bitmap = al_create_bitmap(game->viewportWidth*0.33125, game->viewportHeight);
game->menu.pinkcloud_bitmap = al_create_bitmap(game->viewportHeight*0.8122*(1171.0/2218.0), game->viewportHeight);
game->menu.pie_bitmap = al_create_bitmap(game->viewportWidth/2, game->viewportHeight);
game->menu.pie_bitmap = al_create_bitmap(game->viewportHeight*0.8, game->viewportHeight);
al_set_target_bitmap(game->menu.pie_bitmap);
al_clear_to_color(al_map_rgba(0,0,0,0));
al_draw_scaled_bitmap(game->menu.pie, 0, 0, al_get_bitmap_width(game->menu.pie), al_get_bitmap_height(game->menu.pie), al_get_bitmap_width(game->menu.pie_bitmap)*0.5, 0, game->viewportWidth*0.11875, game->viewportHeight*0.0825, 0);
al_draw_scaled_bitmap(game->menu.pie, 0, 0, al_get_bitmap_width(game->menu.pie), al_get_bitmap_height(game->menu.pie), al_get_bitmap_width(game->menu.pie_bitmap)*0.1, al_get_bitmap_height(game->menu.pie_bitmap)*0.3, game->viewportWidth*0.09, game->viewportHeight*0.06, ALLEGRO_FLIP_HORIZONTAL);
al_draw_scaled_bitmap(game->menu.pie, 0, 0, al_get_bitmap_width(game->menu.pie), al_get_bitmap_height(game->menu.pie), al_get_bitmap_width(game->menu.pie_bitmap)*0.3, al_get_bitmap_height(game->menu.pie_bitmap)*0.6, game->viewportWidth*0.13, game->viewportHeight*0.1, 0);
al_draw_scaled_bitmap(game->menu.pie, 0, 0, al_get_bitmap_width(game->menu.pie), al_get_bitmap_height(game->menu.pie), al_get_bitmap_width(game->menu.pie_bitmap)*0.5, 0, game->viewportHeight*1.6*0.11875, game->viewportHeight*0.0825, 0);
al_draw_scaled_bitmap(game->menu.pie, 0, 0, al_get_bitmap_width(game->menu.pie), al_get_bitmap_height(game->menu.pie), al_get_bitmap_width(game->menu.pie_bitmap)*0.1, al_get_bitmap_height(game->menu.pie_bitmap)*0.3, game->viewportHeight*1.6*0.09, game->viewportHeight*0.06, ALLEGRO_FLIP_HORIZONTAL);
al_draw_scaled_bitmap(game->menu.pie, 0, 0, al_get_bitmap_width(game->menu.pie), al_get_bitmap_height(game->menu.pie), al_get_bitmap_width(game->menu.pie_bitmap)*0.3, al_get_bitmap_height(game->menu.pie_bitmap)*0.6, game->viewportHeight*1.6*0.13, game->viewportHeight*0.1, 0);
al_destroy_bitmap(game->menu.pie);
PROGRESS;

View file

@ -71,7 +71,7 @@ int Pause_Keydown(struct Game *game, ALLEGRO_EVENT *ev) {
void Pause_Preload(struct Game* game) {
game->pause.bitmap = NULL;
game->pause.derpy = LoadScaledBitmap("levels/derpy_pause.png", game->viewportWidth*0.53, game->viewportHeight*0.604);
game->pause.derpy = LoadScaledBitmap("levels/derpy_pause.png", game->viewportHeight*1.6*0.53, game->viewportHeight*0.604);
PrintConsole(game,"Pause preloaded.");
if (!game->menu.loaded) {
PrintConsole(game,"Pause: Preloading GAMESTATE_MENU...");
@ -97,7 +97,7 @@ void Pause_Draw(struct Game* game) {
game->loadstate=game->gamestate;
game->gamestate=GAMESTATE_PAUSE;
al_draw_tinted_bitmap(game->pause.bitmap,al_map_rgba_f(1,1,1,0.75),0,0,0);
al_draw_bitmap(game->pause.derpy, 0.47*game->viewportWidth, game->viewportHeight*0.4, 0);
al_draw_bitmap(game->pause.derpy, game->viewportWidth-al_get_bitmap_width(game->pause.derpy), game->viewportHeight*0.4, 0);
al_draw_text_with_shadow(game->menu.font_title, al_map_rgb(255,255,255), game->viewportWidth*0.5, game->viewportHeight*0.1, ALLEGRO_ALIGN_CENTRE, "Super Derpy");
al_draw_text_with_shadow(game->menu.font_subtitle, al_map_rgb(255,255,255), game->viewportWidth*0.5, game->viewportHeight*0.275, ALLEGRO_ALIGN_CENTRE, "Game paused.");
DrawMenuState(game);