tSpying fixed (cannot now spy on players until they accept your bitch) - vaccinewars - be a doctor and try to vaccinate the world
 (HTM) git clone git://src.adamsgaard.dk/vaccinewars
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit f7c7fe05ca5c8fcc044fedfdd6e8c25850a7d4cd
 (DIR) parent f9a07885110bf3386144027110a1e5a8c1851ed4
 (HTM) Author: Ben Webb <ben@salilab.org>
       Date:   Sat, 16 Sep 2000 13:33:19 +0000
       
       Spying fixed (cannot now spy on players until they accept your bitch)
       
       
       Diffstat:
         M ChangeLog                           |       1 +
         M TODO                                |      14 +++++++-------
         M po/dopewars.pot                     |     228 ++++++++++++++++----------------
         M src/serverside.c                    |       3 ++-
       
       4 files changed, 124 insertions(+), 122 deletions(-)
       ---
 (DIR) diff --git a/ChangeLog b/ChangeLog
       t@@ -8,6 +8,7 @@
            - Drug values now stored by server (e.g. "you have 5 Weed @ $600); sent
              only if DrugValue config. variable is set, and only to new clients
              (based on a patch by Pierre F)
       +    - Spying fixed (cannot now spy on a player until they accept your bitch)
            - Longer T>alk and P>age messages allowed in curses client
            - Minor bug fixes to configure options
            - Client-side code moved out of clientside.c and dopewars.c;
 (DIR) diff --git a/TODO b/TODO
       t@@ -1,21 +1,21 @@
       -- Fix GTK+ modal dialog behaviour (mouse grabbing during fighting) - _seems_
       -  to be OK...
       -- Revamp player-player fighting
       +- Revamp player-player fighting; use same system for fighting the cops and
       +  for fighting other players (perhaps the cops can intervene in fights);
       +  add SWAT teams, soldiers, etc. as dealers get more and more guns
        - Increase cops' toughness - they should kill a bitch in 50-70% of encounters
          (and damage should be cumulative)
        - Increase difficulty of escaping from another player - impose penalty on
          running (lose drugs, free shot, destination revealed)
        - Alliances/cartels - several players share cash
       -- Fix spying in server (currently you can spy on other players _before_ they
       -  accept your bitch!)
        - Graphical mode server? (would avoid select() problems under Win32)
       -- Problems reported with display of large prices and health - "seems" to be
       -  OK now... (i.e. I can't see anything wrong with it!)
        - Introduce minimum/maximum players options - AI players automatically
          spawned/killed to "fill the gaps" when humans leave/enter
        - "Deal" option when meeting players?
        - Bribe/steal bitches when meeting players (difficulty inv. prop. to number of
          bitches?)
       +- Problems reported with display of large prices and health - "seems" to be
       +  OK now... (i.e. I can't see anything wrong with it!)
       +- Fix GTK+ modal dialog behaviour (mouse grabbing during fighting) - _seems_
       +  to be OK...
        - Fix bug with players leaving the game during fights (first, must find it)
        - Metaserver keeps list of game types of each server
        Cannot reproduce... can you? (- Investigate deadlock during fighting if both
 (DIR) diff --git a/po/dopewars.pot b/po/dopewars.pot
       t@@ -6,7 +6,7 @@
        msgid ""
        msgstr ""
        "Project-Id-Version: PACKAGE VERSION\n"
       -"POT-Creation-Date: 2000-09-16 14:01+0100\n"
       +"POT-Creation-Date: 2000-09-16 14:26+0100\n"
        "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
        "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
        "Language-Team: LANGUAGE <LL@li.org>\n"
       t@@ -1964,45 +1964,45 @@ msgstr ""
        msgid "%s: DENIED jet to %s"
        msgstr ""
        
       -#: src/serverside.c:373
       +#: src/serverside.c:374
        #, c-format
        msgid "%s now spying on %s"
        msgstr ""
        
       -#: src/serverside.c:381
       +#: src/serverside.c:382
        #, c-format
        msgid "%s spy on %s: DENIED"
        msgstr ""
        
       -#: src/serverside.c:387
       +#: src/serverside.c:388
        #, c-format
        msgid "%s tipped off the cops to %s"
        msgstr ""
        
       -#: src/serverside.c:395
       +#: src/serverside.c:396
        #, c-format
        msgid "%s tipoff about %s: DENIED"
        msgstr ""
        
       -#: src/serverside.c:502
       +#: src/serverside.c:503
        msgid "--More--"
        msgstr ""
        
       -#: src/serverside.c:513
       +#: src/serverside.c:514
        msgid "Pager exited abnormally - using stdout instead..."
        msgstr ""
        
       -#: src/serverside.c:528
       +#: src/serverside.c:529
        #, c-format
        msgid "Maintaining pid file %s"
        msgstr ""
        
       -#: src/serverside.c:532
       +#: src/serverside.c:533
        #, c-format
        msgid "Cannot create pid file %s"
        msgstr ""
        
       -#: src/serverside.c:581
       +#: src/serverside.c:582
        #, c-format
        msgid ""
        "Cannot open high score file %s.\n"
       t@@ -2010,144 +2010,144 @@ msgid ""
        "specify an alternate high score file with the -f command line option."
        msgstr ""
        
       -#: src/serverside.c:618
       +#: src/serverside.c:619
        #, c-format
        msgid ""
        "dopewars server version %s ready and waiting for connections\n"
        "on port %d. For assistance with server commands, enter the command \"help\"\n"
        msgstr ""
        
       -#: src/serverside.c:635
       +#: src/serverside.c:636
        msgid "Cannot install SIGUSR1 interrupt handler!"
        msgstr ""
        
       -#: src/serverside.c:641
       +#: src/serverside.c:642
        msgid "Cannot install SIGINT interrupt handler!"
        msgstr ""
        
       -#: src/serverside.c:644
       +#: src/serverside.c:645
        msgid "Cannot install SIGTERM interrupt handler!"
        msgstr ""
        
       -#: src/serverside.c:647
       +#: src/serverside.c:648
        msgid "Cannot install SIGHUP interrupt handler!"
        msgstr ""
        
       -#: src/serverside.c:652
       +#: src/serverside.c:653
        msgid "Cannot install pipe handler!"
        msgstr ""
        
       -#: src/serverside.c:675
       +#: src/serverside.c:676
        msgid "Users currently logged on:-\n"
        msgstr ""
        
       -#: src/serverside.c:680
       +#: src/serverside.c:681
        msgid "No users currently logged on!"
        msgstr ""
        
       -#: src/serverside.c:684
       +#: src/serverside.c:685
        #, c-format
        msgid "Pushing %s"
        msgstr ""
        
       -#: src/serverside.c:686 src/serverside.c:694
       +#: src/serverside.c:687 src/serverside.c:695
        msgid "No such user!"
        msgstr ""
        
       -#: src/serverside.c:690
       +#: src/serverside.c:691
        #, c-format
        msgid "%s killed"
        msgstr ""
        
       -#: src/serverside.c:696
       +#: src/serverside.c:697
        msgid "Unknown command - try \"help\" for help..."
        msgstr ""
        
       -#: src/serverside.c:713
       +#: src/serverside.c:714
        #, c-format
        msgid "got connection from %s"
        msgstr ""
        
       -#: src/serverside.c:729
       +#: src/serverside.c:730
        #, c-format
        msgid "%s leaves the server!"
        msgstr ""
        
       -#: src/serverside.c:797
       +#: src/serverside.c:798
        msgid "Standard input closed."
        msgstr ""
        
       -#: src/serverside.c:940
       +#: src/serverside.c:941
        #, c-format
        msgid "Unable to read high score file %s"
        msgstr ""
        
       -#: src/serverside.c:960
       +#: src/serverside.c:961
        msgid "Congratulations! You made the high scores!"
        msgstr ""
        
       -#: src/serverside.c:973
       +#: src/serverside.c:974
        msgid "You didn't even make the high score table..."
        msgstr ""
        
       -#: src/serverside.c:987
       +#: src/serverside.c:988
        #, c-format
        msgid "Unable to write high score file %s"
        msgstr ""
        
       -#: src/serverside.c:1006
       +#: src/serverside.c:1007
        msgid "(R.I.P.)"
        msgstr ""
        
       -#: src/serverside.c:1041
       +#: src/serverside.c:1042
        #, c-format
        msgid "%s: Tipoff from %s"
        msgstr ""
        
       -#: src/serverside.c:1058
       +#: src/serverside.c:1059
        #, c-format
        msgid "One of your %s was spying for %s.^The spy %s!"
        msgstr ""
        
       -#: src/serverside.c:1066
       +#: src/serverside.c:1067
        #, c-format
        msgid "Your spy working with %s has been discovered!^The spy %s!"
        msgstr ""
        
       -#: src/serverside.c:1089
       +#: src/serverside.c:1090
        #, c-format
        msgid " The lady next to you on the subway said,^ \"%s\"%s"
        msgstr ""
        
       -#: src/serverside.c:1092
       +#: src/serverside.c:1093
        msgid "^    (at least, you -think- that's what she said)"
        msgstr ""
        
       -#: src/serverside.c:1094
       +#: src/serverside.c:1095
        #, c-format
        msgid " You hear someone playing %s"
        msgstr ""
        
       -#: src/serverside.c:1103 src/serverside.c:1112 src/serverside.c:1121
       -#: src/serverside.c:1130
       +#: src/serverside.c:1104 src/serverside.c:1113 src/serverside.c:1122
       +#: src/serverside.c:1131
        #, c-format
        msgid "YN^Would you like to visit %s?"
        msgstr ""
        
       -#: src/serverside.c:1141
       +#: src/serverside.c:1142
        #, c-format
        msgid "YN^^Would you like to hire %s %s for %s?"
        msgstr ""
        
       -#: src/serverside.c:1142
       +#: src/serverside.c:1143
        msgid "an"
        msgstr ""
        
       -#: src/serverside.c:1142
       +#: src/serverside.c:1143
        msgid "a"
        msgstr ""
        
       -#: src/serverside.c:1154
       +#: src/serverside.c:1155
        #, c-format
        msgid "AE^%s is already here!^Do you Attack, or Evade?"
        msgstr ""
       t@@ -2156,331 +2156,331 @@ msgstr ""
        #. The format string used for this purpose can be altered by
        #. passing non-NULL "LoneMessage" (for unaccompanied Officer
        #. Hardass) and/or "DeputyMessage" (for him with x deputies)
       -#: src/serverside.c:1223
       +#: src/serverside.c:1224
        #, c-format
        msgid "YN^Officer %s is chasing you!"
        msgstr ""
        
       -#: src/serverside.c:1225
       +#: src/serverside.c:1226
        #, c-format
        msgid "YN^Officer %s and %d of his deputies are chasing you!"
        msgstr ""
        
       -#: src/serverside.c:1246
       +#: src/serverside.c:1247
        msgid "^Do you run?"
        msgstr ""
        
       -#: src/serverside.c:1249
       +#: src/serverside.c:1250
        msgid "^Do you Run, or Fight?"
        msgstr ""
        
       -#: src/serverside.c:1264
       +#: src/serverside.c:1265
        #, c-format
        msgid "%s: tipoff by %s finished OK."
        msgstr ""
        
       -#: src/serverside.c:1270
       +#: src/serverside.c:1271
        #, c-format
        msgid "Following your tipoff, the cops ambushed %s, who was shot dead"
        msgstr ""
        
       -#: src/serverside.c:1274
       +#: src/serverside.c:1275
        #, c-format
        msgid "Following your tipoff, the cops ambushed %s, who escaped with %d %s. "
        msgstr ""
        
       -#: src/serverside.c:1311
       +#: src/serverside.c:1312
        msgid "^You stand there like an idiot."
        msgstr ""
        
       -#: src/serverside.c:1315
       +#: src/serverside.c:1316
        msgid "^You lose him in the alleys."
        msgstr ""
        
       -#: src/serverside.c:1317
       +#: src/serverside.c:1318
        msgid "^You lose them in the alleys."
        msgstr ""
        
       -#: src/serverside.c:1325
       +#: src/serverside.c:1326
        msgid "^You can't shake him, man!"
        msgstr ""
        
       -#: src/serverside.c:1327
       +#: src/serverside.c:1328
        msgid "^You can't shake them, man!"
        msgstr ""
        
       -#: src/serverside.c:1338
       +#: src/serverside.c:1339
        #, c-format
        msgid "^You killed Officer %s! You find %s on his corpse!"
        msgstr ""
        
       -#: src/serverside.c:1352
       +#: src/serverside.c:1353
        #, c-format
        msgid "YN^^^^Do you pay a doctor %s to sew your %s up?"
        msgstr ""
        
       -#: src/serverside.c:1356
       +#: src/serverside.c:1357
        #, c-format
        msgid "YN^^^^Do you pay a doctor %s to sew you up?"
        msgstr ""
        
       -#: src/serverside.c:1368
       +#: src/serverside.c:1369
        msgid "^You got one, man!"
        msgstr ""
        
       -#: src/serverside.c:1371
       +#: src/serverside.c:1372
        msgid "^You missed!"
        msgstr ""
        
       -#: src/serverside.c:1375
       +#: src/serverside.c:1376
        msgid "^He's firing on you, man! "
        msgstr ""
        
       -#: src/serverside.c:1377
       +#: src/serverside.c:1378
        msgid "^They're firing on you, man! "
        msgstr ""
        
       -#: src/serverside.c:1380
       +#: src/serverside.c:1381
        msgid "You've been hit! "
        msgstr ""
        
       -#: src/serverside.c:1387
       +#: src/serverside.c:1388
        msgid "He wasted you, man! What a drag!"
        msgstr ""
        
       -#: src/serverside.c:1389
       +#: src/serverside.c:1390
        msgid "They wasted you, man! What a drag!"
        msgstr ""
        
       -#: src/serverside.c:1397
       +#: src/serverside.c:1398
        #, c-format
        msgid "You lost one of your %s!"
        msgstr ""
        
       -#: src/serverside.c:1406
       +#: src/serverside.c:1407
        msgid "He missed!"
        msgstr ""
        
       -#: src/serverside.c:1408
       +#: src/serverside.c:1409
        msgid "They missed!"
        msgstr ""
        
       -#: src/serverside.c:1428
       +#: src/serverside.c:1429
        msgid "You were mugged in the subway!"
        msgstr ""
        
       -#: src/serverside.c:1439
       +#: src/serverside.c:1440
        #, c-format
        msgid "You meet a friend! He gives you %d %s."
        msgstr ""
        
       -#: src/serverside.c:1444
       +#: src/serverside.c:1445
        #, c-format
        msgid "You meet a friend! You give him %d %s."
        msgstr ""
        
       -#: src/serverside.c:1453
       +#: src/serverside.c:1454
        msgid "Sanitized away a RandomOffer"
        msgstr ""
        
       -#: src/serverside.c:1458
       +#: src/serverside.c:1459
        #, c-format
        msgid ""
        "Police dogs chase you for %d blocks! You dropped some %s! That's a drag, man!"
        msgstr ""
        
       -#: src/serverside.c:1474
       +#: src/serverside.c:1475
        #, c-format
        msgid "You find %d %s on a dead dude in the subway!"
        msgstr ""
        
       -#: src/serverside.c:1486
       +#: src/serverside.c:1487
        #, c-format
        msgid "Your mama made brownies with some of your %s! They were great!"
        msgstr ""
        
       -#: src/serverside.c:1496
       +#: src/serverside.c:1497
        msgid ""
        "YN^There is some weed that smells like paraquat here!^It looks good! Will "
        "you smoke it? "
        msgstr ""
        
       -#: src/serverside.c:1503
       +#: src/serverside.c:1504
        #, c-format
        msgid "You stopped to %s."
        msgstr ""
        
       -#: src/serverside.c:1524
       +#: src/serverside.c:1525
        #, c-format
        msgid "Would you like to buy a bigger trenchcoat for %s?"
        msgstr ""
        
       -#: src/serverside.c:1529
       +#: src/serverside.c:1530
        #, c-format
        msgid "YN^Hey dude! I'll help carry your %s for a mere %s. Yes or no?"
        msgstr ""
        
       -#: src/serverside.c:1541
       +#: src/serverside.c:1542
        #, c-format
        msgid "YN^Would you like to buy a %s for %s?"
        msgstr ""
        
       -#: src/serverside.c:1642 src/serverside.c:1753
       +#: src/serverside.c:1643 src/serverside.c:1754
        #, c-format
        msgid "%s: offer was on behalf of %s"
        msgstr ""
        
       -#: src/serverside.c:1645
       +#: src/serverside.c:1646
        #, c-format
        msgid "%s has accepted your %s!^Use the G key to contact your spy."
        msgstr ""
        
       -#: src/serverside.c:1691
       +#: src/serverside.c:1692
        msgid ""
        "You hallucinated for three days on the wildest trip you ever imagined!^Then "
        "you died because your brain disintegrated!"
        msgstr ""
        
       -#: src/serverside.c:1730
       +#: src/serverside.c:1731
        #, c-format
        msgid "Too late - %s has just left!"
        msgstr ""
        
       -#: src/serverside.c:1756
       +#: src/serverside.c:1757
        #, c-format
        msgid "%s has rejected your %s!"
        msgstr ""
        
       -#: src/serverside.c:1791
       +#: src/serverside.c:1792
        #, c-format
        msgid "%s has got away!"
        msgstr ""
        
       -#: src/serverside.c:1832
       +#: src/serverside.c:1833
        #, c-format
        msgid "%s has run off!"
        msgstr ""
        
       -#: src/serverside.c:1844
       +#: src/serverside.c:1845
        msgid "Coward! You successfully escaped from the fight."
        msgstr ""
        
       -#: src/serverside.c:1900
       +#: src/serverside.c:1901
        msgid "pitifully armed"
        msgstr ""
        
       -#: src/serverside.c:1901
       +#: src/serverside.c:1902
        msgid "lightly armed"
        msgstr ""
        
       -#: src/serverside.c:1902
       +#: src/serverside.c:1903
        msgid "moderately well armed"
        msgstr ""
        
       -#: src/serverside.c:1903
       +#: src/serverside.c:1904
        msgid "heavily armed"
        msgstr ""
        
       -#: src/serverside.c:1904
       +#: src/serverside.c:1905
        msgid "armed to the teeth"
        msgstr ""
        
       -#: src/serverside.c:1905
       +#: src/serverside.c:1906
        msgid " fires and "
        msgstr ""
        
       -#: src/serverside.c:1906
       +#: src/serverside.c:1907
        msgid " stands and takes it."
        msgstr ""
        
       -#: src/serverside.c:1909
       +#: src/serverside.c:1910
        #, c-format
        msgid "%s arrives, with %d %s, %s,^%s"
        msgstr ""
        
       -#: src/serverside.c:1913
       +#: src/serverside.c:1914
        #, c-format
        msgid "%s arrives, %s,^%s"
        msgstr ""
        
       -#: src/serverside.c:1918
       +#: src/serverside.c:1919
        #, c-format
        msgid "%s fires and "
        msgstr ""
        
       -#: src/serverside.c:1920
       +#: src/serverside.c:1921
        #, c-format
        msgid "%s stands and takes it."
        msgstr ""
        
       -#: src/serverside.c:1932
       +#: src/serverside.c:1933
        msgid "misses you!"
        msgstr ""
        
       -#: src/serverside.c:1933
       +#: src/serverside.c:1934
        #, c-format
        msgid "You failed to hit %s."
        msgstr ""
        
       -#: src/serverside.c:1936
       +#: src/serverside.c:1937
        msgid "You stand and take it."
        msgstr ""
        
       -#: src/serverside.c:1940
       +#: src/serverside.c:1941
        msgid "hits you, man!"
        msgstr ""
        
       -#: src/serverside.c:1943
       +#: src/serverside.c:1944
        msgid " You've been wasted! What a drag!"
        msgstr ""
        
       -#: src/serverside.c:1944
       +#: src/serverside.c:1945
        #, c-format
        msgid "You hit and killed %s"
        msgstr ""
        
       -#: src/serverside.c:1959 src/serverside.c:1992
       +#: src/serverside.c:1960 src/serverside.c:1993
        msgid ", and loot the body!"
        msgstr ""
        
       -#: src/serverside.c:1968
       +#: src/serverside.c:1969
        #, c-format
        msgid "^You lost a %s, man!"
        msgstr ""
        
       -#: src/serverside.c:1973
       +#: src/serverside.c:1974
        #, c-format
        msgid "You are paid a bounty of %s in reward for killing^one of %s's %s"
        msgstr ""
        
       -#: src/serverside.c:1981
       +#: src/serverside.c:1982
        #, c-format
        msgid "You killed one of %s's %s (%d left)"
        msgstr ""
        
       -#: src/serverside.c:1999
       +#: src/serverside.c:2000
        #, c-format
        msgid "You fire, and hit %s!"
        msgstr ""
        
       -#: src/serverside.c:2045
       +#: src/serverside.c:2046
        msgid "YN^Officer %%s spots you dropping %s, and chases you!"
        msgstr ""
        
       -#: src/serverside.c:2047
       +#: src/serverside.c:2048
        msgid ""
        "YN^Officer %%s and %%d of his deputies spot you dropping %s, and chase you!"
        msgstr ""
        
       -#: src/serverside.c:2206
       +#: src/serverside.c:2207
        msgid "Player removed due to idle timeout"
        msgstr ""
        
       -#: src/serverside.c:2216
       +#: src/serverside.c:2217
        msgid "Player removed due to connect timeout"
        msgstr ""
        
       -#: src/serverside.c:2222 src/serverside.c:2228
       +#: src/serverside.c:2223 src/serverside.c:2229
        #, c-format
        msgid "%s fails to return fire..."
        msgstr ""
 (DIR) diff --git a/src/serverside.c b/src/serverside.c
       t@@ -323,7 +323,8 @@ void HandleServerMessage(gchar *buf,Player *Play) {
              case C_CONTACTSPY:
                 for (list=FirstServer;list;list=g_slist_next(list)) {
                    tmp=(Player *)list->data;
       -            if (tmp!=Play && GetListEntry(&(tmp->SpyList),Play)>=0) {
       +            i=GetListEntry(&(tmp->SpyList),Play);
       +            if (tmp!=Play && i>=0 && tmp->SpyList.Data[i].Turns>=0) {
                       SendSpyReport(Play,tmp);
                    }
                }