by Anakin S. » Mon Jun 27, 2005 9:03 pm
I'm experiencing some similar problems with my friendly weapon. I tried the friendly aiming thing by making something like the doom 3 bfg with the laser that shoots out at nearby enemies while the projectile is firing and making it so the projectile can be shot down without triggering the bfg wave. Unfortunately, the bfg shot cannot be shot down - attacks just go right through. The lasers also act strangely. They aim at nearby enemies, but they just pass right through them without harm. However, they can hit enemies that are further away from the projectile and happen to be in the path of the lasers. They also hit the player if the player happens to be in the path. I noticed that the lasers seem to be owned by the nearby monster that happens to be targeted by them. What I mean is that when the player is killed by a laser, the obituary displayed says that he was killed by the monster that the laser was supposed to be aiming at. Monsters have also started infighting as a result of the laser passing through the targeted enemy and striking the one behind it. This also explains why they pass through the targeted nearby monsters without harm. If there are no targets around, the lasers simply shoot at the player once the laser spawners are awakened.
Spoiler:
Code: Select all
ACTOR BFGShot : BFGBall -1
{
Health 25 //1000
Radius 13
Height 8
Speed 5 // slowed down for testing purposes
Damage 100
PROJECTILE
+SHOOTABLE
+NOGRAVITY
+DROPOFF
+NOBLOCKMAP
+FRIENDLY
DONTHURTSHOOTER
SeeSound ""
DeathSound "weapons/bfgx"
States
{
Spawn:
BFS1 AB 4 bright A_CustomMissile("BFGLaserSpawner", 32, 0, 0, 2, 0)
Loop
Death:
BFE1 AB 8 bright
BFE1 C 0 bright A_JumpIfHealthLower(1, 2)
BFE1 C 8 bright A_BFGSpray
Goto Death+5
BFE1 C 8 bright
BFE1 DE 8 bright
Stop
}
}
ACTOR BFGLaserSpawner -1
{
Speed 0
Damage 0
PROJECTILE
MONSTER
+NOGRAVITY
+DROPOFF
+NOBLOCKMAP
+FRIENDLY
SeeSound ""
DeathSound ""
States
{
Spawn:
TNT1 AAAAA 1 bright A_Look
Stop // change to Loop for a nasty surprise!
See:
TNT1 A 0 bright A_JumpIfCloser(1024, 2)
TNT1 A 1 bright
Stop
TNT1 A 1 bright A_CustomMissile("BFGLaser", 0, 0, 0)
Stop
}
}
ACTOR BFGLaser : MageWandMissile -1
{
Damage 10
SeeSound ""
DeathSound ""
}
I'm experiencing some similar problems with my friendly weapon. I tried the friendly aiming thing by making something like the doom 3 bfg with the laser that shoots out at nearby enemies while the projectile is firing and making it so the projectile can be shot down without triggering the bfg wave. Unfortunately, the bfg shot cannot be shot down - attacks just go right through. The lasers also act strangely. They aim at nearby enemies, but they just pass right through them without harm. However, they can hit enemies that are further away from the projectile and happen to be in the path of the lasers. They also hit the player if the player happens to be in the path. I noticed that the lasers seem to be owned by the nearby monster that happens to be targeted by them. What I mean is that when the player is killed by a laser, the obituary displayed says that he was killed by the monster that the laser was supposed to be aiming at. Monsters have also started infighting as a result of the laser passing through the targeted enemy and striking the one behind it. This also explains why they pass through the targeted nearby monsters without harm. If there are no targets around, the lasers simply shoot at the player once the laser spawners are awakened.
[spoiler][code]
ACTOR BFGShot : BFGBall -1
{
Health 25 //1000
Radius 13
Height 8
Speed 5 // slowed down for testing purposes
Damage 100
PROJECTILE
+SHOOTABLE
+NOGRAVITY
+DROPOFF
+NOBLOCKMAP
+FRIENDLY
DONTHURTSHOOTER
SeeSound ""
DeathSound "weapons/bfgx"
States
{
Spawn:
BFS1 AB 4 bright A_CustomMissile("BFGLaserSpawner", 32, 0, 0, 2, 0)
Loop
Death:
BFE1 AB 8 bright
BFE1 C 0 bright A_JumpIfHealthLower(1, 2)
BFE1 C 8 bright A_BFGSpray
Goto Death+5
BFE1 C 8 bright
BFE1 DE 8 bright
Stop
}
}
ACTOR BFGLaserSpawner -1
{
Speed 0
Damage 0
PROJECTILE
MONSTER
+NOGRAVITY
+DROPOFF
+NOBLOCKMAP
+FRIENDLY
SeeSound ""
DeathSound ""
States
{
Spawn:
TNT1 AAAAA 1 bright A_Look
Stop // change to Loop for a nasty surprise!
See:
TNT1 A 0 bright A_JumpIfCloser(1024, 2)
TNT1 A 1 bright
Stop
TNT1 A 1 bright A_CustomMissile("BFGLaser", 0, 0, 0)
Stop
}
}
ACTOR BFGLaser : MageWandMissile -1
{
Damage 10
SeeSound ""
DeathSound ""
}[/code][/spoiler]