home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
POWERdrive for you 1998 June
/
Pdr0698.iso
/
VOLLVERS
/
POWERMAN
/
PANEL.WDL
< prev
next >
Wrap
Text File
|
1998-03-13
|
6KB
|
252 lines
SKILL fps {}
BMAP hint,<hint.pcx>;
////////////////////////////////////////// Debugger
OVLY cannon1_0 <canon1.pcx>,0,0,68,82;
OVLY cannon1_1 <canon1.pcx>,68,0,68,80; // Verschiebung -2
OVLY cannon1_2 <canon1.pcx>,136,0,68,79; // -3
OVLY cannon1_3 <canon1.pcx>,204,0,68,80; // -2
OVLY cannon1_5 <canon1.pcx>,68,82,68,82;
OVLY vorspann1 <vor1.pcx>;
OVLY vorspann2 <vor2.pcx>;
OVLY vorspann3 <vor3.pcx>;
OVLY vorspann4 <vor4.pcx>;
OVLY vorspann5 <vor5.pcx>;
OVLY vorspann6 <vor6.pcx>;
OVERLAY vorspann1_ovl { POS_X 0; POS_Y 0; OVLYS vorspann1; }
OVERLAY vorspann2_ovl { POS_X 0; POS_Y 0; OVLYS vorspann2; }
OVERLAY vorspann3_ovl { POS_X 0; POS_Y 0; OVLYS vorspann3; }
OVERLAY vorspann4_ovl { POS_X 0; POS_Y 0; OVLYS vorspann4; }
OVERLAY vorspann5_ovl { POS_X 0; POS_Y 0; OVLYS vorspann5; }
OVERLAY vorspann6_ovl { POS_X 0; POS_Y 0; OVLYS vorspann6; }
OVERLAY cannon0 { POS_X 27; POS_Y 250; FLAGS ABSPOS; OVLYS cannon1_0; }
OVERLAY cannon1 { POS_X 25; POS_Y 252; FLAGS ABSPOS; OVLYS cannon1_1; }
OVERLAY cannon2 { POS_X 24; POS_Y 253; FLAGS ABSPOS; OVLYS cannon1_2; }
OVERLAY cannon3 { POS_X 25; POS_Y 252; FLAGS ABSPOS; OVLYS cannon1_3; }
OVERLAY cannon5 { POS_X 27; POS_Y 250; FLAGS ABSPOS; OVLYS cannon1_5; }
SOUND twaeng,<E_gun2.wav>;
ACTION init_fire {
SET LAYERS.13,cannon0;
SET IF_CTRL,fire2;
SET IF_LEFT,fire2;
}
BMAP flash_1,<knallig.pcx>,0,0,16,16;
BMAP flash_2,<knallig.pcx>,16,0,16,16;
BMAP flash_3,<knallig.pcx>,32,0,16,16;
BMAP flash_4,<knallig.pcx>,48,0,16,16;
BMAP wolke_1,<knallig.pcx>,124,0,20,20;
BMAP wolke_2,<knallig.pcx>,144,0,20,20;
BMAP wolke_3,<knallig.pcx>,164,0,20,20;
BMAP wolke_4,<knallig.pcx>,184,0,20,20;
BMAP wolke_5,<knallig.pcx>,204,0,20,20;
TEXTURE flash_tex {
SCALE_XY 12,12;
CYCLES 4;
BMAPS flash_1,flash_2,flash_3,flash_4;
DELAY 1,1,1,1;
FLAGS ONESHOT;
AMBIENT 1; // Blitz leuchtet auch in dunklen Regionen!
}
TEXTURE wolke_tex {
SCALE_XY 12,12;
CYCLES 5;
BMAPS wolke_1,wolke_2,wolke_3,wolke_4,wolke_5;
DELAY 2,2,2,2,2;
FLAGS ONESHOT;
AMBIENT 0.5; // Wolke leuchtet auch in dunklen Regionen!
}
ACTOR flash1 {
TEXTURE flash_tex;
FLAGS GROUND,INVISIBLE,PASSABLE;
}
ACTOR flash2 {
TEXTURE flash_tex;
FLAGS GROUND,INVISIBLE,PASSABLE;
}
ACTOR flash3 {
TEXTURE flash_tex;
FLAGS GROUND,INVISIBLE,PASSABLE;
}
ACTOR flash4 {
TEXTURE flash_tex;
FLAGS GROUND,INVISIBLE,PASSABLE;
}
ACTOR flash5 {
TEXTURE flash_tex;
FLAGS GROUND,INVISIBLE,PASSABLE;
}
ACTOR flash6 {
TEXTURE flash_tex;
FLAGS GROUND,INVISIBLE,PASSABLE;
}
ACTOR flash7 {
TEXTURE flash_tex;
FLAGS GROUND,INVISIBLE,PASSABLE;
}
ACTOR flash8 {
TEXTURE flash_tex;
FLAGS GROUND,INVISIBLE,PASSABLE;
}
SKILL hgt {}
SKILL hdist {}
ACTION init_flash {
SET MY.TEXTURE,flash_tex;
SET MY.PLAY,1; // Animation starten
RULE MY.DIST = hdist - 0.5; // Trefferdistanz
RULE MY.HEIGHT =
PLAYER_Z + - 0.83 * hdist * PLAYER_TILT + 0.4 * RANDOM - 1.2;
DROP MY; // Flash vor getroffenem Objekt plazieren
SET MY.SPEED,0.3; // Blitz kommt auf Player zu.
SET MY.TARGET,FOLLOW;
SET MY.EACH_TICK,NULL;
SET MY.EACH_CYCLE,init_wolke; // Nach Animation steigt Wolke auf.
}
ACTION init_wolke {
SET MY.TEXTURE,wolke_tex;
SET MY.PLAY,1;
SET MY.EACH_TICK,wolke_auf;
SET MY.EACH_CYCLE,flash_weg;
}
ACTION wolke_auf { // Wolke aufsteigen lassen
ADDT MY.HEIGHT,0.4;
}
ACTION flash_weg { // Wolke verschwindet
SET MY.INVISIBLE,1;
}
ACTION schuss_alle {
SET LAYERS.13,NULL;
SET schuss,0;
PLAY_SOUND leer,0.5;
}
SOUND vorsp <vorspann.wav>;
ACTION vorspann {
SET LAYERS.16,vorspann1_ovl;
WAITT 48;
SET LAYERS.16,vorspann2_ovl;
WAITT 4;
SET LAYERS.16,vorspann3_ovl;
WAITT 4;
SET LAYERS.16,vorspann4_ovl;
WAITT 4;
SET LAYERS.16,vorspann5_ovl;
PLAY_SOUND vorsp,0.5;
WAITT 80;
SET LAYERS.16,vorspann6_ovl;
WAITT 80;
SET LAYERS.16,NULL;
}
ACTION fire2 {
fire_loop:
IF_EQUAL schuss,0;
BRANCH schuss_alle;
SET LAYERS.13,cannon1;
SET_ALL dungeon.AMBIENT,0.1; // Lichtblitz
SET SHOOT_RANGE,1000;
PLAY_SOUND twaeng,0.3;
ADDT schuss,-3;
SHOOT; // Schuss auf 200 Steps Distanz
IF_EQUAL HIT_DIST,0; // Nichts getroffen?
GOTO fire_weiter;
SET hdist,HIT_DIST; // Trefferdistanz speichern
IF_EQUAL flash1.INVISIBLE,0; // Ist flash 1 noch irgendwo aktiv?
GOTO set_flash2; // Dann flash2 benutzen.
SET flash1.INVISIBLE,0; // sonst flash1 jetzt aktivieren
SET flash1.EACH_TICK,init_flash;
GOTO fire_weiter;
set_flash2:
IF_EQUAL flash2.INVISIBLE,0;
GOTO set_flash3;
SET flash2.INVISIBLE,0;
SET flash2.EACH_TICK,init_flash;
GOTO fire_weiter;
set_flash3:
IF_EQUAL flash3.INVISIBLE,0;
GOTO set_flash4;
SET flash3.INVISIBLE,0;
SET flash3.EACH_TICK,init_flash;
GOTO fire_weiter;
set_flash4:
IF_EQUAL flash4.INVISIBLE,0;
GOTO set_flash5;
SET flash4.INVISIBLE,0;
SET flash4.EACH_TICK,init_flash;
GOTO fire_weiter;
set_flash5:
IF_EQUAL flash5.INVISIBLE,0;
GOTO set_flash6;
SET flash5.INVISIBLE,0;
SET flash5.EACH_TICK,init_flash;
GOTO fire_weiter;
set_flash6:
IF_EQUAL flash6.INVISIBLE,0;
GOTO set_flash7;
SET flash6.INVISIBLE,0;
SET flash6.EACH_TICK,init_flash;
GOTO fire_weiter;
set_flash7:
IF_EQUAL flash7.INVISIBLE,0;
GOTO set_flash8;
SET flash7.INVISIBLE,0;
SET flash7.EACH_TICK,init_flash;
GOTO fire_weiter;
set_flash8:
SET flash8.INVISIBLE,0;
SET flash8.EACH_TICK,init_flash;
fire_weiter:
WAITT 2;
SET LAYERS.13,cannon2;
SET_ALL dungeon.AMBIENT,0;
WAITT 1;
SET LAYERS.13,cannon3;
WAITT 1;
SET LAYERS.13,cannon5;
WAITT 1;
SET LAYERS.13,cannon0;
WAITT 1;
IF_EQUAL KEY_CTRL,1; // Taste noch gedrⁿckt?
GOTO fire_loop; // dann weiterfeuern!
IF_EQUAL MOUSE_LEFT,1;
GOTO fire_loop;
}