lineofsight 1.0
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 3041
Games::Lineofsight 1.0
Games::Lineofsight is a Perl module. more>>
Games::Lineofsight is a Perl module.
Many games (Ultima, Nethack) use two-dimensional maps that consists of the squares of the same size in a grid. Line-of-sight means that some of the squares may represent the items that block the vision of the player from seeing squares behind them. With this module you can add that behaviour to your games.
SYNOPSIS
use Games::Lineofsight qw(lineofsight);
# The map has to be a two-dimensional array. Each member (or "cell") of the array represents one
# square in the map. In this example each cell contains only one character but you can put strings
# to the cells also - practical with the graphical games.
my @map=(
[split //,"..:..::........."], # this is the map
[split //,".......:..X....:"], # . and : represents the ground
[split //,"...X.....:...:.."], # X is the barrier for the sight
[split //,".:...:....:....."],
[split //,"..X....:..X....."],
[split //,"..X..:........:."],
);
my($width)=scalar(@{@map[0]}); # the width of the map
my($height)=scalar(@map); # the height of the map
my($barrier_str)="X"; # string that represents the barrier
my($hidden_str)="*"; # string that represents a cell behind a barrier
my($man_str)="@"; # string that represents the viewer
my($man_x,$man_y)=(7,3); # view point coordinates - the player is here
# recreate the map with line-of-sight
@map=lineofsight(@map,$man_x,$man_y,$barrier_str,$hidden_str);
# draw the map
for(my $i=0;$i < $height;$i++){
for(my $j=0;$j < $width;$j++){
print $man_x == $j && $man_y == $i ? $man_str : $map[$i][$j];
}
print "n";
}
or
# The lineofsight() calls get_barriers() and analyze_map() each time its called. If the viewer
# moves around the map a lot, its much faster to read in the barriers once and call only
# analyze_map() each time before drawing it.
use Games::Lineofsight qw(get_barriers analyze_map);
# The map has to be a two-dimensional array. Each member (or "cell") of the array represents one
# square in the map. In this example each cell contains only one character but you can put strings
# to the cells also - practical with the graphical games.
my @map=(
[split //,"..:..::........."], # this is the map
[split //,".......:..X....:"], # . and : represents the ground
[split //,"...X.....:...:.."], # X is the barrier for the sight
[split //,".:...:....:....."],
[split //,"..X....:..X....."],
[split //,"..X..:........:."],
);
my($width)=scalar(@{@map[0]}); # the width of the map
my($height)=scalar(@map); # the height of the map
my($barrier_str)="X"; # string that represents the barrier
my($hidden_str)="*"; # string that represents a cell behind a barrier
my($man_str)="@"; # string that represents the viewer
my($man_x,$man_y)=(7,3); # view point coordinates - the player is here
# get_barriers() returns a hash with the information about barriers in the map. In this example we
# declare the "X"-character as a barrier. As well you can declare it to be a string in the graphical
# games; for example "barrier.jpg".
my %barrier=get_barriers($width,$height,@map,$barrier_str);
# analyze_map() returns an array containing the original map looked from the view point. The cells
# behind the barriers are replaced with given strings. The barriers should be told to the subroutine
# calling first get_barriers()-subroutine as we already did.
my @map2=analyze_map($width,$height,@map,%barrier,$man_x,$man_y,$hidden_str);
#draw the map with the lineofsight
print "nOriginal map:n";
draw($width,$height,$man_x,$man_y,@map2,$man_str);
# move the viewer two squares right
$man_x+=2;
# refresh the map
my @map2=analyze_map($width,$height,@map,%barrier,$man_x,$man_y,$hidden_str);
#draw the map again
print "nViewer has moved:n";
draw($width,$height,$man_x,$man_y,@map2,$man_str);
sub draw{
my($width,$height,$man_x,$man_y,$map,$man_str)=@_;
for(my $i=0;$i < $height;$i++){
for(my $j=0;$j < $width;$j++){
print $man_x == $j && $man_y == $i ? $man_str : $$map[$i][$j];
}
print "n";
}
}
<<lessMany games (Ultima, Nethack) use two-dimensional maps that consists of the squares of the same size in a grid. Line-of-sight means that some of the squares may represent the items that block the vision of the player from seeing squares behind them. With this module you can add that behaviour to your games.
SYNOPSIS
use Games::Lineofsight qw(lineofsight);
# The map has to be a two-dimensional array. Each member (or "cell") of the array represents one
# square in the map. In this example each cell contains only one character but you can put strings
# to the cells also - practical with the graphical games.
my @map=(
[split //,"..:..::........."], # this is the map
[split //,".......:..X....:"], # . and : represents the ground
[split //,"...X.....:...:.."], # X is the barrier for the sight
[split //,".:...:....:....."],
[split //,"..X....:..X....."],
[split //,"..X..:........:."],
);
my($width)=scalar(@{@map[0]}); # the width of the map
my($height)=scalar(@map); # the height of the map
my($barrier_str)="X"; # string that represents the barrier
my($hidden_str)="*"; # string that represents a cell behind a barrier
my($man_str)="@"; # string that represents the viewer
my($man_x,$man_y)=(7,3); # view point coordinates - the player is here
# recreate the map with line-of-sight
@map=lineofsight(@map,$man_x,$man_y,$barrier_str,$hidden_str);
# draw the map
for(my $i=0;$i < $height;$i++){
for(my $j=0;$j < $width;$j++){
print $man_x == $j && $man_y == $i ? $man_str : $map[$i][$j];
}
print "n";
}
or
# The lineofsight() calls get_barriers() and analyze_map() each time its called. If the viewer
# moves around the map a lot, its much faster to read in the barriers once and call only
# analyze_map() each time before drawing it.
use Games::Lineofsight qw(get_barriers analyze_map);
# The map has to be a two-dimensional array. Each member (or "cell") of the array represents one
# square in the map. In this example each cell contains only one character but you can put strings
# to the cells also - practical with the graphical games.
my @map=(
[split //,"..:..::........."], # this is the map
[split //,".......:..X....:"], # . and : represents the ground
[split //,"...X.....:...:.."], # X is the barrier for the sight
[split //,".:...:....:....."],
[split //,"..X....:..X....."],
[split //,"..X..:........:."],
);
my($width)=scalar(@{@map[0]}); # the width of the map
my($height)=scalar(@map); # the height of the map
my($barrier_str)="X"; # string that represents the barrier
my($hidden_str)="*"; # string that represents a cell behind a barrier
my($man_str)="@"; # string that represents the viewer
my($man_x,$man_y)=(7,3); # view point coordinates - the player is here
# get_barriers() returns a hash with the information about barriers in the map. In this example we
# declare the "X"-character as a barrier. As well you can declare it to be a string in the graphical
# games; for example "barrier.jpg".
my %barrier=get_barriers($width,$height,@map,$barrier_str);
# analyze_map() returns an array containing the original map looked from the view point. The cells
# behind the barriers are replaced with given strings. The barriers should be told to the subroutine
# calling first get_barriers()-subroutine as we already did.
my @map2=analyze_map($width,$height,@map,%barrier,$man_x,$man_y,$hidden_str);
#draw the map with the lineofsight
print "nOriginal map:n";
draw($width,$height,$man_x,$man_y,@map2,$man_str);
# move the viewer two squares right
$man_x+=2;
# refresh the map
my @map2=analyze_map($width,$height,@map,%barrier,$man_x,$man_y,$hidden_str);
#draw the map again
print "nViewer has moved:n";
draw($width,$height,$man_x,$man_y,@map2,$man_str);
sub draw{
my($width,$height,$man_x,$man_y,$map,$man_str)=@_;
for(my $i=0;$i < $height;$i++){
for(my $j=0;$j < $width;$j++){
print $man_x == $j && $man_y == $i ? $man_str : $$map[$i][$j];
}
print "n";
}
}
Download (0.004MB)
Added: 2007-01-03 License: Perl Artistic License Price:
1029 downloads
Filelight 1.0
Filelight allows you to understand exactly where your diskspace is being used. more>>
Filelight allows you to understand exactly where your diskspace is being used by graphically representating your filesystem as a set of concentric segmented-rings.
Filelight creates a complex, but data-rich graphical representation of the files and directories on your computer. An example of Filelights representation of KDEs disk usage is shown below. It is important to understand that the full circle represents 143MB, and there are 143MB of files contained recursively in the directory.
Segments are sized relative to the files they represent. Directories have child-segments that represent the files in that directory. Hovering over any segment gives you details about the file it represents, such as its size.
The net-result is something similar to KDirStat, however the data is more dense, and the representation more informative. Most people tend to use Filelight to find out where their diskspace is concentrated, and this is what it is mostly designed to do.
Filelight is released under the GNU General Public License.
<<lessFilelight creates a complex, but data-rich graphical representation of the files and directories on your computer. An example of Filelights representation of KDEs disk usage is shown below. It is important to understand that the full circle represents 143MB, and there are 143MB of files contained recursively in the directory.
Segments are sized relative to the files they represent. Directories have child-segments that represent the files in that directory. Hovering over any segment gives you details about the file it represents, such as its size.
The net-result is something similar to KDirStat, however the data is more dense, and the representation more informative. Most people tend to use Filelight to find out where their diskspace is concentrated, and this is what it is mostly designed to do.
Filelight is released under the GNU General Public License.
Download (0.65MB)
Added: 2006-09-02 License: GPL (GNU General Public License) Price:
1148 downloads
Blogfish 1.0
Blogfish is the memepool. more>>
Blogfish is the memepool.
Blogfish is social networking meets evolutionary software meets peer-to-pier networking. Blogfish is best eaten wrapped in newspaper, with salt and vinegar. Blogfish is the fin end of the wedge.
More prosaically, blogfish is a Gnome panel applet, written in Python using PyGTK and Gnome-python. It allows you to spread your blog URL, website URL or random thoughts to other users. Good memes survive; bad ones are voted down and go belly up.
Main features:
- New simple peer for running on servers, systems without X
- RPM!
- Bugfixes: no longer sucks so much memory; dies nicely on exit; networking bugs, lots; resizes nicely
- Drag and drop URL to add new fish
- Nice new icon
- UI compatibility with the HIG
- Simpler install script
- Compatibility with Python < 2.3
- Beaten to release by Sarge, FFS
<<lessBlogfish is social networking meets evolutionary software meets peer-to-pier networking. Blogfish is best eaten wrapped in newspaper, with salt and vinegar. Blogfish is the fin end of the wedge.
More prosaically, blogfish is a Gnome panel applet, written in Python using PyGTK and Gnome-python. It allows you to spread your blog URL, website URL or random thoughts to other users. Good memes survive; bad ones are voted down and go belly up.
Main features:
- New simple peer for running on servers, systems without X
- RPM!
- Bugfixes: no longer sucks so much memory; dies nicely on exit; networking bugs, lots; resizes nicely
- Drag and drop URL to add new fish
- Nice new icon
- UI compatibility with the HIG
- Simpler install script
- Compatibility with Python < 2.3
- Beaten to release by Sarge, FFS
Download (0.14MB)
Added: 2005-07-22 License: GPL (GNU General Public License) Price:
1554 downloads
resizePhotos 1.0
resizePhoto is a nice service menu to resize your photos to a size suitable for emailing. more>>
resizePhoto is a nice service menu to resize your photos to a size suitable for emailing. It will resize any picture so that it is no more than 640 pixels on a side while preserving the aspect ration. This size can easily be changed by editing a text file.
You can resize any number of photos simultaneously by multiselecting them in Konqueror, then choosing the "Resize Photo" service menu.
A dialog will display the progress. The dialog has a cancel button.
Usage:
Open a folder containing some image files (.png, .jpg, .gif) in Konqueror.
Select one or several of these files.
Right-click one of the selected file and select Action->Resize Photo. (See first screenshot.)
A dialog will appear showing the progress of the resizing. (See second screenshot.) Press cancel if you so desire.
A folder named "Sized" will appear in the image folder. The resized photos are in that folder.
To install:
Extract the two files from the tar.gz file. Copy the .desktop to ~/.kde/share/apps/konqueror/servicemenus. Copy the .sh file to somewhere in your path such as /usr/bin, /usr/local/bin or ~/bin. Double check that the .sh file is executable.
Edit the resizePhotos.sh file to change the size of the resized files, or the name of the "Sized" directory.
<<lessYou can resize any number of photos simultaneously by multiselecting them in Konqueror, then choosing the "Resize Photo" service menu.
A dialog will display the progress. The dialog has a cancel button.
Usage:
Open a folder containing some image files (.png, .jpg, .gif) in Konqueror.
Select one or several of these files.
Right-click one of the selected file and select Action->Resize Photo. (See first screenshot.)
A dialog will appear showing the progress of the resizing. (See second screenshot.) Press cancel if you so desire.
A folder named "Sized" will appear in the image folder. The resized photos are in that folder.
To install:
Extract the two files from the tar.gz file. Copy the .desktop to ~/.kde/share/apps/konqueror/servicemenus. Copy the .sh file to somewhere in your path such as /usr/bin, /usr/local/bin or ~/bin. Double check that the .sh file is executable.
Edit the resizePhotos.sh file to change the size of the resized files, or the name of the "Sized" directory.
Download (MB)
Added: 2006-12-05 License: GPL (GNU General Public License) Price:
1054 downloads
kmplot 1.0
kmplot is a mathematical function plotter for the KDE desktop. more>>
Kmplot is a mathematical function plotter for the KDE-Desktop. It has built in a powerfull parser.
You can plot different functions simultaneously and combine their function terms to build new functions.
Kmplot supports functions with parameters and functions in polar coordinates. Several grid modes are possible. Plots may be printed with high precision in correct scale.
<<lessYou can plot different functions simultaneously and combine their function terms to build new functions.
Kmplot supports functions with parameters and functions in polar coordinates. Several grid modes are possible. Plots may be printed with high precision in correct scale.
Download (0.50MB)
Added: 2005-09-13 License: GPL (GNU General Public License) Price:
1514 downloads
Gnursid 1.0
Gnursid is a XP Olive-like theme for Gnome (GTK+). more>>
Gnursid is a XP Olive-like theme for Gnome (GTK+).
Gnursid uses colours similar to XP/Olive.
Many changes in this updated version.
<<lessGnursid uses colours similar to XP/Olive.
Many changes in this updated version.
Download (0.034MB)
Added: 2007-01-26 License: GPL (GNU General Public License) Price:
1006 downloads
SnowIsh 1.0
SnowIsh provides a Mac-inspired icon theme. more>>
SnowIsh provides a Mac-inspired icon theme.
Also greatly inspired by VannillA Cream Icon Set made by djnjpendragon.
Again, all done with inkscape.
Version restrictions:
- Beautiful icons, but the gtk-media-previous-ltr icon is missing from both the PNG and SVG sets (it should be a copy of gtk-media-next-rtl). Also, the Trash icon doesnt show up at large sizes - the fallback is used instead.
Enhancements:
- Add a PNG version (faster)
<<lessAlso greatly inspired by VannillA Cream Icon Set made by djnjpendragon.
Again, all done with inkscape.
Version restrictions:
- Beautiful icons, but the gtk-media-previous-ltr icon is missing from both the PNG and SVG sets (it should be a copy of gtk-media-next-rtl). Also, the Trash icon doesnt show up at large sizes - the fallback is used instead.
Enhancements:
- Add a PNG version (faster)
Download (MB)
Added: 2007-03-02 License: GPL (GNU General Public License) Price:
969 downloads
BlankOn 1.0
BlankOn is a Gnome icon theme and are the default icon theme for BlankOn Linux. more>>
BlankOn is a Gnome icon theme and they are the default icon theme for BlankOn Linux.
<<less Download (0.61MB)
Added: 2005-11-17 License: GPL (GNU General Public License) Price:
1441 downloads
Alan 1.0
Alan project is a Turing machine implementation. more>>
Alan project is a Turing machine implementation.
Alan is an implementation of a Turing machine for educational purposes.
It was created as a programing project at the University of Aplied Sciences Rosenheim.
Features include an easy-to-use GUI and a reusable Turing Machine component. Additionally, Alan contains many example programs for the Turing machine.
<<lessAlan is an implementation of a Turing machine for educational purposes.
It was created as a programing project at the University of Aplied Sciences Rosenheim.
Features include an easy-to-use GUI and a reusable Turing Machine component. Additionally, Alan contains many example programs for the Turing machine.
Download (0.37MB)
Added: 2006-10-25 License: GPL (GNU General Public License) Price:
1095 downloads
Clearbox 1.0
Clearbox is a customizable theme for the Metacity Window Manager. more>>
Clearbox is a customizable theme for the Metacity Window Manager.
A small GTK application allow configure the differents theme aspects, preview the theme and save it in the user themes folder.
The options that can be configured in the Clearbox theme are the following ones:
- Topbar style
- Clearbox-out, Clearbox-in or flat
- Gradient intensity (3 levels)
- Frame style
- Square corners or rounded corners
- Border width
- Colorized borders
- Interior outline
- 3D effect borders
- Title position
- Left or center
- Text with shadow
- Controls style
- Simple, with dark frame or with clear frame
- Buttons size
- Buttons gap
- Button menu style
- Arrow or application icon
- Theme colors
- GTK theme colors or custom colors
<<lessA small GTK application allow configure the differents theme aspects, preview the theme and save it in the user themes folder.
The options that can be configured in the Clearbox theme are the following ones:
- Topbar style
- Clearbox-out, Clearbox-in or flat
- Gradient intensity (3 levels)
- Frame style
- Square corners or rounded corners
- Border width
- Colorized borders
- Interior outline
- 3D effect borders
- Title position
- Left or center
- Text with shadow
- Controls style
- Simple, with dark frame or with clear frame
- Buttons size
- Buttons gap
- Button menu style
- Arrow or application icon
- Theme colors
- GTK theme colors or custom colors
Download (0.60MB)
Added: 2005-08-14 License: GPL (GNU General Public License) Price:
1531 downloads
Nitrogen 1.0
Nitrogen project is a background browser and setter for X. more>>
Nitrogen project is a background browser and setter for X.
It is written in C++ using the gtkmm toolkit. It can be used in two modes: browser and recall. It is multi-head friendly and can even work in GNOME. Nitrogen has been in development for over 2 years, due to real life and laziness. For more info, check out the features section.
<<lessIt is written in C++ using the gtkmm toolkit. It can be used in two modes: browser and recall. It is multi-head friendly and can even work in GNOME. Nitrogen has been in development for over 2 years, due to real life and laziness. For more info, check out the features section.
Download (0.22MB)
Added: 2007-05-25 License: GPL (GNU General Public License) Price:
882 downloads
Wmlife 1.0.0
wmlife is a life and death dockapp. more>>
wmlife is a program launcher dockapp.
Wmlife is a dock app running Conways Game of Life (and program launcher). Life is played on a grid of square cells where a cell can be either live or dead. In the rules, you count the number of live neighbours for each cell to determine whether a cell lives or dies;
Birth A dead cell with exactly three live neighbours becomes a live cell.
Survival A live cell with two or three live neighbours stays alive.
Overcrowding / Loneliness In all other cases, a cell dies or remains dead.
Normally Life is implemented on an infinite board but due to size restraints wmlife implements the grid as a torus. In a torus, the grid wraps at the edges from top to bottom and left to right.
<<lessWmlife is a dock app running Conways Game of Life (and program launcher). Life is played on a grid of square cells where a cell can be either live or dead. In the rules, you count the number of live neighbours for each cell to determine whether a cell lives or dies;
Birth A dead cell with exactly three live neighbours becomes a live cell.
Survival A live cell with two or three live neighbours stays alive.
Overcrowding / Loneliness In all other cases, a cell dies or remains dead.
Normally Life is implemented on an infinite board but due to size restraints wmlife implements the grid as a torus. In a torus, the grid wraps at the edges from top to bottom and left to right.
Download (0.090MB)
Added: 2006-10-26 License: GPL (GNU General Public License) Price:
1093 downloads
Polyester 1.0
Polyester is a widget style + kwin decoration both aimed to be a good balance between eye candy and simplicity. more>>
Polyester is a widget style + kwin decoration both aimed to be a good balance between eye candy and simplicity.
<<less Download (MB)
Added: 2007-04-13 License: GPL (GNU General Public License) Price:
926 downloads
RFind 1.0
RFind it indexes and searches filenames in a directory hierarchy. more>>
RFind indexes the filenames of a given directory, and allows you to quickly search this index with regular expressions. Search-on-typing with more than 500,000 indexed filenames is easily possible.
RFind attempts to be very configurable so that it can be useful to everyone. It features hierarchically presented search results, search-on-typing, and the ability to define rules to execute on mouse click.
Main features:
- Hierarchical presented search results
- Search-on-typing
- Define rules to execute on mouseclick
<<lessRFind attempts to be very configurable so that it can be useful to everyone. It features hierarchically presented search results, search-on-typing, and the ability to define rules to execute on mouse click.
Main features:
- Hierarchical presented search results
- Search-on-typing
- Define rules to execute on mouseclick
Download (0.011MB)
Added: 2005-04-28 License: Public Domain Price:
1639 downloads
Dogmastik 1.0
Dogmastik is a pixmap theme for Gnome (GTK+). more>>
Dogmastik is a pixmap theme for Gnome (GTK+).
Dogmastik is a theme inspired by DogmaX (WindowBlinds) and Plastik (KDE).
<<lessDogmastik is a theme inspired by DogmaX (WindowBlinds) and Plastik (KDE).
Download (0.050MB)
Added: 2007-01-26 License: GPL (GNU General Public License) Price:
1002 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above lineofsight 1.0 search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed