ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/ext/login.ext
(Generate patch)

Comparing deliantra/server/ext/login.ext (file contents):
Revision 1.53 by root, Mon Jun 11 21:38:13 2007 UTC vs.
Revision 1.59 by root, Tue Jul 3 01:04:43 2007 UTC

41 return unless cf::player::find_active $user; 41 return unless cf::player::find_active $user;
42 42
43 $ns->send_drawinfo ( 43 $ns->send_drawinfo (
44 "That player is already logged in on this server. " 44 "That player is already logged in on this server. "
45 . "If you want to create a new player, choose another name. " 45 . "If you want to create a new player, choose another name. "
46 . "If you are already a registered player, make sure nobody " 46 . "If you have already a registered, make sure nobody "
47 . "else is using your account at this time. If you lost your conenction " 47 . "else is using your account at this time. If you lost your connection "
48 . "then the server will likely timeout within a minute. If you still " 48 . "then the server will likely timeout within a minute. If you still "
49 . "cannot log-in after a minute, you are still logged in. Make sure " 49 . "cannot log-in after a minute, you are still logged in. Make sure "
50 . "you do not have another client running. If you use windows, reboot, " 50 . "you do not have another client running. If you use windows, reboot, "
51 . "this will fix anything.", 51 . "this will fix anything.",
52 cf::NDI_RED 52 cf::NDI_RED
205 205
206 } elsif ($k eq "smoothing") { # cfplus-style smoothing 206 } elsif ($k eq "smoothing") { # cfplus-style smoothing
207 $ns->smoothing ($v); 207 $ns->smoothing ($v);
208 208
209 } elsif ($k eq "fxix") { 209 } elsif ($k eq "fxix") {
210 $v = 2 if $v > 2;
210 $ns->fxix ($v); 211 $ns->fxix ($v);
212 $setup{$k} = $v;
211 213
212 } elsif ($k eq "msg") { 214 } elsif ($k eq "msg") {
215 $v = 2 if $v > 2;
213 $ns->can_msg ($v); 216 $ns->can_msg ($v >= 2);
217 $setup{$k} = $v;
218
219 } elsif ($k eq "xwidget") {
220 # eXperimental server-side widgets
221 $ns->{can_widget} = 1;
214 222
215 } elsif ($k eq "excmd") { 223 } elsif ($k eq "excmd") {
216 # we support it 224 # we support it
217 225
218 } else { 226 } else {
476 $pl->chargen_race_next; 484 $pl->chargen_race_next;
477 } 485 }
478 486
479 $pl->chargen_race_done; 487 $pl->chargen_race_done;
480 488
489 while () {
490 my $res = query $ns, cf::CS_QUERY_SINGLECHAR,
491 "Now choose a gender.\nPress 'f' to become female, and 'm' to become male.\n";
492
493 if ($res =~ /^[fF]/) {
494 $pl->gender (1);
495 last;
496 } elsif ($res =~ /^[mM]/) {
497 $pl->gender (0);
498 last;
499 }
500 }
501
502 $ob->reply (undef, "Welcome to Crossfire!");
503
481 delete $pl->{deny_save}; 504 delete $pl->{deny_save};
482 505
483 last; 506 last;
484 } 507 }
485 }); 508 });
608 631
609 # remove from sight and get fresh "copies" 632 # remove from sight and get fresh "copies"
610 $pl = delete $cf::PLAYER{$ob->name}; 633 $pl = delete $cf::PLAYER{$ob->name};
611 $ob = $pl->ob; 634 $ob = $pl->ob;
612 635
613 $ob->destroy;
614 $pl->destroy; 636 $pl->destroy; # destroys $ob
615 } else { 637 } else {
616 my $a_ = $pl->refcnt;#d# 638 my $a_ = $pl->refcnt;#d#
617 my $b_ = $ob->refcnt;#d# 639 my $b_ = $ob->refcnt;#d#
618 640
619 warn "player-scheduler refcnt ", $ob->name, " pl $pl_ref ob $ob_ref (C pl $a_ ob $b_)\n";#d# 641 warn "player-scheduler refcnt ", $ob->name, " pl $pl_ref ob $ob_ref (C pl $a_ ob $b_)\n";#d#

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines