GitLab repository storage has been migrated to hashed layout. Please contact Infrastructure team if you notice any issues with repositories or hooks.

Commit 6404f61a authored by Robert Roth's avatar Robert Roth

Fixed anchor_point deprecation warning. https://bugzilla.gnome.org/show_bug.cgi?id=728371

Fixed by replacing with a similar animation, without scaling,
but using the z position instead.
parent 38a86026
......@@ -289,8 +289,9 @@ public class GameView : Clutter.Group
{
if (is_zealous)
{
var text = new ScoreActor (width / 2.0, height / 2.0, width, height);
var text = new ScoreActor (game.rows / 5, width, height);
game_actors.add_child (text);
text.add_constraint (new Clutter.AlignConstraint (this, Clutter.AlignAxis.BOTH, 0.5f));
text.animate_score (points_awarded);
}
}
......@@ -298,8 +299,9 @@ public class GameView : Clutter.Group
/* Show the final score when the game is over */
public void game_complete_cb ()
{
var text = new ScoreActor (width / 2.0, height / 2.0, width, height);
var text = new ScoreActor (game.rows / 5, width, height);
game_actors.add_child (text);
text.add_constraint (new Clutter.AlignConstraint (this, Clutter.AlignAxis.BOTH, 0.5f));
text.animate_final_score (game.score);
}
}
......@@ -413,19 +415,21 @@ public class ScoreActor : Clutter.Group
private Clutter.Text label;
private float scene_width;
private float scene_height;
private int game_size;
public ScoreActor (double x, double y, double width, double height)
public ScoreActor (int game_size, double width, double height)
{
label = new Clutter.Text ();
label.set_color (Clutter.Color.from_string ("rgba(255, 255, 255, 255)"));
anchor_gravity = Clutter.Gravity.CENTER;
add_child (label);
this.x = (float) x;
this.y = (float) y;
pivot_point.x = 0.5f;
pivot_point.y = 0.5f;
this.scene_width = (float)width;
this.scene_height = (float)height;
this.game_size = game_size;
}
public void animate_score (int points)
......@@ -433,7 +437,7 @@ public class ScoreActor : Clutter.Group
if (points <= 0)
return;
label.set_font_name ("Bitstrem Vera Sans Bold 40");
label.set_font_name ("Bitstrem Vera Sans Bold 30");
label.set_text ("+" + points.to_string());
/* The score will be shown repeatedly therefore we need to reset some important properties
......@@ -443,14 +447,14 @@ public class ScoreActor : Clutter.Group
set_easing_mode (Clutter.AnimationMode.EASE_OUT_SINE);
set_easing_duration (600);
set_z_position (500f);
z_position = 500f;
set_opacity (0);
transitions_completed.connect (() => { destroy (); });
}
public void animate_final_score (uint points)
{
label.set_font_name ("Bitstrem Vera Sans 50");
label.set_font_name ("Bitstrem Vera Sans 40");
var points_label = ngettext (/* Label showing the number of points at the end of the game */
"%u point", "%u points", points).printf (points);
label.set_markup ("<b>%s</b>\n%s".printf (_("Game Over!"), points_label));
......@@ -459,13 +463,11 @@ public class ScoreActor : Clutter.Group
/* The score will be shown repeatedly therefore we need to reset some important properties
* before the actual animation */
opacity = 255;
z_position = 0f;
z_position = -300f + game_size * 100;
scale_x = scale_y = 0.0;
float scale_to = scene_width / this.width;
set_easing_mode (Clutter.AnimationMode.EASE_OUT_ELASTIC);
set_easing_duration (2000);
set_scale ( (float)scale_to, (float)scale_to);
z_position = -200 + game_size * 150;
set_opacity (255);
}
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment