This repository has been archived by the owner on Jul 13, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
/
multigen.txt
2326 lines (1944 loc) · 66.2 KB
/
multigen.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
; if the first two characters of a line are S_, it is a state definition
; line. Otherwise, it is part of an info declaration.
;
;============================================================================
; state data is:
;
; statename sprite frame tics action nextstate [optional1] [optional2]
; a * after the frame letter causes full bright
;
;============================================================================
; An info definition is:
;
; $ MOBJNAME
; field data
;
; if MOBJNAME is +, a new unique name will be generated
; if fieldname starts with str_, it will be made a char * instead of an int
;============================================================================
;
; info default MUST be first in file
;
$ DEFAULT
doomednum -1 ;number to spawn this object
spawnstate S_NULL ;
spawnhealth 1000 ;
seestate S_NULL ;when player sighted or enemy shot
seesound sfx_None ;also launch sound for missiles
reactiontime 8 ;wait time before attacking
attacksound sfx_None ;
painstate S_NULL ;
painchance 0 ;out of 256
painsound sfx_None ;
meleestate S_NULL ;
missilestate S_NULL ;
deathstate S_NULL ;also explodestate for missiles
xdeathstate S_NULL ;when knocked to -spawnhelath or lower
deathsound sfx_None ;also explosion sound for missiles
speed 0 ;
radius 20*FRACUNIT ;
height 16*FRACUNIT ;
mass 100 ;
damage 0 ;missile damage in d8s
activesound sfx_None ;
flags 0 ;
raisestate S_NULL ;vile resurection state
; when a state cycles to S_NULL, the actor will be removed
S_NULL TROO A -1 NULL S_NULL
;============================================================================
; player sprites
;============================================================================
; all flashes go to S_LIGHTDONE to reset the light then remove self
S_LIGHTDONE SHTG E 0 A_Light0 S_NULL
;
; fist
;
S_PUNCH PUNG A 1 A_WeaponReady S_PUNCH
S_PUNCHDOWN PUNG A 1 A_Lower S_PUNCHDOWN
S_PUNCHUP PUNG A 1 A_Raise S_PUNCHUP
S_PUNCH1 PUNG B 4 NULL S_PUNCH2
S_PUNCH2 PUNG C 4 A_Punch S_PUNCH3
S_PUNCH3 PUNG D 5 NULL S_PUNCH4
S_PUNCH4 PUNG C 4 NULL S_PUNCH5
S_PUNCH5 PUNG B 5 A_ReFire S_PUNCH
;
; pistol
;
S_PISTOL PISG A 1 A_WeaponReady S_PISTOL
S_PISTOLDOWN PISG A 1 A_Lower S_PISTOLDOWN
S_PISTOLUP PISG A 1 A_Raise S_PISTOLUP
S_PISTOL1 PISG A 4 NULL S_PISTOL2
S_PISTOL2 PISG B 6 A_FirePistol S_PISTOL3
S_PISTOL3 PISG C 4 NULL S_PISTOL4
S_PISTOL4 PISG B 5 A_ReFire S_PISTOL
S_PISTOLFLASH PISF A* 7 A_Light1 S_LIGHTDONE
;
; shotgun
;
S_SGUN SHTG A 1 A_WeaponReady S_SGUN
S_SGUNDOWN SHTG A 1 A_Lower S_SGUNDOWN
S_SGUNUP SHTG A 1 A_Raise S_SGUNUP
S_SGUN1 SHTG A 3 NULL S_SGUN2
S_SGUN2 SHTG A 7 A_FireShotgun S_SGUN3
S_SGUN3 SHTG B 5 NULL S_SGUN4
S_SGUN4 SHTG C 5 NULL S_SGUN5
S_SGUN5 SHTG D 4 NULL S_SGUN6
S_SGUN6 SHTG C 5 NULL S_SGUN7
S_SGUN7 SHTG B 5 NULL S_SGUN8
S_SGUN8 SHTG A 3 NULL S_SGUN9
S_SGUN9 SHTG A 7 A_ReFire S_SGUN
S_SGUNFLASH1 SHTF A* 4 A_Light1 S_SGUNFLASH2
S_SGUNFLASH2 SHTF B* 3 A_Light2 S_LIGHTDONE
;
; double shotgun
;
S_DSGUN SHT2 A 1 A_WeaponReady S_DSGUN
S_DSGUNDOWN SHT2 A 1 A_Lower S_DSGUNDOWN
S_DSGUNUP SHT2 A 1 A_Raise S_DSGUNUP
S_DSGUN1 SHT2 A 3 NULL S_DSGUN2
S_DSGUN2 SHT2 A 7 A_FireShotgun2 S_DSGUN3
S_DSGUN3 SHT2 B 7 NULL S_DSGUN4
S_DSGUN4 SHT2 C 7 A_CheckReload S_DSGUN5
S_DSGUN5 SHT2 D 7 A_OpenShotgun2 S_DSGUN6
S_DSGUN6 SHT2 E 7 NULL S_DSGUN7
S_DSGUN7 SHT2 F 7 A_LoadShotgun2 S_DSGUN8
S_DSGUN8 SHT2 G 6 NULL S_DSGUN9
S_DSGUN9 SHT2 H 6 A_CloseShotgun2 S_DSGUN10
S_DSGUN10 SHT2 A 5 A_ReFire S_DSGUN
S_DSNR1 SHT2 B 7 NULL S_DSNR2
S_DSNR2 SHT2 A 3 NULL S_DSGUNDOWN
S_DSGUNFLASH1 SHT2 I* 5 A_Light1 S_DSGUNFLASH2
S_DSGUNFLASH2 SHT2 J* 4 A_Light2 S_LIGHTDONE
;
; chaingun
;
S_CHAIN CHGG A 1 A_WeaponReady S_CHAIN
S_CHAINDOWN CHGG A 1 A_Lower S_CHAINDOWN
S_CHAINUP CHGG A 1 A_Raise S_CHAINUP
S_CHAIN1 CHGG A 4 A_FireCGun S_CHAIN2
S_CHAIN2 CHGG B 4 A_FireCGun S_CHAIN3
S_CHAIN3 CHGG B 0 A_ReFire S_CHAIN
S_CHAINFLASH1 CHGF A* 5 A_Light1 S_LIGHTDONE
S_CHAINFLASH2 CHGF B* 5 A_Light2 S_LIGHTDONE
;
; missile
;
S_MISSILE MISG A 1 A_WeaponReady S_MISSILE
S_MISSILEDOWN MISG A 1 A_Lower S_MISSILEDOWN
S_MISSILEUP MISG A 1 A_Raise S_MISSILEUP
S_MISSILE1 MISG B 8 A_GunFlash S_MISSILE2
S_MISSILE2 MISG B 12 A_FireMissile S_MISSILE3
S_MISSILE3 MISG B 0 A_ReFire S_MISSILE
S_MISSILEFLASH1 MISF A* 3 A_Light1 S_MISSILEFLASH2
S_MISSILEFLASH2 MISF B* 4 NULL S_MISSILEFLASH3
S_MISSILEFLASH3 MISF C* 4 A_Light2 S_MISSILEFLASH4
S_MISSILEFLASH4 MISF D* 4 A_Light2 S_LIGHTDONE
;
; chainsaw
;
S_SAW SAWG C 4 A_WeaponReady S_SAWB
S_SAWB SAWG D 4 A_WeaponReady S_SAW
S_SAWDOWN SAWG C 1 A_Lower S_SAWDOWN
S_SAWUP SAWG C 1 A_Raise S_SAWUP
S_SAW1 SAWG A 4 A_Saw S_SAW2
S_SAW2 SAWG B 4 A_Saw S_SAW3
S_SAW3 SAWG B 0 A_ReFire S_SAW
;
; plasma
;
S_PLASMA PLSG A 1 A_WeaponReady S_PLASMA
S_PLASMADOWN PLSG A 1 A_Lower S_PLASMADOWN
S_PLASMAUP PLSG A 1 A_Raise S_PLASMAUP
S_PLASMA1 PLSG A 3 A_FirePlasma S_PLASMA2
S_PLASMA2 PLSG B 20 A_Refire S_PLASMA
S_PLASMAFLASH1 PLSF A* 4 A_Light1 S_LIGHTDONE
S_PLASMAFLASH2 PLSF B* 4 A_Light1 S_LIGHTDONE
;
; BFG
;
S_BFG BFGG A 1 A_WeaponReady S_BFG
S_BFGDOWN BFGG A 1 A_Lower S_BFGDOWN
S_BFGUP BFGG A 1 A_Raise S_BFGUP
S_BFG1 BFGG A 20 A_BFGsound S_BFG2
S_BFG2 BFGG B 10 A_GunFlash S_BFG3
S_BFG3 BFGG B 10 A_FireBFG S_BFG4
S_BFG4 BFGG B 20 A_ReFire S_BFG
S_BFGFLASH1 BFGF A* 11 A_Light1 S_BFGFLASH2
S_BFGFLASH2 BFGF B* 6 A_Light2 S_LIGHTDONE
;============================================================================
; world objects
;============================================================================
S_BLOOD1 BLUD C 8 NULL S_BLOOD2
S_BLOOD2 BLUD B 8 NULL S_BLOOD3
S_BLOOD3 BLUD A 8 NULL S_NULL
S_PUFF1 PUFF A* 4 NULL S_PUFF2
S_PUFF2 PUFF B 4 NULL S_PUFF3
S_PUFF3 PUFF C 4 NULL S_PUFF4
S_PUFF4 PUFF D 4 NULL S_NULL
; fireballs
S_TBALL1 BAL1 A* 4 NULL S_TBALL2
S_TBALL2 BAL1 B* 4 NULL S_TBALL1
S_TBALLX1 BAL1 C* 6 NULL S_TBALLX2
S_TBALLX2 BAL1 D* 6 NULL S_TBALLX3
S_TBALLX3 BAL1 E* 6 NULL S_NULL
S_RBALL1 BAL2 A* 4 NULL S_RBALL2
S_RBALL2 BAL2 B* 4 NULL S_RBALL1
S_RBALLX1 BAL2 C* 6 NULL S_RBALLX2
S_RBALLX2 BAL2 D* 6 NULL S_RBALLX3
S_RBALLX3 BAL2 E* 6 NULL S_NULL
; plasma balls
S_PLASBALL PLSS A* 6 NULL S_PLASBALL2
S_PLASBALL2 PLSS B* 6 NULL S_PLASBALL
;
; Plasma explosion on an object
;
S_PLASEXP PLSE A* 4 NULL S_PLASEXP2
S_PLASEXP2 PLSE B* 4 NULL S_PLASEXP3
S_PLASEXP3 PLSE C* 4 NULL S_PLASEXP4
S_PLASEXP4 PLSE D* 4 NULL S_PLASEXP5
S_PLASEXP5 PLSE E* 4 NULL S_NULL
;
; Rocket
;
S_ROCKET MISL A* 1 NULL S_ROCKET
;
; BFG shot
;
S_BFGSHOT BFS1 A* 4 NULL S_BFGSHOT2
S_BFGSHOT2 BFS1 B* 4 NULL S_BFGSHOT
;
; BFG explosion when shot lands
;
S_BFGLAND BFE1 A* 8 NULL S_BFGLAND2
S_BFGLAND2 BFE1 B* 8 NULL S_BFGLAND3
S_BFGLAND3 BFE1 C* 8 A_BFGSpray S_BFGLAND4
S_BFGLAND4 BFE1 D* 8 NULL S_BFGLAND5
S_BFGLAND5 BFE1 E* 8 NULL S_BFGLAND6
S_BFGLAND6 BFE1 F* 8 NULL S_NULL
;
; BFG explosion on an object
;
S_BFGEXP BFE2 A* 8 NULL S_BFGEXP2
S_BFGEXP2 BFE2 B* 8 NULL S_BFGEXP3
S_BFGEXP3 BFE2 C* 8 NULL S_BFGEXP4
S_BFGEXP4 BFE2 D* 8 NULL S_NULL
; explosions
S_EXPLODE1 MISL B* 8 A_Explode S_EXPLODE2
S_EXPLODE2 MISL C* 6 NULL S_EXPLODE3
S_EXPLODE3 MISL D* 4 NULL S_NULL
;
; Teleport Fog
;
S_TFOG TFOG A* 6 NULL S_TFOG01
S_TFOG01 TFOG B* 6 NULL S_TFOG02
S_TFOG02 TFOG A* 6 NULL S_TFOG2
S_TFOG2 TFOG B* 6 NULL S_TFOG3
S_TFOG3 TFOG C* 6 NULL S_TFOG4
S_TFOG4 TFOG D* 6 NULL S_TFOG5
S_TFOG5 TFOG E* 6 NULL S_TFOG6
S_TFOG6 TFOG F* 6 NULL S_TFOG7
S_TFOG7 TFOG G* 6 NULL S_TFOG8
S_TFOG8 TFOG H* 6 NULL S_TFOG9
S_TFOG9 TFOG I* 6 NULL S_TFOG10
S_TFOG10 TFOG J* 6 NULL S_NULL
;
; Item Teleport Fog
;
S_IFOG IFOG A* 6 NULL S_IFOG01
S_IFOG01 IFOG B* 6 NULL S_IFOG02
S_IFOG02 IFOG A* 6 NULL S_IFOG2
S_IFOG2 IFOG B* 6 NULL S_IFOG3
S_IFOG3 IFOG C* 6 NULL S_IFOG4
S_IFOG4 IFOG D* 6 NULL S_IFOG5
S_IFOG5 IFOG E* 6 NULL S_NULL
;==============================================================================
; player
$ MT_PLAYER
spawnstate S_PLAY
seestate S_PLAY_RUN1
spawnhealth 100
painstate S_PLAY_PAIN
painchance 255
painsound sfx_plpain
reactiontime 0
missilestate S_PLAY_ATK1
deathstate S_PLAY_DIE1
xdeathstate S_PLAY_XDIE1
deathsound sfx_pldeth
radius 16*FRACUNIT
height 56*FRACUNIT
flags MF_SOLID|MF_SHOOTABLE|MF_DROPOFF|MF_PICKUP|MF_NOTDMATCH
S_PLAY PLAY A -1 NULL S_NULL
S_PLAY_RUN1 PLAY A 4 NULL S_PLAY_RUN2
S_PLAY_RUN2 PLAY B 4 NULL S_PLAY_RUN3
S_PLAY_RUN3 PLAY C 4 NULL S_PLAY_RUN4
S_PLAY_RUN4 PLAY D 4 NULL S_PLAY_RUN1
S_PLAY_ATK1 PLAY E 12 NULL S_PLAY
S_PLAY_ATK2 PLAY F* 6 NULL S_PLAY_ATK1
S_PLAY_PAIN PLAY G 4 NULL S_PLAY_PAIN2
S_PLAY_PAIN2 PLAY G 4 A_Pain S_PLAY
S_PLAY_DIE1 PLAY H 10 NULL S_PLAY_DIE2
S_PLAY_DIE2 PLAY I 10 A_PlayerScream S_PLAY_DIE3
S_PLAY_DIE3 PLAY J 10 A_Fall S_PLAY_DIE4
S_PLAY_DIE4 PLAY K 10 NULL S_PLAY_DIE5
S_PLAY_DIE5 PLAY L 10 NULL S_PLAY_DIE6
S_PLAY_DIE6 PLAY M 10 NULL S_PLAY_DIE7
S_PLAY_DIE7 PLAY N -1 NULL S_NULL
S_PLAY_XDIE1 PLAY O 5 NULL S_PLAY_XDIE2
S_PLAY_XDIE2 PLAY P 5 A_XScream S_PLAY_XDIE3
S_PLAY_XDIE3 PLAY Q 5 A_Fall S_PLAY_XDIE4
S_PLAY_XDIE4 PLAY R 5 NULL S_PLAY_XDIE5
S_PLAY_XDIE5 PLAY S 5 NULL S_PLAY_XDIE6
S_PLAY_XDIE6 PLAY T 5 NULL S_PLAY_XDIE7
S_PLAY_XDIE7 PLAY U 5 NULL S_PLAY_XDIE8
S_PLAY_XDIE8 PLAY V 5 NULL S_PLAY_XDIE9
S_PLAY_XDIE9 PLAY W -1 NULL S_NULL
;==============================================================================
; Former Humans
;==============================================================================
; possesed humans
$ MT_POSSESSED
doomednum 3004
spawnstate S_POSS_STND
spawnhealth 20
seestate S_POSS_RUN1
seesound sfx_posit1
attacksound sfx_pistol
painstate S_POSS_PAIN
painchance 200
painsound sfx_popain
meleestate 0
missilestate S_POSS_ATK1
deathstate S_POSS_DIE1
xdeathstate S_POSS_XDIE1
raisestate S_POSS_RAISE1
deathsound sfx_podth1
speed 8
radius 20*FRACUNIT
height 56*FRACUNIT
activesound sfx_posact
flags MF_SOLID|MF_SHOOTABLE|MF_COUNTKILL
S_POSS_STND POSS A 10 A_Look S_POSS_STND2
S_POSS_STND2 POSS B 10 A_Look S_POSS_STND
S_POSS_RUN1 POSS A 4 A_Chase S_POSS_RUN2
S_POSS_RUN2 POSS A 4 A_Chase S_POSS_RUN3
S_POSS_RUN3 POSS B 4 A_Chase S_POSS_RUN4
S_POSS_RUN4 POSS B 4 A_Chase S_POSS_RUN5
S_POSS_RUN5 POSS C 4 A_Chase S_POSS_RUN6
S_POSS_RUN6 POSS C 4 A_Chase S_POSS_RUN7
S_POSS_RUN7 POSS D 4 A_Chase S_POSS_RUN8
S_POSS_RUN8 POSS D 4 A_Chase S_POSS_RUN1
S_POSS_ATK1 POSS E 10 A_FaceTarget S_POSS_ATK2
S_POSS_ATK2 POSS F 8* A_PosAttack S_POSS_ATK3
S_POSS_ATK3 POSS E 8 NULL S_POSS_RUN1
S_POSS_PAIN POSS G 3 NULL S_POSS_PAIN2
S_POSS_PAIN2 POSS G 3 A_Pain S_POSS_RUN1
S_POSS_DIE1 POSS H 5 NULL S_POSS_DIE2
S_POSS_DIE2 POSS I 5 A_Scream S_POSS_DIE3
S_POSS_DIE3 POSS J 5 A_Fall S_POSS_DIE4
S_POSS_DIE4 POSS K 5 NULL S_POSS_DIE5
S_POSS_DIE5 POSS L -1 NULL S_NULL
S_POSS_XDIE1 POSS M 5 NULL S_POSS_XDIE2
S_POSS_XDIE2 POSS N 5 A_XScream S_POSS_XDIE3
S_POSS_XDIE3 POSS O 5 A_Fall S_POSS_XDIE4
S_POSS_XDIE4 POSS P 5 NULL S_POSS_XDIE5
S_POSS_XDIE5 POSS Q 5 NULL S_POSS_XDIE6
S_POSS_XDIE6 POSS R 5 NULL S_POSS_XDIE7
S_POSS_XDIE7 POSS S 5 NULL S_POSS_XDIE8
S_POSS_XDIE8 POSS T 5 NULL S_POSS_XDIE9
S_POSS_XDIE9 POSS U -1 NULL S_NULL
S_POSS_RAISE1 POSS K 5 NULL S_POSS_RAISE2
S_POSS_RAISE2 POSS J 5 NULL S_POSS_RAISE3
S_POSS_RAISE3 POSS I 5 NULL S_POSS_RAISE4
S_POSS_RAISE4 POSS H 5 NULL S_POSS_RUN1
;==============================================================================
; Former Human Sergeants
;==============================================================================
; shotgun possesed humans
$ MT_SHOTGUY
doomednum 9
spawnstate S_SPOS_STND
spawnhealth 30
seestate S_SPOS_RUN1
seesound sfx_posit2
attacksound 0
painstate S_SPOS_PAIN
painchance 170
painsound sfx_popain
meleestate 0
missilestate S_SPOS_ATK1
deathstate S_SPOS_DIE1
xdeathstate S_SPOS_XDIE1
raisestate S_SPOS_RAISE1
deathsound sfx_podth2
speed 8
radius 20*FRACUNIT
height 56*FRACUNIT
activesound sfx_posact
flags MF_SOLID|MF_SHOOTABLE|MF_COUNTKILL
S_SPOS_STND SPOS A 10 A_Look S_SPOS_STND2
S_SPOS_STND2 SPOS B 10 A_Look S_SPOS_STND
S_SPOS_RUN1 SPOS A 3 A_Chase S_SPOS_RUN2
S_SPOS_RUN2 SPOS A 3 A_Chase S_SPOS_RUN3
S_SPOS_RUN3 SPOS B 3 A_Chase S_SPOS_RUN4
S_SPOS_RUN4 SPOS B 3 A_Chase S_SPOS_RUN5
S_SPOS_RUN5 SPOS C 3 A_Chase S_SPOS_RUN6
S_SPOS_RUN6 SPOS C 3 A_Chase S_SPOS_RUN7
S_SPOS_RUN7 SPOS D 3 A_Chase S_SPOS_RUN8
S_SPOS_RUN8 SPOS D 3 A_Chase S_SPOS_RUN1
S_SPOS_ATK1 SPOS E 10 A_FaceTarget S_SPOS_ATK2
S_SPOS_ATK2 SPOS F* 10 A_SPosAttack S_SPOS_ATK3
S_SPOS_ATK3 SPOS E 10 NULL S_SPOS_RUN1
S_SPOS_PAIN SPOS G 3 NULL S_SPOS_PAIN2
S_SPOS_PAIN2 SPOS G 3 A_Pain S_SPOS_RUN1
S_SPOS_DIE1 SPOS H 5 NULL S_SPOS_DIE2
S_SPOS_DIE2 SPOS I 5 A_Scream S_SPOS_DIE3
S_SPOS_DIE3 SPOS J 5 A_Fall S_SPOS_DIE4
S_SPOS_DIE4 SPOS K 5 NULL S_SPOS_DIE5
S_SPOS_DIE5 SPOS L -1 NULL S_NULL
S_SPOS_XDIE1 SPOS M 5 NULL S_SPOS_XDIE2
S_SPOS_XDIE2 SPOS N 5 A_XScream S_SPOS_XDIE3
S_SPOS_XDIE3 SPOS O 5 A_Fall S_SPOS_XDIE4
S_SPOS_XDIE4 SPOS P 5 NULL S_SPOS_XDIE5
S_SPOS_XDIE5 SPOS Q 5 NULL S_SPOS_XDIE6
S_SPOS_XDIE6 SPOS R 5 NULL S_SPOS_XDIE7
S_SPOS_XDIE7 SPOS S 5 NULL S_SPOS_XDIE8
S_SPOS_XDIE8 SPOS T 5 NULL S_SPOS_XDIE9
S_SPOS_XDIE9 SPOS U -1 NULL S_NULL
S_SPOS_RAISE1 SPOS L 5 NULL S_SPOS_RAISE2
S_SPOS_RAISE2 SPOS K 5 NULL S_SPOS_RAISE3
S_SPOS_RAISE3 SPOS J 5 NULL S_SPOS_RAISE4
S_SPOS_RAISE4 SPOS I 5 NULL S_SPOS_RAISE5
S_SPOS_RAISE5 SPOS H 5 NULL S_SPOS_RUN1
;==============================================================================
; The Archvile
;==============================================================================
$ MT_VILE
doomednum 64
spawnstate S_VILE_STND
spawnhealth 700
seestate S_VILE_RUN1
seesound sfx_vilsit
attacksound 0
painstate S_VILE_PAIN
painchance 10
painsound sfx_vipain
meleestate 0
missilestate S_VILE_ATK1
deathstate S_VILE_DIE1
deathsound sfx_vildth
speed 15
radius 20*FRACUNIT
height 56*FRACUNIT
activesound sfx_vilact
flags MF_SOLID|MF_SHOOTABLE|MF_COUNTKILL
mass 500
S_VILE_STND VILE A 10 A_Look S_VILE_STND2
S_VILE_STND2 VILE B 10 A_Look S_VILE_STND
S_VILE_RUN1 VILE A 2 A_VileChase S_VILE_RUN2
S_VILE_RUN2 VILE A 2 A_VileChase S_VILE_RUN3
S_VILE_RUN3 VILE B 2 A_VileChase S_VILE_RUN4
S_VILE_RUN4 VILE B 2 A_VileChase S_VILE_RUN5
S_VILE_RUN5 VILE C 2 A_VileChase S_VILE_RUN6
S_VILE_RUN6 VILE C 2 A_VileChase S_VILE_RUN7
S_VILE_RUN7 VILE D 2 A_VileChase S_VILE_RUN8
S_VILE_RUN8 VILE D 2 A_VileChase S_VILE_RUN9
S_VILE_RUN9 VILE E 2 A_VileChase S_VILE_RUN10
S_VILE_RUN10 VILE E 2 A_VileChase S_VILE_RUN11
S_VILE_RUN11 VILE F 2 A_VileChase S_VILE_RUN12
S_VILE_RUN12 VILE F 2 A_VileChase S_VILE_RUN1
S_VILE_ATK1 VILE G* 0 A_VileStart S_VILE_ATK2
S_VILE_ATK2 VILE G* 10 A_FaceTarget S_VILE_ATK3
S_VILE_ATK3 VILE H* 8 A_VileTarget S_VILE_ATK4
S_VILE_ATK4 VILE I* 8 A_FaceTarget S_VILE_ATK5
S_VILE_ATK5 VILE J* 8 A_FaceTarget S_VILE_ATK6
S_VILE_ATK6 VILE K* 8 A_FaceTarget S_VILE_ATK7
S_VILE_ATK7 VILE L* 8 A_FaceTarget S_VILE_ATK8
S_VILE_ATK8 VILE M* 8 A_FaceTarget S_VILE_ATK9
S_VILE_ATK9 VILE N* 8 A_FaceTarget S_VILE_ATK10
S_VILE_ATK10 VILE O* 8 A_VileAttack S_VILE_ATK11
S_VILE_ATK11 VILE P* 20 NULL S_VILE_RUN1
S_VILE_HEAL1 VILE [* 10 NULL S_VILE_HEAL2
S_VILE_HEAL2 VILE \* 10 NULL S_VILE_HEAL3
S_VILE_HEAL3 VILE ]* 10 NULL S_VILE_RUN1
S_VILE_PAIN VILE Q 5 NULL S_VILE_PAIN2
S_VILE_PAIN2 VILE Q 5 A_Pain S_VILE_RUN1
S_VILE_DIE1 VILE Q 7 NULL S_VILE_DIE2
S_VILE_DIE2 VILE R 7 A_Scream S_VILE_DIE3
S_VILE_DIE3 VILE S 7 A_Fall S_VILE_DIE4
S_VILE_DIE4 VILE T 7 NULL S_VILE_DIE5
S_VILE_DIE5 VILE U 7 NULL S_VILE_DIE6
S_VILE_DIE6 VILE V 7 NULL S_VILE_DIE7
S_VILE_DIE7 VILE W 7 NULL S_VILE_DIE8
S_VILE_DIE8 VILE X 5 NULL S_VILE_DIE9
S_VILE_DIE9 VILE Y 5 NULL S_VILE_DIE10
S_VILE_DIE10 VILE Z -1 NULL S_NULL
;
; hellfire
;
$ MT_FIRE
spawnstate S_FIRE1
flags MF_NOBLOCKMAP|MF_NOGRAVITY
S_FIRE1 FIRE A* 2 A_StartFire S_FIRE2
S_FIRE2 FIRE B* 2 A_Fire S_FIRE3
S_FIRE3 FIRE A* 2 A_Fire S_FIRE4
S_FIRE4 FIRE B* 2 A_Fire S_FIRE5
S_FIRE5 FIRE C* 2 A_FireCrackle S_FIRE6
S_FIRE6 FIRE B* 2 A_Fire S_FIRE7
S_FIRE7 FIRE C* 2 A_Fire S_FIRE8
S_FIRE8 FIRE B* 2 A_Fire S_FIRE9
S_FIRE9 FIRE C* 2 A_Fire S_FIRE10
S_FIRE10 FIRE D* 2 A_Fire S_FIRE11
S_FIRE11 FIRE C* 2 A_Fire S_FIRE12
S_FIRE12 FIRE D* 2 A_Fire S_FIRE13
S_FIRE13 FIRE C* 2 A_Fire S_FIRE14
S_FIRE14 FIRE D* 2 A_Fire S_FIRE15
S_FIRE15 FIRE E* 2 A_Fire S_FIRE16
S_FIRE16 FIRE D* 2 A_Fire S_FIRE17
S_FIRE17 FIRE E* 2 A_Fire S_FIRE18
S_FIRE18 FIRE D* 2 A_Fire S_FIRE19
S_FIRE19 FIRE E* 2 A_FireCrackle S_FIRE20
S_FIRE20 FIRE F* 2 A_Fire S_FIRE21
S_FIRE21 FIRE E* 2 A_Fire S_FIRE22
S_FIRE22 FIRE F* 2 A_Fire S_FIRE23
S_FIRE23 FIRE E* 2 A_Fire S_FIRE24
S_FIRE24 FIRE F* 2 A_Fire S_FIRE25
S_FIRE25 FIRE G* 2 A_Fire S_FIRE26
S_FIRE26 FIRE H* 2 A_Fire S_FIRE27
S_FIRE27 FIRE G* 2 A_Fire S_FIRE28
S_FIRE28 FIRE H* 2 A_Fire S_FIRE29
S_FIRE29 FIRE G* 2 A_Fire S_FIRE30
S_FIRE30 FIRE H* 2 A_Fire S_NULL
;==============================================================================
; The Revenant
;==============================================================================
$ MT_UNDEAD
doomednum 66
spawnstate S_SKEL_STND
spawnhealth 300
seestate S_SKEL_RUN1
seesound sfx_skesit
attacksound 0
painstate S_SKEL_PAIN
painchance 100
painsound sfx_popain
meleestate S_SKEL_FIST1
missilestate S_SKEL_MISS1
deathstate S_SKEL_DIE1
raisestate S_SKEL_RAISE1
deathsound sfx_skedth
speed 10
radius 20*FRACUNIT
height 56*FRACUNIT
activesound sfx_skeact
flags MF_SOLID|MF_SHOOTABLE|MF_COUNTKILL
mass 500
$ MT_TRACER
spawnstate S_TRACER
deathstate S_TRACEEXP1
speed 10*FRACUNIT
damage 10
seesound sfx_skeatk
deathsound sfx_barexp
radius 11*FRACUNIT
height 8*FRACUNIT
flags MF_NOBLOCKMAP|MF_MISSILE|MF_DROPOFF|MF_NOGRAVITY
;S_TRACER MISL A* 1 A_Tracer S_TRACER
; explosions
;S_TRACEEXP1 MISL B* 8 NULL S_TRACEEXP2
;S_TRACEEXP2 MISL C* 6 NULL S_TRACEEXP3
;S_TRACEEXP3 MISL D* 4 NULL S_NULL
$ MT_SMOKE
spawnstate S_SMOKE1
flags MF_NOBLOCKMAP|MF_NOGRAVITY
; trailing smoke
S_SMOKE1 PUFF B 4 NULL S_SMOKE2
S_SMOKE2 PUFF C 4 NULL S_SMOKE3
S_SMOKE3 PUFF B 4 NULL S_SMOKE4
S_SMOKE4 PUFF C 4 NULL S_SMOKE5
S_SMOKE5 PUFF D 4 NULL S_NULL
; Revenant shot
S_TRACER FATB A* 2 A_Tracer S_TRACER2
S_TRACER2 FATB B* 2 A_Tracer S_TRACER
S_TRACEEXP1 FBXP A* 8 NULL S_TRACEEXP2
S_TRACEEXP2 FBXP B* 6 NULL S_TRACEEXP3
S_TRACEEXP3 FBXP C* 4 NULL S_NULL
S_SKEL_STND SKEL A 10 A_Look S_SKEL_STND2
S_SKEL_STND2 SKEL B 10 A_Look S_SKEL_STND
S_SKEL_RUN1 SKEL A 2 A_Chase S_SKEL_RUN2
S_SKEL_RUN2 SKEL A 2 A_Chase S_SKEL_RUN3
S_SKEL_RUN3 SKEL B 2 A_Chase S_SKEL_RUN4
S_SKEL_RUN4 SKEL B 2 A_Chase S_SKEL_RUN5
S_SKEL_RUN5 SKEL C 2 A_Chase S_SKEL_RUN6
S_SKEL_RUN6 SKEL C 2 A_Chase S_SKEL_RUN7
S_SKEL_RUN7 SKEL D 2 A_Chase S_SKEL_RUN8
S_SKEL_RUN8 SKEL D 2 A_Chase S_SKEL_RUN9
S_SKEL_RUN9 SKEL E 2 A_Chase S_SKEL_RUN10
S_SKEL_RUN10 SKEL E 2 A_Chase S_SKEL_RUN11
S_SKEL_RUN11 SKEL F 2 A_Chase S_SKEL_RUN12
S_SKEL_RUN12 SKEL F 2 A_Chase S_SKEL_RUN1
S_SKEL_FIST1 SKEL G 0 A_FaceTarget S_SKEL_FIST2
S_SKEL_FIST2 SKEL G 6 A_SkelWhoosh S_SKEL_FIST3
S_SKEL_FIST3 SKEL H 6 A_FaceTarget S_SKEL_FIST4
S_SKEL_FIST4 SKEL I 6 A_SkelFist S_SKEL_RUN1
S_SKEL_MISS1 SKEL J* 0 A_FaceTarget S_SKEL_MISS2
S_SKEL_MISS2 SKEL J* 10 A_FaceTarget S_SKEL_MISS3
S_SKEL_MISS3 SKEL K 10 A_SkelMissile S_SKEL_MISS4
S_SKEL_MISS4 SKEL K 10 A_FaceTarget S_SKEL_RUN1
S_SKEL_PAIN SKEL L 5 NULL S_SKEL_PAIN2
S_SKEL_PAIN2 SKEL L 5 A_Pain S_SKEL_RUN1
S_SKEL_DIE1 SKEL L 7 NULL S_SKEL_DIE2
S_SKEL_DIE2 SKEL M 7 NULL S_SKEL_DIE3
S_SKEL_DIE3 SKEL N 7 A_Scream S_SKEL_DIE4
S_SKEL_DIE4 SKEL O 7 A_Fall S_SKEL_DIE5
S_SKEL_DIE5 SKEL P 7 NULL S_SKEL_DIE6
S_SKEL_DIE6 SKEL Q -1 NULL S_NULL
S_SKEL_RAISE1 SKEL Q 5 NULL S_SKEL_RAISE2
S_SKEL_RAISE2 SKEL P 5 NULL S_SKEL_RAISE3
S_SKEL_RAISE3 SKEL O 5 NULL S_SKEL_RAISE4
S_SKEL_RAISE4 SKEL N 5 NULL S_SKEL_RAISE5
S_SKEL_RAISE5 SKEL M 5 NULL S_SKEL_RAISE6
S_SKEL_RAISE6 SKEL L 5 NULL S_SKEL_RUN1
;==============================================================================
; The Mancubus
;==============================================================================
$ MT_FATSO
doomednum 67
spawnstate S_FATT_STND
spawnhealth 600
seestate S_FATT_RUN1
seesound sfx_mansit
attacksound 0
painstate S_FATT_PAIN
painchance 80
painsound sfx_mnpain
meleestate 0
missilestate S_FATT_ATK1
deathstate S_FATT_DIE1
raisestate S_FATT_RAISE1
deathsound sfx_mandth
speed 8
radius 48*FRACUNIT
height 64*FRACUNIT
activesound sfx_posact
mass 1000
flags MF_SOLID|MF_SHOOTABLE|MF_COUNTKILL
$ MT_FATSHOT
spawnstate S_FATSHOT1
deathstate S_FATSHOTX1
speed 20*FRACUNIT
damage 8
seesound sfx_firsht
deathsound sfx_firxpl
radius 6*FRACUNIT
height 8*FRACUNIT
flags MF_NOBLOCKMAP|MF_MISSILE|MF_DROPOFF|MF_NOGRAVITY
; fatso shot (Mancubus)
S_FATSHOT1 MANF A* 4 NULL S_FATSHOT2
S_FATSHOT2 MANF B* 4 NULL S_FATSHOT1
S_FATSHOTX1 MISL B* 8 NULL S_FATSHOTX2
S_FATSHOTX2 MISL C* 6 NULL S_FATSHOTX3
S_FATSHOTX3 MISL D* 4 NULL S_NULL
;==================================================
S_FATT_STND FATT A 15 A_Look S_FATT_STND2
S_FATT_STND2 FATT B 15 A_Look S_FATT_STND
S_FATT_RUN1 FATT A 4 A_Chase S_FATT_RUN2
S_FATT_RUN2 FATT A 4 A_Chase S_FATT_RUN3
S_FATT_RUN3 FATT B 4 A_Chase S_FATT_RUN4
S_FATT_RUN4 FATT B 4 A_Chase S_FATT_RUN5
S_FATT_RUN5 FATT C 4 A_Chase S_FATT_RUN6
S_FATT_RUN6 FATT C 4 A_Chase S_FATT_RUN7
S_FATT_RUN7 FATT D 4 A_Chase S_FATT_RUN8
S_FATT_RUN8 FATT D 4 A_Chase S_FATT_RUN9
S_FATT_RUN9 FATT E 4 A_Chase S_FATT_RUN10
S_FATT_RUN10 FATT E 4 A_Chase S_FATT_RUN11
S_FATT_RUN11 FATT F 4 A_Chase S_FATT_RUN12
S_FATT_RUN12 FATT F 4 A_Chase S_FATT_RUN1
S_FATT_ATK1 FATT G 20 A_FatRaise S_FATT_ATK2
S_FATT_ATK2 FATT H* 10 A_FatAttack1 S_FATT_ATK3
S_FATT_ATK3 FATT I 5 A_FaceTarget S_FATT_ATK4
S_FATT_ATK4 FATT G 5 A_FaceTarget S_FATT_ATK5
S_FATT_ATK5 FATT H* 10 A_FatAttack2 S_FATT_ATK6
S_FATT_ATK6 FATT I 5 A_FaceTarget S_FATT_ATK7
S_FATT_ATK7 FATT G 5 A_FaceTarget S_FATT_ATK8
S_FATT_ATK8 FATT H* 10 A_FatAttack3 S_FATT_ATK9
S_FATT_ATK9 FATT I 5 A_FaceTarget S_FATT_ATK10
S_FATT_ATK10 FATT G 5 A_FaceTarget S_FATT_RUN1
S_FATT_PAIN FATT J 3 NULL S_FATT_PAIN2
S_FATT_PAIN2 FATT J 3 A_Pain S_FATT_RUN1
S_FATT_DIE1 FATT K 6 NULL S_FATT_DIE2
S_FATT_DIE2 FATT L 6 A_Scream S_FATT_DIE3
S_FATT_DIE3 FATT M 6 A_Fall S_FATT_DIE4
S_FATT_DIE4 FATT N 6 NULL S_FATT_DIE5
S_FATT_DIE5 FATT O 6 NULL S_FATT_DIE6
S_FATT_DIE6 FATT P 6 NULL S_FATT_DIE7
S_FATT_DIE7 FATT Q 6 NULL S_FATT_DIE8
S_FATT_DIE8 FATT R 6 NULL S_FATT_DIE9
S_FATT_DIE9 FATT S 6 NULL S_FATT_DIE10
S_FATT_DIE10 FATT T -1 A_BossDeath S_NULL
S_FATT_RAISE1 FATT R 5 NULL S_FATT_RAISE2
S_FATT_RAISE2 FATT Q 5 NULL S_FATT_RAISE3
S_FATT_RAISE3 FATT P 5 NULL S_FATT_RAISE4
S_FATT_RAISE4 FATT O 5 NULL S_FATT_RAISE5
S_FATT_RAISE5 FATT N 5 NULL S_FATT_RAISE6
S_FATT_RAISE6 FATT M 5 NULL S_FATT_RAISE7
S_FATT_RAISE7 FATT L 5 NULL S_FATT_RAISE8
S_FATT_RAISE8 FATT K 5 NULL S_FATT_RUN1
;==============================================================================
; Former Human Commando
;==============================================================================
; chaingun possesed humans
$ MT_CHAINGUY
doomednum 65
spawnstate S_CPOS_STND
spawnhealth 70
seestate S_CPOS_RUN1
seesound sfx_posit2
attacksound 0
painstate S_CPOS_PAIN
painchance 170
painsound sfx_popain
meleestate 0
missilestate S_CPOS_ATK1
deathstate S_CPOS_DIE1
xdeathstate S_CPOS_XDIE1
raisestate S_CPOS_RAISE1
deathsound sfx_podth2
speed 8
radius 20*FRACUNIT
height 56*FRACUNIT
activesound sfx_posact
flags MF_SOLID|MF_SHOOTABLE|MF_COUNTKILL
S_CPOS_STND CPOS A 10 A_Look S_CPOS_STND2
S_CPOS_STND2 CPOS B 10 A_Look S_CPOS_STND
S_CPOS_RUN1 CPOS A 3 A_Chase S_CPOS_RUN2
S_CPOS_RUN2 CPOS A 3 A_Chase S_CPOS_RUN3
S_CPOS_RUN3 CPOS B 3 A_Chase S_CPOS_RUN4
S_CPOS_RUN4 CPOS B 3 A_Chase S_CPOS_RUN5
S_CPOS_RUN5 CPOS C 3 A_Chase S_CPOS_RUN6
S_CPOS_RUN6 CPOS C 3 A_Chase S_CPOS_RUN7
S_CPOS_RUN7 CPOS D 3 A_Chase S_CPOS_RUN8
S_CPOS_RUN8 CPOS D 3 A_Chase S_CPOS_RUN1
S_CPOS_ATK1 CPOS E 10 A_FaceTarget S_CPOS_ATK2
S_CPOS_ATK2 CPOS F* 4 A_CPosAttack S_CPOS_ATK3
S_CPOS_ATK3 CPOS E* 4 A_CPosAttack S_CPOS_ATK4
S_CPOS_ATK4 CPOS F 1 A_CPosRefire S_CPOS_ATK2
S_CPOS_PAIN CPOS G 3 NULL S_CPOS_PAIN2
S_CPOS_PAIN2 CPOS G 3 A_Pain S_CPOS_RUN1
S_CPOS_DIE1 CPOS H 5 NULL S_CPOS_DIE2
S_CPOS_DIE2 CPOS I 5 A_Scream S_CPOS_DIE3
S_CPOS_DIE3 CPOS J 5 A_Fall S_CPOS_DIE4
S_CPOS_DIE4 CPOS K 5 NULL S_CPOS_DIE5
S_CPOS_DIE5 CPOS L 5 NULL S_CPOS_DIE6
S_CPOS_DIE6 CPOS M 5 NULL S_CPOS_DIE7
S_CPOS_DIE7 CPOS N -1 NULL S_NULL
S_CPOS_XDIE1 CPOS O 5 NULL S_CPOS_XDIE2
S_CPOS_XDIE2 CPOS P 5 A_XScream S_CPOS_XDIE3
S_CPOS_XDIE3 CPOS Q 5 A_Fall S_CPOS_XDIE4
S_CPOS_XDIE4 CPOS R 5 NULL S_CPOS_XDIE5
S_CPOS_XDIE5 CPOS S 5 NULL S_CPOS_XDIE6
S_CPOS_XDIE6 CPOS T -1 NULL S_NULL
S_CPOS_RAISE1 CPOS N 5 NULL S_CPOS_RAISE2
S_CPOS_RAISE2 CPOS M 5 NULL S_CPOS_RAISE3
S_CPOS_RAISE3 CPOS L 5 NULL S_CPOS_RAISE4
S_CPOS_RAISE4 CPOS K 5 NULL S_CPOS_RAISE5
S_CPOS_RAISE5 CPOS J 5 NULL S_CPOS_RAISE6
S_CPOS_RAISE6 CPOS I 5 NULL S_CPOS_RAISE7
S_CPOS_RAISE7 CPOS H 5 NULL S_CPOS_RUN1
;==============================================================================
; Imps
;==============================================================================
; troops
$ MT_TROOP
doomednum 3001
spawnstate S_TROO_STND
spawnhealth 60
seestate S_TROO_RUN1
seesound sfx_bgsit1
attacksound 0
painstate S_TROO_PAIN
painchance 200
painsound sfx_popain
meleestate S_TROO_ATK1
missilestate S_TROO_ATK1
deathstate S_TROO_DIE1
xdeathstate S_TROO_XDIE1
raisestate S_TROO_RAISE1
deathsound sfx_bgdth1
speed 8
radius 20*FRACUNIT
height 56*FRACUNIT
activesound sfx_bgact
flags MF_SOLID|MF_SHOOTABLE|MF_COUNTKILL
S_TROO_STND TROO A 10 A_Look S_TROO_STND2
S_TROO_STND2 TROO B 10 A_Look S_TROO_STND
S_TROO_RUN1 TROO A 3 A_Chase S_TROO_RUN2
S_TROO_RUN2 TROO A 3 A_Chase S_TROO_RUN3
S_TROO_RUN3 TROO B 3 A_Chase S_TROO_RUN4
S_TROO_RUN4 TROO B 3 A_Chase S_TROO_RUN5
S_TROO_RUN5 TROO C 3 A_Chase S_TROO_RUN6
S_TROO_RUN6 TROO C 3 A_Chase S_TROO_RUN7
S_TROO_RUN7 TROO D 3 A_Chase S_TROO_RUN8
S_TROO_RUN8 TROO D 3 A_Chase S_TROO_RUN1
S_TROO_ATK1 TROO E 8 A_FaceTarget S_TROO_ATK2
S_TROO_ATK2 TROO F 8 A_FaceTarget S_TROO_ATK3
S_TROO_ATK3 TROO G 6 A_TroopAttack S_TROO_RUN1
S_TROO_PAIN TROO H 2 NULL S_TROO_PAIN2
S_TROO_PAIN2 TROO H 2 A_Pain S_TROO_RUN1
S_TROO_DIE1 TROO I 8 NULL S_TROO_DIE2
S_TROO_DIE2 TROO J 8 A_Scream S_TROO_DIE3
S_TROO_DIE3 TROO K 6 NULL S_TROO_DIE4
S_TROO_DIE4 TROO L 6 A_FALL S_TROO_DIE5
S_TROO_DIE5 TROO M -1 NULL S_NULL
S_TROO_XDIE1 TROO N 5 NULL S_TROO_XDIE2
S_TROO_XDIE2 TROO O 5 A_XScream S_TROO_XDIE3
S_TROO_XDIE3 TROO P 5 NULL S_TROO_XDIE4
S_TROO_XDIE4 TROO Q 5 A_FALL S_TROO_XDIE5
S_TROO_XDIE5 TROO R 5 NULL S_TROO_XDIE6
S_TROO_XDIE6 TROO S 5 NULL S_TROO_XDIE7
S_TROO_XDIE7 TROO T 5 NULL S_TROO_XDIE8
S_TROO_XDIE8 TROO U -1 NULL S_NULL
S_TROO_RAISE1 TROO M 8 NULL S_TROO_RAISE2
S_TROO_RAISE2 TROO L 8 NULL S_TROO_RAISE3
S_TROO_RAISE3 TROO K 6 NULL S_TROO_RAISE4
S_TROO_RAISE4 TROO J 6 NULL S_TROO_RAISE5
S_TROO_RAISE5 TROO I 6 NULL S_TROO_RUN1
;==============================================================================
; Spectre
;==============================================================================
; sargeant/ shadow sargeant
$ MT_SERGEANT
doomednum 3002
spawnstate S_SARG_STND
spawnhealth 150
seestate S_SARG_RUN1
seesound sfx_sgtsit
attacksound sfx_sgtatk
painstate S_SARG_PAIN
painchance 180
painsound sfx_dmpain
meleestate S_SARG_ATK1
missilestate 0