ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/Deliantra-Client/DC/MapWidget.pm
(Generate patch)

Comparing deliantra/Deliantra-Client/DC/MapWidget.pm (file contents):
Revision 1.133 by root, Sat Jul 19 20:33:47 2008 UTC vs.
Revision 1.135 by root, Sun Jul 20 02:51:40 2008 UTC

431 > $spd * $self->{tilesize} * $mintime * 1.1 431 > $spd * $self->{tilesize} * $mintime * 1.1
432 ) { 432 ) {
433 #warn "jump ", (max abs $self->{sdx}, abs $self->{sdy}), " ", $spd * $mintime * 1.0;#d# 433 #warn "jump ", (max abs $self->{sdx}, abs $self->{sdy}), " ", $spd * $mintime * 1.0;#d#
434 $self->{sdx} = $self->{sdy} = 0; 434 $self->{sdx} = $self->{sdy} = 0;
435 } else { 435 } else {
436 my $upd = 0; 436 $spd *= $self->{tilesize} * $diff * 1.0001; # 1.0001 so that we don't accumulate rounding errors the wrong direction
437
438 $spd *= $self->{tilesize} * $diff * 1.0001;
439 437
440 my $dx = $self->{sdx} < 0 ? -$spd : $spd; 438 my $dx = $self->{sdx} < 0 ? -$spd : $spd;
441 my $dy = $self->{sdy} < 0 ? -$spd : $spd; 439 my $dy = $self->{sdy} < 0 ? -$spd : $spd;
442 440
443 if ($self->{sdx} * ($self->{sdx} - $dx) <= 0) { $self->{sdx} = 0 } else { $self->{sdx} -= $dx; $upd = 1 } 441 if ($self->{sdx} * ($self->{sdx} - $dx) <= 0) { $self->{sdx} = 0 } else { $self->{sdx} -= $dx }
444 if ($self->{sdy} * ($self->{sdy} - $dy) <= 0) { $self->{sdy} = 0 } else { $self->{sdy} -= $dy; $upd = 1 } 442 if ($self->{sdy} * ($self->{sdy} - $dy) <= 0) { $self->{sdy} = 0 } else { $self->{sdy} -= $dy }
445 443
446 $self->update if $upd; 444 $self->update;
447 } 445 }
448 } 446 }
449 } else { 447 } else {
450 $self->{sdx} = $self->{sdy} = 0; 448 $self->{sdx} = $self->{sdy} = 0;
451 } 449 }
491 } 489 }
492 490
493 glNewList ($self->{list} ||= glGenList); 491 glNewList ($self->{list} ||= glGenList);
494 492
495 glPushMatrix; 493 glPushMatrix;
496 glTranslate $sx0 + $self->{sdx}, $sy0 + $self->{sdy}; 494 glTranslate $sx0, $sy0;
497 glScale $::CFG->{map_scale}, $::CFG->{map_scale}; 495 glScale $::CFG->{map_scale}, $::CFG->{map_scale};
496 glTranslate $self->{sdx}, $self->{sdy};
498 497
498 warn "mapdraw -$self->{sdx}\n";#d#
499 $::MAP->draw ($dx, $dy, $sw, $sh, 499 $::MAP->draw ($dx, $dy, $sw, $sh,
500 $self->{tilesize}, 500 $self->{tilesize},
501 $::CONN->{player}{tag}, 501 $::CONN->{player}{tag},
502 -$self->{sdx}, -$self->{sdy}); 502 -$self->{sdx}, -$self->{sdy});
503 503
504 glTranslate -$self->{sdx}, -$self->{sdy};
504 glScale $self->{tilesize}, $self->{tilesize}; 505 glScale $self->{tilesize}, $self->{tilesize};
505 506
506 if (my $tex = $self->{fow_texture}) { 507 if (my $tex = $self->{fow_texture}) {
507 glPushMatrix; 508 glPushMatrix;
508 glScale 1/3, 1/3; 509 glScale 1/3, 1/3;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines