Noisy weapons are now incredibly chatty and like to imitate dungeon noises, except the Singing Sword which usually sings and sometimes feels chatty. The underlying prob of making noises is unchanged.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2084 c06c8d41-db1a-0410-9941-cceddc491573
SEXTAB43OKE5D5NNPNNPJXWR3CLJVRL7VSLMKDATDRLNX4FI3AFQC
E5DMZFW6WCFAKTKKOQPYTQXZ2CGLWMVH64LRXDUI2UIG4VYUHIVQC
KFULGQQOHWUTXOM3BXCCYPGGVGGY4Z6265XUFRCBPNLTZAEHJZSQC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
XRZPPYWPWUOM4SFNI6BHKH2UKJQNLKOV6Y7XIEPEZXE5QYRT26PAC
RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC
CIPVRZGLOZHCERK6YPOBV3P2E4IAB4H6D5EHLRQE2O5E4P4VCBUAC
const char* suffixes[] = {
"hums a little tune.", "breaks into glorious song!",
"sings.", "sings loudly.", "chimes melodiously.",
"makes a horrible noise.", "sings off-key.",
"sings 'tra-la-la'.", "burbles away merrily.",
"gurgles.", "suddenly shrieks!", "cackles.", "warbles.",
"chimes harmoniously.", "makes beautiful music.",
"produces a loud orchestral chord.", "whines plaintively.",
"tinkles.", "rings like a bell.", "wails mournfully.",
"practices its scales.", "lilts tunefully.",
"hums tunelessly.", "sighs.", "makes a deep moaning sound.",
"makes a popping sound.", "sings a sudden staccato note.",
"says 'Hi! I'm the Singing Sword!'.", "whispers something.",
"speaks gibberish.", "raves incoherently",
"yells in some weird language."
// Singing Sword only: singing and other musical noises
const char* suffixes_sing[] = {
"hums a little tune.", "breaks into glorious song!",
"sings.", "sings loudly.", "chimes melodiously.",
"sings off-key.", "sings 'tra-la-la'.", "sings a lullaby.",
"chimes harmoniously.", "makes beautiful music.",
"produces a loud orchestral chord.", "whines plaintively.",
"tinkles.", "rings like a bell.", "wails mournfully.",
"practices its scales.", "lilts tunefully.", "yodels.",
"hums tunelessly.", "makes a painfully high-pitched squeak.",
"sings a sudden staccato note.", "sings a catchy tune.",
"says 'Hi! I'm the Singing Sword!'", "hums a slow waltz.",
"imitates a saxophone.", "shouts 'Sing with me!'",
"chimes like a gong.", "applauds itself.", "whistles merrily.",
"goes 'Da-da-da-dum.", "goes toot-toot!", "chants serenely.",
"trills happily.", "shouts 'One, two, three...'",
"chants a little melody.", "sings a deeply moving song.",
"hums an eerie melody.", "hums a slow and mournful tune.",
"launches into yet another solo.", "strikes up a merry tune.",
"emits a series of high-pitched trills.", "does a drum roll.",
"holds a dissonant chord.", "composes a new song.",
"makes a sound as if to clear its throat.", "beats time.",
"sings a quivering drawn-out note.", "sings a little jingle.",
"makes a twanging sound.", "spouts musical wisdom."
};
// mostly chatter and other human-like sounds
const char* suffixes_talk[] = {
"speaks gibberish.", "raves incoherently.", "shouts 'Help!'",
"growls menacingly.", "sputters and hisses.", "hollers!",
"pants and wheezes.", "barks abruptly.", "sighs.", "wails.",
"howls with laughter!", "laughs crazily.", "burps!",
"goes snicker-snack!", "lets out a mournful sigh.",
"yells in some weird language.", "makes a horrible noise.",
"makes a deep moaning sound.", "gives off a wolf whistle.",
"wails.", "giggles.", "lets out a whoop!", "yawns loudly.",
"chatters happily.", "recites a poem.", "prattles on and on.",
"regales you with its life story.", "intones a prayer.",
"shouts 'Whoopee!'", "hurls insults at you.", "cries out!",
"argues with itself.", "complains about the scenery.",
"says 'I'm bored.'", "calls out a warning!", "swears loudly.",
"inquires about your family.", "coughs loudly.",
"burbles away merrily.", "gurgles.", "suddenly shrieks!",
"cackles.", "warbles.", "suddenly bursts into laughter!",
"shouts out instructions!", "cheers you on.", "snorts.",
"comments on the weather.", "makes a deep, guttural noise.",
"gives off a sizzling sound.", "whistles innocently.",
"makes a popping sound.", "says 'Ssh! Did you hear that?'",
"yelps loudly!", "lets out a series of bird calls."
};
// noises in the form "Your hear ...", mostly in-game noises
const char* suffixes_sounds[] = {
"a voice call your name.", "a shout.", "an angry hiss.",
"a very strange noise.", "a high-pitched scream!",
"a roar!", "someone snoring.", "a hideous shriek!",
"a piteous moan.", "a screech!", "a bellow!",
"a loud, deep croak!", "an angry buzzing noise.",
"an irritating high-pitched whine.", "a splashing noise.",
"the sound of rushing water.", "a sizzling sound.",
"someone calling for help!", "strange voices.",
"a loud clanging noise!", "a grinding noise.", "a knock.",
"a mighty clap of thunder!", "maniacal laughter.",
"a hideous screaming!", "snatches of song.", "a bark!",
"a rumbling sound.", "a twanging sound.", "an echo. Echo.",
"the chiming of a distant gong.", "a crunching sound.",
"the tinkle of an enormous bell.", "a distant \"Zot\"!",
"the distant roaring of an enraged frog.", "an echo.",
"the wailing of sirens.", "a flourish of trumpets!"
const int num_suffixes = sizeof(suffixes) / sizeof(suffixes[0]);
msg::stream << "The Singing Sword "
<< suffixes[random2(num_suffixes)] << std::endl;
}
int num_suffixes;
std::string message;
if (you.special_wield == SPWLD_SING)
{
message = "The Singing Sword ";
if (!one_chance_in(5)) // sings
{
num_suffixes = sizeof(suffixes_sing)
/ sizeof(suffixes_sing[0]);
message += suffixes_sing[random2(num_suffixes)];
}
else // talks
{
num_suffixes = sizeof(suffixes_talk)
/ sizeof(suffixes_talk[0]);
message += suffixes_talk[random2(num_suffixes)];
}
}
else // SPWLD_NOISE
{
if (one_chance_in(3)) // "You hear..." noises
{
message = "You hear ";
num_suffixes = sizeof(suffixes_sounds)
/ sizeof(suffixes_sounds[0]);
message += suffixes_sounds[random2(num_suffixes)];
}
else // normal chatter
{
message = "Your ";
message += you.inv[wpn].name(DESC_BASENAME);
message += " ";
num_suffixes = sizeof(suffixes_talk)
/ sizeof(suffixes_talk[0]);
message += suffixes_talk[random2(num_suffixes)];
}
}
mpr(message.c_str(), MSGCH_SOUND);
} // makes_noise
break;
case SPWLD_HUM:
if (makes_noise)
{
}
break; // to noisy() call at foot 2apr2000 {dlb}
case SPWLD_CHIME:
if (makes_noise)
{
mprf(MSGCH_SOUND, "%s chimes like a gong.",
you.inv[wpn].name(DESC_CAP_YOUR).c_str());
}
break;
case SPWLD_BECKON:
if (makes_noise)
mpr("You hear a voice call your name.", MSGCH_SOUND);
SPWLD_HUM, // 51 - see it_use3::special_wielded() {dlb}
SPWLD_CHIME, // 52 - see it_use3::special_wielded() {dlb}
SPWLD_BECKON, // 53 - see it_use3::special_wielded() {dlb}
SPWLD_SHOUT // 54 - see it_use3::special_wielded() {dlb}
SPWLD_NOISE // further differentiation useless -> removed (jpeg)