]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/minigames/minigame/bd.qc
Fix Items Stats and Accuracy panels instantly disappearing as soon as the scoreboard...
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / minigames / minigame / bd.qc
index 8ab37af13c8d26ad260238805cf2d4a287f431de..2aea16c54206be9cf423c0bfe922bf969c5625f0 100644 (file)
@@ -1,5 +1,5 @@
 #include "bd.qh"
-REGISTER_MINIGAME(bd, "Bulldozer");
+REGISTER_MINIGAME(bd, _("Bulldozer"));
 
 REGISTER_NET_LINKED(ENT_CLIENT_BD_CONTROLLER)
 
@@ -437,7 +437,7 @@ void bd_editor_place(entity minigame, entity player, string pos, int thetile, st
                        }
                        else
                        {
-                               entity piece = msle_spawn(minigame,"minigame_board_piece");
+                               entity piece = msle_spawn(minigame,new(minigame_board_piece));
                                piece.team = 1;
                                piece.netname = strzone(pos);
                                piece.bd_tiletype = thetile;
@@ -711,7 +711,7 @@ void bd_load_piece(entity minigame, string s)
        }
        else
        {
-               entity e = msle_spawn(minigame,"minigame_board_piece");
+               entity e = msle_spawn(minigame,new(minigame_board_piece));
                e.netname = tilename;
                e.team = 1;
                e.bd_dir = dir;
@@ -1089,22 +1089,20 @@ void bd_hud_board(vector pos, vector mySize)
        if ( (active_minigame.minigame_flags & BD_TURN_LOSS) || (active_minigame.minigame_flags & BD_TURN_WIN) )
        {
                vector winfs = hud_fontsize*2;
-               string victory_text = "Game over!";
+               string victory_text = _("Game over!");
 
                if(active_minigame.minigame_flags & BD_TURN_WIN)
-                       victory_text = "Well done! Click 'Next Level' to continue";
+                       victory_text = _("Well done! Click 'Next Level' to continue");
 
                vector win_pos = pos+eY*(mySize_y-winfs_y)/2;
                vector win_sz;
                win_sz = minigame_drawcolorcodedstring_wrapped(mySize_x,win_pos,
-                       sprintf("%s", victory_text),
-                       winfs, 0, DRAWFLAG_NORMAL, 0.5);
+                       victory_text, winfs, 0, DRAWFLAG_NORMAL, 0.5);
 
                drawfill(win_pos-eY*hud_fontsize_y,win_sz+2*eY*hud_fontsize_y,'0.3 0.3 1',0.8,DRAWFLAG_ADDITIVE);
 
                minigame_drawcolorcodedstring_wrapped(mySize_x,win_pos,
-                       sprintf("%s", victory_text),
-                       winfs, panel_fg_alpha, DRAWFLAG_NORMAL, 0.5);
+                       victory_text, winfs, panel_fg_alpha, DRAWFLAG_NORMAL, 0.5);
        }
 }
 
@@ -1313,11 +1311,16 @@ int bd_client_event(entity minigame, string event, ...)
        {
                case "activate":
                {
-                       minigame.message = bd_turn_to_string(minigame.minigame_flags);
+                       strcpy(minigame.message, bd_turn_to_string(minigame.minigame_flags));
                        bd_set_curr_pos("");
                        bd_curr_tile = BD_TILE_BRICK1;
                        return false;
                }
+               case "deactivate":
+               {
+                       strfree(minigame.message);
+                       return false;
+               }
                case "key_pressed":
                {
                        if(minigame.minigame_flags & BD_TURN_MOVE)
@@ -1372,7 +1375,7 @@ int bd_client_event(entity minigame, string event, ...)
                        {
                                if ( sf & MINIG_SF_UPDATE )
                                {
-                                       sent.message = bd_turn_to_string(sent.minigame_flags);
+                                       strcpy(sent.message, bd_turn_to_string(sent.minigame_flags));
                                        //if ( sent.minigame_flags & minigame_self.team )
                                                //minigame_prompt();
                                }