Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void main() {
- boolean last_encounter_was_silent_wanderer = false;
- // props starting with underscores are automagically reset at
- // rollover, which suits us perfectly.
- int last_seen = get_property("_last_wanderer_seen").to_int();
- int curr_turn = my_turncount();
- if ( last_seen == curr_turn ) // free turn after wanderer
- return;
- if ( my_location() == $location[none] ) // copy
- return;
- monster m = last_monster();
- int delta = curr_turn - last_seen;
- if ( delta < 5 ) // too soon! clingy or copy.
- return;
- if ( m == $monster[none] ) {
- // ffs mafia.
- // Thanks Barry!
- // Try not to use this, since it lives across rollovers.
- string monster_name = get_property("lastEncounter");
- matcher wanderer_matcher = create_matcher(
- "wh15p3r|whisper|murmur|silent scream|5113n7 5cr34m",
- monster_name
- );
- if ( wanderer_matcher.find() )
- last_encounter_was_silent_wanderer = true;
- }
- else {
- switch ( m.manuel_name ) {
- case "silent scream":
- case "voiceless whisper":
- case "mouthless murmur":
- last_encounter_was_silent_wanderer = true;
- }
- }
- if ( !last_encounter_was_silent_wanderer )
- return;
- set_property("_last_wanderer_seen", curr_turn);
- if ( last_seen == 0 ) // first fight of the day
- return;
- int delta_for_timer = delta - 1;
- cli_execute("/timer " + delta_for_timer + " silent wanderer 0-4 turns after this expires");
- return;
- }
Advertisement
Add Comment
Please, Sign In to add comment