From 2b01379a8064b573eea4362c9b8d030ab27c6043 Mon Sep 17 00:00:00 2001 From: Joe Wreschnig Date: Sun, 7 Apr 2013 16:45:31 +0200 Subject: [PATCH] Tweak liking thresholds. Required interest rate is higher to discourage flirt grinding. --- fight.c | 4 ++-- rogue.h | 3 ++- romance.c | 11 ++++++----- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/fight.c b/fight.c index e785fdd..3b604bf 100644 --- a/fight.c +++ b/fight.c @@ -108,7 +108,7 @@ register struct thing *mp; if (rnd(5) == 0) mp->t_stats.s_int--; - if (mp->t_stats.s_int > INTERESTED) + if (mp->t_stats.s_int > READY) { const char *msgs[] = { "The %s smiles at you.", @@ -119,7 +119,7 @@ register struct thing *mp; msg(rndchoice(msgs), monsters[mp->t_type-'A'].m_name); return; } - else if (2 * mp->t_stats.s_int > rnd(INTERESTED)) + else if (mp->t_stats.s_int > rnd(INTERESTED)) { const char *msgs[] = { "The %s stares at you.", diff --git a/rogue.h b/rogue.h index 47dfd8e..52678e0 100644 --- a/rogue.h +++ b/rogue.h @@ -340,7 +340,8 @@ extern struct trap traps[MAXTRAPS]; #define NUM_FEATURES 6 #define MAYBE_INTERESTED 1 -#define INTERESTED 20 +#define INTERESTED 40 +#define READY 100 /* * Structure describing a fighting being diff --git a/romance.c b/romance.c index e2bb9b3..96e9809 100644 --- a/romance.c +++ b/romance.c @@ -111,12 +111,13 @@ int ydelta, xdelta; return; liking = count_bits_set( - hash((op->o_type << 4) ^ op->o_which) & tp->t_stats.s_ont) - 1; - if (liking == 0 + hash(op->o_type * op->o_which) & tp->t_stats.s_ont) - 1; + if ((liking == 0 || liking == -1) || liking > 0 && tp->t_stats.s_int <= MAYBE_INTERESTED) { const char *msgs[] = { "The %s ignores %s", + "The %s doesn't care for %s", "The %s isn't interested in %s", }; msg(rndchoice(msgs), killname(tp->t_type), inv_name(op, TRUE)); @@ -126,12 +127,12 @@ int ydelta, xdelta; { const char *msgs[] = { "The %s accepts %s.", - "The %s takes %s.", + "The %s smiles and takes %s.", }; msg(rndchoice(msgs), killname(tp->t_type), inv_name(op, TRUE)); tp->t_stats.s_int += liking * 10; } - else if (liking < 0) + else { const char *msgs[] = { "The %s throws away %s.", @@ -187,7 +188,7 @@ embrace() msg("You wrap your arms around yourself."); return; } - else if (tp->t_stats.s_int < INTERESTED) + else if (tp->t_stats.s_int < READY) { if (tp->t_stats.s_int > 0) tp->t_stats.s_int /= 2; -- 2.20.1