… | |
… | |
90 | delete $dialog{$msg->{msgid}}; |
90 | delete $dialog{$msg->{msgid}}; |
91 | |
91 | |
92 | () |
92 | () |
93 | }; |
93 | }; |
94 | |
94 | |
95 | sub on_logout { |
95 | cf::attach_to_players |
|
|
96 | on_logout => sub { |
96 | my ($pl, $host) = @_; |
97 | my ($pl) = @_; |
97 | |
98 | |
98 | delete $dialog{$_} for grep $pl->ob == $dialog{$_}{ob}, keys %dialog; |
99 | delete $dialog{$_} for grep $pl->ob == $dialog{$_}{ob}, keys %dialog; |
99 | |
100 | }, |
100 | 0 |
101 | ; |
101 | } |
|
|
102 | |
102 | |
103 | sub on_unload { |
103 | sub on_unload { |
104 | while (my ($id, $dialog) = each %dialog) { |
104 | while (my ($id, $dialog) = each %dialog) { |
105 | $dialog->{ob}->contr->ext_reply ($id => msgtype => "error", msg => "npc dialogue module was reloaded"); |
105 | $dialog->{ob}->contr->ext_reply ($id => msgtype => "error", msg => "npc dialogue module was reloaded"); |
106 | } |
106 | } |
107 | |
107 | |
108 | %dialog = (); |
108 | %dialog = (); |
109 | |
|
|
110 | 0 |
|
|
111 | } |
109 | } |
112 | |
110 | |
113 | |
111 | |