Warning, /games/klines/README.themes is written in an unsupported language. File is not indexed.
0001 This file describes how to create a new KLines theme. 0002 0003 (Last update: 29.05.2007 by dimsuz) 0004 0005 KLines theme consists of svgz file which contains game elements 0006 with predefined svg ID's and accompanying .desktop file which contains 0007 various information about theme and some important theme settings 0008 (like animation timing and number of frames) 0009 0010 -= SVG file =- 0011 0012 There are 7 types of different-colored balls in the game and each ball 0013 type has 3 animation sequences: 0014 - born (played when ball appears on the field) 0015 - select (played when ball is selected by player) 0016 - die (played when ball is destroyed) 0017 0018 7 colors are: 0019 Red, Blue, Green, Purple, Yellow, Earth (dark-brown), Cyan 0020 0021 So, as a theme creator you'll need to create these 3 animation sets 0022 for EACH ball color. Number of frames in each set is up to you, 0023 i.e. it's configurable (see below). 0024 0025 Next, you'll need to create svg elements for field-cell, preview area 0026 and background. 0027 Yeah, klines needs many elements :-). 0028 0029 So, let me sum this all up and provide you with predefined svg 0030 ID's that are needed for all the stuff: 0031 0032 1. Born animation set of each ball consists of NumBornFrames (see 0033 below). Each frame has ID "[C]_born_[N]", where [C] is first letter 0034 of ball's color (in lowercase) and [N] is a frame number 0035 0036 2. Select animation set of each ball consists of NumSelectedFrames 0037 (see below) and each frame has ID "[C]_select_[N]". 0038 0039 3. Die animation set of each ball consists of NumDieFrames 0040 (see below) and each frame has ID "[C]_die_[N]". 0041 0042 Example of IDs: e_born_1, e_born_2, ... e_born_N 0043 c_select_1, c_select_2, ..., c_select_N 0044 y_die_1, y_die_2, ..., y_die_N 0045 0046 4. Picture of the ball (in steady state) of each color with ID: [C]_rest 0047 (e.g. r_rest, b_rest, g_rest etc) 0048 0049 5. Field cell with ID: field_cell 0050 0051 6. Picture of preview-display with ID: preview 0052 0053 7. Background image with ID: background 0054 0055 8. Optional border with ID: border 0056 If theme author wishes, he can add a border element that will be painted 0057 around game field, i.e. all cells will be painted inside border element's area 0058 IMPORTANT NOTE: Game assumes that border visual side size will be half of field cell's size. 0059 And will render it based on this assumtion. I.e. if border element exists in theme, game 0060 will render cells slightly smaller, by decreasing their size on half of usual size. 0061 Oh, hope you'll understand this :) 0062 Better - just take a look at the current border rich themes as an example ;) 0063 It's simple 0064 0065 That's all for SVG part. Let's move to simpler one: .desktop file :) 0066 0067 -= .desktop file =- 0068 0069 As has been noted earlier, desktop file is part of each klines 0070 theme and contains various info about theme as well as settings which 0071 control animation. 0072 It has the Key=Value format and starts with the "[KGameTheme]" 0073 header. 0074 0075 here's how typical klines theme .desktop file should look like (let's name it mytheme.desktop): 0076 0077 -= example of mytheme.desktop =- 0078 0079 [KGameTheme] 0080 Name=ThemeName 0081 VersionFormat=1 0082 FileName=themefile.svgz 0083 Author=Theme Author Name 0084 AuthorEmailfirstname.lastname@example.org 0085 0086 NumBornFrames=[Number of born anim frames in svg] 0087 NumSelectedFrames=[Number of selected anim frames in svg] 0088 NumDieFrames=[Number of die anim frames in svg] 0089 0090 BornAnimDuration=[Number of milliseconds to play born anim set] 0091 SelectedAnimDuration=[Number of milliseconds to play selected anim set] 0092 DieAnimDuration=[Number of milliseconds to play die anim set] 0093 0094 MoveAnimDuration=[Number of milliseconds to move the ball through one cell] 0095 0096 -= end of mytheme.desktop example =- 0097 0098 You may want to take a look at 0099 /path/to/kdedir/share/apps/klines/themes/klines.svgz 0100 and 0101 /path/to/kdedir/share/apps/klines/themes/default.desktop 0102 for reference 0103 0104 Good luck!