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

Comparing deliantra/gde/GCE/Util.pm (file contents):
Revision 1.17 by elmex, Tue Apr 4 11:29:54 2006 UTC vs.
Revision 1.18 by elmex, Thu Jun 1 14:33:14 2006 UTC

18use Crossfire; 18use Crossfire;
19use Crossfire::MapWidget; 19use Crossfire::MapWidget;
20use File::Spec::Functions; 20use File::Spec::Functions;
21use Cwd 'abs_path'; 21use Cwd 'abs_path';
22 22
23our @EXPORT = qw(insert_arch_stack_layer replace_arch_stack_layer new_arch_pb fill_pb_from_arch arch_is_floor stack_find_floor stack_find_wall stack_find arch_is_wall arch_is_monster add_table_widget quick_msg def arch_is_exit map2abs exit_paths pseudohtml2txt); 23our @EXPORT = qw(insert_arch_stack_layer replace_arch_stack_layer new_arch_pb
24 fill_pb_from_arch arch_is_floor stack_find_floor stack_find_wall
25 stack_find arch_is_wall arch_is_monster add_table_widget quick_msg
26 def arch_is_exit map2abs exit_paths pseudohtml2txt arch_is_connector);
24 27
25sub pseudohtml2txt { 28sub pseudohtml2txt {
26 my ($html) = @_; 29 my ($html) = @_;
27 30
28 $html =~ s/<br\s*?\/?>/\n/gsi; 31 $html =~ s/<br\s*?\/?>/\n/gsi;
154 157
155sub arch_is_floor { 158sub arch_is_floor {
156 my ($a) = @_; 159 my ($a) = @_;
157 my $ar = Crossfire::arch_attr $a; 160 my $ar = Crossfire::arch_attr $a;
158 return (substr $ar->{name}, 0, 5) eq 'Floor'; 161 return (substr $ar->{name}, 0, 5) eq 'Floor';
159#return $Crossfire::ARCH{$a->{_name}}->{is_floor}; 162}
163
164sub arch_is_connector {
165 my ($a) = @_;
166 my $ar = Crossfire::arch_attr $a;
167 my $has_connect_field = 0;
168
169 TOP: for (@{$ar->{section}}) {
170 my $name = shift @$_;
171 my @r = @$_;
172 if ($name eq 'general') {
173 for (@r) {
174 my ($k, $s) = ($_->[0], $_->[1]);
175 if ($k eq 'connected' && $s->{name} eq 'connection') {
176 $has_connect_field = 1;
177 last TOP;
178 }
179 }
180 last TOP;
181 }
182 }
183
184 return $has_connect_field;
160} 185}
161 186
162sub arch_is_wall { 187sub arch_is_wall {
163 my ($a) = @_; 188 my ($a) = @_;
164 my $ar = Crossfire::arch_attr $a; 189 my $ar = Crossfire::arch_attr $a;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines