/****************************************************************************** * This file contains memo functions *****************************************************************************/ /** * @ignore yes * Send a memo to each employee. Only used if there is no board. */ private int do_memo() { tell_object(this_player(), "Subject: (hit enter for general memo)\n"); input_to((: write_memo($1) :), 0); add_succeeded_mess(""); return 1; } /* do_memo() */ /** @ignore yes */ private void end_memo(string text, string subject) { if (!text) { tell_object(this_player(), "Aborted.\n"); return; } tell_object(this_player(), "Do you want to keep a copy of the memo? "); input_to((: send_memo($1,$(subject),$(text)) :), 0); } /* end_memo() */ /** * @ignore yes * Send the memo */ private void send_memo(string ans, string subject, string text) { object tp = this_player(); string *employees = _retired, tp_name = tp->query_name(); tp = this_player(); tp_name = tp->query_name(); ans = lower_case(ans); if (strlen(ans) < 1 || (ans[0] != 'y' && ans[0] != 'n')) { tell_object(tp, "Do you want to keep a copy of the memo? (Yes or No)? "); input_to((: send_memo($1,$(subject),$(text)) :), 0); return; } if (tp->query_creator() && tp_name != _creator) employees += ({tp_name}); employees += ({_creator}); foreach(string employee in m_indices(_employees)) if (!(_employees[employee][EMP_POINTS] & NPC)) employees += ({employee}); if (ans[0] == 'n') employees -= ({tp_name}); if (!sizeof(employees)) { #ifdef DEBUG tell_creator(CREATOR, "No employees to send mail to.\n"); #endif tell_object(tp, "There is no-one to send a memo to!\n"); return; } #ifdef DEBUG tell_creator(CREATOR, "Sending employee memo to %s.\n", implode(employees, "," )); #endif tell_object( tp, "Sending your memo.\n" ); if (subject && subject != "") subject = " - " + subject; else subject = ""; AUTO_MAILER->auto_mail(implode(employees, ","), tp_name, _very_short+ " employee memo" + subject, "", text, 0, 0); } /* send_memo() */ /** @ignore yes */ private void write_memo(string text) { this_player()->do_edit(0, (: end_memo($1,$(text)) :)); } /* write_memo() */