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.57 by elmex, Tue Jun 13 11:01:04 2006 UTC vs.
Revision 1.58 by elmex, Tue Jun 13 14:35:17 2006 UTC

181 $self->{completer}->set_prefix (""); 181 $self->{completer}->set_prefix ("");
182 $self->{completer}->show; 182 $self->{completer}->show;
183 } elsif (exists $DIR{$sym}) { 183 } elsif (exists $DIR{$sym}) {
184 if ($mod & CFClient::KMOD_SHIFT) { 184 if ($mod & CFClient::KMOD_SHIFT) {
185 $self->{shft}++; 185 $self->{shft}++;
186 if ($DIR{$sym}[0] != $self->{fire_dir}) {
186 $::CONN->user_send ("fire $DIR{$sym}[0]"); 187 $::CONN->user_send ("fire $DIR{$sym}[0]");
188 }
189 $self->{fire_dir} = $DIR{$sym}[0];
187 } elsif ($mod & CFClient::KMOD_CTRL) { 190 } elsif ($mod & CFClient::KMOD_CTRL) {
188 $self->{ctrl}++; 191 $self->{ctrl}++;
189 $::CONN->user_send ("run $DIR{$sym}[0]"); 192 $::CONN->user_send ("run $DIR{$sym}[0]");
190 } else { 193 } else {
191 $::CONN->user_send ("$DIR{$sym}[1]"); 194 $::CONN->user_send ("$DIR{$sym}[1]");
219 222
220 my $res = 0; 223 my $res = 0;
221 my $mod = $ev->{mod}; 224 my $mod = $ev->{mod};
222 my $sym = $ev->{sym}; 225 my $sym = $ev->{sym};
223 226
227 if ($::CFG->{shift_fire_stop}) {
224 if (!($mod & CFClient::KMOD_SHIFT) && delete $self->{shft}) { 228 if (!($mod & CFClient::KMOD_SHIFT) && delete $self->{shft}) {
225 $::CONN->user_send ("fire_stop"); 229 $::CONN->user_send ("fire_stop");
230 delete $self->{fire_dir};
226 $res = 1; 231 $res = 1;
232 }
233 } else {
234 if (exists $DIR{$sym} && delete $self->{shft}) {
235 $::CONN->user_send ("fire_stop");
236 delete $self->{fire_dir};
237 $res = 1;
238 } elsif (($sym == CFClient::SDLK_LSHIFT || $sym == CFClient::SDLK_RSHIFT) && delete $self->{shft}) { # XXX: is RSHIFT ok?
239 $::CONN->user_send ("fire_stop");
240 delete $self->{fire_dir};
241 $res = 1;
242 }
227 } 243 }
228 244
229 if (!($mod & CFClient::KMOD_CTRL ) && delete $self->{ctrl}) { 245 if (!($mod & CFClient::KMOD_CTRL ) && delete $self->{ctrl}) {
230 $::CONN->user_send ("run_stop"); 246 $::CONN->user_send ("run_stop");
231 $res = 1; 247 $res = 1;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines