Author: sveinung
Date: Thu Aug 28 15:05:34 2014
New Revision: 26094

URL: http://svn.gna.org/viewcvs/freeciv?rev=26094&view=rev
Log:
Change the packet UNIT_DIPLOMAT_QUERY to UNIT_ACTION_QUERY

 * Use gen_action in stead of diplomat_actions to name the action.
 * There is no need for a value field. Remove it.

See patch #5121

Modified:
    trunk/client/control.c
    trunk/client/control.h
    trunk/client/gui-gtk-2.0/diplomat_dialog.c
    trunk/client/gui-gtk-3.0/diplomat_dialog.c
    trunk/client/gui-qt/dialogs.cpp
    trunk/client/gui-sdl/diplomat_dialog.c
    trunk/client/gui-sdl2/diplomat_dialog.c
    trunk/client/gui-xaw/diplomat_dialog.c
    trunk/common/packets.def
    trunk/fc_version
    trunk/server/unithand.c

Modified: trunk/client/control.c
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/client/control.c?rev=26094&r1=26093&r2=26094&view=diff
==============================================================================
--- trunk/client/control.c      (original)
+++ trunk/client/control.c      Thu Aug 28 15:05:34 2014
@@ -1492,17 +1492,17 @@
 }
 
 /**************************************************************************
-  Query a diplomat about costs and infrastructure.
-  - action : The action to be requested.
-  - dipl_id : The unit ID of the diplomatic unit.
+  Request data for follow up questions about an action the unit can
+  perform.
+  - action : The action more details .
+  - actor_id : The unit ID of the acting unit.
   - target_id : The ID of the target unit or city.
-  - value : For DIPLOMAT_STEAL or DIPLOMAT_SABOTAGE, the technology
-            or building to aim for (spies only).
-**************************************************************************/
-void request_diplomat_answer(enum diplomat_actions action, int dipl_id,
-                            int target_id, int value)
-{
-  dsend_packet_unit_diplomat_query(&client.conn, 
dipl_id,target_id,value,action);
+**************************************************************************/
+void request_action_details(enum gen_action action, int actor_id,
+                            int target_id)
+{
+  dsend_packet_unit_action_query(&client.conn,
+                                 actor_id, target_id, action);
 }
 
 /**************************************************************************

Modified: trunk/client/control.h
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/client/control.h?rev=26094&r1=26093&r2=26094&view=diff
==============================================================================
--- trunk/client/control.h      (original)
+++ trunk/client/control.h      Thu Aug 28 15:05:34 2014
@@ -17,6 +17,8 @@
 extern "C" {
 #endif /* __cplusplus */
 
+/* common */
+#include "actions.h"
 #include "packets.h"
 #include "unitlist.h"
 
@@ -123,8 +125,8 @@
 
 void request_diplomat_action(enum diplomat_actions action, int dipl_id,
                             int target_id, int value);
-void request_diplomat_answer(enum diplomat_actions action, int dipl_id,
-                            int target_id, int value);
+void request_action_details(enum gen_action action, int actor_id,
+                           int target_id);
 void request_toggle_city_outlines(void);
 void request_toggle_city_output(void);
 void request_toggle_map_grid(void);

Modified: trunk/client/gui-gtk-2.0/diplomat_dialog.c
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-gtk-2.0/diplomat_dialog.c?rev=26094&r1=26093&r2=26094&view=diff
==============================================================================
--- trunk/client/gui-gtk-2.0/diplomat_dialog.c  (original)
+++ trunk/client/gui-gtk-2.0/diplomat_dialog.c  Thu Aug 28 15:05:34 2014
@@ -75,8 +75,8 @@
 {
   if (NULL != game_unit_by_number(diplomat_id)
       && NULL != game_unit_by_number(diplomat_target_id[ATK_UNIT])) {
-    request_diplomat_answer(DIPLOMAT_BRIBE, diplomat_id,
-                            diplomat_target_id[ATK_UNIT], 0);
+    request_action_details(ACTION_SPY_BRIBE_UNIT, diplomat_id,
+                           diplomat_target_id[ATK_UNIT]);
   }
   gtk_widget_destroy(diplomat_dialog);
 }
@@ -514,8 +514,8 @@
 {
   if (NULL != game_unit_by_number(diplomat_id)
       && NULL != game_city_by_number(diplomat_target_id[ATK_CITY])) {
-    request_diplomat_answer(DIPLOMAT_SABOTAGE_TARGET, diplomat_id,
-                            diplomat_target_id[ATK_CITY], 0);
+    request_action_details(ACTION_SPY_TARGETED_SABOTAGE_CITY, diplomat_id,
+                           diplomat_target_id[ATK_CITY]);
   }
   gtk_widget_destroy(diplomat_dialog);
 }
@@ -539,8 +539,8 @@
 {
   if (NULL != game_unit_by_number(diplomat_id)
       && NULL != game_city_by_number(diplomat_target_id[ATK_CITY])) {
-    request_diplomat_answer(DIPLOMAT_INCITE, diplomat_id,
-                            diplomat_target_id[ATK_CITY], 0);
+    request_action_details(ACTION_SPY_INCITE_CITY, diplomat_id,
+                           diplomat_target_id[ATK_CITY]);
   }
   gtk_widget_destroy(diplomat_dialog);
 }

Modified: trunk/client/gui-gtk-3.0/diplomat_dialog.c
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-gtk-3.0/diplomat_dialog.c?rev=26094&r1=26093&r2=26094&view=diff
==============================================================================
--- trunk/client/gui-gtk-3.0/diplomat_dialog.c  (original)
+++ trunk/client/gui-gtk-3.0/diplomat_dialog.c  Thu Aug 28 15:05:34 2014
@@ -75,8 +75,8 @@
 {
   if (NULL != game_unit_by_number(diplomat_id)
       && NULL != game_unit_by_number(diplomat_target_id[ATK_UNIT])) {
-    request_diplomat_answer(DIPLOMAT_BRIBE, diplomat_id,
-                            diplomat_target_id[ATK_UNIT], 0);
+    request_action_details(ACTION_SPY_BRIBE_UNIT, diplomat_id,
+                           diplomat_target_id[ATK_UNIT]);
   }
   gtk_widget_destroy(diplomat_dialog);
 }
@@ -524,8 +524,8 @@
 {
   if (NULL != game_unit_by_number(diplomat_id)
       && NULL != game_city_by_number(diplomat_target_id[ATK_CITY])) {
-    request_diplomat_answer(DIPLOMAT_SABOTAGE_TARGET, diplomat_id,
-                            diplomat_target_id[ATK_CITY], 0);
+    request_action_details(ACTION_SPY_TARGETED_SABOTAGE_CITY, diplomat_id,
+                           diplomat_target_id[ATK_CITY]);
   }
   gtk_widget_destroy(diplomat_dialog);
 }
@@ -549,8 +549,8 @@
 {
   if (NULL != game_unit_by_number(diplomat_id)
       && NULL != game_city_by_number(diplomat_target_id[ATK_CITY])) {
-    request_diplomat_answer(DIPLOMAT_INCITE, diplomat_id,
-                            diplomat_target_id[ATK_CITY], 0);
+    request_action_details(ACTION_SPY_INCITE_CITY, diplomat_id,
+                           diplomat_target_id[ATK_CITY]);
   }
   gtk_widget_destroy(diplomat_dialog);
 }

Modified: trunk/client/gui-qt/dialogs.cpp
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-qt/dialogs.cpp?rev=26094&r1=26093&r2=26094&view=diff
==============================================================================
--- trunk/client/gui-qt/dialogs.cpp     (original)
+++ trunk/client/gui-qt/dialogs.cpp     Thu Aug 28 15:05:34 2014
@@ -1097,8 +1097,8 @@
     /* Wait for the server's reply before moving on to the next queued 
diplomat. */
     is_more_user_input_needed = TRUE;
 
-    request_diplomat_answer(DIPLOMAT_BRIBE, diplomat_id,
-                            diplomat_target_id, 0);
+    request_action_details(ACTION_SPY_BRIBE_UNIT, diplomat_id,
+                           diplomat_target_id);
   }
 }
 
@@ -1200,8 +1200,8 @@
     /* Wait for the server's reply before moving on to the next queued 
diplomat. */
     is_more_user_input_needed = TRUE;
 
-    request_diplomat_answer(DIPLOMAT_SABOTAGE_TARGET, diplomat_id,
-                            diplomat_target_id, 0);
+    request_action_details(ACTION_SPY_TARGETED_SABOTAGE_CITY, diplomat_id,
+                           diplomat_target_id);
   }
 }
 
@@ -1292,8 +1292,8 @@
     /* Wait for the server's reply before moving on to the next queued 
diplomat. */
     is_more_user_input_needed = TRUE;
 
-    request_diplomat_answer(DIPLOMAT_INCITE, diplomat_id,
-                            diplomat_target_id, 0);
+    request_action_details(ACTION_SPY_INCITE_CITY, diplomat_id,
+                           diplomat_target_id);
   }
 }
 

Modified: trunk/client/gui-sdl/diplomat_dialog.c
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-sdl/diplomat_dialog.c?rev=26094&r1=26093&r2=26094&view=diff
==============================================================================
--- trunk/client/gui-sdl/diplomat_dialog.c      (original)
+++ trunk/client/gui-sdl/diplomat_dialog.c      Thu Aug 28 15:05:34 2014
@@ -154,10 +154,9 @@
   if (NULL != game_unit_by_number(pDiplomat_Dlg->diplomat_id)
       && NULL != game_city_by_number(
               pDiplomat_Dlg->diplomat_target_id[ATK_CITY])) {
-    request_diplomat_answer(DIPLOMAT_SABOTAGE_TARGET,
-                            pDiplomat_Dlg->diplomat_id,
-                            pDiplomat_Dlg->diplomat_target_id[ATK_CITY],
-                            0);
+    request_action_details(ACTION_SPY_TARGETED_SABOTAGE_CITY,
+                           pDiplomat_Dlg->diplomat_id,
+                           pDiplomat_Dlg->diplomat_target_id[ATK_CITY]);
     popdown_diplomat_dialog();
   } else {
     popdown_diplomat_dialog();
@@ -496,9 +495,9 @@
     if (NULL != game_unit_by_number(pDiplomat_Dlg->diplomat_id)
         && NULL != game_city_by_number(
                 pDiplomat_Dlg->diplomat_target_id[ATK_CITY])) {
-      request_diplomat_answer(DIPLOMAT_INCITE, pDiplomat_Dlg->diplomat_id,
-                              pDiplomat_Dlg->diplomat_target_id[ATK_CITY],
-                              0);
+      request_action_details(ACTION_SPY_INCITE_CITY,
+                             pDiplomat_Dlg->diplomat_id,
+                             pDiplomat_Dlg->diplomat_target_id[ATK_CITY]);
       popdown_diplomat_dialog();
     } else {
       popdown_diplomat_dialog();
@@ -565,8 +564,9 @@
     if (NULL != game_unit_by_number(pDiplomat_Dlg->diplomat_id)
         && NULL !=
          game_unit_by_number(pDiplomat_Dlg->diplomat_target_id[ATK_UNIT])) {
-      request_diplomat_answer(DIPLOMAT_BRIBE, pDiplomat_Dlg->diplomat_id,
-                              pDiplomat_Dlg->diplomat_target_id[ATK_UNIT], 0);
+      request_action_details(ACTION_SPY_BRIBE_UNIT,
+                             pDiplomat_Dlg->diplomat_id,
+                             pDiplomat_Dlg->diplomat_target_id[ATK_UNIT]);
       popdown_diplomat_dialog();
     } else {
       popdown_diplomat_dialog();

Modified: trunk/client/gui-sdl2/diplomat_dialog.c
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-sdl2/diplomat_dialog.c?rev=26094&r1=26093&r2=26094&view=diff
==============================================================================
--- trunk/client/gui-sdl2/diplomat_dialog.c     (original)
+++ trunk/client/gui-sdl2/diplomat_dialog.c     Thu Aug 28 15:05:34 2014
@@ -154,10 +154,9 @@
   if (NULL != game_unit_by_number(pDiplomat_Dlg->diplomat_id)
       && NULL != game_city_by_number(
               pDiplomat_Dlg->diplomat_target_id[ATK_CITY])) {
-    request_diplomat_answer(DIPLOMAT_SABOTAGE_TARGET,
-                            pDiplomat_Dlg->diplomat_id,
-                            pDiplomat_Dlg->diplomat_target_id[ATK_CITY],
-                            0);
+    request_action_details(ACTION_SPY_TARGETED_SABOTAGE_CITY,
+                           pDiplomat_Dlg->diplomat_id,
+                           pDiplomat_Dlg->diplomat_target_id[ATK_CITY]);
     popdown_diplomat_dialog();
   } else {
     popdown_diplomat_dialog();
@@ -496,9 +495,9 @@
     if (NULL != game_unit_by_number(pDiplomat_Dlg->diplomat_id)
         && NULL != game_city_by_number(
                 pDiplomat_Dlg->diplomat_target_id[ATK_CITY])) {
-      request_diplomat_answer(DIPLOMAT_INCITE, pDiplomat_Dlg->diplomat_id,
-                              pDiplomat_Dlg->diplomat_target_id[ATK_CITY],
-                              0);
+      request_action_details(ACTION_SPY_INCITE_CITY,
+                             pDiplomat_Dlg->diplomat_id,
+                             pDiplomat_Dlg->diplomat_target_id[ATK_CITY]);
       popdown_diplomat_dialog();
     } else {
       popdown_diplomat_dialog();
@@ -565,8 +564,9 @@
     if (NULL != game_unit_by_number(pDiplomat_Dlg->diplomat_id)
         && NULL !=
          game_unit_by_number(pDiplomat_Dlg->diplomat_target_id[ATK_UNIT])) {
-      request_diplomat_answer(DIPLOMAT_BRIBE, pDiplomat_Dlg->diplomat_id,
-                              pDiplomat_Dlg->diplomat_target_id[ATK_UNIT], 0);
+      request_action_details(ACTION_SPY_BRIBE_UNIT,
+                             pDiplomat_Dlg->diplomat_id,
+                             pDiplomat_Dlg->diplomat_target_id[ATK_UNIT]);
       popdown_diplomat_dialog();
     } else {
       popdown_diplomat_dialog();

Modified: trunk/client/gui-xaw/diplomat_dialog.c
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-xaw/diplomat_dialog.c?rev=26094&r1=26093&r2=26094&view=diff
==============================================================================
--- trunk/client/gui-xaw/diplomat_dialog.c      (original)
+++ trunk/client/gui-xaw/diplomat_dialog.c      Thu Aug 28 15:05:34 2014
@@ -103,8 +103,8 @@
 
   if (NULL != game_unit_by_number(diplomat_id)
       && NULL != game_unit_by_number(diplomat_target_id[ATK_UNIT])) {
-    request_diplomat_answer(DIPLOMAT_BRIBE, diplomat_id,
-                            diplomat_target_id[ATK_UNIT], 0);
+    request_action_details(ACTION_SPY_BRIBE_UNIT, diplomat_id,
+                           diplomat_target_id[ATK_UNIT]);
   }
 }
 
@@ -586,8 +586,8 @@
 
   if (NULL != game_unit_by_number(diplomat_id)
       && NULL != game_city_by_number(diplomat_target_id[ATK_CITY])) {
-    request_diplomat_answer(DIPLOMAT_SABOTAGE_TARGET, diplomat_id,
-                            diplomat_target_id[ATK_CITY], 0);
+    request_action_details(ACTION_SPY_TARGETED_SABOTAGE_CITY, diplomat_id,
+                           diplomat_target_id[ATK_CITY]);
   }
 }
 
@@ -651,8 +651,8 @@
 
   if (NULL != game_unit_by_number(diplomat_id)
       && NULL != game_city_by_number(diplomat_target_id[ATK_CITY])) {
-    request_diplomat_answer(DIPLOMAT_INCITE, diplomat_id,
-                            diplomat_target_id[ATK_CITY], 0);
+    request_action_details(ACTION_SPY_INCITE_CITY, diplomat_id,
+                           diplomat_target_id[ATK_CITY]);
   }
 }
 

Modified: trunk/common/packets.def
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/common/packets.def?rev=26094&r1=26093&r2=26094&view=diff
==============================================================================
--- trunk/common/packets.def    (original)
+++ trunk/common/packets.def    Thu Aug 28 15:05:34 2014
@@ -998,11 +998,10 @@
   CITY city_id;
 end
 
-PACKET_UNIT_DIPLOMAT_QUERY = 82; cs, handle-per-conn, dsend
+PACKET_UNIT_ACTION_QUERY = 82; cs, handle-per-conn, dsend
   UNIT diplomat_id;
   UNIT target_id;   # city_id or unit_id
-  SINT16 value;
-  DIPLOMAT_ACTION action_type;
+  GEN_ACTION action_type;
 end
 
 PACKET_UNIT_TYPE_UPGRADE = 83; cs, dsend

Modified: trunk/fc_version
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/fc_version?rev=26094&r1=26093&r2=26094&view=diff
==============================================================================
--- trunk/fc_version    (original)
+++ trunk/fc_version    Thu Aug 28 15:05:34 2014
@@ -54,7 +54,7 @@
 #   - Avoid adding a new mandatory capability to the development branch for
 #     as long as possible.  We want to maintain network compatibility with
 #     the stable branch for as long as possible.
-NETWORK_CAPSTRING_MANDATORY="+Freeciv.Devel-2.6-2014.Aug.28b"
+NETWORK_CAPSTRING_MANDATORY="+Freeciv.Devel-2.6-2014.Aug.28c"
 NETWORK_CAPSTRING_OPTIONAL=""
 
 FREECIV_DISTRIBUTOR=""

Modified: trunk/server/unithand.c
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/server/unithand.c?rev=26094&r1=26093&r2=26094&view=diff
==============================================================================
--- trunk/server/unithand.c     (original)
+++ trunk/server/unithand.c     Thu Aug 28 15:05:34 2014
@@ -325,74 +325,73 @@
   Only send result back to the requesting connection, not all
   connections for that player.
 **************************************************************************/
-void handle_unit_diplomat_query(struct connection *pc,
-                               int diplomat_id,
-                               int target_id,
-                               int value,
-                               enum diplomat_actions action_type)
+void handle_unit_action_query(struct connection *pc,
+                             int actor_id,
+                             int target_id,
+                             enum gen_action action_type)
 {
   struct player *pplayer = pc->playing;
-  struct unit *pdiplomat = player_unit_by_number(pplayer, diplomat_id);
+  struct unit *pactor = player_unit_by_number(pplayer, actor_id);
   struct unit *punit = game_unit_by_number(target_id);
   struct city *pcity = game_city_by_number(target_id);
 
-  if (NULL == pdiplomat) {
+  if (NULL == pactor) {
     /* Probably died or bribed. */
-    log_verbose("handle_unit_diplomat_query() invalid diplomat %d",
-                diplomat_id);
-    unit_query_impossible(pc, diplomat_id, target_id);
-    return;
-  }
-
-  if (!is_actor_unit(pdiplomat)) {
+    log_verbose("handle_unit_action_query() invalid actor %d",
+                actor_id);
+    unit_query_impossible(pc, actor_id, target_id);
+    return;
+  }
+
+  if (!is_actor_unit(pactor)) {
     /* Shouldn't happen */
-    log_error("handle_unit_diplomat_query() %s (%d) is not diplomat",
-              unit_rule_name(pdiplomat), diplomat_id);
-    unit_query_impossible(pc, diplomat_id, target_id);
+    log_error("handle_unit_action_query() %s (%d) is not an actor",
+              unit_rule_name(pactor), actor_id);
+    unit_query_impossible(pc, actor_id, target_id);
     return;
   }
 
   switch (action_type) {
-  case DIPLOMAT_BRIBE:
-    if (punit && diplomat_can_do_action(pdiplomat, DIPLOMAT_BRIBE,
+  case ACTION_SPY_BRIBE_UNIT:
+    if (punit && diplomat_can_do_action(pactor, DIPLOMAT_BRIBE,
                                        unit_tile(punit))) {
       dsend_packet_unit_diplomat_answer(pc,
-                                       diplomat_id, target_id,
+                                        actor_id, target_id,
                                        unit_bribe_cost(punit, pplayer),
-                                       action_type);
+                                       DIPLOMAT_BRIBE);
     } else {
-      illegal_action(pplayer, pdiplomat, ACTION_SPY_BRIBE_UNIT);
-      unit_query_impossible(pc, diplomat_id, target_id);
+      illegal_action(pplayer, pactor, ACTION_SPY_BRIBE_UNIT);
+      unit_query_impossible(pc, actor_id, target_id);
       return;
     }
     break;
-  case DIPLOMAT_INCITE:
-    if (pcity && diplomat_can_do_action(pdiplomat, DIPLOMAT_INCITE,
+  case ACTION_SPY_INCITE_CITY:
+    if (pcity && diplomat_can_do_action(pactor, DIPLOMAT_INCITE,
                                        pcity->tile)) {
       dsend_packet_unit_diplomat_answer(pc,
-                                       diplomat_id, target_id,
+                                        actor_id, target_id,
                                        city_incite_cost(pplayer, pcity),
-                                       action_type);
+                                       DIPLOMAT_INCITE);
     } else {
-      illegal_action(pplayer, pdiplomat, ACTION_SPY_INCITE_CITY);
-      unit_query_impossible(pc, diplomat_id, target_id);
+      illegal_action(pplayer, pactor, ACTION_SPY_INCITE_CITY);
+      unit_query_impossible(pc, actor_id, target_id);
       return;
     }
     break;
-  case DIPLOMAT_SABOTAGE_TARGET:
-    if (pcity && diplomat_can_do_action(pdiplomat,
+  case ACTION_SPY_TARGETED_SABOTAGE_CITY:
+    if (pcity && diplomat_can_do_action(pactor,
                                         DIPLOMAT_SABOTAGE_TARGET,
                                        pcity->tile)) {
-      spy_send_sabotage_list(pc, pdiplomat, pcity);
+      spy_send_sabotage_list(pc, pactor, pcity);
     } else {
-      illegal_action(pplayer, pdiplomat,
+      illegal_action(pplayer, pactor,
                      ACTION_SPY_TARGETED_SABOTAGE_CITY);
-      unit_query_impossible(pc, diplomat_id, target_id);
+      unit_query_impossible(pc, actor_id, target_id);
       return;
     }
     break;
   default:
-    unit_query_impossible(pc, diplomat_id, target_id);
+    unit_query_impossible(pc, actor_id, target_id);
     return;
   };
 }


_______________________________________________
Freeciv-commits mailing list
Freeciv-commits@gna.org
https://mail.gna.org/listinfo/freeciv-commits

Reply via email to