tSome dodgy tipoff stuff tidied up - vaccinewars - be a doctor and try to vacci… | |
git clone git://src.adamsgaard.dk/vaccinewars | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit a5838517afa411ef67b1ab2b9e2b06388993b987 | |
parent 1ef350a163d338351723d2021d32cc4f2a6bd016 | |
Author: Ben Webb <[email protected]> | |
Date: Thu, 3 May 2001 00:35:56 +0000 | |
Some dodgy tipoff stuff tidied up | |
Diffstat: | |
M src/gtk_client.c | 2 ++ | |
M src/serverside.c | 14 ++++++++++---- | |
2 files changed, 12 insertions(+), 4 deletions(-) | |
--- | |
diff --git a/src/gtk_client.c b/src/gtk_client.c | |
t@@ -1291,6 +1291,8 @@ void DealDrugs(GtkWidget *widget,gpointer data) { | |
gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0); | |
spin_adj=(GtkAdjustment *)gtk_adjustment_new(1.0,1.0,2.0,1.0,10.0,10.0); | |
spinner=DealDialog.amount=gtk_spin_button_new(spin_adj,1.0,0); | |
+ gtk_signal_connect(GTK_OBJECT(spinner),"activate", | |
+ GTK_SIGNAL_FUNC(DealOKCallback),data); | |
gtk_box_pack_start(GTK_BOX(hbox),spinner,FALSE,FALSE,0); | |
gtk_box_pack_start(GTK_BOX(vbox),hbox,FALSE,FALSE,0); | |
diff --git a/src/serverside.c b/src/serverside.c | |
t@@ -1335,7 +1335,9 @@ void SendEvent(Player *To) { | |
text=g_strdup_printf(_("AE^%s is already here!^" | |
"Do you Attack, or Evade?"), | |
GetPlayerName(Play)); | |
+/* Steal this to keep track of the potential defender */ | |
To->OnBehalfOf=Play; | |
+ | |
SendDrugsHere(To,TRUE); | |
SendQuestion(NULL,C_MEETPLAYER,To,text); | |
g_free(text); | |
t@@ -2056,6 +2058,7 @@ void HandleAnswer(Player *From,Player *To,char *answer) { | |
/* intended for player "To". */ | |
int i; | |
gchar *text; | |
+ Player *Defender; | |
if (!From || From->EventNum==E_NONE) return; | |
if (answer[0]=='Y' && From->EventNum==E_OFFOBJECT && From->Bitches.Price | |
&& From->Bitches.Price>From->Cash) answer[0]='N'; | |
t@@ -2130,10 +2133,12 @@ void HandleAnswer(Player *From,Player *To,char *answer… | |
} else if (From->EventNum==E_ARRIVE) { | |
if ((answer[0]=='A' || answer[0]=='T') && | |
g_slist_find(FirstServer,(gpointer)From->OnBehalfOf)) { | |
- if (From->OnBehalfOf->IsAt==From->IsAt) { | |
+ Defender=From->OnBehalfOf; | |
+ From->OnBehalfOf=NULL; /* So we don't think it was a tipoff */ | |
+ if (Defender->IsAt==From->IsAt) { | |
if (answer[0]=='A') { | |
- From->EventNum=From->OnBehalfOf->EventNum=E_NONE; | |
- AttackPlayer(From,From->OnBehalfOf); | |
+ From->EventNum=Defender->EventNum=E_NONE; | |
+ AttackPlayer(From,Defender); | |
/* } else if (answer[0]=='T') { | |
From->Flags |= TRADING; | |
SendPlayerData(From); | |
t@@ -2141,7 +2146,7 @@ void HandleAnswer(Player *From,Player *To,char *answer) { | |
} | |
} else { | |
text=g_strdup_printf(_("Too late - %s has just left!"), | |
- GetPlayerName(From->OnBehalfOf)); | |
+ GetPlayerName(Defender)); | |
SendPrintMessage(NULL,C_NONE,From,text); | |
g_free(text); | |
From->EventNum++; SendEvent(From); | |
t@@ -2149,6 +2154,7 @@ void HandleAnswer(Player *From,Player *To,char *answer) { | |
} else { | |
From->EventNum++; SendEvent(From); | |
} | |
+ From->OnBehalfOf=NULL; | |
} else switch(From->EventNum) { | |
case E_ROUGHPUB: | |
From->EventNum++; |