… | |
… | |
24 | $ns->query ($flags, $text, Coro::rouse_cb); |
24 | $ns->query ($flags, $text, Coro::rouse_cb); |
25 | Coro::rouse_wait |
25 | Coro::rouse_wait |
26 | } |
26 | } |
27 | |
27 | |
28 | sub can_cleanup { |
28 | sub can_cleanup { |
29 | return 0; # highscore list is not cleared out, rethink |
29 | # highscore list is not cleared out, rethink |
|
|
30 | # also, admin accounts can be hacked this way, if unused for long. |
|
|
31 | return 0; |
30 | |
32 | |
31 | my ($pl, $mtime) = @_; |
33 | my ($pl, $mtime) = @_; |
32 | |
34 | |
33 | my $age = time - $mtime; |
35 | my $age = time - $mtime; |
34 | my $level = $pl->ob->level; |
36 | my $level = $pl->ob->level; |
35 | |
37 | |
36 | ($level <= 3 && $age > 7 * 86400) # 7 days for level 0..3 |
38 | ($level <= 3 && $age > 7 * 86400) # 7 days for level 0..3 |
37 | || ($level <= 9 && $age > 90 * 86400) # 3 months for level 4..9 |
39 | || ($level <= 9 && $age > 90 * 86400) # 3 months for level 4..9 |
38 | || ($level <= 20 && $age > 180 * 86400) # 6 months for level 10..20 |
40 | || ($level <= 20 && $age > 180 * 86400) # 6 months for level 10..20 |
39 | || $age > 700 * 86400 # 2 years for everybody else |
41 | #|| $age > 700 * 86400 # 2 years for everybody else |
40 | } |
42 | } |
41 | |
43 | |
42 | # return a guard object for a lock on the given username, if available |
44 | # return a guard object for a lock on the given username, if available |
43 | sub login_guard { |
45 | sub login_guard { |
44 | my ($user) = @_; |
46 | my ($user) = @_; |
… | |
… | |
198 | } |
200 | } |
199 | |
201 | |
200 | Coro::Timer::sleep 0.05; |
202 | Coro::Timer::sleep 0.05; |
201 | } |
203 | } |
202 | |
204 | |
203 | $ob->set_animation (2); |
205 | $ob->set_anim_frame (2); |
204 | $ob->add_statbonus; |
206 | $ob->add_statbonus; |
205 | |
207 | |
206 | $pl->{chargen} = "race"; |
208 | $pl->{chargen} = "race"; |
207 | } |
209 | } |
208 | |
210 | |