source: abuse-frabs/trunk/addon/twist/lisp/chars.lsp @ 51

Last change on this file since 51 was 51, checked in by Sam Hocevar, 14 years ago
  • Fix LISP syntax: "F" is not false, use "(not T)" instead.
File size: 8.9 KB
Line 
1;; Copyright 1999 Profound Corp,  All Rights reserved
2;; See licensing information for more details on usage rights
3
4
5(def_char MAN_LEGSANT
6  (vars need_to_dodge
7        no_see_time
8        hide_flag)
9  (fields
10          ("hide_flag"    ant_hide)
11          ("fade_count"   ai_fade)
12          ("aitype"       ai_type)
13          ("hp"           ai_health)
14          ("aistate"      ai_state))
15  (range 250 20)
16  (draw_range 40 40)
17  (funs (ai_fun     ant_ai)     
18        (draw_fun   man_draw)
19        (constructor ant_cons)
20        (type_change_fun ant_ct)
21        (get_cache_list_fun ant_cache)
22        (damage_fun ant_damage))
23
24  (abilities (run_top_speed   7)
25             (start_hp       100)
26             (stop_acel      20)
27             (start_acel     20)
28             (jump_yvel      -4)
29             (jump_xvel      20)
30             (push_xrange     1)
31             (jump_top_speed 20))
32 
33  (flags (hurtable  T)
34         (force_health T))
35
36  (states "art/cop.spe"
37          (hanging      (seq "stopped" 1 6))
38
39          (fall_start   "jump_down")
40          (falling      "jump_down")
41         
42          (stopped      (seq "stopped" 1 6))
43          (running      (seq "4wlk" 1 10))
44          (landing      (seq "4jmp" 3 5))
45          (pounce_wait  "4jmp0004.pcx")
46          (turn_around  (seq "stopped" 1 6))
47
48          (run_jump             "jump_up")
49          (run_jump_fall        "jump_up")
50          (start_run_jump       "jump_up")
51          (fire_wait            (seq "stopped" 1 6))
52
53          (ceil_fire    "4flj0002.pcx")
54          (top_walk     (seq "4flj" 2 3))
55          (flinch_up    (rep "jump_up" 2))
56          (flinch_down  (rep "jump_down" 2))
57          (blown_back_dead      "jump_up")
58          (jump_up              "jump_up")
59          (hiding               "dead")
60          (dead                 "dead")
61          (weapon_fire          (seq "stopped" 1 6))))
62
63
64(def_char MAN_LEGSJUG
65  (range 200 0)
66  (funs (ai_fun     jug_ai)
67        (draw_fun   man_draw)
68        (constructor jug_cons)
69        (get_cache_list_fun explo_damage_cache)
70        (damage_fun explo_damage))
71  (flags (hurtable T))
72  (abilities (start_hp   100)
73             (push_xrange 1))
74  (vars throw_xvel throw_yvel stationary)
75  (fields ("hp"            ai_health)
76          ("aitype"        jug_throw_spd)
77          ("throw_xvel"    jug_throw_xv)
78          ("throw_yvel"    jug_throw_yv)
79          ("stationary"    jug_stat)
80          ("aistate"       ai_state))
81
82  (states "addon/twist/art/legs.spe"
83          (stopped      (seq "stopped" 1 6))
84          (running      (seq "4wlk" 1 10))
85          (weapon_fire  (seq "stopped" 1 6))
86          (dieing       "dead")))
87
88
89(def_char MAN_LEGSFLY
90  (funs (ai_fun flyer_ai)
91        (draw_fun   man_draw)
92        (damage_fun  flyer_damage)
93        (constructor flyer_cons))
94
95  (flags (hurtable T))
96  (abilities (start_hp 100))
97  (vars fire_delay burst_delay burst_total burst_wait burst_left
98        max_xvel   max_yvel    smoke_time fire_time)
99  (fields ("fire_delay"  who_fdelay)
100          ("burst_delay" who_bdelay)
101          ("burst_total" who_btotal)
102          ("max_xvel"    who_mxv)
103          ("max_yvel"    who_myv)
104          ("hp"          ai_health)
105          ("aitype"      ai_type)
106          ("aistate"     ai_state))
107 
108  (range 200 200)
109  (states "art/cop.spe"
110          (running      "4flj0002.pcx")
111          (stopped      "4flj0003.pcx")
112          (flinch_up    '("4flj0004.pcx" "4flj0004.pcx" "4flj0005.pcx" "4flj0005.pcx"))
113          (turn_around  "4flj0003.pcx")))
114
115
116(def_char MAN_BODYTRACK
117  (vars
118        fire_delay
119        fire_delay_left
120        track_speed
121        burst_total
122        burst_total_left
123        continue_time
124        continue_time_left
125        track_start_angle
126        track_end_angle
127        angle)
128
129  (funs (ai_fun      mantrack_ai)
130        (constructor track_cons)
131        (draw_fun    man_draw)
132        (damage_fun   guner_damage))   
133
134  (flags (can_block  T)
135         (hurtable   T))
136
137  (abilities (start_hp 100))
138
139  (fields ("hp"                ai_health)
140          ("aitype"            ai_type)
141          ("track_speed"       d_track_speed)
142          ("fire_delay"        track_fspeed)
143          ("burst_total"       track_burst)
144          ("continue_time"     track_cont)
145          ("track_start_angle" track_sangle)
146          ("track_end_angle"   track_eangle)
147          ("angle"             track_cangle))
148
149  (states "art/coptop.spe"
150          (stopped  "4gbf0001.pcx")
151          (opening  '("4gbf0001.pcx" "4gbf0002.pcx"))
152          (shuting  '("4gbf0002.pcx" "4gbf0001.pcx"))
153          (spinning (seq "4gbf" 1 24))
154          (firing   (seq "4gbf" 1 24))))
155
156
157(def_char MAN_BODYSPRAY
158  (funs (ai_fun       manspray_ai)
159        (damage_fun   guner_damage)
160        (draw_fun     man_draw)
161        (constructor spray_gun_cons))
162
163  (flags (can_block  T)
164         (hurtable   T))
165  (abilities (start_hp 100)
166             )
167  (vars spray.fire_delay
168        spray.bullet_speed
169        spray.start_angle
170        spray.end_angle
171        spray.angle_speed
172        spray.angle)     
173
174  (fields ("hp"                 ai_health)
175          ("aitype"             ai_type)
176          ("spray.fire_delay"   spray_delay)
177          ("spray.start_angle"  spray_start)
178          ("spray.end_angle"    spray_end)
179          ("spray.angle_speed"  spray_speed)
180          ("spray.angle"        spray_cangle))
181
182  (states "art/coptop.spe"
183          (stopped           "4gbf0001.pcx")
184          (spray.aim         (seq "4gbf" 1 24))
185          (spray.appear      '("4gbf0001.pcx" "4gbf0002.pcx"))
186          (spray.disappear   '("4gbf0002.pcx" "4gbf0001.pcx"))
187          ))
188
189
190(def_char LAVA_COLOR
191  (funs (ai_fun lava_ai)
192        (draw_fun gun_draw))
193  (states  "art/chars/lava.spe"
194           (stopped (seq "lava" 1 15))))
195
196
197(def_char LAVA_SPLASH
198  (funs (ai_fun fire_ai)
199        (draw_fun   gun_draw))
200  (states  "addon/twist/art/lavap.spe"
201           (stopped '("part-2" "part-3" "part-4" "part-5" "part-6"
202                      "part-7" "part-8" "part-9" "part-10" "part-11"
203                      "part-12" "part-13" "part-14" "part-15" "part-16"))))
204
205
206(def_char FIRE
207  (funs (ai_fun fire_ai)
208        (draw_fun   gun_draw))
209  (states  "addon/twist/art/fire.spe"
210           (stopped (seq "f" 1 33))))
211
212
213(def_char OBJ_FORCE
214  (funs (ai_fun forceobj_ai)
215        (constructor forceobj_cons)
216        (draw_fun dev_draw))
217  (fields ("xacel"      "x force")
218          ("yacel"      "y force"))
219  (states "addon/twist/art/obj.spe"
220          (stopped "force")))
221
222
223(def_char OBJ_CHEAT
224  (range 100 100)
225  (funs (ai_fun      csensor_ai)
226        (draw_fun dev_draw))
227  (fields ("xvel"       "x dist")
228          ("aistate"    "state"))
229  (states "addon/twist/art/obj.spe"
230          (stopped "cheat")))
231
232
233(def_explo 'EXPFIRE "addon/twist/art/fire.spe"    "f"         33)
234
235
236(def_char SENSOR_MUSIC
237  (range 100 100)
238  (funs (ai_fun      msensor_ai)
239        (draw_fun    music_sensor_draw)
240        (constructor msensor_cons))
241  (fields ("xvel"      "x dist")
242          ("yvel"       "y dist")
243          ("aitype"     "next song"))
244  (states "addon/twist/art/obj.spe"
245          (stopped "music")))
246
247
248(def_char SENSOR_GRAVITY
249  (range 100 100)
250  (funs (ai_fun      gsensor_ai)
251        (draw_fun    gravity_sensor_draw)
252        (constructor gsensor_cons))
253  (fields ("xvel"       "x dist")
254          ("yvel"       "y dist")
255          ("xacel"      "x gravity")
256          ("yacel"      "y gravity"))
257  (states "addon/twist/art/obj.spe"
258          (stopped "gravity")))
259
260
261(def_char SENSOR_HEALTH
262  (range 100 100)
263  (funs (ai_fun      hsensor_ai)
264        (draw_fun    health_sensor_draw)
265        (constructor hsensor_cons))
266  (fields ("xvel"       "x dist")
267          ("yvel"       "y dist")
268          ("aitype"     "0=player,1=player+enemy,2=explo")
269          ("xacel"      "subtract health"))
270  (states "addon/twist/art/obj.spe"
271          (stopped "health")))
272
273
274(def_char SENSOR_LEVEL
275  (range 100 100)
276  (funs (ai_fun      lsensor_ai)
277        (draw_fun    level_sensor_draw)
278        (constructor lsensor_cons))
279  (fields ("xvel"       "x dist")
280          ("yvel"       "y dist")
281          ("xacel"      "next level")
282          ("yacel"      "level section")
283          ("aistate"    "end of game? 0=n,1=y")
284          ("aitype"     "show stats? 0=n,1=y"))
285  (states "addon/twist/art/obj.spe"
286          (stopped "level")))
287
288
289(def_char SENSOR_TELEPORT
290  (range 100 100)
291  (funs (ai_fun      telesensor_ai)
292        (draw_fun    teleport_sensor_draw)
293        (constructor telesensor_cons))
294  (fields ("xvel"       "x dist")
295          ("yvel"       "y dist")
296          ("aitype"     "require action key? 0=n,1=y"))
297  (states "addon/twist/art/obj.spe"
298          (stopped "teleport")
299          (running "teleport")))
300
301
302(def_char WALK_ROBHEAD
303  (funs (ai_fun flyer_ai)
304        (damage_fun  flyer_damage)
305        (constructor flyer_cons))
306
307  (flags (hurtable T))
308  (abilities (start_hp 40))
309  (vars fire_delay burst_delay burst_total burst_wait burst_left
310        max_xvel   max_yvel    smoke_time fire_time)
311  (fields ("fire_delay"  who_fdelay)
312          ("burst_delay" who_bdelay)
313          ("burst_total" who_btotal)
314          ("max_xvel"    who_mxv)
315          ("max_yvel"    who_myv)
316          ("hp"          ai_health)
317          ("aitype"      ai_type)
318          ("aistate"     ai_state))
319 
320  (range 200 200)
321  (states "addon/twist/art/robs.spe"
322          (running      "wflyer")
323          (stopped      "wflyer")
324          (flinch_up    '("wfflinch" "wfflinch" "wfflinch"))
325          (turn_around  "wflyer")))
326
327
328(def_char WALK_ROB
329  (funs (ai_fun wrob_ai)
330        (constructor wrob_cons)
331        (damage_fun  guner_damage))
332  (abilities (run_top_speed 12)
333             (start_hp 60))
334  (flags (hurtable T) (can_block (not T)))
335  (range 300 100)
336  (vars fire_delay burst_delay burst_total burst_wait burst_left
337        max_xvel   max_yvel    smoke_time fire_time)
338  (fields ("fire_delay"   wrob_fdelay)
339          ("burst_delay"  wrob_bdelay)
340          ("burst_total"  wrob_btotal)
341          ("max_xvel"     wrob_mxv)
342          ("max_yvel"     wrob_myv)
343          ("hp"           ai_health)
344          ("aistate"      ai_state))
345
346  (states "art/rob2.spe"
347          (stopped "wwlk0001.pcx")
348          (running (seq "wwlk" 1 10))
349          (start_run_jump "wstart_jump")
350          (flinch_up      "wflinch")
351          (run_jump       "wwlk0009.pcx")
352          ))
353
Note: See TracBrowser for help on using the repository browser.