;;   ___________		     _________		      _____  __
;;   \_	  _____/______   ____   ____ \_   ___ \____________ _/ ____\/  |_
;;    |    __) \_  __ \_/ __ \_/ __ \/    \  \/\_  __ \__  \\   __\\   __|
;;    |     \   |  | \/\  ___/\  ___/\     \____|  | \// __ \|  |   |  |
;;    \___  /   |__|    \___  >\___  >\______  /|__|  (____  /__|   |__|
;;	  \/		    \/	   \/	     \/		   \/
;;  ______________________                           ______________________
;;			  T H E   W A R   B E G I N S
;;	   FreeCraft - A free fantasy real time strategy game engine
;;
;;	missiles.ccl	-	Define the used missiles.
;;
;;	(c) Copyright 1998-2002 by Lutz Sammer and Fabrice Rossi
;;
;;	FreeCraft is free software; you can redistribute it and/or modify
;;	it under the terms of the GNU General Public License as published
;;	by the Free Software Foundation; only version 2 of the License.
;;
;;	FreeCraft is distributed in the hope that it will be useful,
;;	but WITHOUT ANY WARRANTY; without even the implied warranty of
;;	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;	GNU General Public License for more details.
;;
;;	$Id: missiles.ccl,v 1.26 2003/01/18 07:53:45 jsalmon3 Exp $

;;	NOTE: the missiles could be sorted for races, but did this make sense?

;;=============================================================================
;;	Define missiles
;;
;;	(define-missile-type ident 'file file 'size '(width height) 'frames n
;;		'fired-sound fsound 'impact-sound hit-sound 'class name
;;		'sleep sleep 'speed speed 'impact-missile missile)
;;

(define-missile-type 'missile-lightning
  'file "missiles/lightning.png" 'size '(32 32) 'frames 30
  'class 'missile-class-point-to-point-with-hit 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-griffon-hammer
  'file "missiles/gryphon hammer.png" 'size '(32 32) 'frames 15
  'impact-sound "fireball hit"
  'class 'missile-class-point-to-point-3bounces 'sleep 1 'speed 16 'range 2
  'impact-missile 'missile-explosion)
(define-missile-type 'missile-dragon-breath
  'file "missiles/dragon breath.png" 'size '(32 32) 'frames 5
  'impact-sound "fireball hit"
  'class 'missile-class-point-to-point-3bounces 'sleep 1 'speed 16 'range 2
  'impact-missile 'missile-explosion)
(define-missile-type 'missile-fireball
  'file "missiles/fireball.png" 'size '(32 32) 'frames 5
  'impact-sound "fireball hit"
  'class 'missile-class-point-to-point 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-flame-shield
  'file "missiles/flame shield.png" 'size '(32 48) 'frames 6
  'class 'missile-class-flame-shield 'sleep 2 'speed 4 'range 1)
(define-missile-type 'missile-blizzard
  'file "missiles/blizzard.png" 'size '(32 32) 'frames 4
  'class 'missile-class-blizzard 'sleep 2 'speed 8 'range 1
  'impact-missile 'missile-blizzard-hit)
(define-missile-type 'missile-death-and-decay
  'file "missiles/death and decay.png" 'size '(32 32) 'frames 8
  'class 'missile-class-death-decay 'sleep 1 'speed 0 'range 1)
(define-missile-type 'missile-big-cannon
  'file "missiles/big cannon.png" 'size '(16 16) 'frames 20
  'impact-sound "explosion"
  'class 'missile-class-point-to-point 'sleep 1 'speed 16 'range 2
  'impact-missile 'missile-cannon-tower-explosion)
(define-missile-type 'missile-exorcism
  'file "missiles/exorcism.png" 'size '(48 48) 'frames 10
  'class 'missile-class-point-to-point 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-heal-effect
  'file "missiles/heal effect.png" 'size '(48 48) 'frames 10
  'class 'missile-class-stay-with-delay 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-touch-of-death
  'file "missiles/touch of death.png" 'size '(32 32) 'frames 30
  'class 'missile-class-point-to-point-with-hit 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-rune
  'file "missiles/rune.png" 'size '(16 16) 'frames 4
  'class 'missile-class-stay-with-delay 'sleep 5 'speed 16 'range 1)
(define-missile-type 'missile-whirlwind
  'file "missiles/tornado.png" 'size '(56 56) 'frames 4
  'class 'missile-class-whirlwind 'sleep 2 'speed 2 'range 1)
(define-missile-type 'missile-catapult-rock
  'file "missiles/catapult rock.png" 'size '(32 32) 'frames 15
  'impact-sound "explosion"
  'class 'missile-class-point-to-point-with-delay 'sleep 1 'speed 16 'range 2
  'impact-missile 'missile-impact)
(define-missile-type 'missile-ballista-bolt
  'file "missiles/ballista bolt.png" 'size '(64 64) 'frames 5
  'impact-sound "explosion"
  'class 'missile-class-point-to-point 'sleep 1 'speed 16 'range 2
  'impact-missile 'missile-impact)
(define-missile-type 'missile-arrow
  'file "missiles/arrow.png" 'size '(40 40) 'frames 5
  'impact-sound "bow hit"
  'class 'missile-class-point-to-point 'sleep 1 'speed 32 'range 0)
(define-missile-type 'missile-axe
  'file "missiles/axe.png" 'size '(32 32) 'frames 15
  'impact-sound "bow hit"
  'class 'missile-class-point-to-point 'sleep 1 'speed 32 'range 0)
(define-missile-type 'missile-submarine-missile
  'file "missiles/submarine missile.png" 'size '(40 40) 'frames 5
  'impact-sound "explosion"
  'class 'missile-class-point-to-point 'sleep 1 'speed 16 'range 1
  'impact-missile 'missile-impact)
(define-missile-type 'missile-turtle-missile
  'file "missiles/turtle missile.png" 'size '(40 40) 'frames 5
  'impact-sound "explosion"
  'class 'missile-class-point-to-point 'sleep 1 'speed 16 'range 1
  'impact-missile 'missile-impact)
(define-missile-type 'missile-small-fire
  'file "missiles/small fire.png" 'size '(32 48) 'frames 6
  'class 'missile-class-fire 'sleep 8 'speed 16 'range 1)
(define-missile-type 'missile-big-fire
  'file "missiles/big fire.png" 'size '(48 48) 'frames 10
  'class 'missile-class-fire 'sleep 8 'speed 16 'range 1)
(define-missile-type 'missile-impact
  'file "missiles/ballista-catapult impact.png" 'size '(48 48) 'frames 10
  'class 'missile-class-stay-with-delay 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-normal-spell
  'file "missiles/normal spell.png" 'size '(32 32) 'frames 6
  'class 'missile-class-stay-with-delay 'sleep 5 'speed 0 'range 1)
(define-missile-type 'missile-explosion
  'file "missiles/explosion.png" 'size '(64 64) 'frames 20
  'class 'missile-class-stay-with-delay 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-small-cannon
  'file "missiles/cannon.png" 'size '(32 32) 'frames 15
  'impact-sound "explosion"
  'class 'missile-class-point-to-point-with-delay 'sleep 1 'speed 16 'range 1
  'impact-missile 'missile-cannon-explosion)
(define-missile-type 'missile-cannon-explosion
  'file "missiles/cannon explosion.png" 'size '(32 32) 'frames 4
  'class 'missile-class-stay-with-delay 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-cannon-tower-explosion
  'file "missiles/cannon-tower explosion.png" 'size '(32 32) 'frames 4
  'class 'missile-class-stay-with-delay 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-daemon-fire
  'file "missiles/daemon fire.png" 'size '(32 32) 'frames 15
  'impact-sound "fireball hit"
  'class 'missile-class-point-to-point 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-green-cross
  'file "missiles/green cross.png" 'size '(32 32) 'frames 4
  'class 'missile-class-cycle-once 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-red-cross
  'file "missiles/red_cross.png" 'size '(32 32) 'frames 4
  'class 'missile-class-cycle-once 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-none
  'size '(32 32)
  'class 'missile-class-none 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-blizzard-hit
  'file "missiles/blizzard.png" 'size '(32 32) 'frames 4
  'class 'missile-class-stay-with-delay 'sleep 2 'speed 8 'range 1)
(define-missile-type 'missile-death-coil
  'file "missiles/touch of death.png" 'size '(32 32) 'frames 30
  'class 'missile-class-point-to-point 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-hit
  'size '(15 15)
  'class 'missile-class-hit 'sleep 1 'speed 1 'range 16)
(define-missile-type 'missile-custom
  'size '(32 32)
  'class 'missile-class-custom 'sleep 1 'speed 16 'range 1)
(define-missile-type 'missile-critter-explosion
  'file "missiles/catapult rock.png" 'size '(32 32) 'frames 15
  'impact-sound "explosion"
  'class 'missile-class-hit 'sleep 1 'speed 16 'range 2
  'impact-missile 'missile-impact 'can-hit-owner #t)
