[gnome-nibbles/arnaudb/modernize-code] Boni is initialized at reset.



commit 88b32fd589b279c494457b1cdd47dfe28a0e3fe6
Author: Arnaud Bonatti <arnaud bonatti gmail com>
Date:   Tue May 26 20:42:01 2020 +0200

    Boni is initialized at reset.
    
    The numworms property was always 0.

 src/boni.vala         | 19 +++++--------------
 src/nibbles-game.vala |  3 +--
 2 files changed, 6 insertions(+), 16 deletions(-)
---
diff --git a/src/boni.vala b/src/boni.vala
index 8a09eb7..1964093 100644
--- a/src/boni.vala
+++ b/src/boni.vala
@@ -45,12 +45,12 @@ private class Bonus : Object
 
 private class Boni : Object
 {
-    internal Gee.LinkedList<Bonus> bonuses;
+    internal Gee.LinkedList<Bonus> bonuses = new Gee.LinkedList<Bonus> ();
 
-    internal int missed;
-    internal int numleft;
-    internal int numboni;
-    private  int numbonuses;
+    internal int missed = 0;
+    internal int numleft = 8;
+    internal int numboni = 8;
+    private  int numbonuses = 0;
 
     private const int MAX_BONUSES = 100;
     internal const int MAX_MISSED = 2;
@@ -58,15 +58,6 @@ private class Boni : Object
     internal signal void bonus_added ();
     internal signal void bonus_removed (Bonus bonus);
 
-    internal Boni (int numworms)
-    {
-        bonuses = new Gee.LinkedList<Bonus> ();
-        missed = 0;
-        numboni = 8 + numworms;
-        numbonuses = 0;
-        numleft = numboni;
-    }
-
     internal void add_bonus (int[,] board, int x, int y, BonusType bonus_type, bool fake, int countdown)
     {
         if (numbonuses == MAX_BONUSES)
diff --git a/src/nibbles-game.vala b/src/nibbles-game.vala
index 8b27b76..f6db5b5 100644
--- a/src/nibbles-game.vala
+++ b/src/nibbles-game.vala
@@ -64,7 +64,7 @@ private class NibblesGame : Object
 
     /* Game models */
     internal Gee.LinkedList<Worm> worms { get; private set; }
-    internal Boni boni { get; private set; }
+    public Boni boni { internal get; private construct; default = new Boni (); }
     internal WarpManager warp_manager { get; private set; }
     internal Gee.HashMap<Worm, WormProperties?> worm_props { get; private set; }
 
@@ -87,7 +87,6 @@ private class NibblesGame : Object
     {
         Object (tile_size: tile_size, start_level: start_level, current_level: start_level, speed: speed, 
fakes: fakes);
 
-        boni = new Boni (numworms);
         warp_manager = new WarpManager ();
         board = new int[WIDTH, HEIGHT];
         worms = new Gee.LinkedList<Worm> ();


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]