// ********************************************** //
effect TE_WIZSPIKE
+ type static
alpha 128 128 128
color 0x63F2EA 0x63f2EA
countabsolute 1
lightradiusfade 200
lightradius 200
size 20 20
- type static
effect TE_WIZSPIKE
+ type static
airfriction 2
alpha 64 64 64
color 0x63F2EA 0x63f2EA
liquidfriction 2
originjitter 16 16 16
size 2 2
- type static
velocityjitter 32 32 32
effect TE_KNIGHTSPIKE
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 4 0.2 0.2
originjitter 16 16 16
size 24 24
tex 47 47
- type decal
effect TE_KNIGHTSPIKE
+ type static
alpha 256 256 1024
color 0xFF2010 0xFF2010
countabsolute 1
size 24 24
tex 39 39
- type static
effect TE_KNIGHTSPIKE
+ type spark
airfriction 6
alpha 256 256 1024
color 0x800000 0xFF8020
count 128
liquidfriction 6
size 4 4
- type spark
velocityjitter 256 256 256
effect TE_SPIKE
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 6 6 6
size 5 5
tex 56 59
- type decal
effect TE_SPIKE
+ type smoke
alpha 255 255 256
color 0x101010 0x101010
count 4
sizeincrease 3
size 3 3
tex 0 8
- type smoke
velocityjitter 8 8 8
effect TE_SPIKE
+ type smoke
alpha 255 255 128
color 0x505050 0x505050
count 0.500000
sizeincrease 4
size 4 4
tex 0 8
- type smoke
effect TE_SPIKE
+ type spark
alpha 0 256 256
bounce 1.500000
color 0x8f4333 0xfff31b
count 10
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocityoffset 0 0 80
effect TE_SPIKEQUAD
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 2 2.5 3
originjitter 34 34 34
size 64 64
tex 59 59
- type decal
effect TE_SPIKEQUAD
+ type static
alpha 256 256 128
color 0x80C0FF 0x80C0FF
countabsolute 1
size 48 48
tex 38 38
- type static
effect TE_SPIKEQUAD
+ type static
airfriction 4
alpha 256 256 256
bounce 1.500000
count 10
liquidfriction 16
size 32 32
- type static
velocityjitter 512 512 512
effect TE_SUPERSPIKE
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 6 6 6
size 3 3
tex 56 59
- type decal
effect TE_SUPERSPIKE
+ type smoke
alpha 255 255 256
color 0x101010 0x101010
count 4
sizeincrease 3
size 3 3
tex 0 8
- type smoke
velocityjitter 8 8 8
effect TE_SUPERSPIKE
+ type smoke
alpha 255 255 128
color 0x505050 0x505050
count 0.500000
sizeincrease 4
size 4 4
tex 0 8
- type smoke
effect TE_SUPERSPIKE
+ type spark
alpha 0 256 768
bounce -1
color 0x8f4333 0xfff31b
count 15
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocityoffset 0 0 80
effect TE_SUPERSPIKEQUAD
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 0.2 0.2 1.5
originjitter 6 6 6
size 3 3
tex 56 59
- type decal
effect TE_SUPERSPIKEQUAD
+ type smoke
alpha 255 255 256
color 0x101010 0x101010
count 4
sizeincrease 3
size 3 3
tex 0 8
- type smoke
velocityjitter 8 8 8
effect TE_SUPERSPIKEQUAD
+ type smoke
alpha 255 255 128
color 0x505050 0x505050
count 0.500000
sizeincrease 4
size 4 4
tex 0 8
- type smoke
effect TE_SUPERSPIKEQUAD
+ type spark
alpha 0 256 768
bounce -1
color 0x8f4333 0xfff31b
count 15
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocityoffset 0 0 80
effect TE_GUNSHOT
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 6 6 6
size 3 3
tex 56 59
- type decal
effect TE_GUNSHOT
+ type smoke
alpha 128 128 64
color 0x101010 0x101010
count 0.800000
sizeincrease 3
size 3 3
tex 0 8
- type smoke
velocityjitter 8 8 8
effect TE_GUNSHOT
+ type smoke
alpha 128 128 64
color 0x505050 0x505050
count 0.200000
sizeincrease 4
size 4 4
tex 0 8
- type smoke
effect TE_GUNSHOT
+ type spark
alpha 0 64 64
bounce 1.500000
color 0x8f4333 0xfff31b
count 2.500000
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocityoffset 0 0 80
effect TE_GUNSHOTQUAD
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 12 12 12
size 8 8
tex 47 47
- type decal
effect TE_GUNSHOTQUAD
+ type static
alpha 256 256 512
color 0x504060 0x504060
countabsolute 1
size 8 8
tex 39 39
- type static
effect TE_GUNSHOTQUAD
+ type spark
alpha 128 128 384
bounce 1.500000
color 0xA040C0 0xFFFFFF
count 6
gravity 1
size 1 1
- type spark
velocityjitter 128 128 128
velocityoffset 0 0 80
effect TE_EXPLOSION
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 4 2 0.5
originjitter 40 40 40
size 48 48
tex 8 16
- type decal
effect TE_EXPLOSION
+ type static
alpha 192 192 64
color 0x404040 0x404040
countabsolute 1
size 48 48
tex 35 37
- type static
effect TE_EXPLOSION
+ type static
airfriction 4
alpha 128 128 256
bounce 1.500000
originjitter 8 8 8
size 16 16
tex 48 55
- type static
velocityjitter 256 256 256
effect TE_EXPLOSION
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 3
tex 62 62
- type bubble
underwater
velocityjitter 96 96 96
effect TE_EXPLOSION
+ type spark
airfriction 0.200000
alpha 256 256 384
bounce 1.500000
liquidfriction 0.800000
notunderwater
size 2 2
- type spark
velocityjitter 256 256 256
velocityoffset 0 0 80
effect TE_EXPLOSIONQUAD
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 4 2 8
originjitter 40 40 40
size 48 48
tex 8 16
- type decal
effect TE_EXPLOSIONQUAD
+ type smoke
alpha 32 32 64
color 0x202020 0x404040
count 16
notunderwater
size 12 12
tex 0 8
- type smoke
velocityjitter 48 48 48
effect TE_EXPLOSIONQUAD
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 3
tex 62 62
- type bubble
underwater
velocityjitter 96 96 96
effect TE_EXPLOSIONQUAD
+ type spark
airfriction 0.200000
alpha 0 256 512
color 0x903010 0xFFD030
liquidfriction 0.800000
notunderwater
size 1 1
- type spark
velocityjitter 256 256 256
velocityoffset 0 0 80
effect TE_TAREXPLOSION
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 1.6 0.8 2
originjitter 40 40 40
size 48 48
tex 8 16
- type decal
effect TE_TAREXPLOSION
+ type smoke
alpha 32 32 64
color 0x202020 0x404040
count 16
notunderwater
size 12 12
tex 0 8
- type smoke
velocityjitter 48 48 48
effect TE_TAREXPLOSION
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 3
tex 62 62
- type bubble
underwater
velocityjitter 96 96 96
effect TE_TAREXPLOSION
+ type spark
airfriction 0.200000
alpha 0 256 512
color 0x903010 0xFFD030
liquidfriction 0.800000
notunderwater
size 1 1
- type spark
velocityjitter 256 256 256
velocityoffset 0 0 80
effect TE_BLOOD
+ type blood
airfriction 1
alpha 256 256 64
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 64 64 64
velocitymultiplier 1
effect TE_SPARK
+ type spark
alpha 64 256 768
bounce -1
color 0x8f4333 0xfff31b
gravity 1
size 0.400000 0.600000
tex 40 40
- type spark
velocityjitter 64 64 64
velocitymultiplier 1
velocityoffset 0 0 80
effect TE_PLASMABURN
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 1 1 1
originjitter 16 16 16
size 24 24
tex 47 47
- type decal
effect TE_PLASMABURN
+ type static
alpha 256 256 512
color 0x80C0FF 0x80C0FF
countabsolute 1
size 8 8
tex 37 37
- type static
effect TE_PLASMABURN
+ type spark
airfriction 8
alpha 256 256 1024
bounce 2
count 128
liquidfriction 8
size 1 2
- type spark
velocityjitter 128 128 128
effect TE_SMALLFLASH
lightcolor 2 2 2
lightradiusfade 1000
lightradius 200
effect TE_FLAMEJET
+ type smoke
airfriction 1
alpha 64 128 384
bounce 1.100000
gravity -1
liquidfriction 4
size 4 4
- type smoke
velocityjitter 128 128 128
velocitymultiplier 1
effect TE_LAVASPLASH
+ type alphastatic
alpha 256 256 256
color 0x6f0f00 0xe3974f
count 32
originjitter 128 128 32
originoffset 0 0 32
size 12 12
- type alphastatic
velocityjitter 128 128 0
velocityoffset 0 0 256
effect TE_TELEPORT
+ type static
airfriction 1
alpha 64 128 256
color 0xA0A0A0 0xFFFFFF
originjitter 16 16 28
originoffset 0 0 28
size 10 10
- type static
velocityjitter 0 0 256
effect TE_TEI_G3
+ type beam
alpha 128 128 256
color 0xFFFFFF 0xFFFFFF
countabsolute 1
size 4 4
tex 200 200
- type beam
effect TE_TEI_G3
+ type smoke
airfriction -4
alpha 256 256 512
color 0x202020 0x404040
size 1 1
trailspacing 4
- type smoke
velocityjitter 8 8 8
effect TE_TEI_SMOKE
+ type smoke
alpha 256 256 512
color 0x202020 0x404040
count 0.167000
originjitter 1.5 1.5 1.5
size 5 5
tex 0 8
- type smoke
velocityjitter 6 6 6
velocitymultiplier 1
effect TE_TEI_BIGEXPLOSION
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 4 2 0.5
originjitter 40 40 40
size 72 72
tex 8 16
- type decal
effect TE_TEI_BIGEXPLOSION
+ type static
alpha 192 192 64
color 0x404040 0x404040
countabsolute 1
size 72 72
tex 35 37
- type static
effect TE_TEI_BIGEXPLOSION
+ type static
airfriction 4
alpha 128 128 256
bounce 1.500000
originjitter 8 8 8
size 16 16
tex 48 55
- type static
velocityjitter 512 512 512
effect TE_TEI_BIGEXPLOSION
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 3
tex 62 62
- type bubble
underwater
velocityjitter 144 144 144
effect TE_TEI_BIGEXPLOSION
+ type spark
airfriction 0.200000
alpha 256 256 384
bounce 1.500000
liquidfriction 0.800000
notunderwater
size 2 2
- type spark
velocityjitter 384 384 384
velocityoffset 0 0 80
effect TE_TEI_PLASMAHIT
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 2.4 4.8 8
originjitter 20 20 20
size 32 32
tex 59 59
- type decal
effect TE_TEI_PLASMAHIT
+ type static
alpha 256 256 512
color 0x80C0FF 0x80C0FF
countabsolute 1
size 32 32
tex 38 38
- type static
effect TE_TEI_PLASMAHIT
+ type spark
alpha 256 256 1024
bounce 1.500000
color 0x2030FF 0x80C0FF
count 0.500000
size 2 4
- type spark
velocityjitter 512 512 512
effect blood
+ type spark
airfriction 0.400000
alpha 1560 2560 7000
blend invmod
staintex 16 24
stretchfactor 20
tex 24 32
- type spark
velocityjitter 99 99 55
effect blood
+ type alphastatic
alpha 100 256 400
blend invmod
color 0x000000 0x420000
sizeincrease 20
size 25 30
tex 24 32
- type alphastatic
effect teleport
+ type spark
airfriction 2
alpha 0 256 100
bounce 1.500000
size 1 1
stretchfactor 0.600000
tex 64 64
- type spark
velocityjitter 1000 1000 1500
velocitymultiplier 0.500000
effect teleport
+ type smoke
alpha 190 190 180
color 0x807aff 0x4463d5
countabsolute 1
sizeincrease -80
size 150 150
tex 65 65
- type smoke
effect TR_BLOOD
+ type spark
airfriction -2
alpha 384 984 1492
blend invmod
stretchfactor 7
tex 24 32
trailspacing 20
- type spark
velocityjitter 64 64 64
velocitymultiplier -0.100000
effect TR_BLOOD
+ type blood
alpha 684 684 7492
color 0xA8FFFF 0xA8FFFF
sizeincrease 500
size 4 6
tex 24 32
trailspacing 42
+effect TR_BLOOD
type blood
+ alpha 684 684 7492
+ color 0xA8FFFF 0xA8FFFF
+ sizeincrease 500
+ size 4 6
+ tex 24 32
+ trailspacing 42
effect TR_SLIGHTBLOOD
+ type blood
airfriction 1
alpha 384 384 192
bounce -1
staintex 16 24
tex 24 32
trailspacing 64
- type blood
velocityjitter 64 64 64
velocitymultiplier 0.500000
effect EF_STARDUST
+ type static
airfriction 0.200000
alpha 64 128 128
color 0xfff368 0xfff368
liquidfriction 0.800000
originjitter 16 16 64
size 1 2
- type static
velocityjitter 32 32 0
effect item_respawn
+ type static
alpha 128 128 128
color 0x63F2EA 0x63f2EA
countabsolute 1
size 32 32
- type static
effect item_respawn
+ type spark
alpha 256 256 1280
color 0x63F2EA 0x63f2EA
count 128
size 2 2
tex 41 41
- type spark
velocityjitter 256 256 256
effect jumppad_activate
lightcolor 2 2 2
lightradiusfade 2000
lightradius 200
effect laser_muzzleflash
+ type smoke
airfriction 10
alpha 256 512 6280
color 0xcc0000 0xff0000
size 10 15
stretchfactor 2
tex 65 65
- type smoke
effect laser_muzzleflash
+ type spark
airfriction 10
alpha 256 512 6280
color 0xb44215 0xff0000
size 5 7
stretchfactor 2.300000
tex 43 43
- type spark
velocityjitter 150 150 150
velocitymultiplier 0.200000
effect laser_muzzleflash
+ type spark
airfriction 12
alpha 256 512 6280
color 0xff4200 0xff0000
size 7 9
stretchfactor 2
tex 8 15
- type spark
velocityjitter 100 100 100
velocitymultiplier 0.200000
effect laser_impact
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 8 0.4 0.4
originjitter 14 14 14
size 24 24
tex 47 47
- type decal
effect laser_impact
+ type static
alpha 256 256 1024
color 0xFF2010 0xFF2010
countabsolute 1
size 24 24
tex 39 39
- type static
effect laser_impact
+ type spark
airfriction 6
alpha 256 256 1024
color 0x800000 0xFF8020
count 128
liquidfriction 6
size 4 4
- type spark
velocityjitter 256 256 256
effect laser_impact
+ type smoke
alpha 128 256 256
color 0x800000 0xFF8020
count 4
sizeincrease 6
size 12 12
tex 48 55
- type smoke
velocityjitter 16 16 16
velocitymultiplier 0.010000
effect shotgun_muzzleflash
+ type smoke
alpha 256 256 512
color 0x202020 0x404040
count 1.500000
sizeincrease 12
size 5 5
tex 0 8
- type smoke
velocityjitter 6 6 6
velocitymultiplier 0.050000
effect shotgun_muzzleflash
+ type spark
airfriction 5
alpha 0 128 1024
color 0xffdb96 0xff5400
size 10 20
stretchfactor 2.500000
tex 48 55
- type spark
velocityjitter 100 100 100
velocitymultiplier 0.500000
effect shotgun_impact
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 10 10 10
size 5 8
tex 56 59
- type decal
effect shotgun_impact
+ type alphastatic
airfriction 5
alpha 300 550 756
color 0x473a37 0x0b0a07
sizeincrease 25
size 10 20
tex 0 8
- type alphastatic
velocityjitter 150 150 150
velocitymultiplier 0.200000
effect shotgun_impact
+ type alphastatic
airfriction 5
alpha 200 350 500
bounce 6
sizeincrease 74
size 10 11
tex 36 36
- type alphastatic
velocityjitter 11 11 11
velocitymultiplier 0.030000
effect shotgun_impact
+ type spark
airfriction 1.100000
alpha 0 356 268
bounce 1.500000
originjitter 1 1 1
size 0.600000 0.600000
tex 40 40
- type spark
velocityjitter 200 200 200
velocitymultiplier 0.200000
effect uzi_muzzleflash
+ type static
alpha 256 256 512
color 0x202020 0x404040
count 1
originjitter 1.5 1.5 1.5
size 5 5
tex 0 8
- type static
velocityjitter 1 1 1
velocitymultiplier 0.030000
effect uzi_muzzleflash
+ type spark
airfriction 12
alpha 0 256 6000
color 0xff9c00 0xffd200
size 0.300000 0.400000
stretchfactor 0.150000
tex 40 40
- type spark
velocityjitter 555 555 555
velocitymultiplier 3
effect machinegun_impact
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 6 3.6 0.6
originjitter 10 10 10
size 5 5
tex 56 59
- type decal
effect machinegun_impact
+ type alphastatic
airfriction 5
alpha 300 550 456
color 0x473a37 0x0b0a07
sizeincrease 15
size 10 20
tex 0 8
- type alphastatic
velocityjitter 150 150 150
velocitymultiplier 0.100000
effect machinegun_impact
+ type alphastatic
airfriction 5
alpha 200 350 500
bounce 6
sizeincrease 74
size 10 11
tex 36 36
- type alphastatic
velocityjitter 11 11 11
velocitymultiplier 0.030000
effect machinegun_impact
+ type alphastatic
airfriction 1
alpha 300 550 256
bounce 1.700000
rotate 0 360 -500 500
size 1 5
tex 66 68
- type alphastatic
velocityjitter 350 350 350
velocitymultiplier 0.200000
effect machinegun_impact
+ type spark
airfriction 2
alpha 256 256 168
bounce 1
originjitter 1 1 1
size 0.300000 0.300000
tex 40 40
- type spark
velocityjitter 300 300 300
velocitymultiplier 0.200000
effect grenadelauncher_muzzleflash
+ type smoke
airfriction 12
alpha 256 256 512
color 0x202020 0x404040
originjitter 1.5 1.5 1.5
size 5 5
tex 0 8
- type smoke
velocityjitter 20 20 20
velocitymultiplier 0.030000
effect grenadelauncher_muzzleflash
+ type spark
airfriction 5
alpha 0 128 1024
color 0xffdb96 0xff5400
size 10 20
stretchfactor 2.500000
tex 48 55
- type spark
velocityjitter 100 100 100
velocitymultiplier 0.500000
effect TR_GRENADE
+ type smoke
alpha 300 400 780
bounce 1
color 0x101010 0x000000
size 3 2
tex 0 8
trailspacing 4
- type smoke
velocityjitter 1 1 1
velocitymultiplier -0.020000
effect TR_GRENADE
+ type static
airfriction 8
alpha 100 144 988
color 0xffdf72 0x811200
size 5 2
tex 48 55
trailspacing 4
- type static
velocityjitter 32 32 32
velocitymultiplier -1
effect TR_GRENADE
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0x404040 0x808080
size 1 1
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
effect TR_KNIGHTSPIKE
+ type smoke
alpha 300 400 600
bounce 1
color 0x303030 0x000000
size 3 3
tex 0 8
trailspacing 6
- type smoke
velocityjitter 3 3 3
velocitymultiplier -0.020000
effect TR_KNIGHTSPIKE
+ type alphastatic
alpha 256 256 720
color 0x666666 0x000000
sizeincrease -0.100000
size 1 1
tex 62 62
trailspacing 2
- type alphastatic
effect TR_KNIGHTSPIKE
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0x404040 0x808080
size 1 1
tex 62 62
trailspacing 32
- type bubble
underwater
velocityjitter 16 16 16
effect grenade_explode
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 8 4 1
originjitter 26 26 26
size 48 48
tex 8 16
- type decal
effect grenade_explode
+ type static
airfriction 8
alpha 128 228 356
bounce 4.500000
sizeincrease 20
size 16 26
tex 48 55
- type static
velocityjitter 256 256 256
effect grenade_explode
+ type static
airfriction 8
alpha 228 328 756
bounce 1
sizeincrease 40
size 6 16
tex 48 55
- type static
velocityjitter 256 256 256
effect grenade_explode
+ type alphastatic
airfriction 5
alpha 300 550 556
bounce 6
sizeincrease 34
size 20 40
tex 0 8
- type alphastatic
velocityjitter 256 256 256
effect grenade_explode
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 6
tex 62 62
- type bubble
underwater
velocityjitter 196 196 196
effect grenade_explode
+ type smoke
alpha 40 40 300
countabsolute 1
sizeincrease 1500
size 5 5
tex 33 33
- type smoke
underwater
velocitymultiplier 0.300000
effect grenade_explode
+ type spark
airfriction 1
alpha 644 956 484
bounce 1.600000
originjitter 16 16 16
size 1 0.100000
tex 40 40
- type spark
velocityjitter 424 424 624
velocityoffset 0 0 80
effect grenade_explode
+ type alphastatic
airfriction 0.500000
alpha 644 956 684
bounce 1.600000
rotate -180 180 -1000 1000
size 2 6
tex 66 68
- type alphastatic
velocityjitter 324 324 524
effect electro_muzzleflash
+ type smoke
alpha 256 256 512
color 0x283880 0x283880
countabsolute 1
sizeincrease -10
size 15 15
tex 65 65
- type smoke
velocityjitter 6 6 6
velocitymultiplier 0.010000
effect electro_muzzleflash
+ type spark
airfriction 2
alpha 110 228 2024
color 0xD9FDFF 0xD9FDFF
size 5 15
stretchfactor 1.500000
tex 8 15
- type spark
velocityjitter 150 150 150
velocitymultiplier 0.500000
effect electro_muzzleflash
+ type spark
airfriction 8
alpha 110 228 1024
color 0xD9FDFF 0xD9FDFF
size 7 6
stretchfactor 0.100000
tex 41 41
- type spark
velocityjitter 350 350 350
velocitymultiplier 2.500000
effect TR_NEXUIZPLASMA
+ type static
alpha 256 256 968
color 0x283880 0x283880
lightcolor 1.5 3 6
size 3 3
tex 38 38
trailspacing 2
- type static
velocitymultiplier -0.100000
effect TR_NEXUIZPLASMA
+ type snow
airfriction 12
alpha 444 512 1866
bounce 1
size 2 4
tex 42 42
trailspacing 12
- type snow
velocityjitter 50 50 50
velocityoffset 0 0 15
effect electro_impact
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 3.1 4.4 10
originjitter 17 17 17
size 32 32
tex 59 59
- type decal
effect electro_impact
+ type smoke
alpha 40 40 350
color 0x80C0FF 0x80C0FF
countabsolute 1
sizeincrease 1000
size 32 32
tex 33 33
- type smoke
velocitymultiplier 44
effect electro_impact
+ type static
alpha 256 256 512
color 0x80C0FF 0x80C0FF
countabsolute 1
size 12 32
tex 38 38
- type static
effect electro_impact
+ type smoke
airfriction 6
alpha 256 256 1024
bounce 2
sizeincrease -50
size 36 36
tex 42 42
- type smoke
velocityjitter 512 512 512
effect electro_impact
+ type smoke
airfriction 30
alpha 200 256 512
color 0x629dff 0x0018ff
sizeincrease 50
size 20 24
tex 0 8
- type smoke
velocityjitter 320 320 320
effect electro_ballexplode
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 3.1 4.4 10
originjitter 17 17 17
size 32 32
tex 59 59
- type decal
effect electro_ballexplode
+ type static
alpha 256 256 512
color 0x80C0FF 0x80C0FF
countabsolute 1
size 32 32
tex 38 38
- type static
effect electro_ballexplode
+ type spark
alpha 256 256 1024
bounce 2
color 0xFDFFD9 0xFDFFD9
size 1 2
stretchfactor 0.400000
tex 41 41
- type spark
velocityjitter 512 512 512
effect electro_ballexplode
+ type smoke
alpha 256 256 512
color 0x202020 0x404040
count 8
originjitter 20 20 20
size 24 24
tex 0 8
- type smoke
velocityjitter 32 32 32
effect electro_combo
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 4 5 6
originjitter 17 17 17
size 64 64
tex 59 59
- type decal
effect electro_combo
+ type static
alpha 128 128 64
color 0x80C0FF 0x80C0FF
countabsolute 1
size 48 48
tex 38 38
- type static
effect electro_combo
+ type static
airfriction 6
alpha 156 156 156
bounce 2
sizeincrease 50
size 32 32
tex 0 7
- type static
velocityjitter 512 512 512
effect electro_combo
+ type spark
alpha 444 512 700
bounce 1.600000
color 0xa9cacf 0x0054ff
size 2 4
stretchfactor 2
tex 41 41
- type spark
velocityjitter 312 312 312
velocitymultiplier 3
effect electro_combo
+ type smoke
alpha 256 256 256
color 0x202020 0x404040
count 0.125000
originjitter 20 20 20
size 24 24
tex 0 8
- type smoke
velocityjitter 32 32 32
effect electro_combo
+ type smoke
alpha 40 40 100
color 0xa9cacf 0x0054ff
countabsolute 1
sizeincrease 600
size 30 30
tex 33 33
- type smoke
velocitymultiplier 0.300000
effect crylink_muzzleflash
+ type smoke
alpha 128 128 2024
color 0xdd9cff 0xff0090
count 0.500000
lightradius 200
size 15 20
tex 65 65
- type smoke
velocitymultiplier 0.010000
effect crylink_muzzleflash
+ type spark
airfriction 12
alpha 0 128 1024
color 0xA080C0 0xA080C0
size 5 10
stretchfactor 1.500000
tex 35 36
- type spark
velocityjitter 200 200 200
velocitymultiplier 0.300000
effect crylink_impact
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 12 12 12
size 24 24
tex 47 47
- type decal
effect crylink_impact
+ type static
alpha 256 256 512
color 0x504060 0x504060
countabsolute 1
size 24 24
tex 39 39
- type static
effect crylink_impact
+ type spark
alpha 256 256 1024
bounce 2
color 0xA040C0 0xA040C0
count 40
size 6 6
tex 41 41
- type spark
velocityjitter 512 512 512
effect crylink_impact
+ type static
alpha 256 256 512
color 0xE070FF 0xE070FF
count 1.500000
size 16 16
- type static
velocityjitter 32 32 32
effect crylink_impact
+ type static
alpha 256 256 1024
color 0xE070FF 0xE070FF
count 3
size 16 16
- type static
velocityjitter 256 256 256
effect nex_muzzleflash
+ type spark
airfriction 9
alpha 328 328 4000
color 0x202020 0x0072ff
size 16 16
stretchfactor 2
tex 48 55
- type spark
velocityjitter 180 180 180
velocitymultiplier 1.400000
effect nex_muzzleflash
+ type spark
airfriction 9
alpha 0 128 1024
color 0xD9FDFF 0xD9FDFF
originjitter 1 1 1
size 1 1
tex 41 41
- type spark
velocityjitter 600 600 600
velocitymultiplier 1.500000
effect nex_beam
+ type static
airfriction 5
alpha 64 128 64
color 0x1680A0 0x1680A0
size 4 4
tex 32 32
trailspacing 64
- type static
effect nex_beam
+ type static
airfriction 9
alpha 32 64 32
color 0x5080A0 0x5080A0
size 1 1
tex 0 8
trailspacing 12
- type static
velocityjitter 64 64 64
effect nex_beam
+ type static
alpha 256 256 1280
color 0x80CDFF 0x80CDFF
size 4 4
trailspacing 12
- type static
effect nex_beam
+ type snow
airfriction 5
alpha 64 128 80
color 0x1680A0 0x1680A0
size 1 1
tex 63 63
trailspacing 16
- type snow
effect nex_impact
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 4 6 8
rotate -180 180 0 0
size 24 24
tex 47 47
- type decal
effect nex_impact
+ type smoke
alpha 55 55 50
color 0x1680A0 0x1680A0
count 5
sizeincrease 20
size 25 28
tex 46 46
- type smoke
effect nex_impact
+ type static
alpha 50 50 400
color 0x1680A0 0x1680A0
countabsolute 1
sizeincrease 900
size 16 16
tex 33 33
- type static
effect nex_impact
+ type static
alpha 50 50 100
color 0x1680A0 0x1680A0
countabsolute 1
sizeincrease 500
size 5 5
tex 65 65
- type static
effect nex_impact
+ type static
alpha 256 256 256
color 0x80C0FF 0x80C0FF
countabsolute 1
size 8 8
tex 37 37
- type static
effect nex_impact
+ type spark
airfriction 9
alpha 0 128 512
bounce 2
size 4 4
stretchfactor 3
tex 41 41
- type spark
velocityjitter 600 600 600
velocitymultiplier 0.500000
effect nex_impact
+ type spark
airfriction 2
alpha 255 255 112
bounce 1.600000
size 2 2
stretchfactor 0.700000
tex 41 41
- type spark
velocityjitter 300 300 600
velocitymultiplier 2.500000
effect hagar_muzzleflash
+ type smoke
alpha 256 256 512
color 0x202020 0x404040
count 2
originjitter 1.5 1.5 1.5
size 5 5
tex 0 8
- type smoke
velocityjitter 6 6 6
velocitymultiplier 0.010000
effect hagar_muzzleflash
+ type spark
airfriction 12
alpha 0 128 1024
color 0xff8400 0xff4200
size 5 10
stretchfactor 2
tex 48 55
- type spark
velocityjitter 200 200 200
velocitymultiplier 0.500000
effect hagar_bounce
+ type smoke
alpha 256 256 256
color 0x202020 0x404040
count 2
originjitter 1.5 1.5 1.5
size 5 5
tex 0 8
- type smoke
velocityjitter 6 6 6
velocitymultiplier 0.010000
effect hagar_bounce
+ type spark
airfriction 12
alpha 0 256 256
bounce 1.500000
originjitter 1 1 1
size 3 3
tex 40 40
- type spark
velocityjitter 600 600 600
velocitymultiplier 0.500000
effect hagar_explode
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 8 4 1
originjitter 14 14 14
size 28 38
tex 8 16
- type decal
effect hagar_explode
+ type smoke
airfriction 8
alpha 80 200 356
bounce 1.500000
sizeincrease 5
size 16 26
tex 48 55
- type smoke
velocityjitter 156 156 156
effect hagar_explode
+ type static
airfriction 12
alpha 128 256 456
bounce 1.500000
sizeincrease 15
size 20 26
tex 48 55
- type static
velocityjitter 286 286 286
effect hagar_explode
+ type alphastatic
airfriction 5
alpha 200 500 600
bounce 2
sizeincrease 20
size 20 40
tex 0 8
- type alphastatic
velocityjitter 244 244 244
effect hagar_explode
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 3
tex 62 62
- type bubble
underwater
velocityjitter 96 96 96
effect hagar_explode
+ type spark
airfriction 1
alpha 644 956 684
bounce 1.600000
originjitter 16 16 16
size 1 0.100000
tex 40 40
- type spark
velocityjitter 224 224 224
velocityoffset 0 0 80
effect rocketlauncher_muzzleflash
+ type smoke
airfriction 2
alpha 256 256 256
color 0x202020 0x404040
sizeincrease 20
size 1 1
tex 0 8
- type smoke
velocityjitter 40 40 40
velocitymultiplier -0.130000
effect rocketlauncher_muzzleflash
+ type smoke
airfriction 9
alpha 10 25 20
color 0xFFFDD9 0xFFFDD9
sizeincrease 20
size 5 10
tex 35 36
- type smoke
velocityjitter 100 100 100
velocitymultiplier 0.300000
effect TR_ROCKET
+ type smoke
alpha 200 300 200
bounce 1
color 0x000000 0x666666
size 3 4
tex 0 8
trailspacing 10
- type smoke
velocityjitter 3 3 3
velocitymultiplier -0.020000
effect TR_ROCKET
+ type static
airfriction 8
alpha 100 144 588
color 0xffdf72 0x811200
size 7 7
tex 48 55
trailspacing 4
- type static
velocityjitter 32 32 32
velocitymultiplier -1.500000
effect TR_ROCKET
+ type bubble
alpha 256 256 256
bounce 1.500000
gravity -0.125000
size 1 2
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
velocitymultiplier -0.310000
effect TR_ROCKET
+ type spark
airfriction 5
alpha 444 512 1866
bounce 1
stretchfactor 0.300000
tex 40 40
trailspacing 20
- type spark
velocityjitter 100 100 100
velocitymultiplier -0.310000
effect rocket_explode
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 8 4 1
originjitter 23 23 23
size 72 72
tex 8 16
- type decal
effect rocket_explode
+ type static
airfriction 8
alpha 200 256 512
bounce 1.500000
sizeincrease 45
size 33 44
tex 48 55
- type static
velocityjitter 512 512 512
effect rocket_explode
+ type smoke
airfriction 19
alpha 200 256 612
bounce 2.500000
sizeincrease 55
size 33 44
tex 48 55
- type smoke
velocityjitter 912 912 912
effect rocket_explode
+ type alphastatic
airfriction 5
alpha 200 450 456
bounce 2
sizeincrease 44
size 20 40
tex 0 8
- type alphastatic
velocityjitter 444 444 444
effect rocket_explode
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 3
tex 62 62
- type bubble
underwater
velocityjitter 144 144 144
effect rocket_explode
+ type smoke
alpha 40 40 300
countabsolute 1
sizeincrease 1900
size 30 30
tex 33 33
- type smoke
underwater
velocitymultiplier 0.300000
effect rocket_explode
+ type spark
airfriction 1
alpha 644 956 484
bounce 1.600000
originjitter 16 16 16
size 1 0.100000
tex 40 40
- type spark
velocityjitter 424 424 624
velocityoffset 0 0 80
effect rocket_explode
+ type alphastatic
airfriction 0.500000
alpha 644 956 684
bounce 1.600000
rotate -180 180 -1000 1000
size 2 6
tex 66 68
- type alphastatic
velocityjitter 324 324 524
effect grapple_muzzleflash
lightcolor 1 0 0
lightradiusfade 800
lightradius 160
effect nex242_misc_laser_beam
+ type beam
alpha 256 256 64
color 0xff0000 0xff0000
countabsolute 1
sizeincrease 1
size 1 1
tex 200 200
- type beam
effect nex242_misc_laser_beam_end
+ type spark
alpha 128 256 768
bounce -1
color 0x8f4333 0xfff31b
count 0.500000
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocitymultiplier 100
effect nex242_misc_laser_beam_fast
+ type beam
alpha 256 256 640
color 0xff0000 0xff0000
countabsolute 1
sizeincrease 0.100000
size 1 1
tex 200 200
- type beam
effect nex242_misc_laser_beam_fast_end
+ type spark
alpha 128 256 768
bounce -1
color 0x8f4333 0xfff31b
count 0.500000
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocitymultiplier 100
effect nex242_misc_laser_green_beam
+ type beam
alpha 256 256 64
color 0x00ff00 0x00ff00
countabsolute 1
sizeincrease 1
size 1 1
tex 200 200
- type beam
effect nex242_misc_laser_green_beam_end
+ type spark
alpha 128 256 768
bounce -1
color 0x8f4333 0xfff31b
count 0.500000
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocitymultiplier 100
effect nex242_misc_laser_blue_beam
+ type beam
alpha 256 256 64
color 0x0000ff 0x0000ff
countabsolute 1
sizeincrease 1
size 1 1
tex 200 200
- type beam
effect nex242_misc_laser_blue_beam_end
+ type spark
alpha 128 256 768
bounce -1
color 0x8f4333 0xfff31b
count 0.500000
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocitymultiplier 100
effect nex242_misc_laser_yellow_beam
+ type beam
alpha 256 256 64
color 0xffff00 0xffff00
countabsolute 1
sizeincrease 1
size 1 1
tex 200 200
- type beam
effect nex242_misc_laser_yellow_beam_end
+ type spark
alpha 128 256 768
bounce -1
color 0x8f4333 0xfff31b
count 0.500000
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocitymultiplier 100
effect nex242_misc_laser_cyan_beam
+ type beam
alpha 256 256 64
color 0x00ffff 0x00ffff
countabsolute 1
sizeincrease 1
size 1 1
tex 200 200
- type beam
effect nex242_misc_laser_cyan_beam_end
+ type spark
alpha 128 256 768
bounce -1
color 0x8f4333 0xfff31b
count 0.500000
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocitymultiplier 100
effect nex242_misc_laser_magenta_beam
+ type beam
alpha 256 256 64
color 0xff00ff 0xff00ff
countabsolute 1
sizeincrease 1
size 1 1
tex 200 200
- type beam
effect nex242_misc_laser_magenta_beam_end
+ type spark
alpha 128 256 768
bounce -1
color 0x8f4333 0xfff31b
count 0.500000
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocitymultiplier 100
effect nex242_misc_laser_white_beam
+ type beam
alpha 256 256 64
color 0xffffff 0xffffff
countabsolute 1
sizeincrease 1
size 1 1
tex 200 200
- type beam
effect nex242_misc_laser_white_beam_end
+ type spark
alpha 128 256 768
bounce -1
color 0x8f4333 0xfff31b
count 0.500000
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocitymultiplier 100
effect nex242_misc_laser_black_beam
+ type beam
alpha 256 256 64
color 0x000000 0x000000
countabsolute 1
sizeincrease 1
size 1 1
tex 200 200
- type beam
effect nex242_misc_laser_black_beam_end
+ type spark
alpha 128 256 768
bounce -1
color 0x8f4333 0xfff31b
count 0.500000
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocitymultiplier 100
effect nex242_misc_laser_orange_beam
+ type beam
alpha 256 256 64
color 0xff6600 0xff6600
countabsolute 1
sizeincrease 1
size 1 1
tex 200 200
- type beam
effect nex242_misc_laser_orange_beam_end
+ type spark
alpha 128 256 768
bounce -1
color 0x8f4333 0xfff31b
count 0.500000
gravity 1
size 0.400000 0.400000
- type spark
velocityjitter 64 64 64
velocitymultiplier 100
effect crylink_impactbig
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 12 12 12
size 24 24
tex 47 47
- type decal
effect crylink_impactbig
+ type static
alpha 256 256 512
color 0x504060 0x504060
countabsolute 1
size 24 24
tex 39 39
- type static
effect crylink_impactbig
+ type spark
alpha 256 256 1024
bounce 2
color 0xA040C0 0xA040C0
count 40
size 6 6
tex 41 41
- type spark
velocityjitter 512 512 512
effect crylink_impactbig
+ type static
alpha 256 256 512
color 0xE070FF 0xE070FF
count 1.500000
size 16 16
- type static
velocityjitter 32 32 32
effect crylink_impactbig
+ type static
alpha 256 256 1024
color 0xE070FF 0xE070FF
count 3
size 16 16
- type static
velocityjitter 256 256 256
effect damage_hit
+ type alphastatic
airfriction 5
alpha 128 128 192
bounce 1.500000
sizeincrease -24
size 16 16
tex 48 55
- type alphastatic
velocityjitter 256 256 256
effect damage_hit
+ type alphastatic
airfriction 5
alpha 128 128 192
bounce 1.500000
sizeincrease -24
size 16 16
tex 48 55
- type alphastatic
velocityjitter 256 256 256
effect damage_hit
+ type alphastatic
airfriction 5
alpha 128 128 192
bounce 1.500000
sizeincrease -24
size 16 16
tex 48 55
- type alphastatic
velocityjitter 256 256 256
effect damage_dissolve
+ type alphastatic
airfriction 3
alpha 256 256 128
bounce 1.500000
sizeincrease -16
size 32 32
tex 48 55
- type alphastatic
velocityjitter 512 512 512
effect damage_dissolve
+ type alphastatic
airfriction 3
alpha 256 256 128
bounce 1.500000
sizeincrease -16
size 32 32
tex 48 55
- type alphastatic
velocityjitter 512 512 512
effect damage_dissolve
+ type alphastatic
airfriction 3
alpha 256 256 128
bounce 1.500000
sizeincrease -16
size 32 32
tex 48 55
- type alphastatic
velocityjitter 512 512 512
effect laser_deadly
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 6 6 6
size 5 5
tex 56 59
- type decal
effect laser_deadly
+ type smoke
airfriction 7
alpha 0 64 64
color 0xFFFFFF 0xFFFFFF
sizeincrease 2
size 3 3
tex 48 55
- type smoke
velocityjitter 15 15 15
velocitymultiplier 20
effect laser_deadly
+ type spark
airfriction 5
alpha 256 256 768
bounce 1
originjitter 1 1 1
size 0.600000 0.600000
tex 40 40
- type spark
velocityjitter 100 100 100
velocitymultiplier 100
effect torch_small
+ type smoke
alpha 200 256 512
color 0x8f0d00 0xff5a00
count 8
sizeincrease -1
size 1 11
tex 48 55
- type smoke
velocityjitter 1 1 50
effect torch_small
+ type alphastatic
alpha 200 256 200
color 0x000000 0x111111
count 4
sizeincrease 5
size 5 10
tex 0 8
- type alphastatic
velocityjitter 11 11 50
effect fountain01
+ type snow
alpha 0 100 100
bounce 1
color 0x7cbaff 0xcfd1ff
sizeincrease 20
size 10 15
tex 0 8
- type snow
velocityjitter 81 81 150
velocitymultiplier 2
effect hookbomb_explode
+ type static
airfriction 10
alpha 0 256 200
bounce 1.500000
sizeincrease -160
size 150 200
tex 38 38
- type static
velocityjitter 550 550 550
effect hookbomb_explode
+ type static
alpha 256 265 100
color 0x807aff 0x4463d5
countabsolute 3
sizeincrease -60
size 160 200
tex 38 38
- type static
effect hookbomb_explode
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 6 6 6
size 80 100
tex 39 39
- type decal
effect hookbomb_explode
+ type spark
airfriction 2
alpha 256 256 456
bounce 1.500000
sizeincrease -60
size 20 30
tex 38 38
- type spark
velocityjitter 1900 1900 1300
velocitymultiplier 0.500000
effect EF_MGTURRETTRAIL
+ type smoke
alpha 128 196 768
color 0xd0d0a0 0xffffff
gravity -0.010000
size 5 4
tex 0 8
trailspacing 10
- type smoke
effect EF_MGTURRETTRAIL
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0x404040 0x808080
size 1 1
tex 62 62
trailspacing 32
- type bubble
underwater
velocityjitter 16 16 16
effect fire_big
+ type smoke
alpha 200 356 512
bounce 2
color 0x8f0d00 0xff5a00
sizeincrease -3
size 11 31
tex 48 55
- type smoke
velocityjitter 22 22 50
effect fire_big
+ type alphastatic
alpha 200 256 200
bounce 2
color 0x000000 0x111111
sizeincrease 11
size 22 33
tex 0 8
- type alphastatic
velocityjitter 11 11 50
effect red_flare
+ type alphastatic
alpha 200 256 160
bounce 1
color 0xff0000 0xdc7171
sizeincrease 11
size 1 11
tex 0 8
- type alphastatic
velocityjitter 15 15 30
effect blue_flare
+ type alphastatic
alpha 200 256 160
bounce 1
color 0x0000ff 0x7194dc
sizeincrease 11
size 1 11
tex 0 8
- type alphastatic
velocityjitter 15 15 30
effect smoke_ring
+ type smoke
airfriction 3
alpha 100 156 200
bounce 1.100000
sizeincrease 21
size 1 11
tex 0 8
- type smoke
velocityjitter 190 190 50
effect smoke_large
+ type alphastatic
airfriction 7
alpha 140 256 190
bounce 1.100000
sizeincrease 21
size 11 21
tex 0 8
- type alphastatic
velocityjitter 390 390 390
effect sparks
+ type spark
airfriction 3
alpha 0 256 256
bounce 1.500000
originjitter 1 1 1
size 1 3
tex 40 40
- type spark
velocityjitter 300 300 200
velocitymultiplier 1.500000
effect electricity_sparks
+ type spark
airfriction 3
alpha 0 256 556
bounce 1.500000
originjitter 1 1 1
size 1 3
tex 40 40
- type spark
velocityjitter 300 300 300
velocitymultiplier 0.500000
effect steam
+ type smoke
airfriction 5
alpha 140 256 190
bounce 1.100000
sizeincrease 7
size 1 3
tex 0 8
- type smoke
velocityjitter 19 19 19
velocitymultiplier 14
effect smoking
+ type alphastatic
airfriction -1
alpha 100 256 100
bounce 1.500000
sizeincrease 5
size 10 40
tex 0 8
- type alphastatic
velocityjitter 5 5 20
effect goldendust
+ type snow
alpha 256 256 70
bounce 1.500000
color 0xff9600 0xffefb8
sizeincrease -0.300000
size 2 3
tex 38 38
- type snow
velocityjitter 0.1 0.1 0.1
effect healing_fx
+ type spark
airfriction -0.500000
alpha 256 256 170
bounce 1.500000
sizeincrease -0.050000
size 1 3
tex 40 40
- type spark
velocityjitter 50 50 0
effect armorrepair_fx
+ type spark
airfriction -0.500000
alpha 256 256 170
bounce 1.500000
sizeincrease -0.050000
size 1 3
tex 40 40
- type spark
velocityjitter 50 50 0
effect ammoregen_fx
+ type spark
airfriction -0.500000
alpha 256 256 170
bounce 1.500000
sizeincrease -0.050000
size 1 3
tex 40 40
- type spark
velocityjitter 50 50 0
effect rage
+ type smoke
airfriction 2
alpha 256 256 190
color 0xff0000 0xff7800
sizeincrease 10
size 1 3
tex 35 36
- type smoke
velocityjitter 25 25 25
effect iceorglass
+ type alphastatic
airfriction 3
alpha 256 256 0
bounce 2
size 3 7
tex 44 44
time 1 3
- type alphastatic
velocityjitter 100 100 100
effect poisonfield
+ type smoke
airfriction 1
alpha 256 256 50
bounce 1.500000
sizeincrease 30
size 1 1
tex 0 8
- type smoke
velocityjitter 5 5 5
effect icefield
+ type smoke
airfriction 1
alpha 256 256 50
bounce 1.500000
sizeincrease 10
size 1 1
tex 0 8
- type smoke
velocityjitter 5 5 30
effect icefield
+ type smoke
alpha 256 256 50
color 0x008aff 0x75e7ff
count 5
sizeincrease 10
size 1 1
tex 48 55
- type smoke
effect firefield
+ type smoke
airfriction 1
alpha 50 256 200
bounce 1.500000
sizeincrease 20
size 1 1
tex 48 55
- type smoke
velocityjitter 5 5 30
effect firefield
+ type smoke
alpha 50 256 200
color 0x8f0d00 0xff5a00
count 50
sizeincrease 40
size 1 1
tex 48 55
- type smoke
effect firefield
+ type alphastatic
alpha 256 256 70
color 0x000000 0x111111
count 20
sizeincrease 7
size 1 1
tex 0 8
- type alphastatic
effect flamethrower
+ type smoke
airfriction 1.200000
alpha 50 256 250
bounce 1.500000
sizeincrease 20
size 5 5
tex 48 55
- type smoke
velocityjitter 40 40 11
velocitymultiplier 30
effect flamethrower
+ type smoke
airfriction 1.200000
alpha 50 256 200
bounce 1.500000
sizeincrease 20
size 5 5
tex 48 55
- type smoke
velocityjitter 40 40 40
velocitymultiplier 20
effect flamethrower
+ type smoke
airfriction 0.300000
alpha 50 256 200
bounce 1.500000
sizeincrease 10
size 5 5
tex 48 55
- type smoke
velocityjitter 30 30 30
velocitymultiplier 10
effect flamethrower
+ type smoke
airfriction 0.300000
alpha 50 256 200
bounce 1.500000
sizeincrease -10
size 20 30
tex 48 55
- type smoke
velocityjitter 10 10 10
velocitymultiplier 15
effect flamethrower
+ type alphastatic
airfriction 1
alpha 256 256 90
color 0x000000 0x111111
sizeincrease 7
size 5 15
tex 0 8
- type alphastatic
velocitymultiplier 20
velocityoffset 0 0 10
effect TR_WIZSPIKE
+ type static
alpha 256 256 968
color 0x404040 0x404040
lightcolor 1.5 3 6
size 3 3
tex 62 62
trailspacing 4
- type static
velocitymultiplier -0.100000
effect TR_WIZSPIKE
+ type snow
airfriction 12
alpha 444 512 1866
bounce 1
size 2 4
tex 42 42
trailspacing 12
- type snow
velocityjitter 50 50 50
velocityoffset 0 0 15
effect TR_VORESPIKE
+ type static
alpha 256 256 968
color 0x804000 0x804000
lightcolor 1.5 3 6
size 3 3
tex 62 62
trailspacing 4
- type static
velocitymultiplier -0.100000
effect TR_VORESPIKE
+ type snow
airfriction 12
alpha 444 512 1866
bounce 1
size 2 4
tex 42 42
trailspacing 12
- type snow
velocityjitter 50 50 50
velocityoffset 0 0 15
effect flac_explode
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 8 4 1
originjitter 40 40 40
size 18 28
tex 8 16
- type decal
effect flac_explode
+ type smoke
airfriction 8
alpha 128 256 456
bounce 1.500000
sizeincrease 5
size 6 16
tex 48 55
- type smoke
velocityjitter 156 156 156
effect flac_explode
+ type static
airfriction 12
alpha 128 256 456
bounce 1.500000
sizeincrease 15
size 10 16
tex 48 55
- type static
velocityjitter 256 256 256
effect flac_explode
+ type alphastatic
airfriction 5
alpha 500 600 556
bounce 2
sizeincrease 20
size 10 20
tex 0 8
- type alphastatic
velocityjitter 244 244 244
effect flac_explode
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 1 2
tex 62 62
- type bubble
underwater
velocityjitter 96 96 96
effect flac_explode
+ type spark
airfriction 0.200000
alpha 256 256 384
bounce 1.500000
notunderwater
size 2 2
tex 40 40
- type spark
velocityjitter 256 256 256
velocityoffset 0 0 80
effect tr_bullet
+ type spark
alpha 256 256 2560
color 0xff8960 0xff8533
size 4 4
stretchfactor 0.200000
tex 70 70
trailspacing 750
- type spark
velocitymultiplier 3
effect smoking_smallemitter
+ type alphastatic
airfriction -1
alpha 200 256 100
color 0x292929 0x000000
sizeincrease 20
size 6 15
tex 0 8
- type alphastatic
velocityjitter 5 5 20
effect TR_CRYLINKPLASMA
+ type static
alpha 256 256 1024
color 0x5522aa 0x6622ff
sizeincrease 8
size 2 2
tex 32 32
trailspacing 128
- type static
velocityjitter 8 8 8
velocitymultiplier -0.010000
effect TR_CRYLINKPLASMA
+ type static
alpha 256 256 2600
color 0x5522aa 0x6622ff
sizeincrease 15
size 3 3
tex 3 3
trailspacing 16
- type static
velocityjitter 2 2 2
velocitymultiplier 0.010000
effect cherryblossom
+ type static
airfriction 1
alpha 128 256 32
bounce 1.500000
originjitter 16 16 16
size 1.500000 2
tex 40 40
- type static
velocityjitter 32 32 0
effect alien_blood
+ type spark
airfriction 0.400000
alpha 1560 2560 7000
blend invmod
staintex 16 24
stretchfactor 25
tex 24 32
- type spark
velocityjitter 99 99 55
effect alien_blood
+ type smoke
alpha 3000 5560 12000
blend invmod
color 0xDC9BCD 0xDC9BCD
sizeincrease 20
size 25 30
tex 24 32
- type smoke
effect robot_blood
+ type spark
airfriction 1
alpha 256 256 64
bounce -1
liquidfriction 4
size 1 2
tex 70 70
- type spark
velocityjitter 264 264 264
velocityoffset 0 0 100
effect robot_blood
+ type smoke
alpha 0 90 1000
color 0xff8400 0xffbb72
countabsolute 1
sizeincrease 800
size 2 2
tex 74 74
- type smoke
effect robot_blood
+ type smoke
alpha 256 256 5120
color 0xff3000 0xff8585
count 0.100000
rotate -180 180 4000 -4000
size 20 40
tex 71 73
- type smoke
effect alien_TR_BLOOD
+ type spark
airfriction -2
alpha 384 984 1492
blend invmod
stretchfactor 7
tex 24 32
trailspacing 20
- type spark
velocityjitter 64 64 64
velocitymultiplier -0.100000
-effect alien_TR_BLOOD
- alpha 684 684 7492
- color 0xA8FFFF 0xA8FFFF
- sizeincrease 500
- size 4 6
- tex 24 32
- trailspacing 42
- type blood
effect robot_TR_BLOOD
+ type spark
airfriction -2
alpha 384 984 1892
blend invmod
stretchfactor 6
tex 24 32
trailspacing 16
- type spark
velocityjitter 64 64 64
velocitymultiplier -0.300000
effect robot_TR_BLOOD
+ type spark
airfriction 4
alpha 128 256 900
color 0x902010 0xff3600
stretchfactor 5
tex 48 55
trailspacing 16
- type spark
velocityjitter 44 44 44
effect robot_TR_BLOOD
+ type smoke
alpha 1128 1256 44900
color 0xff3000 0xff8585
rotate -180 180 4000 -4000
size 25 30
tex 71 73
trailspacing 128
- type smoke
velocityjitter 44 44 44
effect alien_TR_SLIGHTBLOOD
+ type blood
airfriction 1
alpha 384 384 192
bounce -1
staintex 16 24
tex 24 32
trailspacing 64
- type blood
velocityjitter 64 64 64
velocitymultiplier 0.500000
effect robot_TR_SLIGHTBLOOD
+ type blood
airfriction 1
alpha 384 384 192
bounce -1
staintex 16 24
tex 24 32
trailspacing 64
- type blood
velocityjitter 64 64 64
velocitymultiplier 0.500000
effect item_pickup
+ type static
alpha 128 64 64
color 0x63F2EA 0xB0C5C4
countabsolute 1
size 8 16
- type static
effect item_pickup
+ type spark
alpha 256 256 1280
color 0x63F2EA 0xB0C5C4
count 32
size 1 1
tex 41 41
- type spark
velocityjitter 256 256 256
effect bloodshower
+ type spark
alpha 156 656 1664
blend invmod
bounce -1
staintex 16 24
stretchfactor 3
tex 24 32
- type spark
velocityjitter 764 764 764
effect bloodshower
+ type smoke
alpha 156 656 1664
blend invmod
color 0xA8FFFF 0xA8FFFFF
sizeincrease 300
size 1 28
tex 24 32
+effect bloodshower
type smoke
+ alpha 156 656 1664
+ blend invmod
+ color 0xA8FFFF 0xA8FFFFF
+ countabsolute 0.100000
+ originjitter 50 50 50
+ sizeincrease 300
+ size 1 28
+ tex 24 32
effect alien_bloodshower
+ type spark
alpha 156 656 1664
blend invmod
bounce -1
staintex 16 24
stretchfactor 3
tex 24 32
- type spark
velocityjitter 764 764 764
-effect alien_bloodshower
- alpha 156 656 1664
- blend invmod
- color 0xA8FFFF 0xA8FFFFF
- countabsolute 0.100000
- originjitter 50 50 50
- sizeincrease 300
- size 1 28
- tex 24 32
- type smoke
effect robot_bloodshower
+ type spark
alpha 156 656 1664
blend invmod
bounce -1
staintex 16 24
stretchfactor 3
tex 24 32
- type spark
velocityjitter 764 764 764
effect robot_bloodshower
+ type smoke
alpha 1128 1256 4200
color 0xff3000 0xff8585
count 2.500000
rotate -180 180 99 -99
size 25 40
tex 71 73
- type smoke
velocityjitter 44 44 44
effect robot_bloodshower
+ type smoke
alpha 11 125 990
color 0xff3000 0xff8585
count 2.500000
sizeincrease 3000
size 5 50
tex 74 74
- type smoke
effect red_ground_quake
+ type smoke
airfriction 3
alpha 100 126 200
bounce 1.100000
size 20 50
tex 0 8
time 5 10
- type smoke
velocityjitter 190 190 50
effect red_ground_quake
+ type smoke
airfriction 4
alpha 100 126 200
bounce 1.200000
size 10 30
tex 0 8
time 10 15
- type smoke
velocityjitter 190 190 50
effect red_ground_quake
+ type smoke
alpha 200 356 512
bounce 6
color 0x9E6A64 0x91302D
size 4 20
tex 48 55
time 15 25
- type smoke
velocityjitter 22 22 50
effect red_ground_quake
+ type alphastatic
alpha 200 256 200
bounce 2
color 0x000000 0xffffff
size 22 33
tex 0 8
time 25 35
- type alphastatic
velocityjitter 11 11 50
effect blue_ground_quake
+ type smoke
airfriction 3
alpha 100 126 200
bounce 1.100000
size 20 50
tex 0 8
time 5 10
- type smoke
velocityjitter 190 190 50
effect blue_ground_quake
+ type smoke
airfriction 4
alpha 100 126 200
bounce 1.200000
size 10 30
tex 0 8
time 10 15
- type smoke
velocityjitter 190 190 50
effect blue_ground_quake
+ type smoke
alpha 200 356 512
bounce 6
color 0x64679E 0x2D4C91
size 4 20
tex 48 55
time 15 25
- type smoke
velocityjitter 22 22 50
effect blue_ground_quake
+ type alphastatic
alpha 200 256 200
bounce 2
color 0x000000 0xffffff
size 22 33
tex 0 8
time 25 35
- type alphastatic
velocityjitter 11 11 50
effect morphed_damage_hit
+ type spark
airfriction 5
alpha 128 128 292
color 0xffffff 0x9271fb
sizeincrease -24
size 14 24
tex 43 43
- type spark
velocityjitter 356 356 456
effect morphed_damage_hit
+ type smoke
airfriction 5
alpha 128 128 292
color 0xffffff 0x9271fb
sizeincrease -24
size 24 24
tex 0 8
- type smoke
effect morphed_damage_dissolve
+ type smoke
airfriction 8
alpha 456 456 1828
color 0xffffff 0x9271fb
sizeincrease -16
size 40 40
tex 43 43
- type smoke
velocityjitter 256 256 512
effect morphed_damage_dissolve
+ type smoke
airfriction 9
alpha 256 256 628
color 0x7bdbff 0xbed2ff
sizeincrease -16
size 40 40
tex 43 43
- type smoke
velocityjitter 256 256 512
effect morphed_damage_dissolve
+ type smoke
airfriction 3
alpha 156 156 128
color 0xffffff 0x9271fb
sizeincrease -16
size 44 44
tex 65 65
- type smoke
effect morphed_damage_dissolve
+ type smoke
airfriction 3
alpha 56 56 128
bounce 1.500000
sizeincrease -16
size 32 32
tex 46 46
- type smoke
velocityjitter 400 400 0
effect TE_TEI_G3RED
+ type beam
alpha 128 128 256
color 0xFF0000 0xFF0011
countabsolute 1
size 4 4
tex 200 200
- type beam
effect TE_TEI_G3RED
+ type smoke
airfriction -4
alpha 256 256 512
color 0x200000 0x400000
size 0.300000 0.300000
tex 46 46
trailspacing 8
- type smoke
velocityjitter 3 3 3
effect TE_TEI_G3RED_HIT
+ type beam
alpha 128 128 256
color 0xFF0000 0xFF0011
countabsolute 1
size 8 8
tex 200 200
- type beam
effect TE_TEI_G3RED_HIT
+ type smoke
airfriction -4
alpha 256 256 512
color 0xFFFFFF 0xFF0011
sizeincrease -2
size 2 2
trailspacing 20
- type smoke
velocityjitter 2 2 2
effect TE_TEI_G3RED_HIT
+ type smoke
airfriction -4
alpha 256 256 512
color 0xFF0000 0xFF0011
sizeincrease -6
size 10 10
trailspacing 40
- type smoke
effect TE_TEI_G3BLUE
+ type beam
alpha 128 128 256
color 0x0000FF 0x1100FF
countabsolute 1
size 4 4
tex 200 200
- type beam
effect TE_TEI_G3BLUE
+ type smoke
airfriction -4
alpha 256 256 512
color 0x000020 0x000040
size 0.300000 0.300000
tex 46 46
trailspacing 8
- type smoke
velocityjitter 3 3 3
effect TE_TEI_G3BLUE_HIT
+ type beam
alpha 128 128 256
color 0x0000FF 0x1100FF
countabsolute 1
size 8 8
tex 200 200
- type beam
effect TE_TEI_G3BLUE_HIT
+ type smoke
airfriction -4
alpha 256 256 512
color 0xFFFFFF 0x1100FF
sizeincrease -2
size 2 2
trailspacing 20
- type smoke
velocityjitter 2 2 2
effect TE_TEI_G3BLUE_HIT
+ type smoke
airfriction -4
alpha 256 256 512
color 0x0000FF 0x1100FF
sizeincrease -6
size 10 10
trailspacing 40
- type smoke
effect TE_TEI_G3YELLOW
+ type beam
alpha 128 128 256
color 0xffff00 0xffff11
countabsolute 1
size 4 4
tex 200 200
- type beam
effect TE_TEI_G3YELLOW
+ type smoke
airfriction -4
alpha 256 256 512
color 0x202000 0x404000
size 0.300000 0.300000
tex 46 46
trailspacing 8
- type smoke
velocityjitter 3 3 3
effect TE_TEI_G3YELLOW_HIT
+ type beam
alpha 128 128 256
color 0xffff00 0xffff11
countabsolute 1
size 8 8
tex 200 200
- type beam
effect TE_TEI_G3YELLOW_HIT
+ type smoke
airfriction -4
alpha 256 256 512
color 0xFFFFFF 0xffff11
sizeincrease -2
size 2 2
trailspacing 20
- type smoke
velocityjitter 2 2 2
effect TE_TEI_G3YELLOW_HIT
+ type smoke
airfriction -4
alpha 256 256 512
color 0xffff00 0xffff11
sizeincrease -6
size 10 10
trailspacing 40
- type smoke
effect TE_TEI_G3PINK
+ type beam
alpha 128 128 256
color 0xFF00FF 0xFF11FF
countabsolute 1
size 4 4
tex 200 200
- type beam
effect TE_TEI_G3PINK
+ type smoke
airfriction -4
alpha 256 256 512
color 0x200020 0x400040
size 0.300000 0.300000
tex 46 46
trailspacing 8
- type smoke
velocityjitter 3 3 3
effect TE_TEI_G3PINK_HIT
+ type beam
alpha 128 128 256
color 0xFF00FF 0xFF11FF
countabsolute 1
size 8 8
tex 200 200
- type beam
effect TE_TEI_G3PINK_HIT
+ type smoke
airfriction -4
alpha 256 256 512
color 0xFFFFFF 0xFF11FF
sizeincrease -2
size 2 2
trailspacing 20
- type smoke
velocityjitter 2 2 2
effect TE_TEI_G3PINK_HIT
+ type smoke
airfriction -4
alpha 256 256 512
color 0xFF00FF 0xFF11FF
sizeincrease -6
size 10 10
trailspacing 40
- type smoke
effect particlegibs_damage_hit
+ type blood
airfriction 3
alpha 256 256 428
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 0 8
- type blood
velocityjitter 156 156 212
effect particlegibs_damage_hit
+ type blood
airfriction 1
alpha 256 256 328
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 6 6 30
velocitymultiplier -1
effect particlegibs_damage_hit
+ type blood
airfriction 1
alpha 256 256 328
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 26 26 112
velocitymultiplier 2
effect particlegibs_damage_dissolve
+ type blood
airfriction 3
alpha 256 256 328
color 0x00ffff 0x82ffff
staincolor 0x808080 0x808080
staintex 16 24
tex 0 8
- type blood
velocityjitter 256 256 312
effect particlegibs_damage_dissolve
+ type blood
airfriction 2
alpha 256 256 528
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 0 8
- type blood
velocityjitter 356 356 412
effect particlegibs_damage_dissolve
+ type blood
airfriction 1
alpha 256 256 328
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 56 56 212
velocitymultiplier -0.300000
effect particlegibs_damage_dissolve
+ type blood
airfriction 1
alpha 256 256 328
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 56 56 212
velocitymultiplier 0.500000
effect particlegibs_damage_dissolve
+ type blood
airfriction 1.500000
alpha 256 256 328
color 0xA8FFFF 0xA8FFFFF
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 656 656 912
effect onslaught_generator_gib_explode
+ type static
airfriction 5
alpha 128 256 356
bounce 1.500000
sizeincrease 45
size 20 26
tex 48 55
- type static
velocityjitter 286 286 286
effect onslaught_generator_gib_explode
+ type alphastatic
airfriction 5
alpha 200 500 600
bounce 2
sizeincrease 90
size 1 10
tex 0 8
- type alphastatic
velocityjitter 244 244 244
effect onslaught_generator_gib_explode
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 3
tex 62 62
- type bubble
underwater
velocityjitter 96 96 96
effect onslaught_generator_gib_flame
+ type static
airfriction 5
alpha 128 256 356
color 0x8f0d00 0xff5a00
sizeincrease 25
size 5 10
tex 48 55
- type static
velocityjitter 86 86 86
effect onslaught_generator_gib_flame
+ type alphastatic
airfriction 5
alpha 200 500 600
bounce 2
sizeincrease 30
size 10 20
tex 0 8
- type alphastatic
velocityjitter 44 44 44
effect onslaught_generator_gib_flame
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 3
tex 62 62
- type bubble
underwater
velocityjitter 96 96 96
effect firemine
+ type smoke
airfriction 1.200000
alpha 50 256 250
bounce 1.500000
size 1 1
tex 48 55
trailspacing 2
- type smoke
velocityjitter 10 10 2
effect firemine
+ type smoke
airfriction 1.200000
alpha 50 256 200
bounce 1.500000
size 1 1
tex 48 55
trailspacing 2
- type smoke
velocityjitter 10 10 10
effect firemine
+ type smoke
airfriction 0.300000
alpha 50 256 200
bounce 1.500000
size 1 1
tex 48 55
trailspacing 4
- type smoke
velocityjitter 8 8 8
effect firemine
+ type smoke
airfriction 0.300000
alpha 50 256 200
bounce 1.500000
size 5 7
tex 48 55
trailspacing 4
- type smoke
velocityjitter 3 3 3
effect firemine
+ type alphastatic
airfriction 1
alpha 256 256 90
color 0x000000 0x111111
size 1 4
tex 0 8
trailspacing 8
- type alphastatic
velocityoffset 0 0 3
effect firemine
+ type smoke
airfriction 1.200000
alpha 50 256 1600
bounce 1.500000
size 12 12
tex 48 55
trailspacing 1
- type smoke
effect firemine
lightcolor 2.7 2.7 0.6
lightradiusfade 50000
lightradius 50
trailspacing 16
effect fireball
+ type smoke
airfriction 1.200000
alpha 50 256 250
bounce 1.500000
size 5 5
tex 48 55
trailspacing 2
- type smoke
velocityjitter 40 40 11
effect fireball
+ type smoke
airfriction 1.200000
alpha 50 256 200
bounce 1.500000
size 5 5
tex 48 55
trailspacing 2
- type smoke
velocityjitter 40 40 40
effect fireball
+ type smoke
airfriction 0.300000
alpha 50 256 200
bounce 1.500000
size 5 5
tex 48 55
trailspacing 4
- type smoke
velocityjitter 30 30 30
effect fireball
+ type smoke
airfriction 0.300000
alpha 50 256 200
bounce 1.500000
size 20 30
tex 48 55
trailspacing 4
- type smoke
velocityjitter 10 10 10
effect fireball
+ type alphastatic
airfriction 1
alpha 256 256 90
color 0x000000 0x111111
size 5 15
tex 0 8
trailspacing 8
- type alphastatic
velocityoffset 0 0 10
effect fireball
+ type smoke
airfriction 1.200000
alpha 50 256 1600
bounce 1.500000
size 48 48
tex 48 55
trailspacing 1
- type smoke
effect fireball
lightcolor 2.7 2.7 0.6
lightradiusfade 3000
lightradius 300
trailspacing 16
effect fireball_laser
+ type spark
alpha 192 256 2560
color 0x800000 0xFF8020
count 10
size 1 1
stretchfactor 0.700000
- type spark
velocityjitter 1 1 1
velocitymultiplier 10
effect fireball_explode
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 4 2 0.5
originjitter 56 56 56
size 72 72
tex 8 16
- type decal
effect fireball_explode
+ type static
alpha 192 192 64
color 0x404040 0x404040
countabsolute 1
size 72 72
tex 35 37
- type static
effect fireball_explode
+ type static
airfriction 4
alpha 128 128 256
bounce 1.500000
originjitter 8 8 8
size 16 16
tex 48 55
- type static
velocityjitter 512 512 512
effect fireball_explode
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 3
tex 62 62
- type bubble
underwater
velocityjitter 144 144 144
effect fireball_explode
+ type spark
airfriction 0.200000
alpha 256 256 384
bounce 1.500000
liquidfriction 0.800000
notunderwater
size 2 2
- type spark
velocityjitter 384 384 384
velocityoffset 0 0 80
effect fireball_muzzleflash
+ type smoke
alpha 256 256 512
color 0x202020 0x404040
count 2
originjitter 1.5 1.5 1.5
size 5 5
tex 0 8
- type smoke
velocityjitter 6 6 6
velocitymultiplier 0.010000
effect fireball_muzzleflash
+ type spark
airfriction 12
alpha 0 128 1024
color 0xFFFDD9 0xFFFDD9
originjitter 1 1 1
size 3 3
tex 40 40
- type spark
velocityjitter 300 300 300
velocitymultiplier 0.500000
effect fireball_preattack_muzzleflash
+ type smoke
alpha 256 256 512
color 0x202020 0x404040
count 2
originjitter 1.5 1.5 1.5
size 5 5
tex 0 8
- type smoke
velocityjitter 6 6 6
velocitymultiplier 0.010000
effect fireball_preattack_muzzleflash
+ type spark
airfriction 12
alpha 0 128 1024
color 0xFFFDD9 0xFFFDD9
originjitter 1 1 1
size 3 3
tex 40 40
- type spark
velocityjitter 300 300 300
velocitymultiplier 0.500000
effect fireball_bfgdamage
+ type smoke
alpha 256 256 512
color 0x202020 0x404040
count 2
originjitter 1.5 1.5 1.5
size 5 5
tex 0 8
- type smoke
velocityjitter 6 6 6
velocitymultiplier 0.010000
effect fireball_bfgdamage
+ type spark
airfriction 12
alpha 0 128 1024
color 0xFFFDD9 0xFFFDD9
originjitter 1 1 1
size 3 3
tex 40 40
- type spark
velocityjitter 300 300 300
velocitymultiplier 0.500000
effect EF_FLAME
+ type smoke
alpha 200 356 512
bounce 2
color 0x8f0d00 0xff5a00
sizeincrease -1
size 5 21
tex 48 55
- type smoke
velocityjitter 22 22 50
effect EF_FLAME
+ type alphastatic
alpha 200 256 200
bounce 2
color 0x000000 0x111111
sizeincrease 6
size 11 15
tex 0 8
- type alphastatic
velocityjitter 11 11 50
effect EF_FLAME
count 0.500000
lightradiusfade 10000
lightradius 200
effect tr_rifle
+ type spark
alpha 256 256 2560
color 0x800000 0xFF8020
size 1.500000 1.500000
stretchfactor 1
trailspacing 128
- type spark
velocitymultiplier 0.700000
effect tr_rifle
+ type smoke
airfriction -4
alpha 256 256 256
color 0x202020 0x404040
size 4 4
tex 0 8
trailspacing 8
- type smoke
velocityjitter 4 4 4
effect tr_rifle
+ type bubble
alpha 256 256 128
bounce 1.500000
color 0x404040 0x808080
size 2 2
tex 62 62
trailspacing 32
- type bubble
underwater
velocityjitter 16 16 16
effect rocket_guide
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 8 8 8
size 1.500000 1.500000
tex 62 62
- type bubble
underwater
velocityjitter 48 48 48
velocitymultiplier -0.100000
effect rocket_guide
+ type spark
airfriction 0.200000
alpha 256 256 984
bounce 1.500000
size 0.300000 0.700000
stretchfactor 0.400000
tex 40 40
- type spark
velocityjitter 156 156 156
velocitymultiplier -0.300000
velocityoffset 0 0 80
effect rocket_guide
+ type smoke
alpha 100 100 500
color 0x903010 0xFFD030
countabsolute 1
sizeincrease 300
size 10 10
tex 65 65
- type smoke
effect laser_gauntlet
+ type spark
airfriction 10
alpha 128 512 6280
color 0xb44215 0x880000
size 7 10
stretchfactor 2.300000
tex 43 43
- type spark
velocityjitter 150 150 150
velocitymultiplier 0.200000
effect laser_gauntlet
+ type spark
airfriction 12
alpha 256 512 6280
color 0xff4200 0xff0000
size 7 9
stretchfactor 2
tex 8 15
- type spark
velocityjitter 100 100 100
velocitymultiplier 0.200000
effect laser_gauntletmuzzleflash
+ type smoke
airfriction 10
alpha 256 512 6280
color 0x220000 0x880000
size 10 15
stretchfactor 2
tex 65 65
- type smoke
effect laser_gauntletmuzzleflash
+ type spark
airfriction 10
alpha 128 512 6280
color 0xb44215 0x880000
size 7 10
stretchfactor 2.300000
tex 43 43
- type spark
velocityjitter 150 150 150
velocitymultiplier 0.200000
effect laser_gauntletmuzzleflash
+ type spark
airfriction 12
alpha 256 512 6280
color 0xff4200 0xff0000
size 7 9
stretchfactor 2
tex 8 15
- type spark
velocityjitter 100 100 100
velocitymultiplier 0.200000
effect torchflame
+ type smoke
airfriction 1.200000
alpha 50 256 250
color 0x8f0d00 0xff5a00
sizeincrease 20
size 5 5
tex 48 55
- type smoke
velocityjitter 40 40 11
velocitymultiplier 30
effect torchflame
+ type smoke
airfriction 1.200000
alpha 50 256 200
color 0x8f0d00 0xff5a00
sizeincrease 20
size 5 5
tex 48 55
- type smoke
velocityjitter 40 40 40
velocitymultiplier 20
effect torchflame
+ type smoke
airfriction 0.300000
alpha 50 256 200
color 0x8f0d00 0xff5a00
sizeincrease 10
size 5 5
tex 48 55
- type smoke
velocityjitter 30 30 30
velocitymultiplier 10
effect torchflame
+ type smoke
airfriction 0.300000
alpha 50 256 200
color 0x8f0d00 0xff5a00
sizeincrease -10
size 20 30
tex 48 55
- type smoke
velocityjitter 10 10 10
velocitymultiplier 15
effect torchflame
+ type alphastatic
airfriction 1
alpha 256 256 90
color 0x000000 0x111111
sizeincrease 7
size 5 15
tex 0 8
- type alphastatic
velocitymultiplier 20
velocityoffset 0 0 10
effect happy_damage_dissolve
+ type alphastatic
airfriction 3
alpha 256 256 228
bounce 1.500000
sizeincrease -10
size 32 32
tex 69 69
- type alphastatic
velocityjitter 312 312 312
effect happy_damage_dissolve
+ type alphastatic
airfriction 3
alpha 256 256 228
bounce 1.500000
sizeincrease -10
size 32 32
tex 69 69
- type alphastatic
velocityjitter 312 312 312
effect happy_damage_dissolve
+ type alphastatic
airfriction 3
alpha 256 256 228
bounce 1.500000
sizeincrease -10
size 32 32
tex 69 69
- type alphastatic
velocityjitter 312 312 312
effect happy_damage_hit
+ type alphastatic
airfriction 5
alpha 128 128 192
bounce 1.500000
sizeincrease -28
size 26 26
tex 69 69
- type alphastatic
velocityjitter 156 156 156
effect happy_damage_hit
+ type alphastatic
airfriction 5
alpha 128 128 192
bounce 1.500000
sizeincrease -28
size 26 26
tex 69 69
- type alphastatic
velocityjitter 156 156 156
effect happy_damage_hit
+ type alphastatic
airfriction 5
alpha 128 128 192
bounce 1.500000
sizeincrease -28
size 26 26
tex 69 69
- type alphastatic
velocityjitter 156 156 156
effect electro_lightning
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 3.1 4.4 10
originjitter 2 2 2
size 16 16
tex 59 59
- type decal
effect electro_lightning
+ type spark
alpha 100 206 1724
color 0x2030FF 0x80C0FF
count 300
sizeincrease 10
size 6 6
tex 65 65
- type spark
velocityjitter 6 6 6
velocitymultiplier 2000
effect electro_lightning
+ type spark
airfriction 2
alpha 110 170 1500
color 0xDDFDFF 0xFDFDFF
size 2 5
stretchfactor 1.500000
tex 8 15
- type spark
velocityjitter 150 150 150
velocitymultiplier 0.500000
effect electro_lightning
+ type spark
airfriction 8
alpha 110 170 1500
color 0xFDFDFF 0xF9FDFF
size 2 3
stretchfactor 0.100000
tex 41 41
- type spark
velocityjitter 350 350 350
velocitymultiplier 2.500000
effect gauntlet_lightning
+ type spark
alpha 256 256 1024
color 0x280000 0x280000
count 300
sizeincrease 15
size 3 3
tex 65 65
- type spark
velocityjitter 6 6 6
velocitymultiplier 2000
effect gauntlet_lightning
+ type spark
airfriction 2
alpha 110 228 1024
color 0xDD0000 0xFD0000
size 2 5
stretchfactor 1.500000
tex 8 15
- type spark
velocityjitter 150 150 150
velocitymultiplier 0.500000
effect gauntlet_lightning
+ type spark
airfriction 8
alpha 110 228 600
color 0xFD0000 0xF90000
size 2 3
stretchfactor 0.100000
tex 41 41
- type spark
velocityjitter 350 350 350
velocitymultiplier 2.500000
effect crylink_joinexplode
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 12 12 12
size 24 24
tex 47 47
- type decal
effect crylink_joinexplode
+ type static
alpha 256 256 512
color 0x504060 0x504060
countabsolute 1
size 24 24
tex 39 39
- type static
effect crylink_joinexplode
+ type spark
alpha 256 256 1024
bounce 2
color 0xA040C0 0xA040C0
count 40
size 6 6
tex 41 41
- type spark
velocityjitter 512 512 512
effect crylink_joinexplode
+ type static
alpha 256 256 512
color 0xE070FF 0xE070FF
count 1.500000
size 16 16
- type static
velocityjitter 32 32 32
effect crylink_joinexplode
+ type static
alpha 256 256 1024
color 0xE070FF 0xE070FF
count 3
size 16 16
- type static
velocityjitter 256 256 256
effect kaball_sparks
+ type spark
airfriction 3
alpha 0 256 556
bounce 1.500000
originjitter 1 1 1
size 1 3
tex 40 40
- type spark
velocityjitter 300 300 300
velocitymultiplier 0.500000
effect tr_rifle_weak
+ type spark
alpha 256 256 2560
color 0x800000 0xFF8020
size 1.500000 1.500000
stretchfactor 1
trailspacing 128
- type spark
velocitymultiplier 0.700000
effect tr_rifle_weak
+ type smoke
airfriction -4
alpha 256 256 256
color 0x202020 0x404040
size 4 4
tex 0 8
trailspacing 48
- type smoke
velocityjitter 4 4 4
effect tr_rifle_weak
+ type bubble
alpha 256 256 128
bounce 1.500000
color 0x404040 0x808080
size 2 2
tex 62 62
trailspacing 192
- type bubble
underwater
velocityjitter 16 16 16
effect red_smoke
+ type smoke
airfriction -1
alpha 32 64 32
color 0xff8866 0x331100
rotate 0 360 -30 30
size 60 120
tex 0 8
- type smoke
velocitymultiplier 5
effect pipe_smoke
+ type smoke
airfriction -1
alpha 32 64 48
color 0x999999 0x555555
sizeincrease 35
size 5 10
tex 0 8
- type smoke
velocityjitter 0 0 5
velocitymultiplier 15
effect TR_SEEKER
+ type smoke
alpha 200 300 200
bounce 1
color 0x000000 0x666666
size 2 2
tex 0 8
trailspacing 10
- type smoke
velocityjitter 3 3 3
velocitymultiplier -0.020000
effect TR_SEEKER
+ type static
airfriction 8
alpha 100 144 588
color 0xffdf72 0x811200
size 5 5
tex 48 55
trailspacing 4
- type static
velocityjitter 32 32 32
velocitymultiplier -1.500000
effect TR_SEEKER
+ type bubble
alpha 256 256 256
bounce 1.500000
gravity -0.125000
size 1 2
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
velocitymultiplier -0.310000
effect TR_SEEKER
+ type spark
airfriction 5
alpha 444 512 1866
bounce 1
stretchfactor 0.300000
tex 40 40
trailspacing 20
- type spark
velocityjitter 100 100 100
velocitymultiplier -0.310000
effect spiderbot_minigun_trail
+ type smoke
airfriction 1
alpha 20 50 100
color 0xd0d0a0 0xffffff
size 1 2
tex 0 8
trailspacing 10
- type smoke
velocityjitter 5 5 5
effect spiderbot_minigun_muzzleflash
+ type spark
airfriction 10
alpha 256 512 6280
color 0xff9c00 0xff8400
size 10 15
stretchfactor 1.300000
tex 48 55
- type spark
velocityjitter 150 150 150
velocitymultiplier 0.350000
effect spiderbot_minigun_muzzleflash
+ type spark
airfriction 12
alpha 256 512 6280
color 0xff9c00 0xff8400
size 5 7
stretchfactor 0.800000
tex 8 15
- type spark
velocityjitter 200 200 200
velocitymultiplier 0.200000
effect spiderbot_minigun_muzzleflash
+ type static
alpha 256 512 6680
color 0xff9c00 0xff8400
countabsolute 2
size 32 32
stretchfactor 0.100000
tex 48 55
- type static
effect spiderbot_minigun_impact
+ type static
alpha 50 100 1680
color 0xff9c00 0xf6ff00
countabsolute 1
size 52 52
stretchfactor 0.100000
tex 65 65
- type static
effect spiderbot_minigun_impact
+ type spark
airfriction 6
alpha 256 512 6280
color 0xff9c00 0xff8400
size 9 15
stretchfactor 3
tex 48 55
- type spark
velocityjitter 250 250 150
velocitymultiplier 0.200000
effect spiderbot_minigun_impact
+ type smoke
airfriction 10
alpha 50 50 190
color 0xd0d0a0 0xffffff
sizeincrease 80
size 10 20
tex 0 8
- type smoke
velocityjitter 100 100 250
velocitymultiplier 0.490000
effect spiderbot_minigun_impact
+ type spark
airfriction 6
alpha 25 51 128
color 0xd0d0a0 0xffffff
size 15 19
stretchfactor 7.600000
tex 0 8
- type spark
velocityjitter 250 250 150
velocitymultiplier 0.200000
effect spiderbot_minigun_impact
+ type alphastatic
airfriction 0.400000
alpha 644 756 1484
color 0x99977D 0xFFFFFF
sizeincrease -10
size 6 8
tex 66 68
- type alphastatic
velocityjitter 124 124 224
velocitymultiplier 0.150000
effect spiderbot_minigun_impact
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 16 16 16
rotate -180 180 0 0
size 20 25
tex 56 59
- type decal
effect spiderbot_rocket_explode
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 8 4 0
originjitter 23 23 23
size 72 72
tex 8 16
- type decal
effect spiderbot_rocket_explode
+ type static
alpha 56 56 230
color 0x8f0d00 0xff5a00
countabsolute 1
sizeincrease 2400
size 22 22
tex 33 33
- type static
effect spiderbot_rocket_explode
+ type static
alpha 156 156 830
color 0x8f0d00 0xff5a00
countabsolute 1
sizeincrease 240
size 120 120
tex 64 64
- type static
effect spiderbot_rocket_explode
+ type static
airfriction 8
alpha 200 256 812
color 0x8f0d00 0xff5a00
sizeincrease 495
size 12 21
tex 48 55
- type static
velocityjitter 512 512 512
effect spiderbot_rocket_explode
+ type spark
airfriction -2
alpha 200 256 912
color 0x8f0d00 0xff5a00
size 3 3
stretchfactor 10
tex 48 55
- type spark
velocityjitter 412 412 412
effect spiderbot_rocket_explode
+ type spark
airfriction -3
alpha 200 256 1600
color 0x8f0d00 0xff5a00
size 13 54
stretchfactor 10
tex 48 55
- type spark
velocityjitter 712 712 712
effect spiderbot_rocket_explode
+ type alphastatic
airfriction 3
alpha 300 650 756
color 0x4F4B46 0x000000
sizeincrease 280
size 10 15
tex 0 8
- type alphastatic
velocityjitter 200 200 200
effect spiderbot_rocket_explode
+ type alphastatic
airfriction 2
alpha 300 650 556
color 0x4F4B46 0x000000
sizeincrease 30
size 100 150
tex 0 8
- type alphastatic
velocityjitter 200 200 200
effect spiderbot_rocket_explode
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 160 160 160
size 1 3
tex 62 62
- type bubble
underwater
velocityjitter 144 144 144
effect spiderbot_rocket_explode
+ type smoke
alpha 40 40 300
countabsolute 1
sizeincrease 1200
size 30 30
tex 33 33
- type smoke
underwater
effect spiderbot_rocket_thrust
+ type spark
alpha 200 256 1600
color 0x8f0d00 0xff5a00
count 3
size 5 10
stretchfactor 0.900000
tex 48 55
- type spark
velocityjitter 20 20 20
velocitymultiplier -1.400000
effect spiderbot_rocket_thrust
+ type static
alpha 200 200 9000
color 0x8f0d00 0xff5a00
count 4
size 25 25
stretchfactor 1
tex 48 55
- type static
velocityjitter 60 60 60
velocitymultiplier -1.400000
effect spiderbot_rocket_launch
+ type smoke
airfriction 0.300000
alpha 100 156 60
color 0xFFFFFF 0xD9C4B0
sizeincrease 20
size 30 30
tex 0 8
- type smoke
velocityjitter 60 60 60
velocitymultiplier -0.100000
effect spiderbot_rocket_launch
+ type smoke
airfriction 0.300000
alpha 100 156 260
color 0xFFFFFF 0xD9C4B0
sizeincrease 20
size 30 30
tex 0 8
- type smoke
velocityjitter 160 160 60
effect spiderbot_rocket_launch
+ type spark
airfriction 0.300000
alpha 200 256 1960
color 0x8f0d00 0xff5a00
size 30 30
stretchfactor 3
tex 48 55
- type spark
velocityjitter 60 60 60
velocitymultiplier 0.500000
effect spiderbot_rocket_launch
+ type spark
alpha 200 256 1000
color 0xFFFFFF 0xD9C4B0
count 10
notunderwater
size 1 4
tex 40 40
- type spark
velocityjitter 160 160 160
velocitymultiplier -0.500000
effect wakizashi_gun_impact
+ type spark
airfriction 4
alpha 256 512 1180
color 0xff0000 0xc03535
size 4 7
stretchfactor 0.900000
tex 41 41
- type spark
velocityjitter 350 350 550
velocityoffset 0 0 700
effect wakizashi_gun_impact
+ type smoke
airfriction 4
alpha 50 90 150
color 0xd0d0a0 0xc03535
sizeincrease 80
size 10 20
tex 0 8
- type smoke
velocityjitter 250 250 450
velocityoffset 0 0 600
effect wakizashi_gun_impact
+ type smoke
alpha 250 300 680
color 0xff0000 0xc03535
countabsolute 1
sizeincrease -180
size 82 82
tex 65 65
- type smoke
effect wakizashi_gun_impact
+ type smoke
alpha 50 100 620
color 0xff0000 0xc03535
countabsolute 1
sizeincrease 900
size 40 40
tex 33 33
- type smoke
effect wakizashi_gun_impact
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 16 16 16
rotate -180 180 0 0
size 14 14
tex 59 59
- type decal
effect wakizashi_gun_muzzleflash
+ type spark
airfriction 12
alpha 256 512 6280
color 0xff0000 0xc03535
size 5 7
stretchfactor 0.700000
tex 8 15
- type spark
velocityjitter 200 200 200
velocitymultiplier 0.200000
effect wakizashi_rocket_explode
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 8 4 0
originjitter 23 23 23
size 72 72
tex 8 16
- type decal
effect wakizashi_rocket_explode
+ type static
alpha 56 56 230
color 0x8f0d00 0xff5a00
countabsolute 1
sizeincrease 2400
size 22 22
tex 33 33
- type static
effect wakizashi_rocket_explode
+ type static
alpha 156 156 830
color 0x8f0d00 0xff5a00
countabsolute 1
sizeincrease 240
size 120 120
tex 64 64
- type static
effect wakizashi_rocket_explode
+ type static
airfriction 2
alpha 200 256 512
color 0xFFAE00 0xff5a00
sizeincrease 195
size 12 21
tex 48 55
- type static
velocityjitter 512 512 512
effect wakizashi_rocket_explode
+ type spark
airfriction -3
alpha 200 256 1600
color 0xFFEA00 0xff5a00
size 43 54
stretchfactor 10
tex 48 55
- type spark
velocityjitter 512 512 512
effect wakizashi_rocket_explode
+ type alphastatic
airfriction 3
alpha 300 450 556
color 0x4F4B46 0x000000
sizeincrease 230
size 10 15
tex 0 8
- type alphastatic
velocityjitter 200 200 200
effect wakizashi_rocket_explode
+ type spark
airfriction 1
alpha 644 956 884
color 0xffa35b 0xfff2be
originjitter 60 60 60
size 1 2
tex 40 40
- type spark
velocityjitter 524 524 524
velocityoffset 0 0 170
effect wakizashi_rocket_explode
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 160 160 160
size 1 3
tex 62 62
- type bubble
underwater
velocityjitter 144 144 144
effect wakizashi_rocket_explode
+ type smoke
alpha 40 40 300
countabsolute 1
sizeincrease 1200
size 30 30
tex 33 33
- type smoke
underwater
effect wakizashi_rocket_thrust
+ type spark
alpha 200 256 1600
color 0x00FFDD 0x6200FF
countabsolute 3
size 14 19
stretchfactor 1
tex 48 55
- type spark
velocityjitter 60 60 60
velocitymultiplier -1.100000
effect wakizashi_rocket_thrust
+ type spark
alpha 200 256 1900
color 0xFFFF33 0xFFEE00
countabsolute 2
size 5 10
stretchfactor 3
tex 48 55
- type spark
velocityjitter 60 60 60
velocitymultiplier -0.300000
effect wakizashi_rocket_launch
+ type smoke
airfriction 0.300000
alpha 100 156 60
color 0xFFFFFF 0xD9C4B0
sizeincrease 20
size 3 30
tex 0 8
- type smoke
velocityjitter 160 160 60
velocitymultiplier -0.100000
effect wakizashi_rocket_launch
+ type smoke
airfriction 0.300000
alpha 100 156 260
color 0xFFFFFF 0xD9C4B0
sizeincrease 20
size 30 30
tex 0 8
- type smoke
velocityjitter 160 160 60
velocitymultiplier 0.400000
effect wakizashi_rocket_launch
+ type spark
alpha 200 256 1000
color 0xFFFFFF 0xD9C4B0
count 10
notunderwater
size 1 4
tex 40 40
- type spark
velocityjitter 60 60 60
velocitymultiplier -1.500000
effect wakizashi_booster_smoke
+ type alphastatic
airfriction 2
alpha 200 750 200
color 0xA69A80 0xB3B39F
sizeincrease 10
size 60 100
tex 0 8
- type alphastatic
velocityjitter 40 40 40
effect raptor_cannon_impact
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 16 16 16
rotate -180 180 0 0
size 24 24
tex 47 47
- type decal
effect raptor_cannon_impact
+ type spark
airfriction 0.200000
alpha 644 956 784
color 0xD400FF 0x571863
originjitter 16 16 16
size 1 1
tex 40 40
- type spark
velocityjitter 124 124 524
velocityoffset 0 0 150
effect raptor_cannon_impact
+ type alphastatic
airfriction 2
alpha 428 428 600
color 0x646364 0x151515
rotate -180 180 0 0
size 50 50
tex 0 7
- type alphastatic
velocityjitter 200 200 300
velocityoffset 0 0 340
effect raptor_cannon_impact
+ type static
airfriction 8
alpha 200 256 812
bounce 1.500000
sizeincrease 25
size 33 44
tex 48 55
- type static
velocityjitter 312 312 312
effect raptor_cannon_muzzleflash
+ type spark
airfriction 12
alpha 1256 1512 56280
color 0xD400FF 0x571863
size 10 17
stretchfactor 0.600000
tex 8 15
- type spark
velocityjitter 200 200 200
velocitymultiplier 0.200000
effect raptor_cannon_muzzleflash
+ type static
alpha 6056 20112 406280
color 0xD400FF 0x571863
countabsolute 1
size 32 32
stretchfactor 0.100000
tex 48 55
- type static
effect raptor_bomb_impact
+ type decal
alpha 256 256 0
countabsolute 1
originjitter 16 16 16
rotate -180 180 0 0
size 84 84
tex 8 16
- type decal
effect raptor_bomb_impact
+ type spark
alpha 300 300 600
color 0xff9c00 0xff3c00
count 3
size 20 40
stretchfactor 210
tex 48 55
- type spark
velocityjitter 40 40 120
effect raptor_bomb_impact
+ type static
airfriction 2
alpha 300 300 500
color 0xff9c00 0xff3c00
sizeincrease 230
size 30 120
tex 48 55
- type static
velocityjitter 950 950 0
effect raptor_bomb_impact
+ type spark
alpha 428 428 600
blend alpha
color 0x646364 0x151515
size 120 180
stretchfactor 10
tex 0 7
- type spark
velocityjitter 200 200 280
velocityoffset 0 0 280
effect raptor_bomb_impact
+ type spark
airfriction 0.600000
alpha 328 328 350
blend alpha
sizeincrease 60
size 40 100
tex 0 7
- type spark
velocityjitter 200 200 300
velocityoffset 0 0 580
effect raptor_bomb_impact
+ type spark
airfriction 0.300000
alpha 644 956 984
color 0xffa35b 0xfff2be
size 3 5
stretchfactor 2
tex 40 40
- type spark
velocityjitter 174 174 924
velocityoffset 0 0 350
effect raptor_bomb_spread
+ type spark
airfriction 1
alpha 644 956 1284
color 0xffa35b 0xfff2be
originjitter 110 110 110
size 1 2
tex 40 40
- type spark
velocityjitter 324 324 324
effect explosion_big
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 8 4 0
originjitter 23 23 23
size 172 172
tex 8 16
- type decal
effect explosion_big
+ type static
alpha 56 56 330
color 0x8f0d00 0xff5a00
countabsolute 1
sizeincrease 4400
size 72 72
tex 33 33
- type static
effect explosion_big
+ type static
airfriction 8
alpha 200 256 712
color 0x8f0d00 0xff5a00
sizeincrease 45
size 133 144
tex 48 55
- type static
velocityjitter 2512 2512 2512
effect explosion_big
+ type spark
airfriction -5
alpha 200 256 800
color 0x8f0d00 0xff5a00
size 133 144
stretchfactor 10
tex 48 55
- type spark
velocityjitter 512 512 512
effect explosion_big
+ type alphastatic
airfriction 8
alpha 300 650 456
color 0x4F4B46 0x000000
sizeincrease 244
size 50 100
tex 0 8
- type alphastatic
velocityjitter 3444 3444 3444
effect explosion_big
+ type spark
airfriction 1
alpha 644 956 1284
color 0xffa35b 0xfff2be
size 3 4
stretchfactor 0.700000
tex 40 40
- type spark
velocityjitter 924 924 924
velocityoffset 0 0 370
effect explosion_big
+ type alphastatic
airfriction 0.500000
alpha 444 1356 1184
color 0xFFFFFF 0xcac5b4
sizeincrease -5
size 10 16
tex 66 68
- type alphastatic
velocityjitter 1800 1800 1800
velocityoffset 0 0 970
effect explosion_big
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 160 160 160
size 3 3
tex 62 62
- type bubble
underwater
velocityjitter 444 444 444
effect explosion_big
+ type smoke
alpha 40 40 300
countabsolute 1
sizeincrease 2900
size 30 30
tex 33 33
- type smoke
underwater
velocitymultiplier 0.300000
effect explosion_medium
+ type static
alpha 56 56 330
color 0x8f0d00 0xff5a00
countabsolute 1
sizeincrease 2400
size 72 72
tex 33 33
- type static
effect explosion_medium
+ type static
airfriction 8
alpha 200 256 712
color 0x8f0d00 0xff5a00
sizeincrease 45
size 133 144
tex 48 55
- type static
velocityjitter 1512 1512 1512
effect explosion_medium
+ type static
airfriction 8
alpha 200 256 612
color 0x8f0d00 0xff5a00
sizeincrease 40
size 73 94
tex 48 55
- type static
velocityjitter 1512 1512 1512
effect explosion_medium
+ type spark
airfriction -3
alpha 200 256 800
color 0x8f0d00 0xff5a00
size 43 74
stretchfactor 8
tex 48 55
- type spark
velocityjitter 512 512 512
effect explosion_medium
+ type alphastatic
airfriction 3
alpha 300 650 756
color 0x4F4B46 0x000000
sizeincrease -30
size 250 300
tex 0 8
- type alphastatic
velocityjitter 200 200 200
effect explosion_medium
+ type alphastatic
airfriction 3
alpha 300 650 256
color 0x4F4B46 0x000000
sizeincrease 50
size 50 100
tex 0 8
- type alphastatic
velocityjitter 500 500 500
velocityoffset 0 0 200
effect explosion_medium
+ type spark
alpha 140 255 350
color 0x4F4B46 0x000000
count 13
size 150 200
stretchfactor 50
tex 0 8
- type spark
velocityjitter 250 250 250
effect explosion_medium
+ type spark
airfriction 1
alpha 644 956 984
color 0xffa35b 0xfff2be
size 2 3
stretchfactor 0.700000
tex 40 40
- type spark
velocityjitter 624 624 624
velocityoffset 0 0 370
effect explosion_medium
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 160 160 160
size 3 3
tex 62 62
- type bubble
underwater
velocityjitter 444 444 444
effect explosion_medium
+ type smoke
alpha 40 40 300
countabsolute 1
sizeincrease 2900
size 30 30
tex 33 33
- type smoke
underwater
velocitymultiplier 0.300000
effect explosion_small
+ type static
alpha 56 56 330
color 0x8f0d00 0xff5a00
countabsolute 1
sizeincrease 2400
size 22 22
tex 33 33
- type static
effect explosion_small
+ type static
airfriction 5
alpha 200 256 1212
color 0x8f0d00 0xff5a00
sizeincrease 45
size 1 44
tex 48 55
- type static
velocityjitter 512 512 512
effect explosion_small
+ type static
airfriction 8
alpha 200 256 812
color 0x8f0d00 0xff5a00
sizeincrease 40
size 73 94
tex 48 55
- type static
velocityjitter 912 912 912
effect explosion_small
+ type spark
airfriction -3
alpha 200 256 1300
color 0x8f0d00 0xff5a00
size 13 54
stretchfactor 8
tex 48 55
- type spark
velocityjitter 512 512 512
effect explosion_small
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 160 160 160
size 1 3
tex 62 62
- type bubble
underwater
velocityjitter 144 144 144
effect explosion_small
+ type smoke
alpha 40 40 300
countabsolute 1
sizeincrease 1200
size 30 30
tex 33 33
- type smoke
underwater
effect smoke_big
+ type alphastatic
airfriction 4
alpha 200 750 200
color 0x4F4B46 0x000000
sizeincrease 15
size 30 60
tex 0 8
- type alphastatic
velocityjitter 140 140 200
velocityoffset 0 0 200
effect smoke_small
+ type alphastatic
airfriction 4
alpha 200 750 200
color 0x4F4B46 0x000000
sizeincrease -10
size 60 100
tex 0 8
- type alphastatic
velocityjitter 40 40 400
velocityoffset 0 0 200
effect impact_metal
+ type alphastatic
alpha 25 64 50
color 0x000000 0x886666
count 1
sizeincrease 10
size 3 6
tex 0 8
- type alphastatic
effect impact_metal
+ type spark
airfriction 2
alpha 255 255 112
bounce 1.800000
size 2 2
stretchfactor 0.500000
tex 41 41
- type spark
velocityjitter 200 200 300
velocitymultiplier 2
effect impact_stone
+ type alphastatic
alpha 50 128 75
color 0x000000 0xcc9966
count 1
sizeincrease 15
size 3 6
tex 0 8
- type alphastatic
effect impact_stone
+ type alphastatic
airfriction 0.500000
alpha 450 750 300
bounce 1.200000
rotate -180 180 -1000 1000
size 1 2
tex 66 68
- type alphastatic
velocityjitter 124 124 324
effect impact_wood
+ type alphastatic
alpha 50 128 75
color 0x000000 0xcc9966
count 1
sizeincrease 10
size 3 6
tex 0 8
- type alphastatic
effect impact_wood
+ type spark
airfriction 2
alpha 255 255 75
bounce 1.500000
gravity 1
size 1 8
tex 41 41
- type spark
velocityjitter 180 180 260
velocitymultiplier 2
effect impact_flesh
+ type alphastatic
alpha 100 256 400
color 0x000000 0x420000
count 0.500000
originjitter 11 11 11
size 8 12
tex 0 8
- type alphastatic
effect impact_flesh
+ type blood
airfriction 1
alpha 256 256 64
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 96 96 96
velocitymultiplier 5
effect tr_hagar
+ type smoke
alpha 300 400 780
bounce 1
color 0x101010 0x000000
size 3 2
tex 0 8
trailspacing 4
- type smoke
velocityjitter 1 1 1
velocitymultiplier -0.020000
effect tr_hagar
+ type static
airfriction 8
alpha 100 144 988
color 0xffdf72 0x811200
size 5 2
tex 48 55
trailspacing 4
- type static
velocityjitter 32 32 32
velocitymultiplier -1
effect tr_hagar
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0x404040 0x808080
size 1 1
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
effect damage_laser
+ type smoke
airfriction -0.350000
alpha 128 16 128
color 0x880000 0xff4400
sizeincrease 8
size 2 4
tex 0 8
- type smoke
velocityjitter 0.4 0.4 0.6
effect damage_shotgun
+ type blood
airfriction 1
alpha 256 256 64
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 64 64 64
velocitymultiplier 5
effect damage_shotgun
+ type alphastatic
alpha 100 256 400
color 0x000000 0x420000
count 1
originjitter 1 1 1
size 8 16
tex 0 8
- type alphastatic
effect damage_shotgun_alien
+ type blood
airfriction 1
alpha 256 256 64
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 64 64 64
velocitymultiplier 5
effect damage_shotgun_alien
+ type alphastatic
alpha 100 256 400
color 0x000000 0x204010
count 1
originjitter 1 1 1
size 8 16
tex 0 8
- type alphastatic
effect damage_shotgun_robot
+ type blood
airfriction 1
alpha 256 256 64
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 64 64 64
velocitymultiplier 5
effect damage_shotgun_robot
+ type alphastatic
alpha 100 256 400
color 0x000000 0x301860
count 1
originjitter 1 1 1
size 8 16
tex 0 8
- type alphastatic
effect damage_uzi
+ type blood
airfriction 1
alpha 256 256 64
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 32 32 32
velocitymultiplier 5
effect damage_uzi
+ type alphastatic
alpha 100 256 400
color 0x000000 0x420000
count 1
size 6 12
tex 0 8
- type alphastatic
effect damage_uzi_alien
+ type blood
airfriction 1
alpha 256 256 64
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 32 32 32
velocitymultiplier 5
effect damage_uzi_alien
+ type alphastatic
alpha 100 256 400
color 0x000000 0x204010
count 1
size 6 12
tex 0 8
- type alphastatic
effect damage_uzi_robot
+ type blood
airfriction 1
alpha 256 256 64
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 32 32 32
velocitymultiplier 5
effect damage_uzi_robot
+ type alphastatic
alpha 100 256 400
color 0x000000 0x301860
count 1
size 6 12
tex 0 8
- type alphastatic
effect damage_minelayer
+ type smoke
alpha 512 64 1024
color 0x8f0d00 0xff5a00
count 3
sizeincrease -15
size 4 8
tex 48 55
- type smoke
velocityjitter 22 22 50
effect damage_minelayer
+ type alphastatic
alpha 128 32 128
color 0x000000 0x111111
count 2
sizeincrease 5
size 4 8
tex 0 8
- type alphastatic
velocityjitter 11 11 50
effect damage_grenadelauncher
+ type smoke
alpha 512 64 1024
color 0x8f0d00 0xff5a00
count 3
sizeincrease -15
size 4 8
tex 48 55
- type smoke
velocityjitter 22 22 50
effect damage_grenadelauncher
+ type alphastatic
alpha 128 32 128
color 0x000000 0x111111
count 2
sizeincrease 5
size 4 8
tex 0 8
- type alphastatic
velocityjitter 11 11 50
effect damage_electro
+ type static
airfriction -0.500000
alpha 48 8 48
color 0x66ffff 0x2288ff
sizeincrease -14
size 6 10
tex 47 47
- type static
velocityjitter 8 8 16
effect damage_electro
+ type smoke
airfriction -0.350000
alpha 64 16 64
color 0x2244ff 0x002266
sizeincrease 10
size 4 8
tex 0 8
- type smoke
velocityjitter 0.4 0.4 0.6
effect damage_electro
+ type spark
airfriction 1
alpha 768 64 256
bounce 1.500000
liquidfriction 0.800000
size 1 1
tex 66 68
- type spark
velocityjitter 32 32 32
effect damage_crylink
+ type static
airfriction -0.500000
alpha 48 16 48
color 0xff44ff 0x9966ff
sizeincrease -8
size 0.500000 1
tex 38 38
- type static
velocityjitter 10 10 20
effect damage_crylink
+ type smoke
airfriction -0.350000
alpha 64 16 64
color 0x8844ff 0x662244
sizeincrease 6
size 5 10
tex 0 8
- type smoke
velocityjitter 0.4 0.4 0.6
effect damage_crylink
+ type spark
airfriction 0.200000
alpha 192 192 128
color 0x903090 0xFFD0FF
liquidfriction 0.800000
sizeincrease -5
size 0.500000 0.500000
- type spark
velocityjitter 12 12 12
effect damage_hlac
+ type smoke
airfriction -0.350000
alpha 128 16 128
color 0x880000 0xff4400
sizeincrease 10
size 2 4
tex 0 8
- type smoke
velocityjitter 0.4 0.4 0.6
effect damage_nex
+ type static
airfriction -0.500000
alpha 64 8 64
color 0xffffff 0x88ffff
sizeincrease -14
size 5 10
tex 47 47
- type static
velocityjitter 8 8 16
effect damage_nex
+ type smoke
airfriction -0.350000
alpha 64 16 64
color 0x6688ff 0x226688
sizeincrease 8
size 4 8
tex 0 8
- type smoke
velocityjitter 0.5 0.5 0.8
effect damage_nex
+ type spark
airfriction 2
alpha 255 255 112
bounce 1.600000
size 1 1
stretchfactor 0.700000
tex 41 41
- type spark
velocityjitter 100 100 300
velocitymultiplier 3
effect damage_minstanex
+ type static
airfriction -0.500000
alpha 64 8 64
color 0xffffff 0x88ffff
sizeincrease -14
size 5 10
tex 47 47
- type static
velocityjitter 8 8 16
effect damage_minstanex
+ type smoke
airfriction -0.350000
alpha 64 16 64
color 0x6688ff 0x226688
sizeincrease 8
size 4 8
tex 0 8
- type smoke
velocityjitter 0.5 0.5 0.8
effect damage_minstanex
+ type spark
airfriction 2
alpha 255 255 112
bounce 1.600000
size 1 1
stretchfactor 0.700000
tex 41 41
- type spark
velocityjitter 100 100 300
velocitymultiplier 3
effect damage_rifle
+ type blood
airfriction 1
alpha 256 256 64
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 32 32 32
velocitymultiplier 5
effect damage_rifle
+ type alphastatic
alpha 100 256 400
color 0x000000 0x420000
count 1
size 6 12
tex 0 8
- type alphastatic
effect damage_rifle_alien
+ type blood
airfriction 1
alpha 256 256 64
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 32 32 32
velocitymultiplier 5
effect damage_rifle_alien
+ type alphastatic
alpha 100 256 400
color 0x000000 0x204010
count 1
size 6 12
tex 0 8
- type alphastatic
effect damage_rifle_robot
+ type blood
airfriction 1
alpha 256 256 64
bounce -1
staincolor 0x808080 0x808080
staintex 16 24
tex 24 32
- type blood
velocityjitter 32 32 32
velocitymultiplier 5
effect damage_rifle_robot
+ type alphastatic
alpha 100 256 400
color 0x000000 0x301860
count 1
size 6 12
tex 0 8
- type alphastatic
effect damage_seeker
+ type smoke
alpha 512 32 1024
color 0x8f0c00 0xff2200
count 3
sizeincrease -10
size 4 8
tex 48 55
- type smoke
velocityjitter 22 22 50
effect damage_seeker
+ type alphastatic
alpha 128 32 128
color 0x000000 0x111111
count 2
sizeincrease 10
size 2 4
tex 0 8
- type alphastatic
velocityjitter 11 11 50
effect damage_hagar
+ type smoke
alpha 512 32 1024
color 0x8f0c00 0xff3a00
count 3
sizeincrease -10
size 4 8
tex 48 55
- type smoke
velocityjitter 22 22 50
effect damage_hagar
+ type alphastatic
alpha 128 32 128
color 0x000000 0x111111
count 2
sizeincrease 10
size 2 4
tex 0 8
- type alphastatic
velocityjitter 11 11 50
effect damage_fireball
+ type smoke
alpha 256 16 512
color 0x8f0d00 0xff5a00
count 4
sizeincrease -10
size 5 10
tex 48 55
- type smoke
velocityjitter 22 22 50
effect damage_fireball
+ type alphastatic
alpha 128 32 128
color 0x000000 0x111111
count 4
sizeincrease 10
size 4 8
tex 0 8
- type alphastatic
velocityjitter 11 11 50
effect damage_rocketlauncher
+ type smoke
alpha 512 64 1024
color 0x8f0c00 0xff2a00
count 3
sizeincrease -10
size 5 10
tex 48 55
- type smoke
velocityjitter 22 22 30
effect damage_rocketlauncher
+ type alphastatic
alpha 128 32 128
color 0x000000 0x111111
count 3
sizeincrease 10
size 4 8
tex 0 8
- type alphastatic
velocityjitter 11 11 50
effect fireflies
+ type static
airfriction 5
alpha 256 256 70
bounce -1
size 2 3
tex 38 38
time 1 2
- type static
velocityjitter 64 64 64
velocityoffset 2 2 2
effect healray_muzzleflash
+ type smoke
alpha 256 256 512
color 0x283880 0x283880
countabsolute 1
sizeincrease -10
size 20 20
tex 65 65
- type smoke
velocityjitter 6 6 6
velocitymultiplier 0.010000
effect healray_muzzleflash
+ type spark
airfriction 5
alpha 50 150 1924
color 0xD9FDFF 0x00f0ff
size 1 15
stretchfactor 3.900000
tex 71 73
- type spark
velocityjitter 150 150 150
velocitymultiplier 0.400000
effect healray_muzzleflash
+ type spark
alpha 110 228 4024
color 0xD9FDFF 0x00f0ff
count 4
size 1 1
stretchfactor 0.200000
tex 70 70
- type spark
velocityjitter 650 650 650
velocitymultiplier 1.100000
effect healray_impact
+ type decal
alpha 256 256 0
color 0xd800ff 0xd800ff
countabsolute 1
originjitter 17 17 17
size 32 32
tex 59 59
- type decal
effect healray_impact
+ type smoke
alpha 40 40 350
color 0x00ff00 0x84c52f
countabsolute 1
sizeincrease 1400
size 32 32
tex 33 33
- type smoke
velocitymultiplier 44
effect healray_impact
+ type spark
airfriction 6
alpha 156 300 1024
color 0x00ff00 0x84c52f
originjitter 1 1 1
size 1 2
tex 70 70
- type spark
velocityjitter 1112 1112 1112
effect healray_impact
+ type smoke
airfriction 3
alpha 200 456 512
color 0x00ff00 0x84c52f
rotate -180 180 -90 90
size 2 3
tex 40 40
- type smoke
velocityjitter 120 120 420
effect bigplasma_muzzleflash
+ type smoke
alpha 256 256 812
color 0x283880 0x283880
countabsolute 1
sizeincrease -10
size 50 50
tex 65 65
- type smoke
velocityjitter 6 6 6
velocitymultiplier 0.010000
effect bigplasma_muzzleflash
+ type smoke
alpha 56 56 1112
color 0x00f0ff 0x00f0ff
countabsolute 1
sizeincrease 300
size 20 20
tex 74 74
- type smoke
effect bigplasma_muzzleflash
+ type spark
airfriction 5
alpha 50 150 1924
color 0xD9FDFF 0x00f0ff
size 5 10
stretchfactor 1.900000
tex 51 55
- type spark
velocityjitter 350 350 350
velocitymultiplier 0.400000
effect bigplasma_muzzleflash
+ type spark
alpha 110 228 4024
color 0xD9FDFF 0x00f0ff
count 4
size 20 20
stretchfactor 0.200000
tex 70 70
- type spark
velocityjitter 650 650 650
velocitymultiplier 1.100000
effect bigplasma_impact
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 3.1 4.4 10
originjitter 17 17 17
size 32 32
tex 59 59
- type decal
effect bigplasma_impact
+ type smoke
alpha 40 40 350
color 0x80C0FF 0x80C0FF
countabsolute 1
sizeincrease 1400
size 32 32
tex 33 33
- type smoke
velocitymultiplier 44
effect bigplasma_impact
+ type spark
airfriction 6
alpha 156 300 1024
color 0x629dff 0x0018ff
originjitter 1 1 1
size 1 2
tex 70 70
- type spark
velocityjitter 1512 1512 1512
effect bigplasma_impact
+ type smoke
airfriction 30
alpha 200 456 1512
color 0x629dff 0x0018ff
sizeincrease 555
size 20 24
tex 48 55
- type smoke
velocityjitter 320 320 320
effect bigplasma_impact
+ type smoke
airfriction 0.040000
alpha 128 328 390
blend alpha
sizeincrease 30
size 60 30
tex 0 7
- type smoke
velocityjitter 100 100 200
velocityoffset 0 0 180
effect bigplasma_impact
+ type alphastatic
airfriction 0.040000
alpha 128 328 310
color 0x222222 0x000000
sizeincrease -10
size 60 70
tex 0 7
- type alphastatic
velocityjitter 10 10 10
effect redflag_touch
+ type spark
airfriction 3
alpha 0 256 556
bounce 1.500000
originjitter 1 1 1
size 1 3
tex 40 40
- type spark
velocityjitter 300 300 300
velocitymultiplier 0.500000
effect blueflag_touch
+ type spark
airfriction 3
alpha 0 256 556
bounce 1.500000
originjitter 1 1 1
size 1 3
tex 40 40
- type spark
velocityjitter 300 300 300
velocitymultiplier 0.500000
effect yellowflag_touch
+ type spark
airfriction 3
alpha 0 256 556
bounce 1.500000
originjitter 1 1 1
size 1 3
tex 40 40
- type spark
velocityjitter 300 300 300
velocitymultiplier 0.500000
effect pinkflag_touch
+ type spark
airfriction 3
alpha 0 256 556
bounce 1.500000
originjitter 1 1 1
size 1 3
tex 40 40
- type spark
velocityjitter 300 300 300
velocitymultiplier 0.500000
effect neutralflag_touch
+ type spark
airfriction 3
alpha 0 256 556
bounce 1.500000
originjitter 1 1 1
size 1 3
tex 40 40
- type spark
velocityjitter 300 300 300
velocitymultiplier 0.500000
effect red_pass
+ type static
airfriction 5
alpha 64 128 64
color 0xFF0000 0x970000
size 2 2
tex 32 32
trailspacing 64
- type static
effect red_pass
+ type static
airfriction 9
alpha 32 64 32
color 0xFF0000 0x970000
size 1 1
tex 0 8
trailspacing 12
- type static
velocityjitter 64 64 64
effect red_pass
+ type static
alpha 256 256 1280
color 0xFF0000 0x970000
size 4 4
trailspacing 12
- type static
effect blue_pass
+ type static
airfriction 5
alpha 64 128 64
color 0x0000FF 0x000097
size 2 2
tex 32 32
trailspacing 64
- type static
effect blue_pass
+ type static
airfriction 9
alpha 32 64 32
color 0x0000FF 0x000097
size 1 1
tex 0 8
trailspacing 12
- type static
velocityjitter 64 64 64
effect blue_pass
+ type static
alpha 256 256 1280
color 0x0000FF 0x000097
size 4 4
trailspacing 12
- type static
effect yellow_pass
+ type static
airfriction 5
alpha 64 128 64
color 0xFFFF0F 0xFFFF0F
size 2 2
tex 32 32
trailspacing 64
- type static
effect yellow_pass
+ type static
airfriction 9
alpha 32 64 32
color 0xFFFF0F 0xFFFF0F
size 1 1
tex 0 8
trailspacing 12
- type static
velocityjitter 64 64 64
effect yellow_pass
+ type static
alpha 256 256 1280
color 0xFFFF0F 0xFFFF0F
size 4 4
trailspacing 12
- type static
effect pink_pass
+ type static
airfriction 5
alpha 64 128 64
color 0xFFFFFF 0xFFFFFF
size 2 2
tex 32 32
trailspacing 64
- type static
effect pink_pass
+ type static
airfriction 9
alpha 32 64 32
color 0xFFFFFF 0xFFFFFF
size 1 1
tex 0 8
trailspacing 12
- type static
velocityjitter 64 64 64
effect pink_pass
+ type static
alpha 256 256 1280
color 0xFFFFFF 0xFFFFFF
size 4 4
trailspacing 12
- type static
effect neutral_pass
+ type static
airfriction 5
alpha 64 128 64
color 0xFFFFFF 0xFFFFFF
size 2 2
tex 32 32
trailspacing 64
- type static
effect neutral_pass
+ type static
airfriction 9
alpha 32 64 32
color 0xFFFFFF 0xFFFFFF
size 1 1
tex 0 8
trailspacing 12
- type static
velocityjitter 64 64 64
effect neutral_pass
+ type static
alpha 256 256 1280
color 0xFFFFFF 0xFFFFFF
size 4 4
trailspacing 12
- type static
effect red_cap
+ type spark
airfriction 2
alpha 0 256 100
bounce 1.500000
size 1 1
stretchfactor 0.600000
tex 64 64
- type spark
velocityjitter 1000 1000 1500
velocitymultiplier 0.500000
effect red_cap
+ type smoke
alpha 190 190 180
color 0xFF0000 0x970000
countabsolute 1
sizeincrease -80
size 150 150
tex 65 65
- type smoke
effect blue_cap
+ type spark
airfriction 2
alpha 0 256 100
bounce 1.500000
size 1 1
stretchfactor 0.600000
tex 64 64
- type spark
velocityjitter 1000 1000 1500
velocitymultiplier 0.500000
effect blue_cap
+ type smoke
alpha 190 190 180
color 0x0000FF 0x000097
countabsolute 1
sizeincrease -80
size 150 150
tex 65 65
- type smoke
effect yellow_cap
+ type spark
airfriction 2
alpha 0 256 100
bounce 1.500000
size 1 1
stretchfactor 0.600000
tex 64 64
- type spark
velocityjitter 1000 1000 1500
velocitymultiplier 0.500000
effect yellow_cap
+ type smoke
alpha 190 190 180
color 0xFFFF0F 0xFFFF0F
countabsolute 1
sizeincrease -80
size 150 150
tex 65 65
- type smoke
effect pink_cap
+ type spark
airfriction 2
alpha 0 256 100
bounce 1.500000
size 1 1
stretchfactor 0.600000
tex 64 64
- type spark
velocityjitter 1000 1000 1500
velocitymultiplier 0.500000
effect pink_cap
+ type smoke
alpha 190 190 180
color 0xFF0FFF 0xFF0FFF
countabsolute 1
sizeincrease -80
size 150 150
tex 65 65
- type smoke
effect spawn_point_red
+ type static
airfriction 0.200000
alpha 64 128 128
color 0xFF0F0F 0xFF0F0F
liquidfriction 0.800000
originjitter 16 16 64
size 1 2
- type static
velocityjitter 32 32 0
effect spawn_point_blue
+ type static
airfriction 0.200000
alpha 64 128 128
color 0x0F0FFF 0x0F0FFF
liquidfriction 0.800000
originjitter 16 16 64
size 1 2
- type static
velocityjitter 32 32 0
effect spawn_point_yellow
+ type static
airfriction 0.200000
alpha 64 128 128
color 0xFFFF0F 0xFFFF0F
liquidfriction 0.800000
originjitter 16 16 64
size 1 2
- type static
velocityjitter 32 32 0
effect spawn_point_pink
+ type static
airfriction 0.200000
alpha 64 128 128
color 0xFF0FFF 0xFF0FFF
liquidfriction 0.800000
originjitter 16 16 64
size 1 2
- type static
velocityjitter 32 32 0
effect spawn_point_neutral
+ type static
airfriction 0.200000
alpha 64 128 128
color 0xFFFFFF 0xFFFFFF
liquidfriction 0.800000
originjitter 16 16 64
size 1 2
- type static
velocityjitter 32 32 0
effect spawn_event_red
+ type spark
airfriction 2
alpha 0 256 256
bounce 1
size 1 1
stretchfactor 0.600000
tex 64 64
- type spark
velocityjitter 500 500 500
velocitymultiplier 0.100000
effect spawn_event_red
+ type smoke
alpha 190 190 180
color 0xFF0F0F 0xFF0F0F
countabsolute 1
sizeincrease -80
size 100 100
tex 65 65
- type smoke
effect spawn_event_blue
+ type spark
airfriction 2
alpha 0 256 256
bounce 1
size 1 1
stretchfactor 0.600000
tex 64 64
- type spark
velocityjitter 500 500 500
velocitymultiplier 0.100000
effect spawn_event_blue
+ type smoke
alpha 190 190 180
color 0x0F0FFF 0x0F0FFF
countabsolute 1
sizeincrease -80
size 100 100
tex 65 65
- type smoke
effect spawn_event_yellow
+ type spark
airfriction 2
alpha 0 256 256
bounce 1
size 1 1
stretchfactor 0.600000
tex 64 64
- type spark
velocityjitter 500 500 500
velocitymultiplier 0.100000
effect spawn_event_yellow
+ type smoke
alpha 190 190 180
color 0xFFFF0F 0xFFFF0F
countabsolute 1
sizeincrease -80
size 100 100
tex 65 65
- type smoke
effect spawn_event_pink
+ type spark
airfriction 2
alpha 0 256 256
bounce 1
size 1 1
stretchfactor 0.600000
tex 64 64
- type spark
velocityjitter 500 500 500
velocitymultiplier 0.100000
effect spawn_event_pink
+ type smoke
alpha 190 190 180
color 0xFF0FFF 0xFF0FFF
countabsolute 1
sizeincrease -80
size 100 100
tex 65 65
- type smoke
effect spawn_event_neutral
+ type spark
airfriction 2
alpha 0 256 256
bounce 1
size 1 1
stretchfactor 0.600000
tex 64 64
- type spark
velocityjitter 500 500 500
velocitymultiplier 0.100000
effect spawn_event_neutral
+ type smoke
alpha 190 190 180
color 0xFFFFFF 0xFFFFFF
countabsolute 1
sizeincrease -80
size 100 100
tex 65 65
- type smoke
effect nade_blue
+ type smoke
alpha 100 100 250
color 0x006cff 0x0600ff
sizeincrease -1
size 3 3
tex 65 65
trailspacing 1
- type smoke
effect nade_blue
+ type smoke
alpha 30 30 150
color 0x0600ff 0x9794ff
notunderwater
size 15 25
tex 65 65
trailspacing 8
- type smoke
effect nade_blue
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0x006cff 0x0600ff
size 1 1
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
effect nade_red
+ type smoke
alpha 100 100 250
color 0xff0000 0xff3c00
sizeincrease -1
size 3 3
tex 65 65
trailspacing 1
- type smoke
effect nade_red
+ type smoke
alpha 30 30 150
color 0xff0000 0xffa2a2
notunderwater
size 15 25
tex 65 65
trailspacing 8
- type smoke
effect nade_red
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0xff0000 0xff3c00
size 1 1
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
effect nade_yellow
+ type smoke
alpha 100 100 250
color 0xFFFF0F 0xFFFF0F
sizeincrease -1
size 3 3
tex 65 65
trailspacing 1
- type smoke
effect nade_yellow
+ type smoke
alpha 30 30 150
color 0xFFFF0F 0xFFFF0F
notunderwater
size 15 25
tex 65 65
trailspacing 8
- type smoke
effect nade_yellow
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0xFFFF0F 0xFFFF0F
size 1 1
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
effect nade_pink
+ type smoke
alpha 100 100 250
color 0xFF0FFF 0xFF0FFF
sizeincrease -1
size 3 3
tex 65 65
trailspacing 1
- type smoke
effect nade_pink
+ type smoke
alpha 30 30 150
color 0xFF0FFF 0xFF0FFF
notunderwater
size 15 25
tex 65 65
trailspacing 8
- type smoke
effect nade_pink
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0xFF0FFF 0xFF0FFF
size 1 1
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
effect nade_neutral
+ type smoke
alpha 100 100 250
color 0xFFFFFF 0xFFFFFF
sizeincrease -1
size 3 3
tex 65 65
trailspacing 1
- type smoke
effect nade_neutral
+ type smoke
alpha 30 30 150
color 0xFFFFFF 0xFFFFFF
notunderwater
size 15 25
tex 65 65
trailspacing 8
- type smoke
effect nade_neutral
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0xFFFFFF 0xFFFFFF
size 1 1
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
effect nade_red_burn
+ type smoke
alpha 100 100 250
color 0xff0000 0xff3c00
sizeincrease -1
size 5 5
tex 65 65
trailspacing 1
- type smoke
effect nade_red_burn
+ type smoke
alpha 200 200 1000
color 0xff0000 0xffa2a2
notunderwater
size 45 25
tex 65 65
trailspacing 64
- type smoke
effect nade_red_burn
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0xff0000 0xff3c00
size 1 1
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
effect nade_red_burn
+ type smoke
alpha 300 900 1500
color 0xff0000 0xff3c00
originjitter 2 2 2
size 15 25
tex 71 73
trailspacing 16
- type smoke
velocityjitter 10 10 10
effect nade_blue_burn
+ type smoke
alpha 100 100 250
color 0x006cff 0x0600ff
sizeincrease -1
size 5 5
tex 65 65
trailspacing 1
- type smoke
effect nade_blue_burn
+ type smoke
alpha 200 200 1000
color 0x0600ff 0x9794ff
notunderwater
size 45 25
tex 65 65
trailspacing 64
- type smoke
effect nade_blue_burn
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0x006cff 0x0600ff
size 1 1
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
effect nade_blue_burn
+ type smoke
alpha 300 900 1500
color 0x006cff 0x0600ff
originjitter 2 2 2
size 15 25
tex 71 73
trailspacing 16
- type smoke
velocityjitter 10 10 10
effect nade_yellow_burn
+ type smoke
alpha 100 100 250
color 0xFFFF0F 0xFFFF0F
sizeincrease -1
size 5 5
tex 65 65
trailspacing 1
- type smoke
effect nade_yellow_burn
+ type smoke
alpha 200 200 1000
color 0xFFFF0F 0xFFFF0F
notunderwater
size 45 25
tex 65 65
trailspacing 64
- type smoke
effect nade_yellow_burn
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0xFFFF0F 0xFFFF0F
size 1 1
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
effect nade_yellow_burn
+ type smoke
alpha 300 900 1500
color 0xFFFF0F 0xFFFF0F
originjitter 2 2 2
size 15 25
tex 71 73
trailspacing 16
- type smoke
velocityjitter 10 10 10
effect nade_pink_burn
+ type smoke
alpha 100 100 250
color 0xFF0FFF 0xFF0FFF
sizeincrease -1
size 5 5
tex 65 65
trailspacing 1
- type smoke
effect nade_pink_burn
+ type smoke
alpha 200 200 1000
color 0xFF0FFF 0xFF0FFF
notunderwater
size 45 25
tex 65 65
trailspacing 64
- type smoke
effect nade_pink_burn
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0xFF0FFF 0xFF0FFF
size 1 1
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
effect nade_pink_burn
+ type smoke
alpha 300 900 1500
color 0xFF0FFF 0xFF0FFF
originjitter 2 2 2
size 15 25
tex 71 73
trailspacing 16
- type smoke
velocityjitter 10 10 10
effect nade_neutral_burn
+ type smoke
alpha 100 100 250
color 0xFFFFFF 0xFFFFFF
sizeincrease -1
size 5 5
tex 65 65
trailspacing 1
- type smoke
effect nade_neutral_burn
+ type smoke
alpha 200 200 1000
color 0xFFFFFF 0xFFFFFF
notunderwater
size 45 25
tex 65 65
trailspacing 64
- type smoke
effect nade_neutral_burn
+ type bubble
alpha 256 256 256
bounce 1.500000
color 0xFFFFFF 0xFFFFFF
size 1 1
tex 62 62
trailspacing 16
- type bubble
underwater
velocityjitter 16 16 16
effect nade_neutral_burn
+ type smoke
alpha 300 900 1500
color 0xFFFFFF 0xFFFFFF
originjitter 2 2 2
size 15 25
tex 71 73
trailspacing 16
- type smoke
velocityjitter 10 10 10
effect nade_blue_explode
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 20 20 100
originjitter 26 26 26
size 88 88
tex 8 16
- type decal
effect nade_blue_explode
+ type smoke
alpha 80 80 650
color 0x80C0FF 0x80C0FF
countabsolute 1
sizeincrease 1800
size 32 32
tex 33 33
- type smoke
velocitymultiplier 44
effect nade_blue_explode
+ type smoke
airfriction 30
alpha 400 656 2000
color 0x629dff 0x0018ff
sizeincrease 555
size 20 24
tex 48 55
- type smoke
velocityjitter 320 320 320
effect nade_blue_explode
+ type spark
airfriction -9
alpha 1500 3000 13000
color 0x629dff 0x0018ff
size 60 90
stretchfactor 80
tex 48 55
- type spark
velocityjitter 30 30 30
effect nade_blue_explode
+ type smoke
airfriction 0.040000
alpha 128 328 390
blend alpha
sizeincrease 50
size 60 30
tex 0 7
- type smoke
velocityjitter 200 200 200
velocityoffset 0 0 180
effect nade_blue_explode
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 6
tex 62 62
- type bubble
underwater
velocityjitter 196 196 196
effect nade_blue_explode
+ type spark
airfriction 1
alpha 644 956 484
bounce 1.600000
originjitter 16 16 16
size 1 2
tex 40 40
- type spark
velocityjitter 424 424 624
velocityoffset 0 0 80
effect nade_blue_explode
+ type spark
airfriction 0.700000
alpha 644 956 684
color 0x006cff 0x0600ff
originjitter 16 16 16
size 1 2
tex 40 40
- type spark
velocityjitter 424 424 624
velocityoffset 0 0 80
effect nade_blue_explode
+ type smoke
alpha 644 956 2500
color 0x006cff 0x0600ff
count 8
rotate -180 180 -100 100
size 20 40
tex 71 73
- type smoke
velocityjitter 324 324 324
effect nade_red_explode
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 100 20 20
originjitter 26 26 26
size 88 88
tex 8 16
- type decal
effect nade_red_explode
+ type smoke
alpha 80 80 650
color 0xff0000 0xffa2a2
countabsolute 1
sizeincrease 1800
size 32 32
tex 33 33
- type smoke
velocitymultiplier 44
effect nade_red_explode
+ type smoke
airfriction 30
alpha 400 656 2000
color 0xff0000 0xff4200
sizeincrease 555
size 20 24
tex 48 55
- type smoke
velocityjitter 320 320 320
effect nade_red_explode
+ type spark
airfriction -9
alpha 1500 3000 13000
color 0xff0000 0xff4200
size 60 90
stretchfactor 80
tex 48 55
- type spark
velocityjitter 30 30 30
effect nade_red_explode
+ type smoke
airfriction 0.040000
alpha 128 328 390
blend alpha
sizeincrease 50
size 60 30
tex 0 7
- type smoke
velocityjitter 200 200 200
velocityoffset 0 0 180
effect nade_red_explode
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 6
tex 62 62
- type bubble
underwater
velocityjitter 196 196 196
effect nade_red_explode
+ type spark
airfriction 1
alpha 644 956 484
bounce 1.600000
originjitter 16 16 16
size 1 2
tex 40 40
- type spark
velocityjitter 424 424 624
velocityoffset 0 0 80
effect nade_red_explode
+ type spark
airfriction 0.700000
alpha 644 956 684
color 0xff0000 0xffa2a2
originjitter 16 16 16
size 1 2
tex 40 40
- type spark
velocityjitter 424 424 624
velocityoffset 0 0 80
effect nade_red_explode
+ type smoke
alpha 644 956 2500
color 0xff0000 0xffa2a2
count 8
rotate -180 180 -100 100
size 20 40
tex 71 73
- type smoke
velocityjitter 324 324 324
effect nade_yellow_explode
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 100 20 20
originjitter 26 26 26
size 88 88
tex 8 16
- type decal
effect nade_yellow_explode
+ type smoke
alpha 80 80 650
color 0xff0000 0xffa2a2
countabsolute 1
sizeincrease 1800
size 32 32
tex 33 33
- type smoke
velocitymultiplier 44
effect nade_yellow_explode
+ type smoke
airfriction 30
alpha 400 656 2000
color 0xFFFF0F 0xFFFF0F
sizeincrease 555
size 20 24
tex 48 55
- type smoke
velocityjitter 320 320 320
effect nade_yellow_explode
+ type spark
airfriction -9
alpha 1500 3000 13000
color 0xFFFF0F 0xFFFF0F
size 60 90
stretchfactor 80
tex 48 55
- type spark
velocityjitter 30 30 30
effect nade_yellow_explode
+ type smoke
airfriction 0.040000
alpha 128 328 390
blend alpha
sizeincrease 50
size 60 30
tex 0 7
- type smoke
velocityjitter 200 200 200
velocityoffset 0 0 180
effect nade_yellow_explode
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 6
tex 62 62
- type bubble
underwater
velocityjitter 196 196 196
effect nade_yellow_explode
+ type spark
airfriction 1
alpha 644 956 484
bounce 1.600000
originjitter 16 16 16
size 1 2
tex 40 40
- type spark
velocityjitter 424 424 624
velocityoffset 0 0 80
effect nade_yellow_explode
+ type spark
airfriction 0.700000
alpha 644 956 684
color 0xff0000 0xffa2a2
originjitter 16 16 16
size 1 2
tex 40 40
- type spark
velocityjitter 424 424 624
velocityoffset 0 0 80
effect nade_yellow_explode
+ type smoke
alpha 644 956 2500
color 0xff0000 0xffa2a2
count 8
rotate -180 180 -100 100
size 20 40
tex 71 73
- type smoke
velocityjitter 324 324 324
effect nade_pink_explode
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 100 20 20
originjitter 26 26 26
size 88 88
tex 8 16
- type decal
effect nade_pink_explode
+ type smoke
alpha 80 80 650
color 0xff0000 0xffa2a2
countabsolute 1
sizeincrease 1800
size 32 32
tex 33 33
- type smoke
velocitymultiplier 44
effect nade_pink_explode
+ type smoke
airfriction 30
alpha 400 656 2000
color 0xFF0FFF 0xFF0FFF
sizeincrease 555
size 20 24
tex 48 55
- type smoke
velocityjitter 320 320 320
effect nade_pink_explode
+ type spark
airfriction -9
alpha 1500 3000 13000
color 0xFF0FFF 0xFF0FFF
size 60 90
stretchfactor 80
tex 48 55
- type spark
velocityjitter 30 30 30
effect nade_pink_explode
+ type smoke
airfriction 0.040000
alpha 128 328 390
blend alpha
sizeincrease 50
size 60 30
tex 0 7
- type smoke
velocityjitter 200 200 200
velocityoffset 0 0 180
effect nade_pink_explode
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 6
tex 62 62
- type bubble
underwater
velocityjitter 196 196 196
effect nade_pink_explode
+ type spark
airfriction 1
alpha 644 956 484
bounce 1.600000
originjitter 16 16 16
size 1 2
tex 40 40
- type spark
velocityjitter 424 424 624
velocityoffset 0 0 80
effect nade_pink_explode
+ type spark
airfriction 0.700000
alpha 644 956 684
color 0xff0000 0xffa2a2
originjitter 16 16 16
size 1 2
tex 40 40
- type spark
velocityjitter 424 424 624
velocityoffset 0 0 80
effect nade_pink_explode
+ type smoke
alpha 644 956 2500
color 0xff0000 0xffa2a2
count 8
rotate -180 180 -100 100
size 20 40
tex 71 73
- type smoke
velocityjitter 324 324 324
effect nade_neutral_explode
+ type decal
alpha 256 256 0
countabsolute 1
lightcolor 100 20 20
originjitter 26 26 26
size 88 88
tex 8 16
- type decal
effect nade_neutral_explode
+ type smoke
alpha 80 80 650
color 0xff0000 0xffa2a2
countabsolute 1
sizeincrease 1800
size 32 32
tex 33 33
- type smoke
velocitymultiplier 44
effect nade_neutral_explode
+ type smoke
airfriction 30
alpha 400 656 2000
color 0xFFFFFF 0xFFFFFF
sizeincrease 555
size 20 24
tex 48 55
- type smoke
velocityjitter 320 320 320
effect nade_neutral_explode
+ type spark
airfriction -9
alpha 1500 3000 13000
color 0xFFFFFF 0xFFFFFF
size 60 90
stretchfactor 80
tex 48 55
- type spark
velocityjitter 30 30 30
effect nade_neutral_explode
+ type smoke
airfriction 0.040000
alpha 128 328 390
blend alpha
sizeincrease 50
size 60 30
tex 0 7
- type smoke
velocityjitter 200 200 200
velocityoffset 0 0 180
effect nade_neutral_explode
+ type bubble
alpha 128 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 16 16 16
size 3 6
tex 62 62
- type bubble
underwater
velocityjitter 196 196 196
effect nade_neutral_explode
+ type spark
airfriction 1
alpha 644 956 484
bounce 1.600000
originjitter 16 16 16
size 1 2
tex 40 40
- type spark
velocityjitter 424 424 624
velocityoffset 0 0 80
effect nade_neutral_explode
+ type spark
airfriction 0.700000
alpha 644 956 684
color 0xff0000 0xffa2a2
originjitter 16 16 16
size 1 2
tex 40 40
- type spark
velocityjitter 424 424 624
velocityoffset 0 0 80
effect nade_neutral_explode
+ type smoke
alpha 644 956 2500
color 0xff0000 0xffa2a2
count 8
rotate -180 180 -100 100
size 20 40
tex 71 73
- type smoke
velocityjitter 324 324 324
effect shockwave_attack
+ type spark
airfriction 1
alpha 4096 4096 20000
color 0xb44215 0xff0000
size 5 7
stretchfactor 2.300000
tex 43 43
- type spark
velocityjitter 10 10 10
velocitymultiplier 10
effect shockwave_attack
+ type spark
airfriction 1
alpha 4096 4096 20000
color 0xff4200 0xff0000
size 7 9
stretchfactor 2
tex 8 15
- type spark
velocityjitter 10 10 10
velocitymultiplier 10
effect arc_lightning
+ type decal
alpha 32 32 0
countabsolute 1
lightcolor 3.1 4.4 10
originjitter 2 2 2
size 16 16
tex 16 32
- type decal
effect arc_lightning
+ type static
airfriction 110
alpha 256 256 512
color 0xDDFDFF 0xFDFDFF
size 0 5
stretchfactor 1
tex 71 74
- type static
velocityjitter 250 250 250
velocitymultiplier 100
effect arc_lightning
+ type static
airfriction 5
alpha 256 256 512
color 0xDDFDFF 0xFDFDFF
size 0 5
stretchfactor 1
tex 71 74
- type static
underwater
velocityjitter 250 250 250
velocitymultiplier 20
effect arc_beam
+ type spark
airfriction -10
alpha 256 256 16384
color 0xfafad2 0xffffff
tex 71 74
time 0.050000 0.050000
trailspacing 10
- type spark
velocityjitter 100 100 100
velocitymultiplier 200
effect arc_beam
+ type spark
alpha 256 256 16384
color 0xfafad2 0xffffff
liquidfriction -10
tex 71 74
time 0.001000 0.001000
trailspacing 10
- type spark
underwater
velocityjitter 100 100 100
velocitymultiplier 200
effect arc_beam_heal
+ type smoke
airfriction -20
alpha 2048 2048 256
color 0x20FF20 0x40FF40
size 0.100000 0.100000
tex 74 74
trailspacing 1500
- type smoke
velocityjitter 3 3 3
velocitymultiplier 200
effect arc_beam_healimpact
+ type smoke
alpha 40 40 350
color 0x00ff00 0x84c52f
countabsolute 1
sizeincrease -1000
size 32 32
tex 33 33
- type smoke
velocitymultiplier 44
effect arc_beam_healimpact
+ type smoke
airfriction 3
alpha 200 456 512
color 0x00ff00 0x84c52f
rotate -180 180 -90 90
size 0.500000 1
tex 40 40
- type smoke
velocityjitter 120 120 420
effect arc_smoke
+ type smoke
airfriction 1
alpha 32 64 48
color 0x4c453f 0x2a241f
sizeincrease 10
size 5 10
tex 0 8
- type smoke
velocityjitter 0 0 16
effect arc_smoke
+ type bubble
alpha 170 256 64
bounce 1.500000
color 0x404040 0x808080
originjitter 6 6 6
size 0.100000 1
tex 62 62
- type bubble
underwater
velocityjitter 16 16 16
effect arc_overheat
+ type spark
airfriction 5
alpha 128 128 292
color 0xffffff 0x9271fb
sizeincrease -24
size 6 12
tex 43 43
- type spark
velocityjitter 256 256 256
effect arc_overheat_fire
+ type spark
alpha 0 256 640
bounce 1.500000
color 0x4444ff 0xeeeeff
liquidfriction 5
originjitter 6 6 6
size 0.400000 1
- type spark
velocityjitter 92 92 92
velocitymultiplier 80
velocityoffset 0 0 80
effect relic_resistance
+ type static
airfriction 0.200000
alpha 128 256 256
color 0x00ff80 0x00ff80
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_regeneration
+ type static
airfriction 0.200000
alpha 128 256 256
color 0x00ffff 0x00ffff
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_vampire
+ type static
airfriction 0.200000
alpha 128 256 256
color 0xff00ff 0xff00ff
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_ammo
+ type static
airfriction 0.200000
alpha 128 256 256
color 0x80ff00 0x80ff00
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_damage
+ type static
airfriction 0.200000
alpha 128 256 256
color 0xff0000 0xff0000
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_ssplashdamage
+ type static
airfriction 0.200000
alpha 128 256 256
color 0xff8000 0xff8000
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_firingspeed
+ type static
airfriction 0.200000
alpha 128 256 256
color 0xffff00 0xffff00
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_disability
+ type static
airfriction 0.200000
alpha 128 256 256
color 0x0000ff 0x0000ff
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_disability_curse
+ type static
airfriction 0.200000
alpha 128 256 256
color 0x000080 0x000080
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_teamboost
+ type static
airfriction 0.200000
alpha 128 256 256
color 0xffffff 0xffffff
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_teamboost_boost
+ type static
airfriction 0.200000
alpha 128 256 256
color 0x808080 0x808080
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_speed
+ type static
airfriction 0.200000
alpha 128 256 256
color 0x80ffff 0x80ffff
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_jump
+ type static
airfriction 0.200000
alpha 128 256 256
color 0xffff80 0xffff80
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_flight
+ type static
airfriction 0.200000
alpha 128 256 256
color 0x8080ff 0x8080ff
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_radioactive
+ type static
airfriction 0.200000
alpha 128 256 256
color 0x00ff00 0x00ff00
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_resurrection
+ type static
airfriction 0.200000
alpha 128 256 256
color 0xff0080 0xff0080
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect relic_vengeance
+ type static
airfriction 0.200000
alpha 128 256 256
color 0xff8080 0xff8080
liquidfriction 0.800000
originjitter 8 8 32
size 1.500000 1.500000
- type static
velocityjitter 64 64 32
effect rocketminsta_laser_red
+ type static
alpha 256 256 968
color 0xFF0F0F 0xFF0F0F
lightcolor 1.5 3 6
size 3 3
tex 38 38
trailspacing 2
- type static
velocitymultiplier -0.100000
effect rocketminsta_laser_red
+ type snow
airfriction 12
alpha 444 512 1866
bounce 1
size 2 4
tex 42 42
trailspacing 12
- type snow
velocityjitter 50 50 50
velocityoffset 0 0 15
effect rocketminsta_laser_blue
+ type static
alpha 256 256 968
color 0x0F0FFF 0x0F0FFF
lightcolor 1.5 3 6
size 3 3
tex 38 38
trailspacing 2
- type static
velocitymultiplier -0.100000
effect rocketminsta_laser_blue
+ type snow
airfriction 12
alpha 444 512 1866
bounce 1
size 2 4
tex 42 42
trailspacing 12
- type snow
velocityjitter 50 50 50
velocityoffset 0 0 15
effect rocketminsta_laser_yellow
+ type static
alpha 256 256 968
color 0xFFFF0F 0xFFFF0F
lightcolor 1.5 3 6
size 3 3
tex 38 38
trailspacing 2
- type static
velocitymultiplier -0.100000
effect rocketminsta_laser_yellow
+ type snow
airfriction 12
alpha 444 512 1866
bounce 1
size 2 4
tex 42 42
trailspacing 12
- type snow
velocityjitter 50 50 50
velocityoffset 0 0 15
effect rocketminsta_laser_pink
+ type static
alpha 256 256 968
color 0xFF0FFF 0xFF0FFF
lightcolor 1.5 3 6
size 3 3
tex 38 38
trailspacing 2
- type static
velocitymultiplier -0.100000
effect rocketminsta_laser_pink
+ type snow
airfriction 12
alpha 444 512 1866
bounce 1
size 2 4
tex 42 42
trailspacing 12
- type snow
velocityjitter 50 50 50
velocityoffset 0 0 15
effect rocketminsta_laser_neutral
+ type static
alpha 256 256 968
color 0xFFFFFF 0xFFFFFF
lightcolor 1.5 3 6
size 3 3
tex 38 38
trailspacing 2
- type static
velocitymultiplier -0.100000
effect rocketminsta_laser_neutral
+ type snow
airfriction 12
alpha 444 512 1866
bounce 1
size 2 4
tex 42 42
trailspacing 12
- type snow
velocityjitter 50 50 50
velocityoffset 0 0 15
const int MF_TRACER3 = 128; // purple trail
.int csqcmodel_effects;
.int csqcmodel_modelflags;
+.int csqcmodel_traileffect;
void CSQCModel_Effects_PreUpdate(void)
{SELFPARAM();
self.effects = self.csqcmodel_effects;
self.modelflags = self.csqcmodel_modelflags;
+ self.traileffect = self.csqcmodel_traileffect;
}
void Reset_ArcBeam(void);
void CSQCModel_Effects_PostUpdate(void)
}
self.csqcmodel_effects = self.effects;
self.csqcmodel_modelflags = self.modelflags;
+ self.csqcmodel_traileffect = self.traileffect;
self.effects = 0;
self.modelflags = 0;
if(self.csqcmodel_teleported)
void CSQCModel_Effects_Apply(void)
{SELFPARAM();
int eff = self.csqcmodel_effects & ~CSQCMODEL_EF_RESPAWNGHOST;
+ int tref = self.csqcmodel_traileffect;
self.renderflags &= ~(RF_DEPTHHACK | RF_ADDITIVE | RF_FULLBRIGHT | EF_NOSHADOW | RF_USEAXIS);
self.effects = 0;
self.traileffect = 0;
if(eff & EF_BRIGHTFIELD)
- self.traileffect = particleeffectnum(EFFECT_TR_NEXUIZPLASMA);
+ tref = particleeffectnum(EFFECT_TR_NEXUIZPLASMA);
// ignoring EF_MUZZLEFLASH
if(eff & EF_BRIGHTLIGHT)
adddynamiclight(self.origin, 400, '3 3 3');
self.renderflags |= RF_DYNAMICMODELLIGHT;
// ignoring EF_UNUSED18, EF_UNUSED19, EF_RESTARTANIM_BIT, EF_TELEPORT_BIT, EF_LOWPRECISION
if(self.csqcmodel_modelflags & MF_ROCKET)
- self.traileffect = particleeffectnum(EFFECT_TR_ROCKET);
+ tref = particleeffectnum(EFFECT_TR_ROCKET);
if(self.csqcmodel_modelflags & MF_GRENADE)
- self.traileffect = particleeffectnum(EFFECT_TR_GRENADE);
+ tref = particleeffectnum(EFFECT_TR_GRENADE);
if(self.csqcmodel_modelflags & MF_GIB)
- self.traileffect = particleeffectnum(EFFECT_TR_BLOOD);
+ tref = particleeffectnum(EFFECT_TR_BLOOD);
if(self.csqcmodel_modelflags & MF_ROTATE)
{
self.renderflags |= RF_USEAXIS;
makevectors(self.angles + '0 100 0' * fmod(time, 3.6));
}
if(self.csqcmodel_modelflags & MF_TRACER)
- self.traileffect = particleeffectnum(EFFECT_TR_WIZSPIKE);
+ tref = particleeffectnum(EFFECT_TR_WIZSPIKE);
if(self.csqcmodel_modelflags & MF_ZOMGIB)
- self.traileffect = particleeffectnum(EFFECT_TR_SLIGHTBLOOD);
+ tref = particleeffectnum(EFFECT_TR_SLIGHTBLOOD);
if(self.csqcmodel_modelflags & MF_TRACER2)
- self.traileffect = particleeffectnum(EFFECT_TR_KNIGHTSPIKE);
+ tref = particleeffectnum(EFFECT_TR_KNIGHTSPIKE);
if(self.csqcmodel_modelflags & MF_TRACER3)
- self.traileffect = particleeffectnum(EFFECT_TR_VORESPIKE);
+ tref = particleeffectnum(EFFECT_TR_VORESPIKE);
+
+ self.traileffect = tref;
if(self.drawmask)
Projectile_DrawTrail(self.origin);
void Ent_ScoresInfo();
void CSQC_Ent_Update(float bIsNewEntity)
{SELFPARAM();
- float t;
- float savetime;
- t = ReadByte();
+ int t = ReadByte();
if(autocvar_developer_csqcentities)
LOG_INFOF("CSQC_Ent_Update(%d) with self=%i self.entnum=%d self.enttype=%d t=%d\n", bIsNewEntity, self, self.entnum, self.enttype, t);
// set up the "time" global for received entities to be correct for interpolation purposes
- savetime = time;
+ float savetime = time;
if(servertime)
{
time = servertime;
{
if(t != self.enttype || bIsNewEntity)
{
- //print("A CSQC entity changed its type!\n");
LOG_INFOF("A CSQC entity changed its type! (edict: %d, server: %d, type: %d -> %d)\n", num_for_edict(self), self.entnum, self.enttype, t);
Ent_Remove();
clearentity(self);
}
#endif
self.enttype = t;
+ bool done = false;
+ FOREACH(Linked, it.m_id == t, LAMBDA(
+ it.m_read(self, bIsNewEntity);
+ done = true;
+ break;
+ ));
+ if (!done)
switch(t)
{
case ENT_CLIENT_MUTATOR: {
case ENT_CLIENT_SPAWNPOINT: Ent_ReadSpawnPoint(bIsNewEntity); break;
case ENT_CLIENT_SPAWNEVENT: Ent_ReadSpawnEvent(bIsNewEntity); break;
case ENT_CLIENT_NOTIFICATION: Read_Notification(bIsNewEntity); break;
- case ENT_CLIENT_HEALING_ORB: ent_healer(); break;
case ENT_CLIENT_MINIGAME: ent_read_minigame(); break;
case ENT_CLIENT_VIEWLOC: ent_viewloc(); break;
case ENT_CLIENT_VIEWLOC_TRIGGER: ent_viewloc_trigger(); break;
#include "../warpzonelib/common.qc"
#include "../warpzonelib/util_server.qc"
-#include "../mod/client/progs.inc"
+#if BUILD_MOD
+#include "../../mod/client/progs.inc"
+#endif
if (self.traileffect)
{
particles_alphamin = particles_alphamax = particles_fade = sqrt(self.alpha);
- boxparticles(self.traileffect, self, from, to, self.velocity, self.velocity, 1, PARTICLES_USEALPHA | PARTICLES_USEFADE | PARTICLES_DRAWASTRAIL);
+ boxparticles(particleeffectnum(effects_ent[self.traileffect]), self, from, to, self.velocity, self.velocity, 1, PARTICLES_USEALPHA | PARTICLES_USEFADE | PARTICLES_DRAWASTRAIL);
}
}
self.traileffect = 0;
switch (self.cnt) {
#define CASE(id) case PROJECTILE_##id: setmodel(self, MDL_PROJECTILE_##id);
- CASE(ELECTRO) self.traileffect = particleeffectnum(EFFECT_TR_NEXUIZPLASMA); break;
- CASE(ROCKET) self.traileffect = particleeffectnum(EFFECT_TR_ROCKET); self.scale = 2; break;
- CASE(CRYLINK) self.traileffect = particleeffectnum(EFFECT_TR_CRYLINKPLASMA); break;
- CASE(CRYLINK_BOUNCING) self.traileffect = particleeffectnum(EFFECT_TR_CRYLINKPLASMA); break;
- CASE(ELECTRO_BEAM) self.traileffect = particleeffectnum(EFFECT_TR_NEXUIZPLASMA); break;
- CASE(GRENADE) self.traileffect = particleeffectnum(EFFECT_TR_GRENADE); break;
- CASE(GRENADE_BOUNCING) self.traileffect = particleeffectnum(EFFECT_TR_GRENADE); break;
- CASE(MINE) self.traileffect = particleeffectnum(EFFECT_TR_GRENADE); break;
- CASE(BLASTER) self.traileffect = particleeffectnum(EFFECT_Null); break;
- CASE(HLAC) self.traileffect = particleeffectnum(EFFECT_Null); break;
- CASE(PORTO_RED) self.traileffect = particleeffectnum(EFFECT_TR_WIZSPIKE); self.scale = 4; break;
- CASE(PORTO_BLUE) self.traileffect = particleeffectnum(EFFECT_TR_WIZSPIKE); self.scale = 4; break;
- CASE(HOOKBOMB) self.traileffect = particleeffectnum(EFFECT_TR_KNIGHTSPIKE); break;
- CASE(HAGAR) self.traileffect = particleeffectnum(EFFECT_HAGAR_ROCKET); self.scale = 0.75; break;
- CASE(HAGAR_BOUNCING) self.traileffect = particleeffectnum(EFFECT_HAGAR_ROCKET); self.scale = 0.75; break;
+ CASE(ELECTRO) self.traileffect = EFFECT_TR_NEXUIZPLASMA.m_id; break;
+ CASE(ROCKET) self.traileffect = EFFECT_TR_ROCKET.m_id; self.scale = 2; break;
+ CASE(CRYLINK) self.traileffect = EFFECT_TR_CRYLINKPLASMA.m_id; break;
+ CASE(CRYLINK_BOUNCING) self.traileffect = EFFECT_TR_CRYLINKPLASMA.m_id; break;
+ CASE(ELECTRO_BEAM) self.traileffect = EFFECT_TR_NEXUIZPLASMA.m_id; break;
+ CASE(GRENADE) self.traileffect = EFFECT_TR_GRENADE.m_id; break;
+ CASE(GRENADE_BOUNCING) self.traileffect = EFFECT_TR_GRENADE.m_id; break;
+ CASE(MINE) self.traileffect = EFFECT_TR_GRENADE.m_id; break;
+ CASE(BLASTER) self.traileffect = EFFECT_Null.m_id; break;
+ CASE(HLAC) self.traileffect = EFFECT_Null.m_id; break;
+ CASE(PORTO_RED) self.traileffect = EFFECT_TR_WIZSPIKE.m_id; self.scale = 4; break;
+ CASE(PORTO_BLUE) self.traileffect = EFFECT_TR_WIZSPIKE.m_id; self.scale = 4; break;
+ CASE(HOOKBOMB) self.traileffect = EFFECT_TR_KNIGHTSPIKE.m_id; break;
+ CASE(HAGAR) self.traileffect = EFFECT_HAGAR_ROCKET.m_id; self.scale = 0.75; break;
+ CASE(HAGAR_BOUNCING) self.traileffect = EFFECT_HAGAR_ROCKET.m_id; self.scale = 0.75; break;
CASE(NAPALM_FOUNTAIN) // fallthrough // sself.modelindex = 0; self.traileffect = _particleeffectnum("torch_small"); break;
- CASE(FIREBALL) self.modelindex = 0; self.traileffect = particleeffectnum(EFFECT_FIREBALL); break; // particle effect is good enough
- CASE(FIREMINE) self.modelindex = 0; self.traileffect = particleeffectnum(EFFECT_FIREMINE); break; // particle effect is good enough
- CASE(TAG) self.traileffect = particleeffectnum(EFFECT_TR_ROCKET); break;
- CASE(FLAC) self.scale = 0.4; self.traileffect = particleeffectnum(EFFECT_FLAC_TRAIL); break;
- CASE(SEEKER) self.traileffect = particleeffectnum(EFFECT_SEEKER_TRAIL); break;
+ CASE(FIREBALL) self.modelindex = 0; self.traileffect = EFFECT_FIREBALL.m_id; break; // particle effect is good enough
+ CASE(FIREMINE) self.modelindex = 0; self.traileffect = EFFECT_FIREMINE.m_id; break; // particle effect is good enough
+ CASE(TAG) self.traileffect = EFFECT_TR_ROCKET.m_id; break;
+ CASE(FLAC) self.scale = 0.4; self.traileffect = EFFECT_FLAC_TRAIL.m_id; break;
+ CASE(SEEKER) self.traileffect = EFFECT_SEEKER_TRAIL.m_id; break;
- CASE(MAGE_SPIKE) self.traileffect = particleeffectnum(EFFECT_TR_VORESPIKE); break;
- CASE(SHAMBLER_LIGHTNING) self.traileffect = particleeffectnum(EFFECT_TR_NEXUIZPLASMA); break;
+ CASE(MAGE_SPIKE) self.traileffect = EFFECT_TR_VORESPIKE.m_id; break;
+ CASE(SHAMBLER_LIGHTNING) self.traileffect = EFFECT_TR_NEXUIZPLASMA.m_id; break;
- CASE(RAPTORBOMB) self.gravity = 1; self.avelocity = '0 0 180'; self.traileffect = particleeffectnum(EFFECT_Null); break;
- CASE(RAPTORBOMBLET) self.gravity = 1; self.avelocity = '0 0 180'; self.traileffect = particleeffectnum(EFFECT_Null); break;
- CASE(RAPTORCANNON) self.traileffect = particleeffectnum(EFFECT_TR_CRYLINKPLASMA); break;
+ CASE(RAPTORBOMB) self.gravity = 1; self.avelocity = '0 0 180'; self.traileffect = EFFECT_Null.m_id; break;
+ CASE(RAPTORBOMBLET) self.gravity = 1; self.avelocity = '0 0 180'; self.traileffect = EFFECT_Null.m_id; break;
+ CASE(RAPTORCANNON) self.traileffect = EFFECT_TR_CRYLINKPLASMA.m_id; break;
- CASE(SPIDERROCKET) self.traileffect = particleeffectnum(EFFECT_SPIDERBOT_ROCKET_TRAIL); break;
- CASE(WAKIROCKET) self.traileffect = particleeffectnum(EFFECT_RACER_ROCKET_TRAIL); break;
- CASE(WAKICANNON) self.traileffect = particleeffectnum(EFFECT_Null); break;
+ CASE(SPIDERROCKET) self.traileffect = EFFECT_SPIDERBOT_ROCKET_TRAIL.m_id; break;
+ CASE(WAKIROCKET) self.traileffect = EFFECT_RACER_ROCKET_TRAIL.m_id; break;
+ CASE(WAKICANNON) self.traileffect = EFFECT_Null.m_id; break;
- CASE(BUMBLE_GUN) self.traileffect = particleeffectnum(EFFECT_TR_NEXUIZPLASMA); break;
- CASE(BUMBLE_BEAM) self.traileffect = particleeffectnum(EFFECT_TR_NEXUIZPLASMA); break;
+ CASE(BUMBLE_GUN) self.traileffect = EFFECT_TR_NEXUIZPLASMA.m_id; break;
+ CASE(BUMBLE_BEAM) self.traileffect = EFFECT_TR_NEXUIZPLASMA.m_id; break;
- CASE(RPC) self.traileffect = particleeffectnum(EFFECT_TR_ROCKET); break;
+ CASE(RPC) self.traileffect = EFFECT_TR_ROCKET.m_id; break;
- CASE(ROCKETMINSTA_LASER) self.traileffect = particleeffectnum(EFFECT_ROCKETMINSTA_LASER(self.team)); break;
+ CASE(ROCKETMINSTA_LASER) self.traileffect = EFFECT_ROCKETMINSTA_LASER(self.team).m_id; break;
#undef CASE
default:
if(MUTATOR_CALLHOOK(Ent_Projectile, self))
if (Nade_FromProjectile(self.cnt) != NADE_TYPE_Null)
{
setmodel(self, MDL_PROJECTILE_NADE);
- self.traileffect = _particleeffectnum(Nade_TrailEffect(self.cnt, self.team));
+ entity trail = Nade_TrailEffect(self.cnt, self.team);
+ if (trail.eent_eff_name) self.traileffect = trail.m_id;
break;
}
error("Received invalid CSQC projectile, can't work with this!");
}
}
+#ifndef MENUQC
void effectinfo_dump(int fh, bool alsoprint);
+#endif
void GenericCommand_dumpeffectinfo(float request)
{
switch (request) {
const int ENT_CLIENT_MINIGAME = 75;
const int ENT_CLIENT_VIEWLOC = 78;
const int ENT_CLIENT_VIEWLOC_TRIGGER = 79;
-const int ENT_CLIENT_HEALING_ORB = 80;
const int ENT_CLIENT_MUTATOR = TE_CSQC_MUTATOR; // 99
CSQCMODEL_PROPERTY(512, float, ReadApproxPastTime, WriteApproxPastTime, anim_upper_time) \
CSQCMODEL_ENDIF \
CSQCMODEL_PROPERTY(1024, float, ReadAngle, WriteAngle, v_angle_x) \
+ CSQCMODEL_PROPERTY(2048, int, ReadByte, WriteByte, traileffect) \
CSQCMODEL_PROPERTY_SCALED(4096, float, ReadByte, WriteByte, scale, 16, 0, 255) \
CSQCMODEL_PROPERTY(8192, int, ReadInt24_t, WriteInt24_t, dphitcontentsmask) \
CSQCMODEL_PROPERTY(16384, TAG_VIEWLOC_TYPE, ReadShort, WriteEntity, TAG_VIEWLOC_NAME)
}
// splash around gib
-SUB(alien_TR_BLOOD) {
+SUB(TR_BLOOD) {
MY(alpha_min) = 684;
MY(alpha_max) = 684;
MY(alpha_fade) = 7492;
MY(velocityjitter) = '764.0 764.0 764.0';
}
// center blood
-SUB(alien_bloodshower) {
+SUB(bloodshower) {
MY(alpha_min) = 156;
MY(alpha_max) = 656;
MY(alpha_fade) = 1664;
#define EFFECTINFO_PARSER(on) \
+ on(type, MY(type) \
+ ,{ ASSERT(n == 1 && "type"); MY(type) = strzone(argv(1)); \
+ }, sprintf(" %s", (MY(type)) \
+ )) \
on(airfriction, MY(airfriction) \
,{ ASSERT(n == 1 && "airfriction"); MY(airfriction) = stof(argv(1)); \
}, sprintf(" %s", ftos(MY(airfriction)) \
}, sprintf(" %s %s %s", ftos(MY(alpha_min)), ftos(MY(alpha_max)), ftos(MY(alpha_fade)) \
)) \
on(blend, MY(blend) \
- ,{ ASSERT(n == 1 && "blend"); MY(blend) = argv(1); \
+ ,{ ASSERT(n == 1 && "blend"); MY(blend) = strzone(argv(1)); \
}, sprintf(" %s", (MY(blend)) \
)) \
on(bounce, MY(bounce) \
}, sprintf(" %s", ftos(MY(bounce)) \
)) \
on(color, MY(color_min) || MY(color_max) \
- ,{ ASSERT(n == 2 && "color"); MY(color_min) = argv(1); MY(color_max) = argv(2); \
+ ,{ ASSERT(n == 2 && "color"); MY(color_min) = strzone(argv(1)); MY(color_max) = strzone(argv(2)); \
}, sprintf(" %s %s", (MY(color_min)), (MY(color_max)) \
)) \
on(countabsolute, MY(countabsolute) \
}, "" \
) \
on(orientation, MY(orientation) \
- ,{ ASSERT(n == 1 && "orientation"); MY(orientation) = argv(1); \
+ ,{ ASSERT(n == 1 && "orientation"); MY(orientation) = strzone(argv(1)); \
}, sprintf(" %s", (MY(orientation)) \
)) \
on(originjitter, MY(originjitter) \
,{ ASSERT(n == 2 && "size"); MY(size_min) = stof(argv(1)); MY(size_max) = stof(argv(2)); \
}, sprintf(" %s %s", ftos(MY(size_min)), ftos(MY(size_max)) \
)) \
- on(staincolor, MY(staincolor_min) || MY(staincolor_max) \
- ,{ ASSERT(n == 2 && "staincolor"); MY(staincolor_min) = argv(1); MY(staincolor_max) = argv(2); \
- }, sprintf(" %s %s", (MY(staincolor_min)), (MY(staincolor_max)) \
+ on(staincolor, MY(staincolor_min) || MY(staincolor_max) \
+ ,{ ASSERT(n == 2 && "staincolor"); MY(staincolor_min) = strzone(argv(1)); MY(staincolor_max) = strzone(argv(2)); \
+ }, sprintf(" %s %s", (MY(staincolor_min)), (MY(staincolor_max)) \
)) \
on(stainsize, MY(stainsize_min) || MY(stainsize_max) \
,{ ASSERT(n == 2 && "stainsize"); MY(stainsize_min) = stof(argv(1)); MY(stainsize_max) = stof(argv(2)); \
,{ ASSERT(n == 1 && "trailspacing"); MY(trailspacing) = stof(argv(1)); \
}, sprintf(" %s", ftos(MY(trailspacing)) \
)) \
- on(type, MY(type) \
- ,{ ASSERT(n == 1 && "type"); MY(type) = argv(1); \
- }, sprintf(" %s", (MY(type)) \
- )) \
on(underwater, MY(underwater) \
,{ ASSERT(n == 0 && "underwater"); MY(underwater) = true; \
}, "" \
string k = argv(0);
if (k == "effect") {
ASSERT(n == 1);
- info = NEW(EffectInfo, argv(1));
+ info = NEW(EffectInfo, strzone(argv(1)));
continue;
}
ASSERT(info != NULL);
entity minig = self;
minig.minigame_event(minig,"frame");
- minig.nextthink = time;
+ minig.nextthink = time + 0.1;
}
entity start_minigame(entity player, string minigame )
vector org = self.origin + ((self.mins + self.maxs) * 0.5);
entity e = spawn();
+ e.spawnfunc_checked = true;
e.monster_loot = self.monster_loot;
if(!((self.flags & FL_FLY) || (self.flags & FL_SWIM)))
self.velocity = '0 0 0';
- CSQCModel_UnlinkEntity();
+ CSQCModel_UnlinkEntity(self);
Monster mon = get_monsterinfo(self.monsterid);
mon.mr_death(mon);
#endif
-#ifdef SVQC
-float healer_send(entity to, int sf)
-{SELFPARAM();
- WriteByte(MSG_ENTITY, ENT_CLIENT_HEALING_ORB);
- WriteByte(MSG_ENTITY, sf);
-
- if(sf & 1)
- {
- WriteCoord(MSG_ENTITY, self.origin.x);
- WriteCoord(MSG_ENTITY, self.origin.y);
- WriteCoord(MSG_ENTITY, self.origin.z);
-
- WriteByte(MSG_ENTITY, self.healer_lifetime);
- //WriteByte(MSG_ENTITY, self.ltime - time + 1);
- WriteShort(MSG_ENTITY, self.healer_radius);
- // round time delta to a 1/10th of a second
- WriteByte(MSG_ENTITY, (self.ltime - time)*10.0+0.5);
- }
-
- return true;
-}
-#endif // SVQC
-
#ifdef CSQC
.float ltime;
void healer_draw()
self.alpha = (self.ltime - time) / self.healer_lifetime;
self.scale = min((1 - self.alpha)*self.healer_lifetime*4,1)*self.healer_radius;
-
}
-void healer_setup()
-{SELFPARAM();
- setmodel(self, MDL_NADE_HEAL);
-
- setorigin(self, self.origin);
-
- float model_radius = self.maxs.x;
- vector size = '1 1 1' * self.healer_radius / 2;
- setsize(self,-size,size);
- self.healer_radius = self.healer_radius/model_radius*0.6;
-
- self.draw = healer_draw;
- self.health = 255;
- self.movetype = MOVETYPE_NONE;
- self.solid = SOLID_NOT;
- self.drawmask = MASK_NORMAL;
- self.scale = 0.01;
- self.avelocity = self.move_avelocity = '7 0 11';
- self.colormod = '1 0 0';
- self.renderflags |= RF_ADDITIVE;
+void healer_setup(entity e)
+{
+ setmodel(e, MDL_NADE_HEAL);
+
+ setorigin(e, e.origin);
+
+ float model_radius = e.maxs.x;
+ vector size = '1 1 1' * e.healer_radius / 2;
+ setsize(e,-size,size);
+ e.healer_radius = e.healer_radius/model_radius*0.6;
+
+ e.draw = healer_draw;
+ e.health = 255;
+ e.movetype = MOVETYPE_NONE;
+ e.solid = SOLID_NOT;
+ e.drawmask = MASK_NORMAL;
+ e.scale = 0.01;
+ e.avelocity = e.move_avelocity = '7 0 11';
+ e.colormod = '1 0 0';
+ e.renderflags |= RF_ADDITIVE;
}
+#endif // CSQC
-void ent_healer()
-{SELFPARAM();
+REGISTER_LINKED(Nade_Heal, bool isNew)
+#ifdef CSQC
+{
int sf = ReadByte();
+ if (sf & 1) {
+ this.origin_x = ReadCoord();
+ this.origin_y = ReadCoord();
+ this.origin_z = ReadCoord();
+ setorigin(this, this.origin);
+ this.healer_lifetime = ReadByte();
+ this.healer_radius = ReadShort();
+ this.ltime = time + ReadByte()/10.0;
+ // this.ltime = time + this.healer_lifetime;
+ healer_setup(this);
+ }
+}
+#endif
- if(sf & 1)
- {
- self.origin_x = ReadCoord();
- self.origin_y = ReadCoord();
- self.origin_z = ReadCoord();
- setorigin(self, self.origin);
-
- self.healer_lifetime = ReadByte();
- self.healer_radius = ReadShort();
- self.ltime = time + ReadByte()/10.0;
- //self.ltime = time + self.healer_lifetime;
-
- healer_setup();
+#ifdef SVQC
+float healer_send(entity to, int sf)
+{
+ SELFPARAM();
+ WriteByte(MSG_ENTITY, Linked_Nade_Heal.m_id);
+ WriteByte(MSG_ENTITY, sf);
+ if (sf & 1) {
+ WriteCoord(MSG_ENTITY, this.origin.x);
+ WriteCoord(MSG_ENTITY, this.origin.y);
+ WriteCoord(MSG_ENTITY, this.origin.z);
+
+ WriteByte(MSG_ENTITY, this.healer_lifetime);
+ //WriteByte(MSG_ENTITY, this.ltime - time + 1);
+ WriteShort(MSG_ENTITY, this.healer_radius);
+ // round time delta to a 1/10th of a second
+ WriteByte(MSG_ENTITY, (this.ltime - time)*10.0+0.5);
}
+ return true;
}
-#endif // CSQC
+#endif // SVQC
ATTRIB(Nade, m_name, string, _("Grenade"))
ATTRIB(Nade, m_icon, string, "nade_normal")
ATTRIBARRAY(Nade, m_projectile, int, 2)
- ATTRIBARRAY(Nade, m_trail, string, 2)
+ ATTRIBARRAY(Nade, m_trail, entity, 2)
METHOD(Nade, display, void(entity this, void(string name, string icon) returns)) {
returns(this.m_name, sprintf("/gfx/hud/%s/%s", cvar_string("menu_skin"), this.m_icon));
}
REGISTER_NADE(NORMAL) {
this.m_color = '1 1 1';
- NADE_PROJECTILE(0, PROJECTILE_NADE, string_null);
- NADE_PROJECTILE(1, PROJECTILE_NADE_BURN, string_null);
+ NADE_PROJECTILE(0, PROJECTILE_NADE, EFFECT_Null);
+ NADE_PROJECTILE(1, PROJECTILE_NADE_BURN, EFFECT_Null);
}
REGISTER_NADE(NAPALM) {
this.m_color = '2 0.5 0';
this.m_name = _("Napalm grenade");
this.m_icon = "nade_napalm";
- NADE_PROJECTILE(0, PROJECTILE_NADE_NAPALM, "TR_ROCKET");
- NADE_PROJECTILE(1, PROJECTILE_NADE_NAPALM_BURN, "spiderbot_rocket_thrust");
+ NADE_PROJECTILE(0, PROJECTILE_NADE_NAPALM, EFFECT_TR_ROCKET);
+ NADE_PROJECTILE(1, PROJECTILE_NADE_NAPALM_BURN, EFFECT_SPIDERBOT_ROCKET_TRAIL);
}
REGISTER_NADE(ICE) {
this.m_color = '0 0.5 2';
this.m_name = _("Ice grenade");
this.m_icon = "nade_ice";
- NADE_PROJECTILE(0, PROJECTILE_NADE_ICE, "TR_NEXUIZPLASMA");
- NADE_PROJECTILE(1, PROJECTILE_NADE_ICE_BURN, "wakizashi_rocket_thrust");
+ NADE_PROJECTILE(0, PROJECTILE_NADE_ICE, EFFECT_TR_NEXUIZPLASMA);
+ NADE_PROJECTILE(1, PROJECTILE_NADE_ICE_BURN, EFFECT_RACER_ROCKET_TRAIL);
}
REGISTER_NADE(TRANSLOCATE) {
this.m_color = '1 0 1';
this.m_name = _("Translocate grenade");
this.m_icon = "nade_translocate";
- NADE_PROJECTILE(0, PROJECTILE_NADE_TRANSLOCATE, "TR_CRYLINKPLASMA");
- NADE_PROJECTILE(1, PROJECTILE_NADE_TRANSLOCATE, "TR_CRYLINKPLASMA");
+ NADE_PROJECTILE(0, PROJECTILE_NADE_TRANSLOCATE, EFFECT_TR_CRYLINKPLASMA);
+ NADE_PROJECTILE(1, PROJECTILE_NADE_TRANSLOCATE, EFFECT_TR_CRYLINKPLASMA);
}
REGISTER_NADE(SPAWN) {
this.m_color = '1 0.9 0';
this.m_name = _("Spawn grenade");
this.m_icon = "nade_spawn";
- NADE_PROJECTILE(0, PROJECTILE_NADE_SPAWN, "nade_yellow");
- NADE_PROJECTILE(1, PROJECTILE_NADE_SPAWN, "nade_yellow");
+ NADE_PROJECTILE(0, PROJECTILE_NADE_SPAWN, EFFECT_NADE_TRAIL_YELLOW);
+ NADE_PROJECTILE(1, PROJECTILE_NADE_SPAWN, EFFECT_NADE_TRAIL_YELLOW);
}
REGISTER_NADE(HEAL) {
this.m_color = '1 0 0';
this.m_name = _("Heal grenade");
this.m_icon = "nade_heal";
- NADE_PROJECTILE(0, PROJECTILE_NADE_HEAL, "nade_red");
- NADE_PROJECTILE(1, PROJECTILE_NADE_HEAL_BURN, "nade_red_burn");
+ NADE_PROJECTILE(0, PROJECTILE_NADE_HEAL, EFFECT_NADE_TRAIL_RED);
+ NADE_PROJECTILE(1, PROJECTILE_NADE_HEAL_BURN, EFFECT_NADE_TRAIL_BURN_RED);
}
REGISTER_NADE(MONSTER) {
this.m_color = '0.25 0.75 0';
this.m_name = _("Monster grenade");
this.m_icon = "nade_monster";
- NADE_PROJECTILE(0, PROJECTILE_NADE_MONSTER, "nade_red");
- NADE_PROJECTILE(1, PROJECTILE_NADE_MONSTER_BURN, "nade_red_burn");
+ NADE_PROJECTILE(0, PROJECTILE_NADE_MONSTER, EFFECT_NADE_TRAIL_RED);
+ NADE_PROJECTILE(1, PROJECTILE_NADE_MONSTER_BURN, EFFECT_NADE_TRAIL_BURN_RED);
}
entity Nade_FromProjectile(float proj)
return NADE_TYPE_Null;
}
-string Nade_TrailEffect(float proj, float nade_team)
+entity Nade_TrailEffect(int proj, int nade_team)
{
+ switch (proj)
+ {
+ case PROJECTILE_NADE: return EFFECT_NADE_TRAIL(nade_team);
+ case PROJECTILE_NADE_BURN: return EFFECT_NADE_TRAIL_BURN(nade_team);
+ }
+
FOREACH(NADES, true, LAMBDA(
for (int j = 0; j < 2; j++)
{
if (it.m_projectile[j] == proj)
{
- string trail = it.m_trail[j];
- if (trail) return trail;
+ string trail = it.m_trail[j].eent_eff_name;
+ if (trail) return it.m_trail[j];
break;
}
}
));
- switch (proj)
- {
- case PROJECTILE_NADE: return EFFECT_NADE_TRAIL(nade_team).eent_eff_name;
- case PROJECTILE_NADE_BURN: return EFFECT_NADE_TRAIL_BURN(nade_team).eent_eff_name;
- }
- return "";
+
+ return EFFECT_Null;
}
#ifdef SVQC
float healer_send(entity to, int sf);
#endif
-#ifdef CSQC
-// misc functions
-void ent_healer();
-#endif // CSQC
#endif
if(!target_spawn_cancreate())
return;
e = spawn();
+ e.spawnfunc_checked = true;
target_spawn_useon(e);
e.target_spawn_id = self.target_spawn_id;
}
return 1;
}
-void shuffle(float n, swapfunc_t swap, entity pass)
-{
- float i, j;
- for(i = 1; i < n; ++i)
- {
- // swap i-th item at a random position from 0 to i
- // proof for even distribution:
- // n = 1: obvious
- // n -> n+1:
- // item n+1 gets at any position with chance 1/(n+1)
- // all others will get their 1/n chance reduced by factor n/(n+1)
- // to be on place n+1, their chance will be 1/(n+1)
- // 1/n * n/(n+1) = 1/(n+1)
- // q.e.d.
- j = floor(random() * (i + 1));
- if(j != i)
- swap(j, i, pass);
- }
-}
-
string substring_range(string s, float b, float e)
{
return substring(s, b, e - b);
return v;
}
-void heapsort(float n, swapfunc_t swap, comparefunc_t cmp, entity pass)
-{
- float start, end, root, child;
-
- // heapify
- start = floor((n - 2) / 2);
- while(start >= 0)
- {
- // siftdown(start, count-1);
- root = start;
- while(root * 2 + 1 <= n-1)
- {
- child = root * 2 + 1;
- if(child < n-1)
- if(cmp(child, child+1, pass) < 0)
- ++child;
- if(cmp(root, child, pass) < 0)
- {
- swap(root, child, pass);
- root = child;
- }
- else
- break;
- }
- // end of siftdown
- --start;
- }
-
- // extract
- end = n - 1;
- while(end > 0)
- {
- swap(0, end, pass);
- --end;
- // siftdown(0, end);
- root = 0;
- while(root * 2 + 1 <= end)
- {
- child = root * 2 + 1;
- if(child < end && cmp(child, child+1, pass) < 0)
- ++child;
- if(cmp(root, child, pass) < 0)
- {
- swap(root, child, pass);
- root = child;
- }
- else
- break;
- }
- // end of siftdown
- }
-}
void RandomSelection_Init()
{
float isGametypeInFilter(float gt, float tp, float ts, string pattern);
-typedef void(float i1, float i2, entity pass) swapfunc_t; // is only ever called for i1 < i2
-typedef float(float i1, float i2, entity pass) comparefunc_t; // <0 for <, ==0 for ==, >0 for > (like strcmp)
-void shuffle(float n, swapfunc_t swap, entity pass);
-void heapsort(float n, swapfunc_t swap, comparefunc_t cmp, entity pass);
-
string swapwords(string str, float i, float j);
string shufflewords(string str);
MUTATOR_CALLHOOK(VehicleEnter, pl, veh);
setself(veh);
- CSQCModel_UnlinkEntity();
+ CSQCModel_UnlinkEntity(veh);
Vehicle info = get_vehicleinfo(veh.vehicleid);
info.vr_enter(info);
setself(this);
SELFPARAM();
entity oldself = self;
- CSQCModel_UnlinkEntity();
+ CSQCModel_UnlinkEntity(self);
// Hide beam
if(self.gun3.enemy || !wasfreed(self.gun3.enemy))
else
self.colormod = '0 1 0';
- self.traileffect = particleeffectnum(EFFECT_BUMBLEBEE_HEAL_MUZZLEFLASH);
+ self.traileffect = EFFECT_BUMBLEBEE_HEAL_MUZZLEFLASH.m_id;
self.lip = particleeffectnum(EFFECT_BUMBLEBEE_HEAL_IMPACT);
self.draw = bumble_raygun_draw;
if(self.total_damages < time)
{
- boxparticles(self.traileffect, self, self.origin, self.origin + _dir * -64, _dir * -_len , _dir * -_len, 1, PARTICLES_USEALPHA);
+ boxparticles(particleeffectnum(effects_ent[self.traileffect]), self, self.origin, self.origin + _dir * -64, _dir * -_len , _dir * -_len, 1, PARTICLES_USEALPHA);
boxparticles(self.lip, self, self.move_origin, self.move_origin + _dir * -64, _dir * -200 , _dir * -200, 1, PARTICLES_USEALPHA);
self.total_damages = time + 0.1;
}
self.think = vehicles_spawn;
self.movetype = MOVETYPE_NONE;
self.effects = EF_NODRAW;
+ self.solid = SOLID_NOT;
self.colormod = '0 0 0';
self.avelocity = '0 0 0';
self.frame = 10;
self.movetype = MOVETYPE_TOSS;
- CSQCModel_UnlinkEntity(); // networking the death scene would be a nightmare
+ CSQCModel_UnlinkEntity(self); // networking the death scene would be a nightmare
}
METHOD(Spiderbot, vr_spawn, void(Spiderbot thisveh))
{
CSQCModel_CheckUpdate(e);
}
-void CSQCModel_UnlinkEntity()
-{SELFPARAM();
- self.SendEntity = func_null;
+void CSQCModel_UnlinkEntity(entity e)
+{
+ e.SendEntity = func_null;
}
void CSQCModel_CheckUpdate(entity e);
void CSQCModel_LinkEntity(entity e);
-void CSQCModel_UnlinkEntity();
+void CSQCModel_UnlinkEntity(entity e);
#define CSQCMODEL_IF(cond)
#define CSQCMODEL_ENDIF
#include "lazy.qh"
#include "log.qh"
#include "math.qh"
+#include "net.qh"
#include "nil.qh"
#include "noise.qc"
#include "oo.qh"
#include "progname.qh"
#include "registry.qh"
#include "replicate.qh"
+#include "sort.qh"
#include "sortlist.qc"
#include "spawnfunc.qh"
#include "static.qh"
--- /dev/null
+#ifndef NET_H
+#define NET_H
+
+#ifdef SVQC
+.int SendFlags;
+.bool(entity to, int sendflags) SendEntity;
+
+void Net_LinkEntity(entity e, bool docull, float dt, bool(entity to, int sendflags) sendfunc)
+{
+ if (!e.classname) e.classname = "net_linked";
+
+ if (!e.model || !self.modelindex) {
+ vector mi = e.mins;
+ vector ma = e.maxs;
+ _setmodel(e, "null");
+ setsize(e, mi, ma);
+ }
+
+ e.SendEntity = sendfunc;
+ e.SendFlags = 0xFFFFFF;
+
+ if (!docull) e.effects |= EF_NODEPTHTEST;
+
+ if (dt) {
+ e.nextthink = time + dt;
+ e.think = SUB_Remove;
+ }
+}
+
+.void() uncustomizeentityforclient;
+.float uncustomizeentityforclient_set;
+
+void SetCustomizer(entity e, float(void) customizer, void(void) uncustomizer)
+{
+ e.customizeentityforclient = customizer;
+ e.uncustomizeentityforclient = uncustomizer;
+ e.uncustomizeentityforclient_set = !!uncustomizer;
+}
+
+void UncustomizeEntitiesRun()
+{
+ for (entity e = NULL; (e = findfloat(e, uncustomizeentityforclient_set, 1)); ) {
+ WITH(entity, self, e, e.uncustomizeentityforclient());
+ }
+}
+
+#endif
+
+#include "registry.qh"
+#include "sort.qh"
+
+REGISTRY(Linked, 24)
+
+.string netname;
+.int m_id;
+.void(entity this, bool isNew) m_read;
+
+#ifdef CSQC
+ #define REGISTER_LINKED(id, param) \
+ void Ent_Read##id(entity this, param) { this = self; } \
+ REGISTER(RegisterLinked, Linked, Linked, Linked_COUNT, id, m_id, spawn()) { \
+ this.netname = #id; \
+ this.m_read = Ent_Read##id; \
+ } \
+ [[accumulate]] void Ent_Read##id(entity this, param)
+#else
+ #define REGISTER_LINKED(id, param) \
+ REGISTER(RegisterLinked, Linked, Linked, Linked_COUNT, id, m_id, spawn()) { \
+ this.netname = #id; \
+ }
+#endif
+
+REGISTER_REGISTRY(RegisterLinked)
+REGISTRY_SORT(Linked, netname, 0)
+STATIC_INIT(RegisterLinked_renumber) {
+ for (int i = 0; i < Linked_COUNT; ++i) {
+ Linked[i].m_id = 100 + i;
+ }
+}
+
+#endif
#define OO_H
#include "nil.qh"
-#include "registry.qh"
#ifdef MENUQC
#define NULL (null_entity)
#define REGISTER_INIT(ns, id) [[accumulate]] void Register_##ns##_##id##_init(entity this)
#define REGISTER_INIT_POST(ns, id) [[accumulate]] void Register_##ns##_##id##_init_post(entity this)
+#define REGISTRY(id, max) \
+ void Register##id() {} \
+ const int id##_MAX = max; \
+ noref entity id[id##_MAX], id##_first, id##_last; \
+ int id##_COUNT;
+
/**
* Register a new entity with a global constructor.
* Must be followed by a semicolon or a function body with a `this` parameter.
ACCUMULATE_FUNCTION(initfunc, Register_##ns##_##id) \
REGISTER_INIT(ns, id)
+#define REGISTRY_SORT(id, field, skip) \
+ void _REGISTRY_SWAP_##id(int i, int j, entity pass) { \
+ i += skip; j += skip; \
+ entity e = id[i]; \
+ id[i] = id[j]; \
+ id[j] = e; \
+ } \
+ float _REGISTRY_CMP_##id(int i, int j, entity pass) { \
+ i += skip; j += skip; \
+ string a = id[i].field; \
+ string b = id[j].field; \
+ return strcasecmp(a, b); \
+ } \
+ STATIC_INIT(Registry_sort_##id) { \
+ heapsort(id##_COUNT, _REGISTRY_SWAP_##id, _REGISTRY_CMP_##id, NULL); \
+ }
+
#endif
--- /dev/null
+#ifndef SORT_H
+#define SORT_H
+
+/** is only ever called for i1 < i2 */
+typedef void(float i1, float i2, entity pass) swapfunc_t;
+/** <0 for <, ==0 for ==, >0 for > (like strcmp) */
+typedef float(float i1, float i2, entity pass) comparefunc_t;
+
+void heapsort(float n, swapfunc_t swap, comparefunc_t cmp, entity pass)
+{
+ int root, child;
+
+ // heapify
+ int start = floor((n - 2) / 2);
+ while (start >= 0) {
+ // siftdown(start, n - 1);
+ root = start;
+ while (root * 2 + 1 <= n - 1) {
+ child = root * 2 + 1;
+ if (child < n - 1 && cmp(child, child + 1, pass) < 0) {
+ child += 1;
+ }
+ if (cmp(root, child, pass) < 0) {
+ swap(root, child, pass);
+ root = child;
+ } else {
+ break;
+ }
+ }
+ // end of siftdown
+ --start;
+ }
+
+ // extract
+ int end = n - 1;
+ while (end > 0) {
+ swap(0, end, pass);
+ end -= 1;
+ // siftdown(0, end);
+ root = 0;
+ while (root * 2 + 1 <= end) {
+ child = root * 2 + 1;
+ if (child < end && cmp(child, child+1, pass) < 0) {
+ child += 1;
+ }
+ if (cmp(root, child, pass) < 0) {
+ swap(root, child, pass);
+ root = child;
+ } else {
+ break;
+ }
+ }
+ // end of siftdown
+ }
+}
+
+void shuffle(float n, swapfunc_t swap, entity pass)
+{
+ for (int i = 1; i < n; ++i) {
+ // swap i-th item at a random position from 0 to i
+ // proof for even distribution:
+ // n = 1: obvious
+ // n -> n+1:
+ // item n+1 gets at any position with chance 1/(n+1)
+ // all others will get their 1/n chance reduced by factor n/(n+1)
+ // to be on place n+1, their chance will be 1/(n+1)
+ // 1/n * n/(n+1) = 1/(n+1)
+ // q.e.d.
+ int j = floor(random() * (i + 1));
+ if (j != i)
+ swap(j, i, pass);
+ }
+}
+
+#endif
noref bool require_spawnfunc_prefix;
.bool spawnfunc_checked;
+// Optional type checking; increases compile time too much to be enabled by default
+#if 0
bool entityfieldassignablefromeditor(int i) {
switch (entityfieldtype(i)) {
case FIELD_STRING:
#define _spawnfunc_checktypes(fld) if (fieldname == #fld) \
if (!entityfieldassignablefromeditor(i)) LOG_FATALF("Entity field '%s' cannot be whitelisted\n", fieldname);
+#else
+#define _spawnfunc_checktypes(fld)
+#endif
#define _spawnfunc_check(fld) if (fieldname == #fld) \
continue;
FIELD_SCALAR(fld, cnt) \
FIELD_SCALAR(fld, colormap) \
FIELD_SCALAR(fld, count) \
+ FIELD_SCALAR(fld, curvetarget) \
+ FIELD_SCALAR(fld, cvarfilter) \
FIELD_SCALAR(fld, debrisdamageforcescale) \
FIELD_SCALAR(fld, debrisfadetime) \
FIELD_SCALAR(fld, debristimejitter) \
FIELD_SCALAR(fld, debristime) \
FIELD_SCALAR(fld, debris) \
FIELD_SCALAR(fld, delay) \
+ FIELD_SCALAR(fld, dmgtime) \
FIELD_SCALAR(fld, dmg) \
FIELD_SCALAR(fld, dmg_edge) \
FIELD_SCALAR(fld, dmg_force) \
FIELD_SCALAR(fld, effects) \
FIELD_SCALAR(fld, flags) \
FIELD_SCALAR(fld, fog) \
+ FIELD_SCALAR(fld, frags) \
FIELD_SCALAR(fld, frame) \
FIELD_SCALAR(fld, gametypefilter) \
+ FIELD_SCALAR(fld, geomtype) \
FIELD_SCALAR(fld, gravity) \
FIELD_SCALAR(fld, health) \
FIELD_SCALAR(fld, height) \
FIELD_SCALAR(fld, modelindex) \
FIELD_SCALAR(fld, modelscale) \
FIELD_SCALAR(fld, model) \
+ FIELD_SCALAR(fld, monster_moveflags) \
FIELD_SCALAR(fld, movetype) \
FIELD_SCALAR(fld, netname) \
FIELD_SCALAR(fld, nextthink) \
FIELD_SCALAR(fld, noise2) \
FIELD_SCALAR(fld, noise) \
FIELD_SCALAR(fld, phase) \
+ FIELD_SCALAR(fld, platmovetype) \
FIELD_SCALAR(fld, race_place) \
FIELD_SCALAR(fld, radius) \
FIELD_SCALAR(fld, respawntimejitter) \
FIELD_SCALAR(fld, targetname) \
FIELD_SCALAR(fld, target) \
FIELD_SCALAR(fld, target_random) \
+ FIELD_SCALAR(fld, target_range) \
FIELD_SCALAR(fld, team) \
FIELD_SCALAR(fld, turret_scale_health) \
FIELD_SCALAR(fld, turret_scale_range) \
FIELD_SCALAR(fld, wait) \
FIELD_SCALAR(fld, warpzone_fadeend) \
FIELD_SCALAR(fld, warpzone_fadestart) \
+ FIELD_SCALAR(fld, weapon) \
FIELD_VEC(fld, absmax) \
FIELD_VEC(fld, absmin) \
FIELD_VEC(fld, angles) \
#include "../common/vehicles/all.qc"
#include "../common/weapons/all.qc"
-#include "../mod/menu/progs.inc"
+#if BUILD_MOD
+#include "../../mod/menu/progs.inc"
+#endif
* returns `DataSource_false` if out of bounds
* otherwise returns an entity or `DataSource_true`
*/
- METHOD(DataSource, getEntry, entity(int i, void(string name, string icon) returns)) { return DataSource_false; }
+ METHOD(DataSource, getEntry, entity(entity this, int i, void(string name, string icon) returns)) { return DataSource_false; }
/** return the index of the first match for `find`. optional */
- METHOD(DataSource, indexOf, int(string find)) { return -1; }
+ METHOD(DataSource, indexOf, int(entity this, string find)) { return -1; }
/** reload all entries matching `filter` returning how many matches were found */
- METHOD(DataSource, reload, int(string filter)) { return 0; }
+ METHOD(DataSource, reload, int(entity this, string filter)) { return 0; }
/** cleanup on shutdown. optional */
- METHOD(DataSource, destroy, void(entity)) { }
+ METHOD(DataSource, destroy, void(entity this)) { }
ENDCLASS(DataSource)
+
+
+CLASS(StringSource, DataSource)
+ ATTRIB(StringSource, StringSource_str, string, string_null)
+ ATTRIB(StringSource, StringSource_sep, string, string_null)
+ CONSTRUCTOR(StringSource, string str, string sep)
+ {
+ CONSTRUCT(StringSource);
+ this.StringSource_str = str;
+ this.StringSource_sep = sep;
+ }
+ METHOD(StringSource, getEntry, entity(entity this, int i, void(string name, string icon) returns))
+ {
+ int n = tokenizebyseparator(this.StringSource_str, this.StringSource_sep);
+ if (i < 0 || i >= n) return DataSource_false;
+ string s = argv(i);
+ if (returns) returns(s, string_null);
+ return DataSource_true;
+ }
+ METHOD(StringSource, reload, int(entity this, string filter))
+ {
+ return tokenizebyseparator(this.StringSource_str, this.StringSource_sep);
+ }
+ENDCLASS(StringSource)
+
+CLASS(CvarStringSource, StringSource)
+ ATTRIB(CvarStringSource, CvarStringSource_cvar, string, string_null)
+ CONSTRUCTOR(CvarStringSource, string cv, string sep)
+ {
+ CONSTRUCT(CvarStringSource);
+ this.CvarStringSource_cvar = cv;
+ this.StringSource_sep = sep;
+ }
+ METHOD(CvarStringSource, getEntry, entity(entity this, int i, void(string name, string icon) returns))
+ {
+ string s = this.CvarStringSource_cvar;
+ this.StringSource_str = s ? cvar_string(s) : string_null;
+ return super.getEntry(this, i, returns);
+ }
+ METHOD(CvarStringSource, reload, int(entity this, string filter))
+ {
+ string s = this.CvarStringSource_cvar;
+ this.StringSource_str = s ? cvar_string(s) : string_null;
+ return super.reload(this, filter);
+ }
+ENDCLASS(CvarStringSource)
#endif
#include "datasource.qc"
CLASS(SettingSource, DataSource)
- METHOD(SettingSource, getEntry, entity(int i, void(string name, string icon) returns))
+ METHOD(SettingSource, getEntry, entity(entity this, int i, void(string name, string icon) returns))
{
Lazy l = SETTINGS[i];
entity it = l.m_get();
if (returns) returns(it.title, string_null);
return it;
}
- METHOD(SettingSource, reload, int(string filter)) { return SETTINGS_COUNT; }
+ METHOD(SettingSource, reload, int(entity this, string filter)) { return SETTINGS_COUNT; }
ENDCLASS(SettingSource)
#include "listbox.qc"
METHOD(XonoticRegisteredSettingsList, drawListBoxItem, void(entity this, int i, vector absSize, bool isSelected, bool isFocused))
{
if (!this.source) return;
- if (!this.source.getEntry(i, XonoticRegisteredSettingsList_cb)) return;
+ if (!this.source.getEntry(this.source, i, XonoticRegisteredSettingsList_cb)) return;
string name = XonoticRegisteredSettingsList_cb_name;
if (isSelected) {
draw_Fill('0 0 0', '1 1 0', SKINCOLOR_LISTBOX_SELECTED, SKINALPHA_LISTBOX_SELECTED);
this.nItems = 0;
return;
}
- this.nItems = this.source.reload(this.stringFilter);
+ this.nItems = this.source.reload(this.source, this.stringFilter);
}
METHOD(XonoticRegisteredSettingsList, resizeNotify, void(entity this, vector relOrigin, vector relSize, vector absOrigin, vector absSize))
{
{
entity c = this.currentPanel;
entity removing = this.currentItem;
- entity adding = this.topicList.source.getEntry(this.topicList.selectedItem, func_null);
+ DataSource data = this.topicList.source;
+ entity adding = data.getEntry(data, this.topicList.selectedItem, func_null);
if (removing == adding) return;
if (removing) {
this.currentItem = NULL;
+++ /dev/null
-REGISTER_MUTATOR(mutator_mod, cvar("g_mod"));
-
-MUTATOR_HOOKFUNCTION(mutator_mod, BuildMutatorsString) {
- ret_string = strcat(ret_string, ":mod");
-}
-
-MUTATOR_HOOKFUNCTION(mutator_mod, BuildMutatorsPrettyString) {
- ret_string = strcat(ret_string, ", Mod");
-}
+++ /dev/null
-#if BUILD_MOD
-#include "main.qc"
-#endif
+++ /dev/null
-REGISTER_MUTATOR(mutator_mod, cvar("g_mod"));
-
-MUTATOR_HOOKFUNCTION(mutator_mod, BuildMutatorsString) {
- ret_string = strcat(ret_string, ":mod");
-}
-
-MUTATOR_HOOKFUNCTION(mutator_mod, BuildMutatorsPrettyString) {
- ret_string = strcat(ret_string, ", Mod");
-}
+++ /dev/null
-#if BUILD_MOD
-#include "main.qc"
-#endif
+++ /dev/null
-REGISTER_MUTATOR(mutator_mod, cvar("g_mod"));
-
-MUTATOR_HOOKFUNCTION(mutator_mod, BuildMutatorsString) {
- ret_string = strcat(ret_string, ":mod");
-}
-
-MUTATOR_HOOKFUNCTION(mutator_mod, BuildMutatorsPrettyString) {
- ret_string = strcat(ret_string, ", Mod");
-}
+++ /dev/null
-#if BUILD_MOD
-#include "main.qc"
-#endif
float next_pingtime;
.float Version;
-.int SendFlags;
-.bool(entity to, int sendflags) SendEntity;
// player sounds, voice messages
// TODO implemented fall and falling
remove = remove_unsafely;
}
-void UncustomizeEntitiesRun()
-{SELFPARAM();
- for (entity e = NULL; (e = findfloat(e, uncustomizeentityforclient_set, 1)); )
- {
- WITH(entity, self, e, e.uncustomizeentityforclient());
- }
-}
-void SetCustomizer(entity e, float(void) customizer, void(void) uncustomizer)
-{
- e.customizeentityforclient = customizer;
- e.uncustomizeentityforclient = uncustomizer;
- e.uncustomizeentityforclient_set = !!uncustomizer;
-}
-
-void Net_LinkEntity(entity e, bool docull, float dt, bool(entity, int) sendfunc)
-{SELFPARAM();
- vector mi, ma;
-
- if (e.classname == "")
- e.classname = "net_linked";
-
- if (e.model == "" || self.modelindex == 0)
- {
- mi = e.mins;
- ma = e.maxs;
- setmodel(e, MDL_Null);
- setsize(e, mi, ma);
- }
-
- e.SendEntity = sendfunc;
- e.SendFlags = 0xFFFFFF;
-
- if (!docull)
- e.effects |= EF_NODEPTHTEST;
-
- if (dt)
- {
- e.nextthink = time + dt;
- e.think = SUB_Remove;
- }
-}
-
-
.float(entity) isEliminated;
float EliminatedPlayers_SendEntity(entity to, float sendflags)
{
#define cvar_set_normal builtin_cvar_set
.vector dropped_origin;
-.void(void) uncustomizeentityforclient;
-.float uncustomizeentityforclient_set;
.float nottargeted;
entity eliminatedPlayers;
void soundat(entity e, vector o, float chan, string samp, float vol, float _atten);
-void defer(float fdelay, void() func);
-
-void UncustomizeEntitiesRun();
void InitializeEntitiesRun();
void stopsoundto(float _dest, entity e, float chan);
{
//self.effects = EF_ADDITIVE | EF_FULLBRIGHT | EF_LOWPRECISION;
if(!self.traileffectnum)
- self.traileffectnum = _particleeffectnum(Nade_TrailEffect(NADES[self.nade_type].m_projectile[false], self.team));
+ self.traileffectnum = _particleeffectnum(Nade_TrailEffect(NADES[self.nade_type].m_projectile[false], self.team).eent_eff_name);
self.alpha = 1;
}
//setattachment(n, self, "bip01 l hand");
n.exteriormodeltoclient = self;
n.customizeentityforclient = nade_customize;
- n.traileffectnum = _particleeffectnum(Nade_TrailEffect(NADES[n.nade_type].m_projectile[false], self.team));
+ n.traileffectnum = _particleeffectnum(Nade_TrailEffect(NADES[n.nade_type].m_projectile[false], self.team).eent_eff_name);
n.colormod = NADES[n.nade_type].m_color;
n.realowner = self;
n.colormap = self.colormap;
#include "../warpzonelib/server.qc"
#include "../warpzonelib/util_server.qc"
-#include "../mod/server/progs.inc"
+#if BUILD_MOD
+#include "../../mod/server/progs.inc"
+#endif