📄 plugin.htm
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Zooom</title>
</head>
<body bgcolor="#000000" text="#008080" background="background.gif">
<p align="center"><strong><u><font color="#8080FF" face="Arial" size="5">Overview</font></u></strong></p>
<table border="0" width="100%">
<tr>
<td width="50"> </td>
<td valign="top" align="left"><p align="center"><font color="#8080C0" size="1" face="Arial">First
things first: This document builds on the level customization
technology of Zooom, so perhaps it's a good idea to read up on how to
build levels before entering this section.<br>
<br>
Plugins allow you to add custom enemy graphics and behavior to Zooom.
A plugin consists of a number of media files and a definition file
that tells Zooom how to use the media files. A plugin, once designed,
can be declared by a level and after this declaration, all media files
defined in the plugin are available to the level. All plugin files
must reside in the plugin subdirectory of Zooom. Accordingly, a plugin
is distributed as a zip-File, where installation consists of simply
unpacking the zip-File into the plugin directory.</font></p>
</td>
<td width="50"> </td>
</tr>
</table>
<p align="center"><strong><u><font color="#8080FF" face="Arial" size="5">
<br>
<a name="Elements"></a>Elements</font></u></strong></p>
<table border="0" width="100%">
<tr>
<td width="50"> </td>
<td valign="top" align="left">
<p align="center"><font color="#8080C0" size="1" face="Arial">The
following elements can be part of a plugin and will be accepted by
Zooom if placed in the plugin subdirectory and defined in the plugin
definition..
<br>
</font></p>
</td>
<td width="50"> </td>
</tr>
</table>
<table border="0" width="100%">
<tr>
<td width="50"> </td>
<td width="60" align="center" valign="middle"><img border="0" src="back.gif" alt="Icon" width="60" height="60"></td>
<td valign="top" align="left"><font color="#8080C0" face="Arial"><b>Background
image</b> </font><font color="#8080C0" face="Arial" size="1"><br>
Zooom displays a scrolling background image as the bottom-most
layer of each level. Such background images can be distributet through
plugins. Background images must have a width of 400 pixel, as this is
the width of the Zooom viewport, and may have any height. They should
be in 256 color resolution, not less to make for good visual
appearance, not more to save disk space.<br>
<br>
<i>How to create: Use one of the big graphics packages (Photoshop,
Photopaint) or any of a number of shareware graphic applications
(ULead) to create textured landscapes, the smoothen the results and
apply some FX filters.</i><br>
</font></td>
<td width="50"> </td>
</tr>
<tr>
<td width="50"> </td>
<td width="60" align="center" valign="middle"> <img border="0" src="music.gif" alt="Icon" width="60" height="60"></td>
<td valign="top" align="left"><font color="#8080C0" face="Arial"><b>Background
music </b></font><font color="#8080C0" face="Arial" size="1"><br>
Zooom plays a midi file as a background music during each level.
Such midi files can be distributed through a plugin.<br>
<i><br>
How to create: Download any of a number of shareware midi editors, or,
even better, download one of some hundred thousands of freeware midi
files by unknown authors available on the net.<br>
<br>
<br>
</i><br>
</font></td>
<td width="50"> </td>
</tr>
<tr>
<td width="50"> </td>
<td width="60" align="center" valign="middle"> <img border="0" src="img.gif" alt="Icon" width="60" height="60"></td>
<td valign="top" align="left"><font color="#8080C0" face="Arial"><b>Enemy
fighter graphics </b></font><font color="#8080C0" face="Arial" size="1"><br>
The visual appearance of an enemy ship is defined through a
frame. A frame is a graphic file in bmp format that contains all
animation phases of the enemy ship. Exactly how Zooom interprets the
image is defined in the plugin definition file.<br>
<i><br>
How to create: Design your ships in a 3D renderer like Lightwave.
Render all the frames (no anti-aliasing!). You get individual files.
Sample files into one image (manually or with a tiny program I can
provide you with). Apply anti-aliasing. Save.</i></font><br>
<br>
</td>
<td width="50"> </td>
</tr>
<tr>
<td width="50"> </td>
<td width="60" align="center" valign="middle"> <img border="0" src="def.gif" alt="Icon" width="60" height="60"></td>
<td valign="top" align="left"><font color="#8080C0" face="Arial"><b>Definition
file </b></font><font color="#8080C0" face="Arial" size="1"><br>
The plugin definition file tells Zooom how to interpret the
various ressources you are providing within the plugin.<br>
<br>
<i>How to create: Just use a text editor to write the plugin
definition file according to the command set described below.</i><br>
<br>
<br>
</font><br>
</td>
<td width="50"> </td>
</tr>
<tr>
<td width="50"></td>
<td width="60" align="center" valign="middle"></td>
<td valign="top" align="left"></td>
<td width="50"></td>
</tr>
</table>
<p align="center"> </p>
<p align="center"><font color="#8080FF" face="Arial" size="5"><strong><u><a name="Reference"></a>Definition</u></strong></font></p>
<table border="0" width="100%">
<tr>
<td width="50"> </td>
<td valign="top" align="left"><p align="center"><font color="#8080C0" size="1" face="Arial">Following
is a definition of all commands that may appear in a plugin definition
file. First, some general rules: Plugin definition files must have the
extension *.plg. Plugin files should be named according to their theme
(eg. "Jungle"), while all related ressources placed in the
plugin directory should start with this theme name and an underscore
(eg. "Jungle_Background.BMP") to avoid naming conflicts with
other plugins.<br>
<br>
Plugin commands are stated line by line, where lines are seperated
with CR/LF, exactly what you get by pressing the ENTER key on your
keyboard. It is possible to apply some formatting to plugin commands
by pressing TAB several times at the beginning of a line. The
according TAB characters will be ignored during interpretation. Some
commands have one or more arguments. Arguments must immediately follow
a command and have to be seperated by SPACE characters. <br>
</font></p>
</td>
<td width="50"> </td>
</tr>
<tr>
<td width="50"></td>
<td valign="top" align="left"><font color="#8080C0" face="Arial"><b>BEGIN </b></font><font color="#8080C0" face="Arial" size="1"><br>
This command must appear before any other statements in a plg
file.<br>
</font>
</td>
<td width="50"></td>
</tr>
<tr>
<td width="50"></td>
<td valign="top" align="left"><font color="#8080C0" face="Arial"><b>END </b></font><font color="#8080C0" face="Arial" size="1"><br>
This command must appear after the last valid command in a plg
file.<br>
</font>
</td>
<td width="50"></td>
</tr>
<tr>
<td width="50"></td>
<td valign="top" align="left"><font color="#8080C0" face="Arial"><b>FRAME
<font size="2">bmp_filename framename tilewidth tileheight anidelay</font> </b></font><font color="#8080C0" face="Arial" size="1"><br>
This command declares a frame that can be used to define a new
enemy fighter. Frames must be declared before they are used in ship
definitions. The parameter <b>bmp_filename</b> must refer to an image
file residing in the plugin directory, and must be written without the
.bmp extension. The parameter <b>framename</b> assigns an internal
name to the frame. Under this name, the frame can be accessed when
declaring ships. The <b>tilewidth</b> and <b>tileheight</b> parameters
tell Zooom how to tile the image file you've provided. Example: An
image file with dimensions 360x360 would be tiled into 36 sub-images
having dimension 60x60 each if you provide 6x6 for tilewidth and
tileheight. The <b>anidelay</b> parameter tells Zooom in what
intervall to change from one sub-image to another, if automatic
animation is enabled (see ship command for more details). Anidelay is
provided in Frames, the basic unit of time measurement in Zooom. The
program tries to achieve 100 frames per second, so theoretically,
anidelay is measured in 1/100 sec. But on slower machines, the actual
framerate may be well below this level, and the animation delay will
be down, too.<br>
</font>
</td>
<td width="50"></td>
</tr>
<tr>
<td width="50"></td>
<td valign="top" align="left"><font color="#8080C0" face="Arial"><b>SHIP
<font size="2">shipname</font> </b></font><font color="#8080C0" face="Arial" size="1"><br>
This command declares a new enemy ship which can be referred in
levels by using the parameter <b>shipname</b>. Plugin ships should be
named beginning with the name of their plugin theme, followed by an
underscore and the name choosen by the developer (eg:
JUNGLE_Fighter01). <br>
The ship command, in addition to defining a new ship, tells Zooom that
all subsequent commands that follow the ship command relate to the
ship just defined, until another ship command is issued.<br>
</font>
</td>
<td width="50"></td>
</tr>
<tr>
<td width="50"></td>
<td valign="top" align="left"><font color="#8080C0" face="Arial"><b>FRAME
<font size="2">framename</font> </b></font><font color="#8080C0" face="Arial" size="1"><br>
Issued after a SHIP command, this command tells the current ship
which frame to use as a graphical ressource through the parameter <b>framename</b>,
which refers to a frame defined previously in the plugin.</font>
</td>
<td width="50"></td>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -