aboutsummaryrefslogtreecommitdiff
path: root/queen
diff options
context:
space:
mode:
Diffstat (limited to 'queen')
-rw-r--r--queen/talk.cpp19
1 files changed, 6 insertions, 13 deletions
diff --git a/queen/talk.cpp b/queen/talk.cpp
index 687ee199e8..94a9adde6a 100644
--- a/queen/talk.cpp
+++ b/queen/talk.cpp
@@ -105,19 +105,12 @@ void Talk::talk(const char *filename, int personInRoom, char *cutawayFilename) {
if (data->entryObj > 0)
return;
-
- // XXX R=ROOM_DATA[ROOM];
- // XXX if(OBJECT_DATA[NOUN2+R][0]<=0) return;
- // XXX if(OBJECT_DATA[NOUN2+R][4]>0) return;
- // XXX strcpy(Pstr,FIND_STATE(OBJECT_DATA[NOUN2+R][6],"TALK"));
-
- // I cant talk to that.
-
- // XXX if(seq(Pstr,"MUTE")) {
- // XXX k=24+Rnd(2);
- // XXX SPEAK(JOE_RESPstr[k],"JOE",find_cd_desc(k));
- // XXX return;
- // XXX }
+
+ if (State::findTalk(data->state) == STATE_TALK_MUTE) {
+ // 'I can't talk to that'
+ _logic->joeSpeak(24 + Logic::randomizer.getRandomNumber(2));
+ return;
+ }
load(filename);