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

Comparing deliantra/Deliantra/Deliantra.pm (file contents):
Revision 1.90 by root, Sat Mar 3 18:58:25 2007 UTC vs.
Revision 1.92 by root, Sat Mar 3 19:32:00 2007 UTC

174 $_[0] /= $_[1]; 174 $_[0] /= $_[1];
175 } 175 }
176 176
177 $_[0] 177 $_[0]
178 }, 178 },
179 'eq' => sub { "$_[0]" eq "$_[1]" },
180 'ne' => sub { "$_[0]" ne "$_[1]" },
179 ; 181 ;
180} 182}
181 183
182sub Crossfire::MoveType::new { 184sub Crossfire::MoveType::new {
183 my ($class, $string) = @_; 185 my ($class, $string) = @_;
184 186
185 my $mask; 187 my $mask;
186 my $value; 188 my $value;
187 189
190 if ($string =~ /^\s*\d+\s*$/) {
191 $mask = MOVE_ALL;
192 $value = $string+0;
193 } else {
188 for (split /\s+/, lc $string) { 194 for (split /\s+/, lc $string) {
189 if (s/^-//) { 195 if (s/^-//) {
190 $mask |= $MOVE_TYPE{$_}; 196 $mask |= $MOVE_TYPE{$_};
191 $value &= ~$MOVE_TYPE{$_}; 197 $value &= ~$MOVE_TYPE{$_};
192 } else { 198 } else {
193 $mask |= $MOVE_TYPE{$_}; 199 $mask |= $MOVE_TYPE{$_};
194 $value |= $MOVE_TYPE{$_}; 200 $value |= $MOVE_TYPE{$_};
201 }
195 } 202 }
196 } 203 }
197 204
198 (bless [$mask, $value], $class)->normalise 205 (bless [$mask, $value], $class)->normalise
199} 206}

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines