blastmud/blastmud_game/src/static_content/npc/melbs_dog.rs

95 lines
4.6 KiB
Rust

use super::{NPC, KillBonus};
use crate::models::item::Pronouns;
use crate::static_content::{
possession_type::PossessionType,
species::SpeciesType
};
macro_rules! dog {
($code:expr, $adj:expr, $spawn: expr) => {
NPC {
code: concat!("melbs_dog_", $code),
name: concat!($adj, " dog"),
pronouns: Pronouns { is_proper: false, ..Pronouns::default_inanimate() },
attackable: true,
aggression: 12,
wander_zones: vec!("melbs"),
description: "A malnourished looking dog. Its skeleton is visible through its thin and patchy fur. It smells terrible, and certainly doesn't look tame.",
aliases: vec!("dog"),
spawn_location: concat!("room/", $spawn),
intrinsic_weapon: Some(PossessionType::Fangs),
species: SpeciesType::Dog,
kill_bonus: Some(KillBonus {
msg: "On your wristpad: Thank you for helping Melbs with animal control! Here's your fee.",
payment: 100,
}),
..Default::default()
}
}
}
pub fn npc_list() -> Vec<NPC> {
vec!(
dog!("1", "smelly black", "melbs_williamsst_80"),
dog!("2", "howling black", "melbs_swanstonst_100"),
dog!("3", "smelly black", "melbs_collinsst_160"),
dog!("4", "growling light brown", "melbs_kingst_40"),
dog!("5", "ferocious white", "melbs_swanstonst_110"),
dog!("6", "mangy grey", "melbs_kingst_30"),
dog!("7", "reeking light brown", "melbs_flindersst_210"),
dog!("8", "feral brown", "melbs_elizabethst_40"),
dog!("9", "reeking grey", "melbs_collinsst_190"),
dog!("10", "ferocious grey", "melbs_kingst_60"),
dog!("11", "howling brown", "melbs_collinsst_140"),
dog!("12", "feral black", "melbs_flindersst_160"),
dog!("13", "smelly grey", "melbs_queenst_80"),
dog!("14", "howling grey", "melbs_kingst_70"),
dog!("15", "smelly grey", "melbs_flindersst_110"),
dog!("16", "feral black", "melbs_queenst_latrobest"),
dog!("17", "howling grey", "melbs_swanstonst_110"),
dog!("18", "mangy grey", "melbs_swanstonst_80"),
dog!("19", "reeking light brown", "melbs_latrobest_180"),
dog!("20", "smelly white", "melbs_flindersst_130"),
dog!("21", "reeking grey", "melbs_flindersst_180"),
dog!("22", "growling brown", "melbs_williamsst_80"),
dog!("23", "howling black", "melbs_lonsdalest_100"),
dog!("24", "growling grey", "melbs_latrobest_140"),
dog!("25", "howling light brown", "melbs_queenst_30"),
dog!("26", "howling black", "melbs_latrobest_160"),
dog!("27", "howling grey", "melbs_collinsst_170"),
dog!("28", "growling brown", "melbs_elizabethst_latrobest"),
dog!("29", "mangy brown", "melbs_kingst_70"),
dog!("30", "growling black", "melbs_swanstonst_120"),
dog!("31", "reeking light brown", "melbs_latrobest_130"),
dog!("32", "howling white", "melbs_bourkest_160"),
dog!("33", "growling black", "melbs_elizabethst_50"),
dog!("34", "mangy black", "melbs_swanstonst_110"),
dog!("35", "ferocious grey", "melbs_collinsst_100"),
dog!("36", "mangy grey", "melbs_flindersst_100"),
dog!("37", "growling brown", "melbs_swanstonst_flindersst"),
dog!("38", "mangy light brown", "melbs_lonsdalest_200"),
dog!("39", "howling light brown", "melbs_flindersst_210"),
dog!("40", "mangy light brown", "melbs_queenst_flindersst"),
dog!("41", "reeking white", "melbs_collinsst_130"),
dog!("42", "growling light brown", "melbs_lonsdalest_130"),
dog!("43", "reeking light brown", "melbs_elizabethst_70"),
dog!("44", "mangy brown", "melbs_swanstonst_30"),
dog!("45", "growling light brown", "melbs_swanstonst_lonsdalest"),
dog!("46", "smelly brown", "melbs_queenst_lonsdalest"),
dog!("47", "growling white", "melbs_elizabethst_bourkest"),
dog!("48", "feral brown", "melbs_collinsst_140"),
dog!("49", "ferocious black", "melbs_lonsdalest_150"),
dog!("50", "mangy grey", "melbs_kingst_collinsst"),
dog!("51", "ferocious brown", "melbs_kingst_120"),
dog!("52", "growling white", "melbs_elizabethst_10"),
dog!("53", "ferocious white", "melbs_lonsdalest_190"),
dog!("54", "smelly grey", "melbs_kingst_collinsst"),
dog!("55", "reeking light brown", "melbs_elizabethst_90"),
dog!("56", "reeking grey", "melbs_swanstonst_20"),
dog!("57", "feral brown", "melbs_flindersst_180"),
dog!("58", "reeking brown", "melbs_bourkest_130"),
dog!("59", "mangy light brown", "melbs_queenst_50"),
dog!("60", "growling white", "melbs_kingst_110"),
)
}