mboost-dp1
Hvem får det sidste ord? :)
- Forside
- ⟨
- Forum
- ⟨
- Tagwall
fe950 (13600) skrev:CBM (13597) skrev:Qw_freak (13596) skrev:Ord.
Ordinær røv diller?
No.
Overordentlig Raffineret Deja-vu
Angående besøg af en Overdimensioneret Røv Diller?
Actor Magehand : GTHand replaces GTHand
//teletubbie imp
//
//The following is a variant of the Doom
//imp, a monster that will randomly teleport
//around a room, firing at you. It uses //A_Jump
//to decide a certain chance of it //triggering
//A_Teleport, causing it to teleport to a
//random "ImpSpot" (a variant of BossSpot), //in its attack state.
actor TeleportImp : DoomImp 601
{
States
{
Spawn:
TROO AB 10 A_Look
Loop
See:
TROO AABBCCDD 3 A_Chase
TROO A 0 A_Jump(200, "See")
TROO A 0 A_Teleport("Missile", "ImpSpot")
Loop
Melee:
Missile:
TROO EF 8 A_FaceTarget
TROO G 6 A_TroopAttack
Goto See
}
}
//This is the SpecialSpot used for the //monster to
//teleport to randomly.
actor ImpSpot : SpecialSpot 600
{
+INVISIBLE
}
//teletubbie imp
//
//The following is a variant of the Doom
//imp, a monster that will randomly teleport
//around a room, firing at you. It uses //A_Jump
//to decide a certain chance of it //triggering
//A_Teleport, causing it to teleport to a
//random "ImpSpot" (a variant of BossSpot), //in its attack state.
actor TeleportImp : DoomImp 601
{
States
{
Spawn:
TROO AB 10 A_Look
Loop
See:
TROO AABBCCDD 3 A_Chase
TROO A 0 A_Jump(200, "See")
TROO A 0 A_Teleport("Missile", "ImpSpot")
Loop
Melee:
Missile:
TROO EF 8 A_FaceTarget
TROO G 6 A_TroopAttack
Goto See
}
}
//This is the SpecialSpot used for the //monster to
//teleport to randomly.
actor ImpSpot : SpecialSpot 600
{
+INVISIBLE
}
// friendly imp that removes enemies
ACTOR AdminImp : Doomimp
{
+FRIENDLY
+MISSILEMORE
+MISSILEEVENMORE
States
{
Melee:
Missile:
TROO EF 8 A_FaceTarget
TROO G 6 A_RemoveTarget (RMVF_EVERYTHING)
Goto See
}
}
// wise tele tubbie
actor WiseImp : TeleportImp
{
states
{
Spawn:
TROO A 0 A_ChangeFlag("FRIGHTENED",0)
// Clear the FRIGHTENED flag if the Imp
//loses its target.
TROO AB 10 A_Look
Goto Spawn+1
See:
TROO AABBCCDD 3 A_Chase
TROO A 0 A_JumpIfInTargetInventory("PlasmaRifle", 1, "Ohcrap")
TROO A 0 A_JumpIfInTargetInventory("BFG9000", 1, "Ohcrap")
loop
Ohcrap:
TROO A 0 A_Pain
// Imp roars in fear
TROO A 3 A_ChangeFlag("FRIGHTENED",1)
TROO AABBCCDD 2 A_Chase
Goto Ohcrap+2
}
}
// alzheimer imp
Actor ForgetfulImp : DoomImp
{
States
{
See:
TROO AABBCCDD 3 A_Chase
TROO A 0 A_GiveInventory("Forgettimer", 1)
// A dummy inventory for tracking how long
//the imp has been searching.
TROO A 0 A_JumpIfInventory("Forgettimer", 20, "Forget")
// Jump to the Forget state when the timer
//reaches 20
Loop
Melee:
Missile:
TROO E 0 A_TakeInventory("Forgettimer", 20)
// Reset the timer.
TROO EF 8 A_FaceTarget
TROO G 6 A_TroopAttack
Goto See
Forget:
TROO A 0 A_TakeInventory("Forgettimer", 20)
TROO A 3 A_ClearTarget
Goto Spawn
}
}
// A_CustomMissile is replaced by A_SpawnProjectile
// A_CustomComboAttack
// A customizable combo attack for monsters. //The actor performs either a melee or
// missile attack depending on the distance //to the target. A melee attack will be
// used if the target is within the actor's //specified melee range. Otherwise, a
// projectile is generated instead.
// EX:
//BOSS G 8 A_CustomComboAttack("BaronBall", //32, 10 * random(1, 8), "baron/melee")
//This is an ice zombie, a frozen-solid //zombie that continues to live. When
//killed, its death state triggers //A_FreezeDeathChunks, bursting it into //chunks
//of ice.
ACTOR IceZombie : ZombieMan
{
Translation "Ice"
States
{
Death:
POSS H 5
POSS I 5 A_Scream
POSS J 5
POSS K 5
POSS L 100
POSS L 10 A_FreezeDeathChunks
Stop
XDeath:
POSS M 5 A_IceGuyDie
Stop
}
}
ACTOR AdminImp : Doomimp
{
+FRIENDLY
+MISSILEMORE
+MISSILEEVENMORE
States
{
Melee:
Missile:
TROO EF 8 A_FaceTarget
TROO G 6 A_RemoveTarget (RMVF_EVERYTHING)
Goto See
}
}
// wise tele tubbie
actor WiseImp : TeleportImp
{
states
{
Spawn:
TROO A 0 A_ChangeFlag("FRIGHTENED",0)
// Clear the FRIGHTENED flag if the Imp
//loses its target.
TROO AB 10 A_Look
Goto Spawn+1
See:
TROO AABBCCDD 3 A_Chase
TROO A 0 A_JumpIfInTargetInventory("PlasmaRifle", 1, "Ohcrap")
TROO A 0 A_JumpIfInTargetInventory("BFG9000", 1, "Ohcrap")
loop
Ohcrap:
TROO A 0 A_Pain
// Imp roars in fear
TROO A 3 A_ChangeFlag("FRIGHTENED",1)
TROO AABBCCDD 2 A_Chase
Goto Ohcrap+2
}
}
// alzheimer imp
Actor ForgetfulImp : DoomImp
{
States
{
See:
TROO AABBCCDD 3 A_Chase
TROO A 0 A_GiveInventory("Forgettimer", 1)
// A dummy inventory for tracking how long
//the imp has been searching.
TROO A 0 A_JumpIfInventory("Forgettimer", 20, "Forget")
// Jump to the Forget state when the timer
//reaches 20
Loop
Melee:
Missile:
TROO E 0 A_TakeInventory("Forgettimer", 20)
// Reset the timer.
TROO EF 8 A_FaceTarget
TROO G 6 A_TroopAttack
Goto See
Forget:
TROO A 0 A_TakeInventory("Forgettimer", 20)
TROO A 3 A_ClearTarget
Goto Spawn
}
}
// A_CustomMissile is replaced by A_SpawnProjectile
// A_CustomComboAttack
// A customizable combo attack for monsters. //The actor performs either a melee or
// missile attack depending on the distance //to the target. A melee attack will be
// used if the target is within the actor's //specified melee range. Otherwise, a
// projectile is generated instead.
// EX:
//BOSS G 8 A_CustomComboAttack("BaronBall", //32, 10 * random(1, 8), "baron/melee")
//This is an ice zombie, a frozen-solid //zombie that continues to live. When
//killed, its death state triggers //A_FreezeDeathChunks, bursting it into //chunks
//of ice.
ACTOR IceZombie : ZombieMan
{
Translation "Ice"
States
{
Death:
POSS H 5
POSS I 5 A_Scream
POSS J 5
POSS K 5
POSS L 100
POSS L 10 A_FreezeDeathChunks
Stop
XDeath:
POSS M 5 A_IceGuyDie
Stop
}
}
//This example baron has a projectile circulating it all the time.
ACTOR SpecialBaronOfHell : BaronOfHell
{
States
{
Spawn:
BOSS A 0 NoDelay A_CustomMissile("OrbitBall", 32, 0, 0, CMF_AIMDIRECTION)
Idle:
Goto Super::Spawn
}
}
ACTOR OrbitBall
{
RenderStyle "Add"
Translation "0:255=%[0,0,0]:[0.93,2,0.87]"
// Makes it green-colored
+MISSILE
+NOINTERACTION
var int user_angle;
// See user variables
States
{
Spawn:
BAL1 A 1 Bright NoDelay A_Warp(AAPTR_TARGET, 32, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
TNT1 A 0 A_SetUserVar("user_angle", user_angle + 8)
Loop
}
}
ACTOR SpecialBaronOfHell : BaronOfHell
{
States
{
Spawn:
BOSS A 0 NoDelay A_CustomMissile("OrbitBall", 32, 0, 0, CMF_AIMDIRECTION)
Idle:
Goto Super::Spawn
}
}
ACTOR OrbitBall
{
RenderStyle "Add"
Translation "0:255=%[0,0,0]:[0.93,2,0.87]"
// Makes it green-colored
+MISSILE
+NOINTERACTION
var int user_angle;
// See user variables
States
{
Spawn:
BAL1 A 1 Bright NoDelay A_Warp(AAPTR_TARGET, 32, 0, 32, user_angle, WARPF_ABSOLUTEANGLE|WARPF_NOCHECKPOSITION|WARPF_INTERPOLATE)
TNT1 A 0 A_SetUserVar("user_angle", user_angle + 8)
Loop
}
}
fe950 (13602) skrev:cnr (13601) skrev:Desværre CBM - jeg er lidt picky med den slags. Jeg skider udelukkende på underbetalte børnearbejdere holdt under slavelignende forhold
Grusomt.
Ja stakkels forårsruller!
Men rart at se han alligevel har visse standarder han følger... Han vil ikke bare skide på hvad som helst
IDENTITETSPOLITIKKENS 10 BUD:
1. Mine følelser bestemmer din ytringsfriheds grænser.
2. Mit krav på safe spaces giver mig retten til at beklikke dig personligt
3. Magtstrukturer er ondskab, medmindre de er defineret af mig
4. Hvordan jeg definerer mig afgør, hvad du kan tillade dig.
5. Jeg er en social konstruktion, men du kan aldrig løbe fra dine nedarvede privilegier.
6. Hold dig i respektfuld afstand af min kultur, mens jeg angriber din
7. Mit køn, min hudfarve, min seksuelle orientering er afgørende i alle spørgsmål.
8. Min ligestilling opnås kun ved diskrimination af dig
9. Min undertrykkelse legitimerer din underkastelse.
10. Alt handler om mig. Derfor må du vige.
1. Mine følelser bestemmer din ytringsfriheds grænser.
2. Mit krav på safe spaces giver mig retten til at beklikke dig personligt
3. Magtstrukturer er ondskab, medmindre de er defineret af mig
4. Hvordan jeg definerer mig afgør, hvad du kan tillade dig.
5. Jeg er en social konstruktion, men du kan aldrig løbe fra dine nedarvede privilegier.
6. Hold dig i respektfuld afstand af min kultur, mens jeg angriber din
7. Mit køn, min hudfarve, min seksuelle orientering er afgørende i alle spørgsmål.
8. Min ligestilling opnås kun ved diskrimination af dig
9. Min undertrykkelse legitimerer din underkastelse.
10. Alt handler om mig. Derfor må du vige.
//This extremely powerful shotgun throws you back when you fire it. (recoil)
actor UltimaShotgun : Shotgun
{
States
{
Fire:
SHTG A 3
SHTG A 0 A_Recoil(80)
SHTG A 7 A_FireBullets(20, 20, 50, 5, "BulletPuff", 5)
SHTG A 20
SHTG BC 5
SHTG D 4
SHTG CB 5
SHTG A 3
SHTG A 7 A_ReFire
Goto Ready
}
}
// This sniper pistol has two levels of zoom, 2x and 4x. (A_ZoomFactor)
actor SniperPistol_Zoomed : Inventory
{
inventory.maxamount 2
}
actor SniperPistol : Pistol
{
States
{
AltFire:
PISG ABC 6
TNT1 A 0 A_JumpIfInventory("SniperPistol_Zoomed", 2, "ZoomOut")
TNT1 A 0 A_JumpIfInventory("SniperPistol_Zoomed", 1, "Zoom2")
//fall through
Zoom1:
TNT1 A 0 A_ZoomFactor(2.0)
TNT1 A 0 A_GiveInventory ("SniperPistol_Zoomed", 1)
Goto "AltFireDone"
Zoom2:
TNT1 A 0 A_ZoomFactor(4.0)
TNT1 A 0 A_GiveInventory ("SniperPistol_Zoomed", 1)
Goto "AltFireDone"
ZoomOut:
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 0 A_TakeInventory ("SniperPistol_Zoomed", 2)
Goto "AltFireDone"
AltFireDone:
PISG C 5 A_ReFire
Goto "Ready"
Deselect:
TNT1 A 0 A_TakeInventory ("SniperPistol_Zoomed", 2)
TNT1 A 0 A_ZoomFactor(1.0)
Goto "Super::Deselect"
}
}
//rifle
ACTOR HKG3SG1 : Weapon replaces Berserk
{
Inventory.PickupMessage "H&K G3/SG1"
Inventory.PickupSound "misc/w_pkup"
Weapon.AmmoGive 10
Weapon.AmmoType "Clip"
Weapon.AmmoType2 "Clip"
Weapon.Ammouse 1
Weapon.Ammouse2 1
Weapon.Kickback 40
DamageType "FriendlyFire"
+NOAUTOFIRE
+NOALERT
Scale 0.14
States
{
Spawn:
G3SG A -1
LOOP
Ready:
HKG3 A 0 A_JumpIfInventory("G3Zoom", 1, "ReadyScope")
HKG3 A 1 A_WeaponReady
LOOP
ReadyScope:
ASNS A 1 A_WeaponReady(WRF_NoBob)
LOOP
Deselect:
TNT1 A 0 A_TakeInventory ("G3Zoom", 2)
TNT1 A 0 A_ZoomFactor(1.0)
HKG3 A 1 A_Lower
Goto Deselect+2
Select:
HKG3 A 1 A_Raise
TNT1 A 0 A_Raise
LOOP
Fire:
ASNS A 0 A_JumpIfInventory("G3Zoom", 1, "FireScope")
HKGF A 0 A_AlertMonsters
HKGF A 0 A_PlayWeaponSound("weapons/sg550_fire")
HKGF A 0 A_FireProjectile("GunSmokeSpawner",0,0,5,9)
HKGF A 1 Bright A_FireBullets (1.5, 1.5, -1, 24, "Puff2")
HKG3 B 0 A_FireProjectile("556MMCasingSpawner",0,0,14,4)
HKG3 B 0 ACS_Execute(987,0,125,random(2,4),0)
HKG3 BCDEFGHI 1 A_WeaponReady(WRF_NoFire)
HKG3 A 9 A_WeaponReady(WRF_NoFire)
Goto Ready
FireScope:
ASNS A 0 A_AlertMonsters
ASNS A 0 A_PlayWeaponSound("weapons/sg550_fire")
ASNS A 1 Bright A_FireBullets (0, 0, -1, 24, "Puff2")
ASNS A 0 A_FireProjectile("556MMCasingSpawner",0,0,14,4)
ASNS A 0 ACS_Execute(987,0,95,random(2,4),0)
ASNS A 17
Goto ReadyScope
AltFire:
ASNS A 0 A_SetCrosshair(50)
ASNS A 2 A_WeaponReady(WRF_NoBob)
TNT1 A 0 A_JumpIfInventory("G3Zoom", 2, "ZoomOut")
TNT1 A 0 A_JumpIfInventory("G3Zoom", 1, "Zoom2")
//fall through
Zoom1:
TNT1 A 0 A_ZoomFactor(3.0)
TNT1 A 0 A_GiveInventory ("G3Zoom", 1)
Goto "AltFireDone"
Zoom2:
TNT1 A 0 A_ZoomFactor(8.0)
TNT1 A 0 A_GiveInventory ("G3Zoom", 1)
Goto "AltFireDone"
ZoomOut:
TNT1 A 0 A_SetCrosshair(0)
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 0 A_TakeInventory ("G3Zoom", 2)
Goto "AltFireDone"
AltFireDone:
ASNS A 1 A_ReFire
Goto "Ready"
}
}
actor G3Zoom : Inventory
{
inventory.maxamount 2
}
//crosshair
A_SetCrosshair (int number)
number: The crosshair number to use. A value of 0 resets the crosshair to the player's default selection.
You can use this function to set a specific crosshair for the currently-selected weapon, or change the current crosshair based on zoom factor or other conditions.
//old beta BFG firering
Fire:
BFGG A 10 A_BFGSound
BFGG BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 1 A_FireOldBFG
BFGG B 0 A_Light0
BFGG B 20 A_ReFire
Goto Ready
//current BFG ball
//Autoaim is disabled by default through
//the "Allow BFG aiming" DMFlag. This can be circumvented
//by spawning it manually:
A_FireProjectile("BFGBall", 0, 1)
//plasma
Fire:
PLSG A 3 A_FirePlasma
PLSG B 20 A_ReFire
Goto Ready
//strife assault gun fire
Fire:
RIFF AB 3 A_FireAssaultGun
RIFG D 3 A_FireAssaultGun
RIFG C 0 A_ReFire
RIFG B 2 A_Light0
Goto Ready
//grenade
//depricated: GRLG B 12 A_FireSTGrenade
//current: GRLG B 12 A_FireProjectile ("Grenade", 0, true, 0, 0, 0, -6.328125)
//railgun
ACTOR PlayerRailgun : Weapon
{
Radius 24
Height 16
Obituary "%o got railgunned by %k."
Weapon.SelectionOrder 100
Weapon.SlotNumber 6
Weapon.Kickback 500
Weapon.AmmoType "Clip"
Weapon.AmmoUse 1
Weapon.AmmoGive 30
AttackSound "weapons/rbeam"
+EXTREMEDEATH
States
{
Spawn:
RLGN A -1
Stop
Ready:
RLGN B 1 A_WeaponReady
Loop
Deselect:
RLGN B 1 A_Lower
Loop
Select:
RLGN B 1 A_Raise
Loop
Fire:
RLGN C 4
RLGN D 0 A_RailAttack(2, 0, 1, "ff ff a0", "ff ff a0", 0, 0, "none")
RLGN E 8 Bright
RLGN F 4
TNT1 A 0 A_ReFire
Goto Ready
}
}
//monster chainsaw in melee
Melee:
PLAY E 4
PLAY E 4 A_M_Saw
PLAY E 0 A_JumpIfCloser(40, "Melee")
goto See
//icon of sin - bosscube - telefrag?
See:
SSWV A 181 A_BrainAwake
SSWV A 150 A_BrainSpit // See SpawnShot
Wait
//mushroom projectile
ACTOR MushRoomBall
{
Radius 3
Height 2
Speed 15
FastSpeed 22
Damage 6
Projectile
+RANDOMIZE
RenderStyle Add
Alpha 0.75
SeeSound "imp/attack"
DeathSound "imp/shotx"
States
{
Spawn:
BAL1 AB 2 Bright
Loop
Death:
BAL1 CDE 2 Bright A_Mushroom("PlasmaBall", 10, MSF_DontHurt, 8, 0.1)
Stop
}
}
//super zombie
ACTOR SuperZombie : ZombieMan replaces ZombieMan
{
States
{
Missile:
POSS E 10 A_FaceTarget
POSS FE 2 Bright A_PosAttack
POSS F 1 A_MonsterRefire(130, "See") // About 50% chance to jump to "See" if target is out of sight.
Goto Missile+1 // Looping back to the attack state to allow the actual refire!
}
}
// hoof
actor Scurymonster
{
Monster
Height 20 // Default variables.
Radius 16 // Default variables.
Speed 10
States
{
Spawn:
MONS A 10 A_Look
Loop
See:
MONS ABCD 4 A_Chase("Meleeattack", "Cowattack")
Loop
Cowattack:
MONS E 5 A_SpawnProjectile("Cowmissile") // Not included in-game.
Goto See
Meleeattack:
MONS F 5 A_CustomMeleeAttack(5)
Goto See
}
}
//healing and homing
//lost soul homing missile
actor HomingLostSoul : LostSoul
{
States
{
Missile:
SKUL C 10 bright A_FaceTarget
SKUL D 4 bright A_SkullAttack
SKUL CD 4 bright
goto Missile+1
}
}
//This function can cause minions to face and heal their master
Missile:
TROO EF 8 A_FaceMaster
TROO G 6 A_SpawnProjectile("HealBall")
goto See
//This function can cause homing projectiles to face their targets at all times.
Spawn:
BALL A 4 A_FaceTracer
BALL B 4 A_SeekerMissile(5, 10)
loop
//bfg spray - usually used on impact
Death:
BFE1 AB 8 Bright
BFE1 C 8 Bright A_BFGSpray
BFE1 DEF 8 Bright
Stop
//mancubus
The 3 attack stages of Doom's Mancubus. Each one shoots 2 missiles of the specified type in different directions. If no type is specified it will use FatShot (the regular Mancubus missile.)
A_FatAttack1 will shoot one shot straight ahead, and the second 11.25 degrees to its left.
A_FatAttack2 will shoot one shot straight ahead, and the second 11.25 degrees to its right.
A_FatAttack3 will shoot two shots, one 5.625 degrees to the left, and the other 5.625 degrees to the right.
Missile:
FATT G 20 A_FatRaise
FATT H 10 bright A_FatAttack1 // See FatShot
FATT IG 5 A_FaceTarget
FATT H 10 bright A_FatAttack2
FATT IG 5 A_FaceTarget
FATT H 10 bright A_FatAttack3
FATT IG 5 A_FaceTarget
goto See
//its a trap!!
ACTOR TrapProjectileLauncher 20005
{
Monster
+STANDSTILL
+NOBLOCKMAP
+NOGRAVITY
-SHOOTABLE
States
{
Spawn:
TNT1 A 5 A_LookEx (LOF_NOSOUNDCHECK, 0, 0, 0, 0, "SpawnSkip")
Loop
SpawnSkip:
TNT1 A 5
TNT1 A 0 A_JumpIf (args[0]==1, "Constant")
TNT1 A 0 A_JumpIf (args[0]==2, "Automatic")
TNT1 A 0 A_JumpIf (args[0]==3, "Smart")
Constant:
//First Function: Always Shoot
TNT1 A 0 Thing_Projectile (0, args[1], (angle * 256 / 360)%256, args[2], args[3])
TNT1 A 0
Goto Spawn
Automatic:
//Second Function: Shoot when in sight
TNT1 A 0 A_JumpIfTargetInLOS (2,args[4]*256)
TNT1 A 0 A_Jump (256,2)
TNT1 A 0 Thing_Projectile (0, args[1], (angle * 256 / 360)%256, args[2], args[3])
TNT1 A 0
Goto Spawn
Smart:
//Third Function: Same as second, but can turn.
TNT1 A 0 A_FaceTarget
TNT1 A 0 A_JumpIfTargetInLOS (2,args[4]*256)
TNT1 A 0 A_Jump (256,2)
TNT1 A 0 Thing_Projectile (0, args[1], (angle * 256 / 360)%256, args[2], args[3])
TNT1 A 0
Goto Spawn
}
}
//vile missile
Missile:
VILE G 0 BRIGHT A_VileStart
VILE G 10 BRIGHT A_FaceTarget
VILE H 8 BRIGHT A_VileTarget
VILE IJKLMN 8 BRIGHT A_FaceTarget
VILE O 8 BRIGHT A_VileAttack
VILE P 20 BRIGHT
Goto See
//beserker
Fire:
KNIF B 4
KNIF C 4 A_CustomPunch(20, FALSE, 0)
// 20 * random(1, 8) since norandom is false, uses no ammo, will
// spawn a BulletPuff, has a range of 64, and doesn't steal life.
KNIF D 5
KNIF C 4
KNIF B 5 A_ReFire
Goto Ready
Fire:
SWRD B 4
SWRD C 4 A_CustomPunch(random(4, 8) * 10, TRUE, 0, "SwordPuff", 96)
// Uses a custom damage formula, spawns
// a custom puff, and has a longer range of 96.
SWRD D 4
SWRD C 6
SWRD B 6 A_ReFire
Goto Ready
ACTOR CustomFist : Fist
{
States
{
Fire:
PUNG B 4
TNT1 A 0 A_JumpIfInventory("PowerStrength", 1, "Berserked")
Normal:
PUNG C 4 A_CustomPunch(2 * random(1, 10), TRUE)
Goto FireEnd
Berserked:
PUNG C 4 A_CustomPunch(20 * random(1, 10), TRUE)
FireEnd:
PUNG D 5
PUNG C 4
PUNG B 5 A_ReFire
Goto Ready
}
}
// close range shotgun
Fire:
TRIF A 5 Bright A_FireBullets(0, 0, 1, 45, "RiflePuff", FBF_USEAMMO|FBF_NORANDOM)
TRIF B 5 Bright
TRIG A 10
TRIG B 0 A_ReFire
Goto Ready
// odd stuff
ACTOR OddArtifact : Megasphere
{
Inventory.PickupMessage "Oddsphere!"
States
{
Pickup:
TNT1 A 0
{ // See anonymous functions.
If(A_SelectWeapon("BFG9000"))
{
A_GiveInventory("Cell", 40);
}
Else
{
A_DamageSelf(health / 2);
}
}
Stop
}
}
// new beserk
ACTOR NewBerserk : Berserk replaces Berserk
{
States
{
Pickup:
TNT1 A 0 A_GiveInventory("PowerStrength")
TNT1 A 0 HealThing(100)
TNT1 A 0 A_SelectWeapon("KoolFist")
stop
}
}
// magic missile - do we have a warmage present?
ACTOR MagicMissile
{
Projectile
+RANDOMIZE
+SEEKERMISSILE
Height 16
Radius 8
Speed 10
Damage (random(13, 17))
RenderStyle "Add"
Alpha 0.8
States
{
Spawn:
MMIS B 2 Bright A_SeekerMissile(0, 2) // MMIS is the sprite used for the missile.
Loop
Death:
MMIS CDE 5 Bright
Stop
}
}
// vile fire
A_Fire [(float height)]
Places the calling actor directly in front of its tracer, with a z offset of height. If height is not specified, it defaults to 0.
ACTOR ArchvileFire
{
Game Doom
SpawnID 98
RenderStyle Add
Alpha 1
+NOBLOCKMAP
+NOGRAVITY
States
{
Spawn:
FIRE A 2 bright A_StartFire
FIRE BAB 2 bright A_Fire
FIRE C 2 bright A_FireCrackle
FIRE BCBCDCDCDEDED 2 bright A_Fire
FIRE E 2 bright A_FireCrackle
FIRE FEFEFGHGHGH 2 bright A_Fire
Stop
}
}
//bishop
ACTOR DarkBall
{
Radius 8
Height 6
Damage 10
Speed 20
PROJECTILE
+Randomize
States
{
Spawn:
DRKB A 1 A_BishopMissileWeave
DRKB B 1 A_BishopMissileWeave
loop
Death:
DRKB CDE 3
Stop
}
}
//depricated
//This function can be duplicated in a more
//generic way with A_Weave(2, 2, 2.0, 1.0)
//serpent staff
Spawn:
CSSF DDEE 1 Bright A_CStaffMissileSlither
Loop
//depricated
//This function can be duplicated in a more
//generic way with A_Weave(3, 0, 1.0, 0.0)
//A_Weave:
//A generalized version of A_BishopMissileWeave and
//A_CStaffMissileSlither. You have to call this
//function repeatedly to have a permanent effect.
//time restricted projectiles
actor RevenantTracer2 : RevenantTracer
{
reactiontime 25
states
{
Spawn:
FATB AB 2 bright A_Tracer // See RevenantTracerSmoke
FATB A 0 A_CountDown
loop
Death:
FBXP A 8 bright
FBXP B 6 bright
FBXP C 4 bright
stop
}
}
//should only be used with missile-type actors
//junk pieces
Wound:
DISP A 10 A_SpawnItemEx("DispenserJunk", random(-16, 16), random(-16, 16), 16)
TNT1 A 0 A_CountdownArg(0)
loop
Death: // reuses Rocket's explosion sprites.
MISL B 8 bright A_Scream
MISL C 6 bright
MISL D 4 bright
stop
// show stopper
ACTOR SoulStopper : LostSoul
{
States
{
Missile:
SKUL C 10 bright A_FaceTarget
SKUL D 4 bright A_SkullAttack
SKUL CDCDCDC 4 Bright
SKUL C 0 A_Stop
Goto See
}
}
//This Lost Soul flies through the air to attack but stops after a short distance
actor UltimaShotgun : Shotgun
{
States
{
Fire:
SHTG A 3
SHTG A 0 A_Recoil(80)
SHTG A 7 A_FireBullets(20, 20, 50, 5, "BulletPuff", 5)
SHTG A 20
SHTG BC 5
SHTG D 4
SHTG CB 5
SHTG A 3
SHTG A 7 A_ReFire
Goto Ready
}
}
// This sniper pistol has two levels of zoom, 2x and 4x. (A_ZoomFactor)
actor SniperPistol_Zoomed : Inventory
{
inventory.maxamount 2
}
actor SniperPistol : Pistol
{
States
{
AltFire:
PISG ABC 6
TNT1 A 0 A_JumpIfInventory("SniperPistol_Zoomed", 2, "ZoomOut")
TNT1 A 0 A_JumpIfInventory("SniperPistol_Zoomed", 1, "Zoom2")
//fall through
Zoom1:
TNT1 A 0 A_ZoomFactor(2.0)
TNT1 A 0 A_GiveInventory ("SniperPistol_Zoomed", 1)
Goto "AltFireDone"
Zoom2:
TNT1 A 0 A_ZoomFactor(4.0)
TNT1 A 0 A_GiveInventory ("SniperPistol_Zoomed", 1)
Goto "AltFireDone"
ZoomOut:
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 0 A_TakeInventory ("SniperPistol_Zoomed", 2)
Goto "AltFireDone"
AltFireDone:
PISG C 5 A_ReFire
Goto "Ready"
Deselect:
TNT1 A 0 A_TakeInventory ("SniperPistol_Zoomed", 2)
TNT1 A 0 A_ZoomFactor(1.0)
Goto "Super::Deselect"
}
}
//rifle
ACTOR HKG3SG1 : Weapon replaces Berserk
{
Inventory.PickupMessage "H&K G3/SG1"
Inventory.PickupSound "misc/w_pkup"
Weapon.AmmoGive 10
Weapon.AmmoType "Clip"
Weapon.AmmoType2 "Clip"
Weapon.Ammouse 1
Weapon.Ammouse2 1
Weapon.Kickback 40
DamageType "FriendlyFire"
+NOAUTOFIRE
+NOALERT
Scale 0.14
States
{
Spawn:
G3SG A -1
LOOP
Ready:
HKG3 A 0 A_JumpIfInventory("G3Zoom", 1, "ReadyScope")
HKG3 A 1 A_WeaponReady
LOOP
ReadyScope:
ASNS A 1 A_WeaponReady(WRF_NoBob)
LOOP
Deselect:
TNT1 A 0 A_TakeInventory ("G3Zoom", 2)
TNT1 A 0 A_ZoomFactor(1.0)
HKG3 A 1 A_Lower
Goto Deselect+2
Select:
HKG3 A 1 A_Raise
TNT1 A 0 A_Raise
LOOP
Fire:
ASNS A 0 A_JumpIfInventory("G3Zoom", 1, "FireScope")
HKGF A 0 A_AlertMonsters
HKGF A 0 A_PlayWeaponSound("weapons/sg550_fire")
HKGF A 0 A_FireProjectile("GunSmokeSpawner",0,0,5,9)
HKGF A 1 Bright A_FireBullets (1.5, 1.5, -1, 24, "Puff2")
HKG3 B 0 A_FireProjectile("556MMCasingSpawner",0,0,14,4)
HKG3 B 0 ACS_Execute(987,0,125,random(2,4),0)
HKG3 BCDEFGHI 1 A_WeaponReady(WRF_NoFire)
HKG3 A 9 A_WeaponReady(WRF_NoFire)
Goto Ready
FireScope:
ASNS A 0 A_AlertMonsters
ASNS A 0 A_PlayWeaponSound("weapons/sg550_fire")
ASNS A 1 Bright A_FireBullets (0, 0, -1, 24, "Puff2")
ASNS A 0 A_FireProjectile("556MMCasingSpawner",0,0,14,4)
ASNS A 0 ACS_Execute(987,0,95,random(2,4),0)
ASNS A 17
Goto ReadyScope
AltFire:
ASNS A 0 A_SetCrosshair(50)
ASNS A 2 A_WeaponReady(WRF_NoBob)
TNT1 A 0 A_JumpIfInventory("G3Zoom", 2, "ZoomOut")
TNT1 A 0 A_JumpIfInventory("G3Zoom", 1, "Zoom2")
//fall through
Zoom1:
TNT1 A 0 A_ZoomFactor(3.0)
TNT1 A 0 A_GiveInventory ("G3Zoom", 1)
Goto "AltFireDone"
Zoom2:
TNT1 A 0 A_ZoomFactor(8.0)
TNT1 A 0 A_GiveInventory ("G3Zoom", 1)
Goto "AltFireDone"
ZoomOut:
TNT1 A 0 A_SetCrosshair(0)
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 0 A_TakeInventory ("G3Zoom", 2)
Goto "AltFireDone"
AltFireDone:
ASNS A 1 A_ReFire
Goto "Ready"
}
}
actor G3Zoom : Inventory
{
inventory.maxamount 2
}
//crosshair
A_SetCrosshair (int number)
number: The crosshair number to use. A value of 0 resets the crosshair to the player's default selection.
You can use this function to set a specific crosshair for the currently-selected weapon, or change the current crosshair based on zoom factor or other conditions.
//old beta BFG firering
Fire:
BFGG A 10 A_BFGSound
BFGG BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 1 A_FireOldBFG
BFGG B 0 A_Light0
BFGG B 20 A_ReFire
Goto Ready
//current BFG ball
//Autoaim is disabled by default through
//the "Allow BFG aiming" DMFlag. This can be circumvented
//by spawning it manually:
A_FireProjectile("BFGBall", 0, 1)
//plasma
Fire:
PLSG A 3 A_FirePlasma
PLSG B 20 A_ReFire
Goto Ready
//strife assault gun fire
Fire:
RIFF AB 3 A_FireAssaultGun
RIFG D 3 A_FireAssaultGun
RIFG C 0 A_ReFire
RIFG B 2 A_Light0
Goto Ready
//grenade
//depricated: GRLG B 12 A_FireSTGrenade
//current: GRLG B 12 A_FireProjectile ("Grenade", 0, true, 0, 0, 0, -6.328125)
//railgun
ACTOR PlayerRailgun : Weapon
{
Radius 24
Height 16
Obituary "%o got railgunned by %k."
Weapon.SelectionOrder 100
Weapon.SlotNumber 6
Weapon.Kickback 500
Weapon.AmmoType "Clip"
Weapon.AmmoUse 1
Weapon.AmmoGive 30
AttackSound "weapons/rbeam"
+EXTREMEDEATH
States
{
Spawn:
RLGN A -1
Stop
Ready:
RLGN B 1 A_WeaponReady
Loop
Deselect:
RLGN B 1 A_Lower
Loop
Select:
RLGN B 1 A_Raise
Loop
Fire:
RLGN C 4
RLGN D 0 A_RailAttack(2, 0, 1, "ff ff a0", "ff ff a0", 0, 0, "none")
RLGN E 8 Bright
RLGN F 4
TNT1 A 0 A_ReFire
Goto Ready
}
}
//monster chainsaw in melee
Melee:
PLAY E 4
PLAY E 4 A_M_Saw
PLAY E 0 A_JumpIfCloser(40, "Melee")
goto See
//icon of sin - bosscube - telefrag?
See:
SSWV A 181 A_BrainAwake
SSWV A 150 A_BrainSpit // See SpawnShot
Wait
//mushroom projectile
ACTOR MushRoomBall
{
Radius 3
Height 2
Speed 15
FastSpeed 22
Damage 6
Projectile
+RANDOMIZE
RenderStyle Add
Alpha 0.75
SeeSound "imp/attack"
DeathSound "imp/shotx"
States
{
Spawn:
BAL1 AB 2 Bright
Loop
Death:
BAL1 CDE 2 Bright A_Mushroom("PlasmaBall", 10, MSF_DontHurt, 8, 0.1)
Stop
}
}
//super zombie
ACTOR SuperZombie : ZombieMan replaces ZombieMan
{
States
{
Missile:
POSS E 10 A_FaceTarget
POSS FE 2 Bright A_PosAttack
POSS F 1 A_MonsterRefire(130, "See") // About 50% chance to jump to "See" if target is out of sight.
Goto Missile+1 // Looping back to the attack state to allow the actual refire!
}
}
// hoof
actor Scurymonster
{
Monster
Height 20 // Default variables.
Radius 16 // Default variables.
Speed 10
States
{
Spawn:
MONS A 10 A_Look
Loop
See:
MONS ABCD 4 A_Chase("Meleeattack", "Cowattack")
Loop
Cowattack:
MONS E 5 A_SpawnProjectile("Cowmissile") // Not included in-game.
Goto See
Meleeattack:
MONS F 5 A_CustomMeleeAttack(5)
Goto See
}
}
//healing and homing
//lost soul homing missile
actor HomingLostSoul : LostSoul
{
States
{
Missile:
SKUL C 10 bright A_FaceTarget
SKUL D 4 bright A_SkullAttack
SKUL CD 4 bright
goto Missile+1
}
}
//This function can cause minions to face and heal their master
Missile:
TROO EF 8 A_FaceMaster
TROO G 6 A_SpawnProjectile("HealBall")
goto See
//This function can cause homing projectiles to face their targets at all times.
Spawn:
BALL A 4 A_FaceTracer
BALL B 4 A_SeekerMissile(5, 10)
loop
//bfg spray - usually used on impact
Death:
BFE1 AB 8 Bright
BFE1 C 8 Bright A_BFGSpray
BFE1 DEF 8 Bright
Stop
//mancubus
The 3 attack stages of Doom's Mancubus. Each one shoots 2 missiles of the specified type in different directions. If no type is specified it will use FatShot (the regular Mancubus missile.)
A_FatAttack1 will shoot one shot straight ahead, and the second 11.25 degrees to its left.
A_FatAttack2 will shoot one shot straight ahead, and the second 11.25 degrees to its right.
A_FatAttack3 will shoot two shots, one 5.625 degrees to the left, and the other 5.625 degrees to the right.
Missile:
FATT G 20 A_FatRaise
FATT H 10 bright A_FatAttack1 // See FatShot
FATT IG 5 A_FaceTarget
FATT H 10 bright A_FatAttack2
FATT IG 5 A_FaceTarget
FATT H 10 bright A_FatAttack3
FATT IG 5 A_FaceTarget
goto See
//its a trap!!
ACTOR TrapProjectileLauncher 20005
{
Monster
+STANDSTILL
+NOBLOCKMAP
+NOGRAVITY
-SHOOTABLE
States
{
Spawn:
TNT1 A 5 A_LookEx (LOF_NOSOUNDCHECK, 0, 0, 0, 0, "SpawnSkip")
Loop
SpawnSkip:
TNT1 A 5
TNT1 A 0 A_JumpIf (args[0]==1, "Constant")
TNT1 A 0 A_JumpIf (args[0]==2, "Automatic")
TNT1 A 0 A_JumpIf (args[0]==3, "Smart")
Constant:
//First Function: Always Shoot
TNT1 A 0 Thing_Projectile (0, args[1], (angle * 256 / 360)%256, args[2], args[3])
TNT1 A 0
Goto Spawn
Automatic:
//Second Function: Shoot when in sight
TNT1 A 0 A_JumpIfTargetInLOS (2,args[4]*256)
TNT1 A 0 A_Jump (256,2)
TNT1 A 0 Thing_Projectile (0, args[1], (angle * 256 / 360)%256, args[2], args[3])
TNT1 A 0
Goto Spawn
Smart:
//Third Function: Same as second, but can turn.
TNT1 A 0 A_FaceTarget
TNT1 A 0 A_JumpIfTargetInLOS (2,args[4]*256)
TNT1 A 0 A_Jump (256,2)
TNT1 A 0 Thing_Projectile (0, args[1], (angle * 256 / 360)%256, args[2], args[3])
TNT1 A 0
Goto Spawn
}
}
//vile missile
Missile:
VILE G 0 BRIGHT A_VileStart
VILE G 10 BRIGHT A_FaceTarget
VILE H 8 BRIGHT A_VileTarget
VILE IJKLMN 8 BRIGHT A_FaceTarget
VILE O 8 BRIGHT A_VileAttack
VILE P 20 BRIGHT
Goto See
//beserker
Fire:
KNIF B 4
KNIF C 4 A_CustomPunch(20, FALSE, 0)
// 20 * random(1, 8) since norandom is false, uses no ammo, will
// spawn a BulletPuff, has a range of 64, and doesn't steal life.
KNIF D 5
KNIF C 4
KNIF B 5 A_ReFire
Goto Ready
Fire:
SWRD B 4
SWRD C 4 A_CustomPunch(random(4, 8) * 10, TRUE, 0, "SwordPuff", 96)
// Uses a custom damage formula, spawns
// a custom puff, and has a longer range of 96.
SWRD D 4
SWRD C 6
SWRD B 6 A_ReFire
Goto Ready
ACTOR CustomFist : Fist
{
States
{
Fire:
PUNG B 4
TNT1 A 0 A_JumpIfInventory("PowerStrength", 1, "Berserked")
Normal:
PUNG C 4 A_CustomPunch(2 * random(1, 10), TRUE)
Goto FireEnd
Berserked:
PUNG C 4 A_CustomPunch(20 * random(1, 10), TRUE)
FireEnd:
PUNG D 5
PUNG C 4
PUNG B 5 A_ReFire
Goto Ready
}
}
// close range shotgun
Fire:
TRIF A 5 Bright A_FireBullets(0, 0, 1, 45, "RiflePuff", FBF_USEAMMO|FBF_NORANDOM)
TRIF B 5 Bright
TRIG A 10
TRIG B 0 A_ReFire
Goto Ready
// odd stuff
ACTOR OddArtifact : Megasphere
{
Inventory.PickupMessage "Oddsphere!"
States
{
Pickup:
TNT1 A 0
{ // See anonymous functions.
If(A_SelectWeapon("BFG9000"))
{
A_GiveInventory("Cell", 40);
}
Else
{
A_DamageSelf(health / 2);
}
}
Stop
}
}
// new beserk
ACTOR NewBerserk : Berserk replaces Berserk
{
States
{
Pickup:
TNT1 A 0 A_GiveInventory("PowerStrength")
TNT1 A 0 HealThing(100)
TNT1 A 0 A_SelectWeapon("KoolFist")
stop
}
}
// magic missile - do we have a warmage present?
ACTOR MagicMissile
{
Projectile
+RANDOMIZE
+SEEKERMISSILE
Height 16
Radius 8
Speed 10
Damage (random(13, 17))
RenderStyle "Add"
Alpha 0.8
States
{
Spawn:
MMIS B 2 Bright A_SeekerMissile(0, 2) // MMIS is the sprite used for the missile.
Loop
Death:
MMIS CDE 5 Bright
Stop
}
}
// vile fire
A_Fire [(float height)]
Places the calling actor directly in front of its tracer, with a z offset of height. If height is not specified, it defaults to 0.
ACTOR ArchvileFire
{
Game Doom
SpawnID 98
RenderStyle Add
Alpha 1
+NOBLOCKMAP
+NOGRAVITY
States
{
Spawn:
FIRE A 2 bright A_StartFire
FIRE BAB 2 bright A_Fire
FIRE C 2 bright A_FireCrackle
FIRE BCBCDCDCDEDED 2 bright A_Fire
FIRE E 2 bright A_FireCrackle
FIRE FEFEFGHGHGH 2 bright A_Fire
Stop
}
}
//bishop
ACTOR DarkBall
{
Radius 8
Height 6
Damage 10
Speed 20
PROJECTILE
+Randomize
States
{
Spawn:
DRKB A 1 A_BishopMissileWeave
DRKB B 1 A_BishopMissileWeave
loop
Death:
DRKB CDE 3
Stop
}
}
//depricated
//This function can be duplicated in a more
//generic way with A_Weave(2, 2, 2.0, 1.0)
//serpent staff
Spawn:
CSSF DDEE 1 Bright A_CStaffMissileSlither
Loop
//depricated
//This function can be duplicated in a more
//generic way with A_Weave(3, 0, 1.0, 0.0)
//A_Weave:
//A generalized version of A_BishopMissileWeave and
//A_CStaffMissileSlither. You have to call this
//function repeatedly to have a permanent effect.
//time restricted projectiles
actor RevenantTracer2 : RevenantTracer
{
reactiontime 25
states
{
Spawn:
FATB AB 2 bright A_Tracer // See RevenantTracerSmoke
FATB A 0 A_CountDown
loop
Death:
FBXP A 8 bright
FBXP B 6 bright
FBXP C 4 bright
stop
}
}
//should only be used with missile-type actors
//junk pieces
Wound:
DISP A 10 A_SpawnItemEx("DispenserJunk", random(-16, 16), random(-16, 16), 16)
TNT1 A 0 A_CountdownArg(0)
loop
Death: // reuses Rocket's explosion sprites.
MISL B 8 bright A_Scream
MISL C 6 bright
MISL D 4 bright
stop
// show stopper
ACTOR SoulStopper : LostSoul
{
States
{
Missile:
SKUL C 10 bright A_FaceTarget
SKUL D 4 bright A_SkullAttack
SKUL CDCDCDC 4 Bright
SKUL C 0 A_Stop
Goto See
}
}
//This Lost Soul flies through the air to attack but stops after a short distance
//rocket with translucent impact
ACTOR PrettyRocket : Rocket replaces Rocket
{
States
{
Death:
MISL B 0 A_SetTranslucent(0.75, 1)
Goto Super::Death
}
}
//actors
There are three actor pointers that are generally used:
target
tracer
master
//Changes the calling actor's or the pointed to actor's speed to speed
//for weapon that can slow down enemies?
A_SetSpeed (float speed [, int pointer])
//infight?
//Changes the calling actor's (or the pointed to actor's) species
//to the defined parameter. Use "None" to remove it from
//all species and subject it to infighting.
A_SetSpecies (str species [, int ptr])
// default pointer points to calling actor
//shadow
A_SetShadow
//Makes the monster 40% translucent and sets the SHADOW flag.
//This simple actor when spawned will gradually become
//smaller and more translucent
ACTOR PulseRifleSmoke
{
States
{
Spawn:
PMIS B 0 Bright A_SetScale(0.6)
PMIS B 1 bright A_FadeOut(0.1)
PMIS B 0 Bright A_SetScale(0.5)
PMIS B 1 bright A_FadeOut(0.1)
PMIS B 0 Bright A_SetScale(0.4)
PMIS B 1 bright A_FadeOut(0.1)
PMIS B 0 Bright A_SetScale(0.3)
PMIS B 1 bright A_FadeOut(0.1)
PMIS B 0 Bright A_SetScale(0.2)
PMIS B 1 bright A_FadeOut(0.1)
PMIS B 0 Bright A_SetScale(0.1)
PMIS B 1 bright A_FadeOut(0.1)
PMIS BBBBB 0 Bright A_FadeOut(0.1)
Stop
}
}
A_SetReflective
A_UnSetReflective
//Makes the calling actor reflect or no longer reflect missiles that hit him.
A_SetInvulnerable
A_UnsetInvulnerable
//as above but with invulnerability
A_SetReflectiveInvulnerable
A_UnsetReflectiveInvulnerable
//invulnerable + reflection
A_SetHealth(int health [, int pointer])
//set health of actor (default is calling actor)
A_SetGravity
//as above but gravity
//moon elemental
Actor SlowPainElem4ZDWiki: PainElemental replaces PainElemental
{
Translation "64:79=16:47", "128:143=152:159"
Speed 4
PainChance 96
Health 500
States
{
See:
PAIN AAAABBBBCCCC 3 A_Chase( "" )
Loop
Death:
PAIN H 8 Bright A_LowGravity
PAIN I 8 Bright A_Scream
PAIN JK 8 Bright
PAIN L 8 Bright A_PainDie
PAIN M 8 Bright
Stop
}
}
// Changes the calling actor's pointer's FloatSpeed property
A_SetFloatSpeed (float speed [, int pointer])
// Makes a monster floating.
A_SetFloat
// floating zombie man
Actor FloatZ: Zombieman replaces Zombieman
{
A_NoGravity
A_SetFloat
A_SetFloatSpeed(15)
}
A_SetFloorClip
Sets the FLOORCLIP flag so the calling actor is affected by a terrain's footclip property.
A_FloatBobPhase (int bob) // 0-63
Actor BobFloatZ: FloatZ replaces FloatZ
{
A_FloatBobPhase(30) //Float Z with bob animation
}
// chaingunguy death - A_ScreamAndUnblock = A_Scream + A_NoBlocking
Death:
CPOS H 5
CPOS I 5 A_Scream //death sound
CPOS J 5 A_NoBlocking // clears actor (solid,dropitems,remove dialogue)
CPOS KLM 5
CPOS N -1
stop
// immortal IMP that only stays dead for 3 seconds when killed
// If it is killed normally it will respawn without fog, but if it is gibbed, it
// will respawn with one.
ACTOR ImmortalImp : DoomImp replaces DoomImp
{
States
{
Death:
TROO I 8
TROO J 8 A_Scream
TROO K 6
TROO L 6 A_NoBlocking
TROO M 105
TROO M 0 A_Respawn(FALSE)
Stop
XDeath:
TROO N 5
TROO O 5 A_XScream
TROO P 5
TROO Q 5 A_NoBlocking
TROO RST 5
TROO U 105
TROO U 0 A_Respawn
Stop
}
}
A_Respawn [(int flags)]
Respawns the calling actor at their initial starting point, and resets its stats in the process. This behaves similarly to if the actor was respawned on the Nightmare skill. If there is a solid object at the spawn point, the respawn will fail, unless the RSF_TELEFRAG flag is set
flags: The following flags can be combined by using the pipe character | between the constant names to alter the behavior of the function:
RSF_FOG — The respawn fog is shown when the actor reappears. This is the default behavior if the flags parameter is omitted.
RSF_KEEPTARGET — The calling actor's target is preserved after respawning.
RSF_TELEFRAG — If a solid telefragable object is in the spawn spot, it will be telefragged and the respawn will be successful
A_Gravity
Makes the calling actor subject to normal gravity so it will fall down when in mid-air.
// jump decorate code to the monster SaiyinVileGoku from Zero Invasion
Jump:
SILE H 0 A_SetFloat
SILE H 0 A_NoGravity
SILE H 0 A_ChangeFlag ("NODAMAGE", 1)
SILE HHH 1 A_SpawnItemEx ("flythrust")
SILE H 30 A_ChangeFlag ("NODAMAGE", 0)
SILE A 10
SILE P 0 A_Jump (80, "Missile2J")
SILE P 0 A_Jump (90, "MissileKJ")
SILE P 0 A_Jump (85, "MissileKiJ")
SILE L 1 BRIGHT A_FaceTarget
SILE LMN 3 BRIGHT A_FaceTarget
SILE O 10 BRIGHT A_FaceTarget
SILE P 0 A_PlaySound ("ki/shot")
SILE O 2 BRIGHT A_SpawnProjectile ("kiblast", 35, 0)
SILE N 8 BRIGHT A_PlaySound ("ka/charge", 0, 150.0)
SILE N 0 BRIGHT A_PlaySound ("kI/shot", 0, 150.0)
SILE LMNO 3
SILE O 10 BRIGHT A_SpawnProjectile ("KiblastBig", 35, 0)
Goto Land
Land:
SILE H 0 A_UnsetFloat
SILE H 25 A_Gravity
Goto see
//turbo
ACTOR TurboRocket : Rocket
{
States
{
Spawn:
TNT1 A 0
MISL A -1 A_ChangeVelocity(velx*2, vely*2, velz, CVF_REPLACE)
//We do this by getting the appropriate velocities (x/y of velx/y/z) and multiplying them by 2,
//and replacing the old ones.
//Do note that this causes the rocket to not follow the crosshair. So it's best suited for things
//that already fall do not follow it. (Like grenades)
Stop
}
}
//This spectre becomes visible if its health goes below 30
Actor Spectre4ZDoomWiki: Spectre replaces Spectre
{
States
{
Pain:
SARG H 2 Fast
SARG H 2 Fast A_Pain
SARG H 0 A_JumpIfHealthLower(30, "MakingVisible")
Goto See
MakingVisible:
SARG H 0 A_ClearShadow
Goto See
}
}
//friend
A_CopyFriendliness [(pointer copyfrom)]
The calling actor changes its affiliation (friendly or not, and allied to which player if friendly) to match that of the pointed actor.
// nightmare
//This Zombieman waits until a nearby archvile of his type (Nightmare) appears. //Here the function is used for prevent resurrection by an incorrect type of //archvile.
Actor NightmareZombie: Zombieman
{
RenderStyle Subtract
States
{
Death:
POSS H 5
POSS I 5 A_Scream
POSS J 0 A_DropItem( "Clip" )
POSS J 0 A_UnsetShootable // Don't "A_Fall" because archviles can react to this function too.
POSS J 5 A_UnsetSolid
POSS K 5
Death.Wait:
POSS L 5
POSS L 0 A_CheckProximity( "Death.HelpMe", "NightmareArch", 64 )
Loop
Death.HelpMe:
POSS L 1 CanRaise A_CheckProximity( "Death.Wait", "Archvile", 64 )
POSS L 0 CanRaise A_CheckProximity( "Death.HelpMe", "NightmareArch", 64 )
Goto Death.Wait
XDeath:
POSS M 5
POSS N 5 A_XScream
POSS O 5 A_NoBlocking
POSS PQRST 5
POSS U 100000 // By default, archviles can only resurrect those who are in a state with a "-1" durability.
Wait
}
}
//gibbs
A_TossGib
Spawns one actor of type Meat (for bleeding monsters) or Junk (for everything else) and tosses it in a random direction.
//cloud
ACTOR Pod
{
Health 45
Radius 16
Height 54
PainChance 255
+SOLID
+NOBLOOD
+SHOOTABLE
+DROPOFF
+WINDTHRUST
+PUSHABLE
+SLIDESONWALLS
+CANPASS
+TELESTOMP
+DONTMORPH
+NOBLOCKMONST
+DONTGIB
+OLDRADIUSDMG
DeathSound "world/podexplode"
PushFactor 0.5
action native A_PodPain(class<Actor> podtype = "PodGoo");
action native A_RemovePod();
States
{
Spawn:
PPOD A 10
Loop
Pain:
PPOD B 14 A_PodPain
Goto Spawn
Death:
PPOD C 5 Bright A_RemovePod
PPOD D 5 Bright A_Scream
PPOD E 5 Bright A_Explode
PPOD F 10 Bright
Stop
Grow:
PPOD IJKLMNOP 3
Goto Spawn
}
}
ACTOR PoisonPod : Pod 20020
{
DeathSound "PoisonPod/Puff"
States
{
Death:
PPOD C 5 Bright A_RemovePod
PPOD D 5 Bright A_Scream
PPOD E 5 Bright A_Explode
PPOD A 0 A_SpawnItemEx("PoisonCloud", 0, 0, 28, 0, 0, 0, 0, SXF_TRANSFERPOINTERS)
PPOD F 10 Bright
Stop
}
}
ACTOR PoisonCloud native
{
Radius 20
Height 30
Mass 0x7fffffff
+NOBLOCKMAP
+NOGRAVITY
+DROPOFF
+NODAMAGETHRUST
+DONTSPLASH
+FOILINVUL
+CANBLAST
+BLOODLESSIMPACT
+BLOCKEDBYSOLIDACTORS
RenderStyle Translucent
Alpha 0.6
DeathSound "PoisonShroomDeath"
DamageType PoisonCloud
action native A_PoisonBagDamage();
action native A_PoisonBagCheck();
States
{
Spawn:
PSBG D 1
PSBG D 1 A_Scream
PSBG DEEEFFFGGGHHHII 2 A_PoisonBagDamage
PSBG I 2 A_PoisonBagCheck
PSBG I 1 A_PoisonBagCheck
Goto Spawn+3
Death:
PSBG HG 7
PSBG FD 6
Stop
}
}
A_PoisonBagInit
Basically equivalent to A_SpawnItem("PoisonCloud", 0, 28).
The only difference is that it also transfers the calling actor's target to the spawned poison cloud, which has in most circumstances no noticeable effect: said target will be considered to be responsible for the damage dealt by the poison cloud and this is important for the poison mushroom as its target at the moment of death will be whoever killed it, potentially resulting in monster infighting.
Note: nearly equivalent to A_SpawnItemEx("PoisonCloud", 0, 0, 28, 0, 0, 0, 0, SXF_TRANSFERPOINTERS)
ACTOR ZPoisonShroom : PoisonBag
{
Radius 6
Height 20
PainChance 255
Health 30
Mass 0x7fffffff
+SHOOTABLE
+SOLID
+NOBLOOD
+NOICEDEATH
-NOBLOCKMAP
-NOGRAVITY
PainSound "PoisonShroomPain"
DeathSound "PoisonShroomDeath"
action native A_PoisonShroom();
States
{
Spawn:
SHRM A 5 A_PoisonShroom
Goto Pain+1
Pain:
SHRM A 6
SHRM B 8 A_Pain
Goto Spawn
Death:
SHRM CD 5
SHRM E 5 A_PoisonBagInit
SHRM F -1
Stop
}
}
//spawn
ACTOR TerranMarine : ScriptedMarine2
{
obituary "%o was killed by a Terran Marine."
translation "112:127=198:207"
dropitem "Clip" 256
dropitem "GreenMedikit" 128
dropitem "GreenStimpack" 128
dropitem "GreenArmor" 16
dropitem "BlueArmor" 8
dropitem "ArmorRed" 4
dropitem "ArmorGray" 2
+FRIENDLY
activesound "starcraft/active"
deathsound "starcraft/death"
states
{
Spawn:
PLY2 A 4 A_Look
PLY2 B 4
goto See
See:
PLY2 AABBCCDD 2 A_FastChase
PLY2 A 0 NoiseAlert (0, 0)
loop
Pain:
PLY2 G 4
PLY2 G 4 A_Pain
goto Spawn+3
Missile:
PLY2 E 8 A_FaceTarget
PLY2 E 2 A_PlayWeaponSound ("starcraft/marinef1")
PLY2 F 2 A_CustomBulletAttack (5.6, 0, 1, 5, "BulletPuff", 0)
PLY2 E 2 A_FaceTarget
PLY2 F 2 A_CustomBulletAttack (5.6, 0, 1, 5, "BulletPuff", 0)
PLY2 E 2 A_FaceTarget
PLY2 F 2 A_CustomBulletAttack (5.6, 0, 1, 5, "BulletPuff", 0)
PLY2 E 10 A_CPosRefire
goto Missile+1
Death:
PLY2 H 10
PLY2 I 10 A_Scream
PLY2 J 10 A_NoBlocking
PLY2 KLM 10
PLY2 N 0 A_SpawnItem("SpawnTMarine",0,0)
PLY2 N 512
goto DDisp
DDisp:
PLY2 N 4 A_FadeOut(0.05)
loop
XDeath:
PLY2 O 5
PLY2 P 5 A_XScream
PLY2 Q 5 A_NoBlocking
PLY2 RSTUV 5
PLY2 W 0 A_SpawnItem("SpawnTMarine",0,0)
PLY2 W 512
goto XDisp
XDisp:
PLY2 W 4 A_FadeOut(0.05)
loop
Raise:
PLY2 MLKJIH 5
goto See
}
}
ACTOR SpawnTMarine
{
states
{
Spawn:
ALLY A 128
ALLY A 0 A_PlaySound("misc/teleport")
ALLY A 0 A_SpawnItemEx("TerranMarine", 0, 0, 0, 0, 0, 0, 0, 64, 0)
TFOG ABCDEFGHIJ 8
Stop
}
}
spawn_item
Spawns an item in front of the calling actor.
This function can be used with monsters, weapons and inventory items.
// humanoids
ACTOR StrifeHumanoid
{
MaxStepHeight 16
MaxDropoffHeight 32
CrushPainSound "misc/pcrush"
States
{
Burn:
BURN A 3 Bright A_PlaySoundEx("human/imonfire", "Voice")
BURN B 3 Bright A_DropFire
BURN C 3 Bright A_Wander
BURN D 3 Bright A_NoBlocking
BURN E 5 Bright A_DropFire
BURN FGH 5 Bright A_Wander
BURN I 5 Bright A_DropFire
BURN JKL 5 Bright A_Wander
BURN M 5 Bright A_DropFire
BURN NOPQPQ 5 Bright
BURN RSTU 7 Bright
BURN V -1
Stop
Disintegrate:
DISR A 5 A_PlaySoundEx("misc/disruptordeath", "Voice")
DISR BC 5
DISR D 5 A_NoBlocking
DISR EF 5
DISR GHIJ 4
MEAT D 700
Stop
}
}
ACTOR Zombie : StrifeHumanoid 169
{
Game Strife
Health 31
Radius 20
Height 56
PainChance 0 // is put into Pain state only by a Teleport_ZombieChanger line
+SOLID
+SHOOTABLE
+FLOORCLIP
+CANPASS
+CANPUSHWALLS
+ACTIVATEMCROSS
MinMissileChance 150
MaxStepHeight 16
MaxDropOffHeight 32
Translation 0
ConversationID 28, -1, -1
DeathSound "zombie/death"
States
{
Spawn:
PEAS A 5 A_CheckTerrain // looks like a Peasant
Loop
Pain:
AGRD A 5 A_CheckTerrain // looks like an Acolyte
Loop
Death:
GIBS M 5 A_TossGib
GIBS N 5 A_XScream
GIBS O 5 A_NoBlocking
GIBS PQRST 4 A_TossGib
GIBS U 5
GIBS V 1400
Stop
}
}
ACTOR Zombie : StrifeHumanoid
{
Health 31
Radius 20
Height 56
PainChance 0
+SOLID
+SHOOTABLE
+FLOORCLIP
+CANPASS
+CANPUSHWALLS
+ACTIVATEMCROSS
MinMissileChance 150
MaxStepHeight 16
MaxDropOffHeight 32
Translation 0
DeathSound "zombie/death"
CrushPainSound "misc/pcrush"
States
{
Spawn:
PEAS A 5 A_CheckTerrain
Loop
Pain:
AGRD A 5 A_CheckTerrain
Loop
Death:
GIBS M 5 A_TossGib
GIBS N 5 A_XScream
GIBS O 5 A_NoBlocking
GIBS PQRST 4 A_TossGib
GIBS U 5
GIBS V -1
Stop
}
}
//players
ACTOR HereticPlayer : PlayerPawn
{
Health 100
Radius 16
Height 56
Mass 100
PainChance 255
Speed 1
Player.DisplayName "Corvus"
Player.StartItem "GoldWand"
Player.StartItem "Staff"
Player.StartItem "GoldWandAmmo", 50
Player.WeaponSlot 1, Staff, Gauntlets
Player.WeaponSlot 2, GoldWand
Player.WeaponSlot 3, Crossbow
Player.WeaponSlot 4, Blaster
Player.WeaponSlot 5, SkullRod
Player.WeaponSlot 6, PhoenixRod
Player.WeaponSlot 7, Mace
Player.ColorRange 225, 240
Player.ColorSet 0, "Green", 225, 240, 238
Player.ColorSet 1, "Yellow", 114, 129, 127
Player.ColorSet 2, "Red", 145, 160, 158
Player.ColorSet 3, "Blue", 190, 205, 203
// Doom Legacy additions
Player.ColorSet 4, "Brown", 67, 82, 80
Player.ColorSet 5, "Light Gray", 9, 24, 22
Player.ColorSet 6, "Light Brown", 74, 89, 87
Player.ColorSet 7, "Light Red", 150, 165, 163
Player.ColorSet 8, "Light Blue", 192, 207, 205
Player.ColorSet 9, "Beige", 95, 110, 108
States
{
Spawn:
PLAY A -1
Stop
See:
PLAY ABCD 4
Loop
Melee:
Missile:
PLAY F 6 BRIGHT
PLAY E 12
Goto Spawn
Pain:
PLAY G 4
PLAY G 4 A_Pain
Goto Spawn
Death:
PLAY H 6 A_PlayerSkinCheck("AltSkinDeath")
PLAY I 6 A_PlayerScream
PLAY JK 6
PLAY L 6 A_NoBlocking
PLAY MNO 6
PLAY P -1
Stop
XDeath:
PLAY Q 0 A_PlayerSkinCheck("AltSkinXDeath")
PLAY Q 5 A_PlayerScream
PLAY R 0 A_NoBlocking
PLAY R 5 A_SkullPop
PLAY STUVWX 5
PLAY Y -1
Stop
Burn:
FDTH A 5 BRIGHT A_PlaySound("*burndeath")
FDTH B 4 BRIGHT
FDTH C 5 BRIGHT
FDTH D 4 BRIGHT A_PlayerScream
FDTH E 5 BRIGHT
FDTH F 4 BRIGHT
FDTH G 5 BRIGHT A_PlaySound("*burndeath")
FDTH H 4 BRIGHT
FDTH I 5 BRIGHT
FDTH J 4 BRIGHT
FDTH K 5 BRIGHT
FDTH L 4 BRIGHT
FDTH M 5 BRIGHT
FDTH N 4 BRIGHT
FDTH O 5 BRIGHT A_NoBlocking
FDTH P 4 BRIGHT
FDTH Q 5 BRIGHT
FDTH R 4 BRIGHT
ACLO E 35 A_CheckPlayerDone
Wait
AltSkinDeath:
PLAY H 10
PLAY I 10 A_PlayerScream
PLAY J 10 A_NoBlocking
PLAY KLM 10
PLAY N -1
Stop
AltSkinXDeath:
PLAY O 5
PLAY P 5 A_XScream
PLAY Q 5 A_NoBlocking
PLAY RSTUV 5
PLAY W -1
Stop
}
}
ACTOR FighterPlayer : PlayerPawn
{
Health 100
PainChance 255
Radius 16
Height 64
Speed 1
+NOSKIN
+NODAMAGETHRUST
+NOTHRUSTWHENINVUL
PainSound "PlayerFighterPain"
RadiusDamageFactor 0.25
Player.JumpZ 9
Player.Viewheight 48
Player.SpawnClass "Fighter"
Player.DisplayName "Fighter"
Player.SoundClass "fighter"
Player.ScoreIcon "FITEFACE"
Player.HealRadiusType "Armor"
Player.HexenArmor 15, 25, 20, 15, 5
Player.StartItem "FWeapFist"
Player.ForwardMove 1.08, 1.2
Player.SideMove 1.125, 1.475
Player.Portrait "P_FWALK1"
Player.WeaponSlot 1, FWeapFist
Player.WeaponSlot 2, FWeapAxe
Player.WeaponSlot 3, FWeapHammer
Player.WeaponSlot 4, FWeapQuietus
Player.ColorRange 246, 254
Player.ColorSet 0, "Gold", 246, 254, 253
Player.ColorSetFile 1, "Red", "TRANTBL0", 0xAC
Player.ColorSetFile 2, "Blue", "TRANTBL1", 0x9D
Player.ColorSetFile 3, "Dull Green", "TRANTBL2", 0x3E
Player.ColorSetFile 4, "Green", "TRANTBL3", 0xC8
Player.ColorSetFile 5, "Gray", "TRANTBL4", 0x2D
Player.ColorSetFile 6, "Brown", "TRANTBL5", 0x6F
Player.ColorSetFile 7, "Purple", "TRANTBL6", 0xEE
States
{
Spawn:
PLAY A -1
Stop
See:
PLAY ABCD 4
Loop
Missile:
Melee:
PLAY EF 8
Goto Spawn
Pain:
PLAY G 4
PLAY G 4 A_Pain
Goto Spawn
Death:
PLAY H 6
PLAY I 6 A_PlayerScream
PLAY JK 6
PLAY L 6 A_NoBlocking
PLAY M 6
PLAY N -1
Stop
XDeath:
PLAY O 5 A_PlayerScream
PLAY P 5 A_SkullPop("BloodyFighterSkull")
PLAY R 5 A_NoBlocking
PLAY STUV 5
PLAY W -1
Stop
Ice:
PLAY X 5 A_FreezeDeath
PLAY X 1 A_FreezeDeathChunks
Wait
Burn:
FDTH A 5 Bright A_PlaySound("*burndeath")
FDTH B 4 Bright
FDTH G 5 Bright
FDTH H 4 Bright A_PlayerScream
FDTH I 5 Bright
FDTH J 4 Bright
FDTH K 5 Bright
FDTH L 4 Bright
FDTH M 5 Bright
FDTH N 4 Bright
FDTH O 5 Bright
FDTH P 4 Bright
FDTH Q 5 Bright
FDTH R 4 Bright
FDTH S 5 Bright A_NoBlocking
FDTH T 4 Bright
FDTH U 5 Bright
FDTH V 4 Bright
ACLO E 35 A_CheckPlayerDone
Wait
ACLO E 8
Stop
}
}
//tagging
A_SprayDecal
void A_SprayDecal (String name [, double dist])
Usage
Generates the specified decal on a nearby wall. The calling actor needs to be facing the wall in order to successfully generate the decal.
//earthquake making rocket
actor BigRocket : Rocket
{
Scale 2.0
Radius 22
Height 16
Speed 25
states
{
Death:
MISL B 0 A_Quake(4,12,0,400)
MISL B 0 A_Quake(2,12,0,800)
MISL B 8 bright A_Explode(250,200,1)
goto Super::Death+1
}
}
A_Quake (int intensity, int duration, int damrad, int tremrad [, sound sfx])
Creates an earthquake around the calling actor.
intensity: Strength of earthquake, ranging from 1 to 9
duration: Duration in tics
damrad: Radius of damage in map units
tremrad: Radius of tremor in map units
sound: Accompanying sound effect for the tremor. (Default: "world/quake".)
// caco death with a quake
Actor Caco4ZDoomWiki: Cacodemon replaces Cacodemon
{
Health 600
Scale 1.3
Translation "16:47=168:191", "112:127=208:223"
States
{
Death:
HEAD G 12 A_QuakeEx( 2, 2, 2, 60, 0, 3000 )
//Light quake on 3000 map units around cacodemon death
HEAD H 12 A_Scream
HEAD IJ 12
HEAD K 12 A_NoBlocking
HEAD L -1 A_SetFloorClip
Stop
}
}
// grenadeZ
ACTOR GrenadierZombie : ZombieMan
{
AttackSound ""
States
{
Missile:
POSS E 10 A_FaceTarget
POSS F 8 A_ThrowGrenade("Grenade", 20, 8, 4)
POSS E 8
Goto See
}
}
// silly grenade launcher that uses rockets as grenades
ACTOR GrenadeLauncher : DoomWeapon 5011
{
SpawnID 163
Radius 20
Height 16
Weapon.Selectionorder 2500
+WEAPON.NOAUTOFIRE
+WEAPON.NOAUTOAIM
Weapon.AmmoUse 1
Weapon.AmmoGive 2
Weapon.AmmoType "RocketAmmo"
Weapon.Kickback 100
Weapon.SlotNumber 5
// This line isn't in skulltag.pk3, which instead defines
// the slot directly in DoomPlayer
Inventory.PickupMessage "$PICKUP_GRENADELAUNCHER"
// "You got the grenade launcher!"
action native A_FireSTGrenade ();
States
{
Spawn:
GLAU A -1
Stop
Ready:
GRLG A 1 A_WeaponReady
Loop
Deselect:
GRLG A 1 A_Lower
Loop
Select:
GRLG A 1 A_Raise
Loop
Fire:
GRLG B 8 A_GunFlash
GRLG B 12 A_FireSTGrenade
GRLG B 0 A_ReFire
Goto Ready
Flash:
GRLF A 3 bright A_Light1
GRLF B 4 bright
GRLF C 4 bright A_Light2
GRLF D 4 bright A_Light2
Goto LightDone
}
}
//wolfie
A_WolfAttack (int flags[, sound whattoplay[, float snipe[, int maxdamage[, int blocksize[, int pointblank[, int longrange[, float runspeed, [class pufftype]]]]]]]])
This codepointer emulates the behavior of the enemy guns in Wolfenstein 3D. It diverges greatly from normal hitscan attacks on several points:
There is no puff (unless the flag WAF_USEPUFF is given).
There is also no damage thrust.
Distance computation is orthogonal, like explosions. (So a target at [128, 127] relatively to the shooter will not be further away than a target at [128, 0], no matter what trigonometry says.)
The attack is less likely to be successful at longer range.
The attack is less likely to be successful if the attacker is in front of the target, as the target will be able to "dodge" the incoming bullet.
The attack is less likely to be successful if the target is a player running.
Damage is decreased with range, too: halved at medium range, and halved again (so, quartered) at long range. This can result in 0 damage.
//railgunZ
ACTOR RailgunZombie : ZombieMan
{
Damage 15
AttackSound "weapons/rbeam"
States
{
Missile:
POSS E 10 A_FaceTarget
POSS F 8 A_MonsterRail
POSS E 8
Goto See
}
}
//sentinel
ACTOR Sentinel
{
Health 100
Painchance 255
Speed 7
Radius 23
Height 53
Mass 300
Monster
+SPAWNCEILING
+NOGRAVITY
+DROPOFF
+NOBLOOD
+NOBLOCKMONST
+INCOMBAT
+MISSILEMORE
+LOOKALLAROUND
+NEVERRESPAWN
MinMissileChance 150
SeeSound "sentinel/sight"
DeathSound "sentinel/death"
ActiveSound "sentinel/active"
Obituary "$OB_SENTINEL" // "%o was shot down by a Sentinel."
action native A_SentinelAttack();
States
{
Spawn:
SEWR A 10 A_Look
Loop
See:
SEWR A 6 A_SentinelBob
SEWR A 6 A_Chase
Loop
Missile:
SEWR B 4 A_FaceTarget
SEWR C 8 Bright A_SentinelAttack
SEWR C 4 Bright A_SentinelRefire
Goto Missile+1
Pain:
SEWR D 5 A_Pain
Goto Missile+2
Death:
SEWR D 7 A_Fall
SEWR E 8 Bright A_TossGib
SEWR F 5 Bright A_Scream
SEWR GH 4 Bright A_TossGib
SEWR I 4
SEWR J 5
Stop
}
}
// healing - The function is named after Doom II's Archvile,
ACTOR Archvile 64
{
States
{
See:
VILE AABBCCDDEEFF 2 A_VileChase
Loop
Heal:
VILE "[\]" 10 Bright
Goto See
}
}
// turret
ACTOR BlindImp : DoomImp
{
States
{
Spawn:
TROO AB 10 A_TurretLook
Loop
See:
TROO AABB 3 A_Chase
TROO CCDD 3 A_Wander
Loop
Melee:
TROO EF 8 A_FaceTarget
TROO G 6 A_CustomComboAttack("DoomImpBall", 32, 3 * random(1, 8), "imp/melee")
Goto See
Missile:
TROO EF 8
TROO G 6 A_CustomMissile("DoomImpBall", 20, 0, 0, 2)
Goto See
}
}
// psi cyber
Actor PsiCyber4ZDoomWiki: Cyberdemon replaces Cyberdemon
{
States
{
Missile:
CYBR E 0 A_Jump( 1, "PsiKill" )
CYBR E 6 A_FaceTarget
CYBR F 12 A_CyberAttack
CYBR E 12 A_FaceTarget
CYBR F 12 A_CyberAttack
CYBR E 12 A_FaceTarget
CYBR F 12 A_CyberAttack
Goto See
PsiKill:
CYBR E 0 A_PlaySound( "cyber/sight", CHAN_VOICE )
CYBR E 12 Bright A_FaceTarget
CYBR E 12 A_FaceTarget
CYBR E 8 Bright A_FaceTarget
CYBR E 8 A_FaceTarget
CYBR E 4 Bright A_FaceTarget
CYBR E 4 A_FaceTarget
CYBR E 2 Bright A_FaceTarget
CYBR E 2 A_FaceTarget
CYBR F 20 A_KillTarget( "PsiDmg" )
Goto See
}
}
// electric bolt - alert monsters
ACTOR StrifeZap1
{
+NOBLOCKMAP
+NOGRAVITY
+DROPOFF
States
{
Spawn:
Death:
ZAP1 A 3 A_AlertMonsters
ZAP1 BCDEFE 3
ZAP1 DCB 2
ZAP1 A 1
Stop
}
}
ACTOR PrettyRocket : Rocket replaces Rocket
{
States
{
Death:
MISL B 0 A_SetTranslucent(0.75, 1)
Goto Super::Death
}
}
//actors
There are three actor pointers that are generally used:
target
tracer
master
//Changes the calling actor's or the pointed to actor's speed to speed
//for weapon that can slow down enemies?
A_SetSpeed (float speed [, int pointer])
//infight?
//Changes the calling actor's (or the pointed to actor's) species
//to the defined parameter. Use "None" to remove it from
//all species and subject it to infighting.
A_SetSpecies (str species [, int ptr])
// default pointer points to calling actor
//shadow
A_SetShadow
//Makes the monster 40% translucent and sets the SHADOW flag.
//This simple actor when spawned will gradually become
//smaller and more translucent
ACTOR PulseRifleSmoke
{
States
{
Spawn:
PMIS B 0 Bright A_SetScale(0.6)
PMIS B 1 bright A_FadeOut(0.1)
PMIS B 0 Bright A_SetScale(0.5)
PMIS B 1 bright A_FadeOut(0.1)
PMIS B 0 Bright A_SetScale(0.4)
PMIS B 1 bright A_FadeOut(0.1)
PMIS B 0 Bright A_SetScale(0.3)
PMIS B 1 bright A_FadeOut(0.1)
PMIS B 0 Bright A_SetScale(0.2)
PMIS B 1 bright A_FadeOut(0.1)
PMIS B 0 Bright A_SetScale(0.1)
PMIS B 1 bright A_FadeOut(0.1)
PMIS BBBBB 0 Bright A_FadeOut(0.1)
Stop
}
}
A_SetReflective
A_UnSetReflective
//Makes the calling actor reflect or no longer reflect missiles that hit him.
A_SetInvulnerable
A_UnsetInvulnerable
//as above but with invulnerability
A_SetReflectiveInvulnerable
A_UnsetReflectiveInvulnerable
//invulnerable + reflection
A_SetHealth(int health [, int pointer])
//set health of actor (default is calling actor)
A_SetGravity
//as above but gravity
//moon elemental
Actor SlowPainElem4ZDWiki: PainElemental replaces PainElemental
{
Translation "64:79=16:47", "128:143=152:159"
Speed 4
PainChance 96
Health 500
States
{
See:
PAIN AAAABBBBCCCC 3 A_Chase( "" )
Loop
Death:
PAIN H 8 Bright A_LowGravity
PAIN I 8 Bright A_Scream
PAIN JK 8 Bright
PAIN L 8 Bright A_PainDie
PAIN M 8 Bright
Stop
}
}
// Changes the calling actor's pointer's FloatSpeed property
A_SetFloatSpeed (float speed [, int pointer])
// Makes a monster floating.
A_SetFloat
// floating zombie man
Actor FloatZ: Zombieman replaces Zombieman
{
A_NoGravity
A_SetFloat
A_SetFloatSpeed(15)
}
A_SetFloorClip
Sets the FLOORCLIP flag so the calling actor is affected by a terrain's footclip property.
A_FloatBobPhase (int bob) // 0-63
Actor BobFloatZ: FloatZ replaces FloatZ
{
A_FloatBobPhase(30) //Float Z with bob animation
}
// chaingunguy death - A_ScreamAndUnblock = A_Scream + A_NoBlocking
Death:
CPOS H 5
CPOS I 5 A_Scream //death sound
CPOS J 5 A_NoBlocking // clears actor (solid,dropitems,remove dialogue)
CPOS KLM 5
CPOS N -1
stop
// immortal IMP that only stays dead for 3 seconds when killed
// If it is killed normally it will respawn without fog, but if it is gibbed, it
// will respawn with one.
ACTOR ImmortalImp : DoomImp replaces DoomImp
{
States
{
Death:
TROO I 8
TROO J 8 A_Scream
TROO K 6
TROO L 6 A_NoBlocking
TROO M 105
TROO M 0 A_Respawn(FALSE)
Stop
XDeath:
TROO N 5
TROO O 5 A_XScream
TROO P 5
TROO Q 5 A_NoBlocking
TROO RST 5
TROO U 105
TROO U 0 A_Respawn
Stop
}
}
A_Respawn [(int flags)]
Respawns the calling actor at their initial starting point, and resets its stats in the process. This behaves similarly to if the actor was respawned on the Nightmare skill. If there is a solid object at the spawn point, the respawn will fail, unless the RSF_TELEFRAG flag is set
flags: The following flags can be combined by using the pipe character | between the constant names to alter the behavior of the function:
RSF_FOG — The respawn fog is shown when the actor reappears. This is the default behavior if the flags parameter is omitted.
RSF_KEEPTARGET — The calling actor's target is preserved after respawning.
RSF_TELEFRAG — If a solid telefragable object is in the spawn spot, it will be telefragged and the respawn will be successful
A_Gravity
Makes the calling actor subject to normal gravity so it will fall down when in mid-air.
// jump decorate code to the monster SaiyinVileGoku from Zero Invasion
Jump:
SILE H 0 A_SetFloat
SILE H 0 A_NoGravity
SILE H 0 A_ChangeFlag ("NODAMAGE", 1)
SILE HHH 1 A_SpawnItemEx ("flythrust")
SILE H 30 A_ChangeFlag ("NODAMAGE", 0)
SILE A 10
SILE P 0 A_Jump (80, "Missile2J")
SILE P 0 A_Jump (90, "MissileKJ")
SILE P 0 A_Jump (85, "MissileKiJ")
SILE L 1 BRIGHT A_FaceTarget
SILE LMN 3 BRIGHT A_FaceTarget
SILE O 10 BRIGHT A_FaceTarget
SILE P 0 A_PlaySound ("ki/shot")
SILE O 2 BRIGHT A_SpawnProjectile ("kiblast", 35, 0)
SILE N 8 BRIGHT A_PlaySound ("ka/charge", 0, 150.0)
SILE N 0 BRIGHT A_PlaySound ("kI/shot", 0, 150.0)
SILE LMNO 3
SILE O 10 BRIGHT A_SpawnProjectile ("KiblastBig", 35, 0)
Goto Land
Land:
SILE H 0 A_UnsetFloat
SILE H 25 A_Gravity
Goto see
//turbo
ACTOR TurboRocket : Rocket
{
States
{
Spawn:
TNT1 A 0
MISL A -1 A_ChangeVelocity(velx*2, vely*2, velz, CVF_REPLACE)
//We do this by getting the appropriate velocities (x/y of velx/y/z) and multiplying them by 2,
//and replacing the old ones.
//Do note that this causes the rocket to not follow the crosshair. So it's best suited for things
//that already fall do not follow it. (Like grenades)
Stop
}
}
//This spectre becomes visible if its health goes below 30
Actor Spectre4ZDoomWiki: Spectre replaces Spectre
{
States
{
Pain:
SARG H 2 Fast
SARG H 2 Fast A_Pain
SARG H 0 A_JumpIfHealthLower(30, "MakingVisible")
Goto See
MakingVisible:
SARG H 0 A_ClearShadow
Goto See
}
}
//friend
A_CopyFriendliness [(pointer copyfrom)]
The calling actor changes its affiliation (friendly or not, and allied to which player if friendly) to match that of the pointed actor.
// nightmare
//This Zombieman waits until a nearby archvile of his type (Nightmare) appears. //Here the function is used for prevent resurrection by an incorrect type of //archvile.
Actor NightmareZombie: Zombieman
{
RenderStyle Subtract
States
{
Death:
POSS H 5
POSS I 5 A_Scream
POSS J 0 A_DropItem( "Clip" )
POSS J 0 A_UnsetShootable // Don't "A_Fall" because archviles can react to this function too.
POSS J 5 A_UnsetSolid
POSS K 5
Death.Wait:
POSS L 5
POSS L 0 A_CheckProximity( "Death.HelpMe", "NightmareArch", 64 )
Loop
Death.HelpMe:
POSS L 1 CanRaise A_CheckProximity( "Death.Wait", "Archvile", 64 )
POSS L 0 CanRaise A_CheckProximity( "Death.HelpMe", "NightmareArch", 64 )
Goto Death.Wait
XDeath:
POSS M 5
POSS N 5 A_XScream
POSS O 5 A_NoBlocking
POSS PQRST 5
POSS U 100000 // By default, archviles can only resurrect those who are in a state with a "-1" durability.
Wait
}
}
//gibbs
A_TossGib
Spawns one actor of type Meat (for bleeding monsters) or Junk (for everything else) and tosses it in a random direction.
//cloud
ACTOR Pod
{
Health 45
Radius 16
Height 54
PainChance 255
+SOLID
+NOBLOOD
+SHOOTABLE
+DROPOFF
+WINDTHRUST
+PUSHABLE
+SLIDESONWALLS
+CANPASS
+TELESTOMP
+DONTMORPH
+NOBLOCKMONST
+DONTGIB
+OLDRADIUSDMG
DeathSound "world/podexplode"
PushFactor 0.5
action native A_PodPain(class<Actor> podtype = "PodGoo");
action native A_RemovePod();
States
{
Spawn:
PPOD A 10
Loop
Pain:
PPOD B 14 A_PodPain
Goto Spawn
Death:
PPOD C 5 Bright A_RemovePod
PPOD D 5 Bright A_Scream
PPOD E 5 Bright A_Explode
PPOD F 10 Bright
Stop
Grow:
PPOD IJKLMNOP 3
Goto Spawn
}
}
ACTOR PoisonPod : Pod 20020
{
DeathSound "PoisonPod/Puff"
States
{
Death:
PPOD C 5 Bright A_RemovePod
PPOD D 5 Bright A_Scream
PPOD E 5 Bright A_Explode
PPOD A 0 A_SpawnItemEx("PoisonCloud", 0, 0, 28, 0, 0, 0, 0, SXF_TRANSFERPOINTERS)
PPOD F 10 Bright
Stop
}
}
ACTOR PoisonCloud native
{
Radius 20
Height 30
Mass 0x7fffffff
+NOBLOCKMAP
+NOGRAVITY
+DROPOFF
+NODAMAGETHRUST
+DONTSPLASH
+FOILINVUL
+CANBLAST
+BLOODLESSIMPACT
+BLOCKEDBYSOLIDACTORS
RenderStyle Translucent
Alpha 0.6
DeathSound "PoisonShroomDeath"
DamageType PoisonCloud
action native A_PoisonBagDamage();
action native A_PoisonBagCheck();
States
{
Spawn:
PSBG D 1
PSBG D 1 A_Scream
PSBG DEEEFFFGGGHHHII 2 A_PoisonBagDamage
PSBG I 2 A_PoisonBagCheck
PSBG I 1 A_PoisonBagCheck
Goto Spawn+3
Death:
PSBG HG 7
PSBG FD 6
Stop
}
}
A_PoisonBagInit
Basically equivalent to A_SpawnItem("PoisonCloud", 0, 28).
The only difference is that it also transfers the calling actor's target to the spawned poison cloud, which has in most circumstances no noticeable effect: said target will be considered to be responsible for the damage dealt by the poison cloud and this is important for the poison mushroom as its target at the moment of death will be whoever killed it, potentially resulting in monster infighting.
Note: nearly equivalent to A_SpawnItemEx("PoisonCloud", 0, 0, 28, 0, 0, 0, 0, SXF_TRANSFERPOINTERS)
ACTOR ZPoisonShroom : PoisonBag
{
Radius 6
Height 20
PainChance 255
Health 30
Mass 0x7fffffff
+SHOOTABLE
+SOLID
+NOBLOOD
+NOICEDEATH
-NOBLOCKMAP
-NOGRAVITY
PainSound "PoisonShroomPain"
DeathSound "PoisonShroomDeath"
action native A_PoisonShroom();
States
{
Spawn:
SHRM A 5 A_PoisonShroom
Goto Pain+1
Pain:
SHRM A 6
SHRM B 8 A_Pain
Goto Spawn
Death:
SHRM CD 5
SHRM E 5 A_PoisonBagInit
SHRM F -1
Stop
}
}
//spawn
ACTOR TerranMarine : ScriptedMarine2
{
obituary "%o was killed by a Terran Marine."
translation "112:127=198:207"
dropitem "Clip" 256
dropitem "GreenMedikit" 128
dropitem "GreenStimpack" 128
dropitem "GreenArmor" 16
dropitem "BlueArmor" 8
dropitem "ArmorRed" 4
dropitem "ArmorGray" 2
+FRIENDLY
activesound "starcraft/active"
deathsound "starcraft/death"
states
{
Spawn:
PLY2 A 4 A_Look
PLY2 B 4
goto See
See:
PLY2 AABBCCDD 2 A_FastChase
PLY2 A 0 NoiseAlert (0, 0)
loop
Pain:
PLY2 G 4
PLY2 G 4 A_Pain
goto Spawn+3
Missile:
PLY2 E 8 A_FaceTarget
PLY2 E 2 A_PlayWeaponSound ("starcraft/marinef1")
PLY2 F 2 A_CustomBulletAttack (5.6, 0, 1, 5, "BulletPuff", 0)
PLY2 E 2 A_FaceTarget
PLY2 F 2 A_CustomBulletAttack (5.6, 0, 1, 5, "BulletPuff", 0)
PLY2 E 2 A_FaceTarget
PLY2 F 2 A_CustomBulletAttack (5.6, 0, 1, 5, "BulletPuff", 0)
PLY2 E 10 A_CPosRefire
goto Missile+1
Death:
PLY2 H 10
PLY2 I 10 A_Scream
PLY2 J 10 A_NoBlocking
PLY2 KLM 10
PLY2 N 0 A_SpawnItem("SpawnTMarine",0,0)
PLY2 N 512
goto DDisp
DDisp:
PLY2 N 4 A_FadeOut(0.05)
loop
XDeath:
PLY2 O 5
PLY2 P 5 A_XScream
PLY2 Q 5 A_NoBlocking
PLY2 RSTUV 5
PLY2 W 0 A_SpawnItem("SpawnTMarine",0,0)
PLY2 W 512
goto XDisp
XDisp:
PLY2 W 4 A_FadeOut(0.05)
loop
Raise:
PLY2 MLKJIH 5
goto See
}
}
ACTOR SpawnTMarine
{
states
{
Spawn:
ALLY A 128
ALLY A 0 A_PlaySound("misc/teleport")
ALLY A 0 A_SpawnItemEx("TerranMarine", 0, 0, 0, 0, 0, 0, 0, 64, 0)
TFOG ABCDEFGHIJ 8
Stop
}
}
spawn_item
Spawns an item in front of the calling actor.
This function can be used with monsters, weapons and inventory items.
// humanoids
ACTOR StrifeHumanoid
{
MaxStepHeight 16
MaxDropoffHeight 32
CrushPainSound "misc/pcrush"
States
{
Burn:
BURN A 3 Bright A_PlaySoundEx("human/imonfire", "Voice")
BURN B 3 Bright A_DropFire
BURN C 3 Bright A_Wander
BURN D 3 Bright A_NoBlocking
BURN E 5 Bright A_DropFire
BURN FGH 5 Bright A_Wander
BURN I 5 Bright A_DropFire
BURN JKL 5 Bright A_Wander
BURN M 5 Bright A_DropFire
BURN NOPQPQ 5 Bright
BURN RSTU 7 Bright
BURN V -1
Stop
Disintegrate:
DISR A 5 A_PlaySoundEx("misc/disruptordeath", "Voice")
DISR BC 5
DISR D 5 A_NoBlocking
DISR EF 5
DISR GHIJ 4
MEAT D 700
Stop
}
}
ACTOR Zombie : StrifeHumanoid 169
{
Game Strife
Health 31
Radius 20
Height 56
PainChance 0 // is put into Pain state only by a Teleport_ZombieChanger line
+SOLID
+SHOOTABLE
+FLOORCLIP
+CANPASS
+CANPUSHWALLS
+ACTIVATEMCROSS
MinMissileChance 150
MaxStepHeight 16
MaxDropOffHeight 32
Translation 0
ConversationID 28, -1, -1
DeathSound "zombie/death"
States
{
Spawn:
PEAS A 5 A_CheckTerrain // looks like a Peasant
Loop
Pain:
AGRD A 5 A_CheckTerrain // looks like an Acolyte
Loop
Death:
GIBS M 5 A_TossGib
GIBS N 5 A_XScream
GIBS O 5 A_NoBlocking
GIBS PQRST 4 A_TossGib
GIBS U 5
GIBS V 1400
Stop
}
}
ACTOR Zombie : StrifeHumanoid
{
Health 31
Radius 20
Height 56
PainChance 0
+SOLID
+SHOOTABLE
+FLOORCLIP
+CANPASS
+CANPUSHWALLS
+ACTIVATEMCROSS
MinMissileChance 150
MaxStepHeight 16
MaxDropOffHeight 32
Translation 0
DeathSound "zombie/death"
CrushPainSound "misc/pcrush"
States
{
Spawn:
PEAS A 5 A_CheckTerrain
Loop
Pain:
AGRD A 5 A_CheckTerrain
Loop
Death:
GIBS M 5 A_TossGib
GIBS N 5 A_XScream
GIBS O 5 A_NoBlocking
GIBS PQRST 4 A_TossGib
GIBS U 5
GIBS V -1
Stop
}
}
//players
ACTOR HereticPlayer : PlayerPawn
{
Health 100
Radius 16
Height 56
Mass 100
PainChance 255
Speed 1
Player.DisplayName "Corvus"
Player.StartItem "GoldWand"
Player.StartItem "Staff"
Player.StartItem "GoldWandAmmo", 50
Player.WeaponSlot 1, Staff, Gauntlets
Player.WeaponSlot 2, GoldWand
Player.WeaponSlot 3, Crossbow
Player.WeaponSlot 4, Blaster
Player.WeaponSlot 5, SkullRod
Player.WeaponSlot 6, PhoenixRod
Player.WeaponSlot 7, Mace
Player.ColorRange 225, 240
Player.ColorSet 0, "Green", 225, 240, 238
Player.ColorSet 1, "Yellow", 114, 129, 127
Player.ColorSet 2, "Red", 145, 160, 158
Player.ColorSet 3, "Blue", 190, 205, 203
// Doom Legacy additions
Player.ColorSet 4, "Brown", 67, 82, 80
Player.ColorSet 5, "Light Gray", 9, 24, 22
Player.ColorSet 6, "Light Brown", 74, 89, 87
Player.ColorSet 7, "Light Red", 150, 165, 163
Player.ColorSet 8, "Light Blue", 192, 207, 205
Player.ColorSet 9, "Beige", 95, 110, 108
States
{
Spawn:
PLAY A -1
Stop
See:
PLAY ABCD 4
Loop
Melee:
Missile:
PLAY F 6 BRIGHT
PLAY E 12
Goto Spawn
Pain:
PLAY G 4
PLAY G 4 A_Pain
Goto Spawn
Death:
PLAY H 6 A_PlayerSkinCheck("AltSkinDeath")
PLAY I 6 A_PlayerScream
PLAY JK 6
PLAY L 6 A_NoBlocking
PLAY MNO 6
PLAY P -1
Stop
XDeath:
PLAY Q 0 A_PlayerSkinCheck("AltSkinXDeath")
PLAY Q 5 A_PlayerScream
PLAY R 0 A_NoBlocking
PLAY R 5 A_SkullPop
PLAY STUVWX 5
PLAY Y -1
Stop
Burn:
FDTH A 5 BRIGHT A_PlaySound("*burndeath")
FDTH B 4 BRIGHT
FDTH C 5 BRIGHT
FDTH D 4 BRIGHT A_PlayerScream
FDTH E 5 BRIGHT
FDTH F 4 BRIGHT
FDTH G 5 BRIGHT A_PlaySound("*burndeath")
FDTH H 4 BRIGHT
FDTH I 5 BRIGHT
FDTH J 4 BRIGHT
FDTH K 5 BRIGHT
FDTH L 4 BRIGHT
FDTH M 5 BRIGHT
FDTH N 4 BRIGHT
FDTH O 5 BRIGHT A_NoBlocking
FDTH P 4 BRIGHT
FDTH Q 5 BRIGHT
FDTH R 4 BRIGHT
ACLO E 35 A_CheckPlayerDone
Wait
AltSkinDeath:
PLAY H 10
PLAY I 10 A_PlayerScream
PLAY J 10 A_NoBlocking
PLAY KLM 10
PLAY N -1
Stop
AltSkinXDeath:
PLAY O 5
PLAY P 5 A_XScream
PLAY Q 5 A_NoBlocking
PLAY RSTUV 5
PLAY W -1
Stop
}
}
ACTOR FighterPlayer : PlayerPawn
{
Health 100
PainChance 255
Radius 16
Height 64
Speed 1
+NOSKIN
+NODAMAGETHRUST
+NOTHRUSTWHENINVUL
PainSound "PlayerFighterPain"
RadiusDamageFactor 0.25
Player.JumpZ 9
Player.Viewheight 48
Player.SpawnClass "Fighter"
Player.DisplayName "Fighter"
Player.SoundClass "fighter"
Player.ScoreIcon "FITEFACE"
Player.HealRadiusType "Armor"
Player.HexenArmor 15, 25, 20, 15, 5
Player.StartItem "FWeapFist"
Player.ForwardMove 1.08, 1.2
Player.SideMove 1.125, 1.475
Player.Portrait "P_FWALK1"
Player.WeaponSlot 1, FWeapFist
Player.WeaponSlot 2, FWeapAxe
Player.WeaponSlot 3, FWeapHammer
Player.WeaponSlot 4, FWeapQuietus
Player.ColorRange 246, 254
Player.ColorSet 0, "Gold", 246, 254, 253
Player.ColorSetFile 1, "Red", "TRANTBL0", 0xAC
Player.ColorSetFile 2, "Blue", "TRANTBL1", 0x9D
Player.ColorSetFile 3, "Dull Green", "TRANTBL2", 0x3E
Player.ColorSetFile 4, "Green", "TRANTBL3", 0xC8
Player.ColorSetFile 5, "Gray", "TRANTBL4", 0x2D
Player.ColorSetFile 6, "Brown", "TRANTBL5", 0x6F
Player.ColorSetFile 7, "Purple", "TRANTBL6", 0xEE
States
{
Spawn:
PLAY A -1
Stop
See:
PLAY ABCD 4
Loop
Missile:
Melee:
PLAY EF 8
Goto Spawn
Pain:
PLAY G 4
PLAY G 4 A_Pain
Goto Spawn
Death:
PLAY H 6
PLAY I 6 A_PlayerScream
PLAY JK 6
PLAY L 6 A_NoBlocking
PLAY M 6
PLAY N -1
Stop
XDeath:
PLAY O 5 A_PlayerScream
PLAY P 5 A_SkullPop("BloodyFighterSkull")
PLAY R 5 A_NoBlocking
PLAY STUV 5
PLAY W -1
Stop
Ice:
PLAY X 5 A_FreezeDeath
PLAY X 1 A_FreezeDeathChunks
Wait
Burn:
FDTH A 5 Bright A_PlaySound("*burndeath")
FDTH B 4 Bright
FDTH G 5 Bright
FDTH H 4 Bright A_PlayerScream
FDTH I 5 Bright
FDTH J 4 Bright
FDTH K 5 Bright
FDTH L 4 Bright
FDTH M 5 Bright
FDTH N 4 Bright
FDTH O 5 Bright
FDTH P 4 Bright
FDTH Q 5 Bright
FDTH R 4 Bright
FDTH S 5 Bright A_NoBlocking
FDTH T 4 Bright
FDTH U 5 Bright
FDTH V 4 Bright
ACLO E 35 A_CheckPlayerDone
Wait
ACLO E 8
Stop
}
}
//tagging
A_SprayDecal
void A_SprayDecal (String name [, double dist])
Usage
Generates the specified decal on a nearby wall. The calling actor needs to be facing the wall in order to successfully generate the decal.
//earthquake making rocket
actor BigRocket : Rocket
{
Scale 2.0
Radius 22
Height 16
Speed 25
states
{
Death:
MISL B 0 A_Quake(4,12,0,400)
MISL B 0 A_Quake(2,12,0,800)
MISL B 8 bright A_Explode(250,200,1)
goto Super::Death+1
}
}
A_Quake (int intensity, int duration, int damrad, int tremrad [, sound sfx])
Creates an earthquake around the calling actor.
intensity: Strength of earthquake, ranging from 1 to 9
duration: Duration in tics
damrad: Radius of damage in map units
tremrad: Radius of tremor in map units
sound: Accompanying sound effect for the tremor. (Default: "world/quake".)
// caco death with a quake
Actor Caco4ZDoomWiki: Cacodemon replaces Cacodemon
{
Health 600
Scale 1.3
Translation "16:47=168:191", "112:127=208:223"
States
{
Death:
HEAD G 12 A_QuakeEx( 2, 2, 2, 60, 0, 3000 )
//Light quake on 3000 map units around cacodemon death
HEAD H 12 A_Scream
HEAD IJ 12
HEAD K 12 A_NoBlocking
HEAD L -1 A_SetFloorClip
Stop
}
}
// grenadeZ
ACTOR GrenadierZombie : ZombieMan
{
AttackSound ""
States
{
Missile:
POSS E 10 A_FaceTarget
POSS F 8 A_ThrowGrenade("Grenade", 20, 8, 4)
POSS E 8
Goto See
}
}
// silly grenade launcher that uses rockets as grenades
ACTOR GrenadeLauncher : DoomWeapon 5011
{
SpawnID 163
Radius 20
Height 16
Weapon.Selectionorder 2500
+WEAPON.NOAUTOFIRE
+WEAPON.NOAUTOAIM
Weapon.AmmoUse 1
Weapon.AmmoGive 2
Weapon.AmmoType "RocketAmmo"
Weapon.Kickback 100
Weapon.SlotNumber 5
// This line isn't in skulltag.pk3, which instead defines
// the slot directly in DoomPlayer
Inventory.PickupMessage "$PICKUP_GRENADELAUNCHER"
// "You got the grenade launcher!"
action native A_FireSTGrenade ();
States
{
Spawn:
GLAU A -1
Stop
Ready:
GRLG A 1 A_WeaponReady
Loop
Deselect:
GRLG A 1 A_Lower
Loop
Select:
GRLG A 1 A_Raise
Loop
Fire:
GRLG B 8 A_GunFlash
GRLG B 12 A_FireSTGrenade
GRLG B 0 A_ReFire
Goto Ready
Flash:
GRLF A 3 bright A_Light1
GRLF B 4 bright
GRLF C 4 bright A_Light2
GRLF D 4 bright A_Light2
Goto LightDone
}
}
//wolfie
A_WolfAttack (int flags[, sound whattoplay[, float snipe[, int maxdamage[, int blocksize[, int pointblank[, int longrange[, float runspeed, [class pufftype]]]]]]]])
This codepointer emulates the behavior of the enemy guns in Wolfenstein 3D. It diverges greatly from normal hitscan attacks on several points:
There is no puff (unless the flag WAF_USEPUFF is given).
There is also no damage thrust.
Distance computation is orthogonal, like explosions. (So a target at [128, 127] relatively to the shooter will not be further away than a target at [128, 0], no matter what trigonometry says.)
The attack is less likely to be successful at longer range.
The attack is less likely to be successful if the attacker is in front of the target, as the target will be able to "dodge" the incoming bullet.
The attack is less likely to be successful if the target is a player running.
Damage is decreased with range, too: halved at medium range, and halved again (so, quartered) at long range. This can result in 0 damage.
//railgunZ
ACTOR RailgunZombie : ZombieMan
{
Damage 15
AttackSound "weapons/rbeam"
States
{
Missile:
POSS E 10 A_FaceTarget
POSS F 8 A_MonsterRail
POSS E 8
Goto See
}
}
//sentinel
ACTOR Sentinel
{
Health 100
Painchance 255
Speed 7
Radius 23
Height 53
Mass 300
Monster
+SPAWNCEILING
+NOGRAVITY
+DROPOFF
+NOBLOOD
+NOBLOCKMONST
+INCOMBAT
+MISSILEMORE
+LOOKALLAROUND
+NEVERRESPAWN
MinMissileChance 150
SeeSound "sentinel/sight"
DeathSound "sentinel/death"
ActiveSound "sentinel/active"
Obituary "$OB_SENTINEL" // "%o was shot down by a Sentinel."
action native A_SentinelAttack();
States
{
Spawn:
SEWR A 10 A_Look
Loop
See:
SEWR A 6 A_SentinelBob
SEWR A 6 A_Chase
Loop
Missile:
SEWR B 4 A_FaceTarget
SEWR C 8 Bright A_SentinelAttack
SEWR C 4 Bright A_SentinelRefire
Goto Missile+1
Pain:
SEWR D 5 A_Pain
Goto Missile+2
Death:
SEWR D 7 A_Fall
SEWR E 8 Bright A_TossGib
SEWR F 5 Bright A_Scream
SEWR GH 4 Bright A_TossGib
SEWR I 4
SEWR J 5
Stop
}
}
// healing - The function is named after Doom II's Archvile,
ACTOR Archvile 64
{
States
{
See:
VILE AABBCCDDEEFF 2 A_VileChase
Loop
Heal:
VILE "[\]" 10 Bright
Goto See
}
}
// turret
ACTOR BlindImp : DoomImp
{
States
{
Spawn:
TROO AB 10 A_TurretLook
Loop
See:
TROO AABB 3 A_Chase
TROO CCDD 3 A_Wander
Loop
Melee:
TROO EF 8 A_FaceTarget
TROO G 6 A_CustomComboAttack("DoomImpBall", 32, 3 * random(1, 8), "imp/melee")
Goto See
Missile:
TROO EF 8
TROO G 6 A_CustomMissile("DoomImpBall", 20, 0, 0, 2)
Goto See
}
}
// psi cyber
Actor PsiCyber4ZDoomWiki: Cyberdemon replaces Cyberdemon
{
States
{
Missile:
CYBR E 0 A_Jump( 1, "PsiKill" )
CYBR E 6 A_FaceTarget
CYBR F 12 A_CyberAttack
CYBR E 12 A_FaceTarget
CYBR F 12 A_CyberAttack
CYBR E 12 A_FaceTarget
CYBR F 12 A_CyberAttack
Goto See
PsiKill:
CYBR E 0 A_PlaySound( "cyber/sight", CHAN_VOICE )
CYBR E 12 Bright A_FaceTarget
CYBR E 12 A_FaceTarget
CYBR E 8 Bright A_FaceTarget
CYBR E 8 A_FaceTarget
CYBR E 4 Bright A_FaceTarget
CYBR E 4 A_FaceTarget
CYBR E 2 Bright A_FaceTarget
CYBR E 2 A_FaceTarget
CYBR F 20 A_KillTarget( "PsiDmg" )
Goto See
}
}
// electric bolt - alert monsters
ACTOR StrifeZap1
{
+NOBLOCKMAP
+NOGRAVITY
+DROPOFF
States
{
Spawn:
Death:
ZAP1 A 3 A_AlertMonsters
ZAP1 BCDEFE 3
ZAP1 DCB 2
ZAP1 A 1
Stop
}
}
Chuck Norris får løg til at græde.
chuck Norris kan tegne en trekant med 2 linier.
chuck Norris har aldrig fået en fejlmeddelse.
Sidst chuck Norris blev sur – uddøde dinosaurene.
Chuck Norris kan få en happy meal til at græde.
chuck Norris kan tegne en trekant med 2 linier.
chuck Norris har aldrig fået en fejlmeddelse.
Sidst chuck Norris blev sur – uddøde dinosaurene.
Chuck Norris kan få en happy meal til at græde.
actor TeleportRailImp : DoomImp 601
{
Damage 15
AttackSound "weapons/rbeam"
States
{
Spawn:
TROO AB 10 A_Look
Loop
See:
TROO AABBCCDD 3 A_Chase
TROO A 0 A_Jump(200, "See")
TROO A 0 A_Teleport("Missile", "ImpSpot")
Loop
Melee:
TROO EF 8 A_FaceTarget
TROO G 6 A_CustomComboAttack("DoomImpBall", 32, 3 * random(1, 8), "imp/melee")
Goto See
Missile:
TROO EF 8 A_FaceTarget
TROO G 6 A_TroopAttack
TROO E 10 A_FaceTarget
TROO F 8 A_MonsterRail
TROO E 8
Goto See
Death:
TROO G 12 A_QuakeEx( 2, 2, 2, 60, 0, 3000 )
//Light quake on 3000 map units
TROO H 12 A_ScreamAndUnblock
TROO IJ 12
TROO L -1 A_SetFloorClip
}
}
//This is the Special Spot used for the monster to
//teleport to randomly.
//monsters do not like to be touched at their special spots.
actor ImpSpot : SpecialSpot 600
{
+INVISIBLE
}
CBM (13613) skrev:IDENTITETSPOLITIKKENS 10 BUD:
1. Mine følelser bestemmer din ytringsfriheds grænser.
2. Mit krav på safe spaces giver mig retten til at beklikke dig personligt
3. Magtstrukturer er ondskab, medmindre de er defineret af mig
4. Hvordan jeg definerer mig afgør, hvad du kan tillade dig.
5. Jeg er en social konstruktion, men du kan aldrig løbe fra dine nedarvede privilegier.
6. Hold dig i respektfuld afstand af min kultur, mens jeg angriber din
7. Mit køn, min hudfarve, min seksuelle orientering er afgørende i alle spørgsmål.
8. Min ligestilling opnås kun ved diskrimination af dig
9. Min undertrykkelse legitimerer din underkastelse.
10. Alt handler om mig. Derfor må du vige.
Dagens bedste :-D Men klokken er selvf. også kun halv syv
CBM (13613) skrev:IDENTITETSPOLITIKKENS 10 BUD:
1. Mine følelser bestemmer din ytringsfriheds grænser.
2. Mit krav på safe spaces giver mig retten til at beklikke dig personligt
3. Magtstrukturer er ondskab, medmindre de er defineret af mig
4. Hvordan jeg definerer mig afgør, hvad du kan tillade dig.
5. Jeg er en social konstruktion, men du kan aldrig løbe fra dine nedarvede privilegier.
6. Hold dig i respektfuld afstand af min kultur, mens jeg angriber din
7. Mit køn, min hudfarve, min seksuelle orientering er afgørende i alle spørgsmål.
8. Min ligestilling opnås kun ved diskrimination af dig
9. Min undertrykkelse legitimerer din underkastelse.
10. Alt handler om mig. Derfor må du vige.
Antimatter is real
fe950 (13618) skrev:Meh
uuhh ha... nu er jeg blevet krænket på flere områder... lad mig forklare min vildfarelse og hvorfor det skal føre til et totalt forbud mod ordet Meh:
mit køn... jeg har det køn der hedder Meh2 som er defineret således:
meh2 (som er demi-Androgyny) og jeg opfatter ordet Meh som værende cisgender
min religion...jeg er medlem af meh kirken, i vores tro er meh er forbudt ord
min politiske holdning... jeg er medlem af meh partiet og i meh partiet er meh en formærmelse
min hudfarve... jeg har hudfarven typoishygid og vi anser meh som et skældsord
jeg er nemlig helt unik og meget speciel, basta slut færdig!
så jeg er
KRÆÆÆÆÆÆÆÆNKET!!!
nu kommer vi med høtyve og fakler
heretic doom
https://forum.zdoom.org/viewtopic.php?t=56762
whaaad? doom wads!
http://www.prodigal-game.com/doomwads.html
c64? no doom64
https://www.doomworld.com/forum/topic/91854-v15-do...
strife flamethrower
ACTOR FlameThrower : StrifeWeapon
{
+FLOORCLIP
Weapon.SelectionOrder 2100
Weapon.Kickback 0
Weapon.AmmoUse1 1
Weapon.AmmoGive1 100
Weapon.UpSound "weapons/flameidle"
Weapon.ReadySound "weapons/flameidle"
Weapon.AmmoType1 "EnergyPod"
Inventory.Icon "FLAMA0"
Tag "$TAG_FLAMER" // "Flame Thrower"
Inventory.PickupMessage "$TXT_FLAMER" // "You picked up the flame thrower."
action native A_FireFlamer();
States
{
Spawn:
FLAM A -1
Stop
Ready:
FLMT AB 3 A_WeaponReady
Loop
Deselect:
FLMT A 1 A_Lower
Loop
Select:
FLMT A 1 A_Raise
Loop
Fire:
FLMF A 2 A_FireFlamer
FLMF B 3 A_ReFire
Goto Ready
}
}
mr zzzappp b
ACTOR ElectricBolt : StrifeZap1
{
Speed 30
Radius 10
Height 10
Damage 10
Projectile
+STRIFEDAMAGE
MaxStepHeight 4
SeeSound "misc/swish"
ActiveSound "misc/swish"
DeathSound "weapons/xbowhit"
Obituary "$OB_MPELECTRICBOLT" // "%o got bolted to the wall by %k."
States
{
Spawn:
AROW A 10 A_LoopActiveSound
Loop
}
}
strife mauler
ACTOR MaulerTorpedo
{
Speed 20
Height 8
Radius 13
Damage 1
DamageType Disintegrate
Projectile
+STRIFEDAMAGE
MaxStepHeight 4
RenderStyle Add
SeeSound "weapons/mauler2fire"
DeathSound "weapons/mauler2hit"
Obituary "$OB_MPMAULER" // "%o was viciously vaporized by %k."
action native A_MaulerTorpedoWave();
States
{
Spawn:
TORP ABCD 4 Bright
Loop
Death:
THIT AB 8 Bright
THIT C 8 Bright A_MaulerTorpedoWave
THIT DE 8 Bright
Stop
}
}
ACTOR Mauler : StrifeWeapon
{
+FLOORCLIP
Weapon.SelectionOrder 300
Weapon.AmmoUse1 20
Weapon.AmmoGive1 40
Weapon.AmmoType1 "EnergyPod"
Weapon.SisterWeapon "Mauler2"
Inventory.Icon "TRPDA0"
Tag "$TAG_MAULER1" // "Mauler"
Inventory.PickupMessage "$TXT_MAULER" // "You picked up the mauler."
Obituary "$OB_MPMAULER1" // "%o was zapped by %k."
action native A_FireMauler1();
States
{
Ready:
MAUL FGHA 6 A_WeaponReady
Loop
Deselect:
MAUL A 1 A_Lower
Loop
Select:
MAUL A 1 A_Raise
Loop
Fire:
BLSF A 5 Bright A_FireMauler1 // see MaulerPuff
MAUL B 3 Bright A_Light1
MAUL C 2 A_Light2
MAUL DE 2
MAUL A 7 A_Light0
MAUL H 7
MAUL G 7 A_CheckReload
Goto Ready
Spawn:
TRPD A -1
Stop
}
}
PhasingZorcher - chex quest
Actor PhaseZorchMissile : PlasmaBall
{
RenderStyle Translucent
Obituary "$OB_MPPHASEZORCH" // "%o was phase zorched by %k."
Alpha 0.75
}
ACTOR PhasingZorcher : PlasmaRifle
{
Obituary ""
Inventory.PickupMessage "$GOTPHASINGZORCHER" // "You got the Phasing Zorcher!"
Tag "$TAG_PHASINGZORCHER" // "Phasing Zorcher"
States
{
Fire:
PLSG A 0 A_GunFlash
PLSG A 3 A_FireCustomMissile("PhaseZorchMissile")
PLSG B 20 A_ReFire
Goto Ready
Flash:
PLSF A 0 A_Jump(128, "Flash2")
PLSF A 3 Bright A_Light1
Goto LightDone
Flash2:
PLSF B 3 Bright A_Light1
Goto LightDone
}
}
chex version of BFG - maybe use old beta BFG shots?
ACTOR LAZDevice : BFG9000
{
Obituary ""
Inventory.PickupMessage "$GOTLAZDEVICE" // "You got the LAZ Device! Woot!"
Tag "$TAG_LAZDEVICE" // "LAZ Device"
States
{
Fire:
BFGG A 20 A_BFGSound
BFGG B 10 A_GunFlash
BFGG B 10 A_FireCustomMissile("LAZBall")
BFGG B 20 A_ReFire
Goto Ready
}
}
urban
http://action.mancubus.net/ad2free.htm
action
https://zdoom.org/wiki/Action_Doom
https://www.doomworld.com/idgames/levels/doom2/Por...
blasphemer
https://www.doomworld.com/vb/freedoom/70732-blasph...
https://github.com/Blasphemer/blasphemer
ROBIN hood? no.. foreverhood
https://zdoom.org/wiki/Foreverhood
hacxxxx
http://drnostromo.com/hacx/page.php?content=downlo...
harm
https://zdoom.org/wiki/Harmony
The fireballs created by a swing from a maulotaur's maul. Four are thrown in a 11.25° fan by A_MinotaurAtk2.
DECORATE definition
ACTOR MinotaurFX1
{
Radius 10
Height 6
Speed 20
FastSpeed 26
Damage 3
DamageType Fire
Projectile
-ACTIVATEIMPACT
-ACTIVATEPCROSS
RenderStyle Add
States
{
Spawn:
FX12 AB 6 Bright
Loop
Death:
FX12 CDEFGH 5 Bright
Stop
}
}
The running flame created by an impact on the ground from a maulotaur's maul. The native action A_MntrFloorFire spawns a new MinotaurFX3 every time it is called.
DECORATE definition
ACTOR MinotaurFX2 : MinotaurFX1
{
Radius 5
Height 12
Speed 14
FastSpeed 20
Damage 4
+FLOORHUGGER
ExplosionDamage 24
DeathSound "minotaur/fx2hit"
action native A_MntrFloorFire();
States
{
Spawn:
FX13 A 2 Bright A_MntrFloorFire
Loop
Death:
FX13 I 4 Bright A_Explode
FX13 JKLM 4 Bright
Stop
}
}
The flame trail left behind the running flame from an impact on the ground from a maulotaur's maul.
DECORATE definition
ACTOR MinotaurFX3 : MinotaurFX2
{
Radius 8
Height 16
Speed 0
DeathSound "minotaur/fx3hit"
ExplosionDamage 128
States
{
Spawn:
FX13 DC 4 Bright
FX13 BCDE 5 Bright
FX13 FGH 4 Bright
Stop
}
}
// racks
A Strife assault gun that stands up, used to make weapon racks. Gives you the assault gun upon pickup.
DECORATE definition
ACTOR AssaultGunStanding : WeaponGiver
{
DropItem "AssaultGun"
Inventory.PickupMessage "$TXT_ASSAULTGUN" // "You picked up the assault gun."
States
{
Spawn:
RIFL B -1
Stop
}
}
// power...up
PowerGhost is an internal class. An item of this class is placed in the player's inventory while he is having Heretic's Shadow/Ghost effect. With this effect on the player is drawn translucent and the aiming of monsters is randomly off. Additionally, any monster that hasn't been alerted yet will have difficulty seeing the player and any projectile with the THRUGHOST flag will pass right through the player.
Like all other Powerups items of this class are never used directly. Instead you have to create a new item that inherits from PowerupGiver to give it to the player.
DECORATE definition
ACTOR PowerGhost : PowerInvisibility
{
+GHOST
Powerup.Duration -60
Powerup.Strength 60
Powerup.Mode "None"
}
// the magic of.. flight
ACTOR PowerFlight : Powerup native
{
Powerup.Duration -60
+INVENTORY.HUBPOWER
}
// THE mask
ACTOR PowerMask : PowerIronFeet native
{
Powerup.Duration -80
Powerup.Color 0, 0, 0, 0
+INVENTORY.HUBPOWER
Inventory.Icon "I_MASK"
}
Maulotaurs are giant minotaurs who wield mauls, which explains their very D&Dish portmanteau name. They sport nose rings and, apparently more modest than their distant Doom cousins, wear loincloths. The second-strongest monster of Heretic, surpassed only by D'Sparil himself, they can be considered the Heretic equivalent of Doom's Cyberdemons; though despite their greater variety of attacks they are significantly weaker. For this reason, they are found in large numbers when they are used in boss levels.
In Hexen.wad, the attack sprites are lettered from F to K instead of from U to Z, and the death sprites are missing. For this reason, they are renamed at load time by ZDoom and the native action A_MinotaurDeath causes the maulotaur to enter the FadeOut state if the death sprites are missing.
When slain, they may randomly drop mystic urns and flame orbs with ten charges.
Minotaurs use the following actor fields for specific purposes:
special1
Serves as a countdown timer for the Charge attack.
special2
Used to prevent repeating the Hammer attack more than once.
Note: Maulotaurs are invulnerable while charging, dark servants aren't.
DECORATE definition
ACTOR Minotaur native
{
Health 3000
Radius 28
Height 100
Mass 800
Speed 16
Damage 7
PainChance 25
Monster
+DROPOFF
+FLOORCLIP
+BOSS
+NORADIUSDMG
+DONTMORPH
+NOTARGET
+BOSSDEATH
SeeSound "minotaur/sight"
AttackSound "minotaur/attack1"
PainSound "minotaur/pain"
DeathSound "minotaur/death"
ActiveSound "minotaur/active"
DropItem "ArtiSuperHealth", 51
DropItem "PhoenixRodAmmo", 84, 10
action native A_MinotaurDecide();
action native A_MinotaurAtk1();
action native A_MinotaurAtk2();
action native A_MinotaurAtk3();
action native A_MinotaurCharge();
action native A_MinotaurLook();
action native A_MinotaurRoam();
action native A_MinotaurChase();
action native A_MinotaurDeath();
States
{
Spawn:
MNTR AB 10 A_MinotaurLook
Loop
Roam:
MNTR ABCD 5 A_MinotaurRoam
Loop
See:
MNTR ABCD 5 A_MinotaurChase
Loop
Melee:
MNTR V 10 A_FaceTarget
MNTR W 7 A_FaceTarget
MNTR X 12 A_MinotaurAtk1
Goto See
Missile:
MNTR V 10 A_MinotaurDecide
MNTR Y 4 A_FaceTarget
MNTR Z 9 A_MinotaurAtk2
Goto See
Hammer:
MNTR V 10 A_FaceTarget
MNTR W 7 A_FaceTarget
MNTR X 12 A_MinotaurAtk3
Goto See
HammerLoop:
MNTR X 12
Goto Hammer
Charge:
MNTR U 2 A_MinotaurCharge
Loop
Pain:
MNTR E 3
MNTR E 6 A_Pain
Goto See
Death:
MNTR F 6 A_MinotaurDeath
MNTR G 5
MNTR H 6 A_Scream
MNTR I 5
MNTR J 6
MNTR K 5
MNTR L 6
MNTR M 5 A_NoBlocking
MNTR N 6
MNTR O 5
MNTR P 6
MNTR Q 5
MNTR R 6
MNTR S 5
MNTR T -1 A_BossDeath
Stop
FadeOut:
MNTR E 6
MNTR E 2 A_Scream
MNTR E 5 A_SpawnItemEx("MinotaurSmokeExit")
MNTR E 5
MNTR E 5 A_NoBlocking
MNTR E 5
MNTR E 5 A_SetTranslucent(0.66, 0)
MNTR E 5 A_SetTranslucent(0.33, 0)
MNTR E 10 A_BossDeath
Stop
}
}
// friendly minna taur
ACTOR MinotaurFriend : Minotaur native
{
Health 2500
-DROPOFF
-BOSS
-DONTMORPH
+FRIENDLY
+NOTARGETSWITCH
+STAYMORPHED
+TELESTOMP
+SUMMONEDMONSTER
RenderStyle Translucent
Alpha 0.3333
DropItem "None"
States
{
Spawn:
MNTR A 15
MNTR A 15 A_SetTranslucent(0.66, 0)
MNTR A 3 A_SetTranslucent(1, 0)
Goto Super::Spawn
Idle:
Goto Super::Spawn
Death:
Goto FadeOut
}
}
// d sparil on chaos serpent
ACTOR Sorcerer1
{
Health 2000
Radius 28
Height 100
Mass 800
Speed 16
PainChance 56
Monster
+BOSS
+DONTMORPH
+NORADIUSDMG
+NOTARGET
+NOICEDEATH
+FLOORCLIP
+DONTGIB
SeeSound "dsparilserpent/sight"
AttackSound "dsparilserpent/attack"
PainSound "dsparilserpent/pain"
DeathSound "dsparilserpent/death"
ActiveSound "dsparilserpent/active"
Obituary "$OB_DSPARIL1"
HitObituary "$OB_DSPARIL1HIT"
action native A_Sor1Pain();
action native A_Sor1Chase();
action native A_Srcr1Attack();
action native A_SorcererRise();
States
{
Spawn:
SRCR AB 10 A_Look
Loop
See:
SRCR ABCD 5 A_Sor1Chase
Loop
Pain:
SRCR Q 6 A_Sor1Pain
Goto See
Missile:
SRCR Q 7 A_FaceTarget
SRCR R 6 A_FaceTarget
SRCR S 10 A_Srcr1Attack
Goto See
Missile2:
SRCR S 10 A_FaceTarget
SRCR Q 7 A_FaceTarget
SRCR R 6 A_FaceTarget
SRCR S 10 A_Srcr1Attack
Goto See
Death:
SRCR E 7
SRCR F 7 A_Scream
SRCR G 7
SRCR HIJK 6
SRCR L 25 A_PlaySound("dsparil/zap", CHAN_BODY, 1, FALSE, ATTN_NONE)
SRCR MN 5
SRCR O 4
SRCR L 20 A_PlaySound("dsparil/zap", CHAN_BODY, 1, FALSE, ATTN_NONE)
SRCR MN 5
SRCR O 4
SRCR L 12
SRCR P -1 A_SorcererRise
}
}
// chaos serpent
ACTOR Demon1
{
Health 250
PainChance 50
Speed 13
Radius 32
Height 64
Mass 220
Monster
+TELESTOMP
+FLOORCLIP
SeeSound "DemonSight"
AttackSound "DemonAttack"
PainSound "DemonPain"
DeathSound "DemonDeath"
ActiveSound "DemonActive"
Obituary "$OB_DEMON1"
const int ChunkFlags = SXF_TRANSFERTRANSLATION|SXF_ABSOLUTEVELOCITY;
States
{
Spawn:
DEMN AA 10 A_Look
Loop
See:
DEMN ABCD 4 A_Chase
Loop
Pain:
DEMN E 4
DEMN E 4 A_Pain
Goto See
Melee:
DEMN E 6 A_FaceTarget
DEMN F 8 A_FaceTarget
DEMN G 6 A_CustomMeleeAttack(random[DemonAttack1](1, 8)*2)
Goto See
Missile:
DEMN E 5 A_FaceTarget
DEMN F 6 A_FaceTarget
DEMN G 5 A_CustomMissile("Demon1FX1", 62, 0)
Goto See
Death:
DEMN HI 6
DEMN J 6 A_Scream
DEMN K 6 A_NoBlocking
DEMN L 6 A_QueueCorpse
DEMN MNO 6
DEMN P -1
Stop
XDeath:
DEMN H 6
DEMN I 0 A_SpawnItemEx("Demon1Chunk1", 0, 0, 45, frandom[DemonChunks](1, 4.984375)*cos(angle+90),
frandom[DemonChunks](1, 4.984375)*sin(angle+90), 8, 90, ChunkFlags)
DEMN I 0 A_SpawnItemEx("Demon1Chunk2", 0, 0, 45, frandom[DemonChunks](1, 4.984375)*cos(angle-90),
frandom[DemonChunks](1, 4.984375)*sin(angle-90), 8, 270, ChunkFlags)
DEMN I 0 A_SpawnItemEx("Demon1Chunk3", 0, 0, 45, frandom[DemonChunks](1, 4.984375)*cos(angle-90),
frandom[DemonChunks](1, 4.984375)*sin(angle-90), 8, 270, ChunkFlags)
DEMN I 0 A_SpawnItemEx("Demon1Chunk4", 0, 0, 45, frandom[DemonChunks](1, 4.984375)*cos(angle-90),
frandom[DemonChunks](1, 4.984375)*sin(angle-90), 8, 270, ChunkFlags)
DEMN I 6 A_SpawnItemEx("Demon1Chunk5", 0, 0, 45, frandom[DemonChunks](1, 4.984375)*cos(angle-90),
frandom[DemonChunks](1, 4.984375)*sin(angle-90), 8, 270, ChunkFlags)
Goto Death+2
Ice:
DEMN Q 5 A_FreezeDeath
DEMN Q 1 A_FreezeDeathChunks
Wait
}
}
// d sparil unmounted
ACTOR Sorcerer2
{
Health 3500
Radius 16
Height 70
Mass 300
Speed 14
PainChance 32
Monster
+DROPOFF
+BOSS
+DONTMORPH
+FULLVOLACTIVE
+NORADIUSDMG
+NOTARGET
+NOICEDEATH
+FLOORCLIP
+BOSSDEATH
SeeSound "dsparil/sight"
AttackSound "dsparil/attack"
PainSound "dsparil/pain"
ActiveSound "dsparil/active"
Obituary "$OB_DSPARIL2"
HitObituary "$OB_DSPARIL2HIT"
action native A_Srcr2Decide();
action native A_Srcr2Attack();
action native A_Sor2DthInit();
action native A_Sor2DthLoop();
States
{
Spawn:
SOR2 MN 10 A_Look
Loop
See:
SOR2 MNOP 4 A_Chase
Loop
Rise:
SOR2 AB 4
SOR2 C 4 A_PlaySound("dsparil/rise", CHAN_BODY, 1, FALSE, ATTN_NONE)
SOR2 DEF 4
SOR2 G 12 A_PlaySound("dsparil/sight", CHAN_BODY, 1, FALSE, ATTN_NONE)
Goto See
Pain:
SOR2 Q 3
SOR2 Q 6 A_Pain
Goto See
Missile:
SOR2 R 9 A_Srcr2Decide
SOR2 S 9 A_FaceTarget
SOR2 T 20 A_Srcr2Attack
Goto See
Teleport:
SOR2 LKJIHG 6
Goto See
Death:
SDTH A 8 A_Sor2DthInit
SDTH B 8
SDTH C 8 A_PlaySound("dsparil/scream", CHAN_BODY, 1, FALSE, ATTN_NONE)
DeathLoop:
SDTH DE 7
SDTH F 7 A_Sor2DthLoop
SDTH G 6 A_PlaySound("dsparil/explode", CHAN_BODY, 1, FALSE, ATTN_NONE)
SDTH H 6
SDTH I 18
SDTH J 6 A_NoBlocking
SDTH K 6 A_PlaySound("dsparil/bones", CHAN_BODY, 1, FALSE, ATTN_NONE)
SDTH LMN 6
SDTH O -1 A_BossDeath
Stop
}
}
Delaweare?
https://zdoom.org/wiki/Supported_game
https://zdoom.org/wiki/Category:WADs_created_for_Z...
// b square
http://adventuresofsquare.com/
https://zdoom.org/wiki/Category:Monster
https://forum.zdoom.org/viewtopic.php?t=56762
whaaad? doom wads!
http://www.prodigal-game.com/doomwads.html
c64? no doom64
https://www.doomworld.com/forum/topic/91854-v15-do...
strife flamethrower
ACTOR FlameThrower : StrifeWeapon
{
+FLOORCLIP
Weapon.SelectionOrder 2100
Weapon.Kickback 0
Weapon.AmmoUse1 1
Weapon.AmmoGive1 100
Weapon.UpSound "weapons/flameidle"
Weapon.ReadySound "weapons/flameidle"
Weapon.AmmoType1 "EnergyPod"
Inventory.Icon "FLAMA0"
Tag "$TAG_FLAMER" // "Flame Thrower"
Inventory.PickupMessage "$TXT_FLAMER" // "You picked up the flame thrower."
action native A_FireFlamer();
States
{
Spawn:
FLAM A -1
Stop
Ready:
FLMT AB 3 A_WeaponReady
Loop
Deselect:
FLMT A 1 A_Lower
Loop
Select:
FLMT A 1 A_Raise
Loop
Fire:
FLMF A 2 A_FireFlamer
FLMF B 3 A_ReFire
Goto Ready
}
}
mr zzzappp b
ACTOR ElectricBolt : StrifeZap1
{
Speed 30
Radius 10
Height 10
Damage 10
Projectile
+STRIFEDAMAGE
MaxStepHeight 4
SeeSound "misc/swish"
ActiveSound "misc/swish"
DeathSound "weapons/xbowhit"
Obituary "$OB_MPELECTRICBOLT" // "%o got bolted to the wall by %k."
States
{
Spawn:
AROW A 10 A_LoopActiveSound
Loop
}
}
strife mauler
ACTOR MaulerTorpedo
{
Speed 20
Height 8
Radius 13
Damage 1
DamageType Disintegrate
Projectile
+STRIFEDAMAGE
MaxStepHeight 4
RenderStyle Add
SeeSound "weapons/mauler2fire"
DeathSound "weapons/mauler2hit"
Obituary "$OB_MPMAULER" // "%o was viciously vaporized by %k."
action native A_MaulerTorpedoWave();
States
{
Spawn:
TORP ABCD 4 Bright
Loop
Death:
THIT AB 8 Bright
THIT C 8 Bright A_MaulerTorpedoWave
THIT DE 8 Bright
Stop
}
}
ACTOR Mauler : StrifeWeapon
{
+FLOORCLIP
Weapon.SelectionOrder 300
Weapon.AmmoUse1 20
Weapon.AmmoGive1 40
Weapon.AmmoType1 "EnergyPod"
Weapon.SisterWeapon "Mauler2"
Inventory.Icon "TRPDA0"
Tag "$TAG_MAULER1" // "Mauler"
Inventory.PickupMessage "$TXT_MAULER" // "You picked up the mauler."
Obituary "$OB_MPMAULER1" // "%o was zapped by %k."
action native A_FireMauler1();
States
{
Ready:
MAUL FGHA 6 A_WeaponReady
Loop
Deselect:
MAUL A 1 A_Lower
Loop
Select:
MAUL A 1 A_Raise
Loop
Fire:
BLSF A 5 Bright A_FireMauler1 // see MaulerPuff
MAUL B 3 Bright A_Light1
MAUL C 2 A_Light2
MAUL DE 2
MAUL A 7 A_Light0
MAUL H 7
MAUL G 7 A_CheckReload
Goto Ready
Spawn:
TRPD A -1
Stop
}
}
PhasingZorcher - chex quest
Actor PhaseZorchMissile : PlasmaBall
{
RenderStyle Translucent
Obituary "$OB_MPPHASEZORCH" // "%o was phase zorched by %k."
Alpha 0.75
}
ACTOR PhasingZorcher : PlasmaRifle
{
Obituary ""
Inventory.PickupMessage "$GOTPHASINGZORCHER" // "You got the Phasing Zorcher!"
Tag "$TAG_PHASINGZORCHER" // "Phasing Zorcher"
States
{
Fire:
PLSG A 0 A_GunFlash
PLSG A 3 A_FireCustomMissile("PhaseZorchMissile")
PLSG B 20 A_ReFire
Goto Ready
Flash:
PLSF A 0 A_Jump(128, "Flash2")
PLSF A 3 Bright A_Light1
Goto LightDone
Flash2:
PLSF B 3 Bright A_Light1
Goto LightDone
}
}
chex version of BFG - maybe use old beta BFG shots?
ACTOR LAZDevice : BFG9000
{
Obituary ""
Inventory.PickupMessage "$GOTLAZDEVICE" // "You got the LAZ Device! Woot!"
Tag "$TAG_LAZDEVICE" // "LAZ Device"
States
{
Fire:
BFGG A 20 A_BFGSound
BFGG B 10 A_GunFlash
BFGG B 10 A_FireCustomMissile("LAZBall")
BFGG B 20 A_ReFire
Goto Ready
}
}
urban
http://action.mancubus.net/ad2free.htm
action
https://zdoom.org/wiki/Action_Doom
https://www.doomworld.com/idgames/levels/doom2/Por...
blasphemer
https://www.doomworld.com/vb/freedoom/70732-blasph...
https://github.com/Blasphemer/blasphemer
ROBIN hood? no.. foreverhood
https://zdoom.org/wiki/Foreverhood
hacxxxx
http://drnostromo.com/hacx/page.php?content=downlo...
harm
https://zdoom.org/wiki/Harmony
The fireballs created by a swing from a maulotaur's maul. Four are thrown in a 11.25° fan by A_MinotaurAtk2.
DECORATE definition
ACTOR MinotaurFX1
{
Radius 10
Height 6
Speed 20
FastSpeed 26
Damage 3
DamageType Fire
Projectile
-ACTIVATEIMPACT
-ACTIVATEPCROSS
RenderStyle Add
States
{
Spawn:
FX12 AB 6 Bright
Loop
Death:
FX12 CDEFGH 5 Bright
Stop
}
}
The running flame created by an impact on the ground from a maulotaur's maul. The native action A_MntrFloorFire spawns a new MinotaurFX3 every time it is called.
DECORATE definition
ACTOR MinotaurFX2 : MinotaurFX1
{
Radius 5
Height 12
Speed 14
FastSpeed 20
Damage 4
+FLOORHUGGER
ExplosionDamage 24
DeathSound "minotaur/fx2hit"
action native A_MntrFloorFire();
States
{
Spawn:
FX13 A 2 Bright A_MntrFloorFire
Loop
Death:
FX13 I 4 Bright A_Explode
FX13 JKLM 4 Bright
Stop
}
}
The flame trail left behind the running flame from an impact on the ground from a maulotaur's maul.
DECORATE definition
ACTOR MinotaurFX3 : MinotaurFX2
{
Radius 8
Height 16
Speed 0
DeathSound "minotaur/fx3hit"
ExplosionDamage 128
States
{
Spawn:
FX13 DC 4 Bright
FX13 BCDE 5 Bright
FX13 FGH 4 Bright
Stop
}
}
// racks
A Strife assault gun that stands up, used to make weapon racks. Gives you the assault gun upon pickup.
DECORATE definition
ACTOR AssaultGunStanding : WeaponGiver
{
DropItem "AssaultGun"
Inventory.PickupMessage "$TXT_ASSAULTGUN" // "You picked up the assault gun."
States
{
Spawn:
RIFL B -1
Stop
}
}
// power...up
PowerGhost is an internal class. An item of this class is placed in the player's inventory while he is having Heretic's Shadow/Ghost effect. With this effect on the player is drawn translucent and the aiming of monsters is randomly off. Additionally, any monster that hasn't been alerted yet will have difficulty seeing the player and any projectile with the THRUGHOST flag will pass right through the player.
Like all other Powerups items of this class are never used directly. Instead you have to create a new item that inherits from PowerupGiver to give it to the player.
DECORATE definition
ACTOR PowerGhost : PowerInvisibility
{
+GHOST
Powerup.Duration -60
Powerup.Strength 60
Powerup.Mode "None"
}
// the magic of.. flight
ACTOR PowerFlight : Powerup native
{
Powerup.Duration -60
+INVENTORY.HUBPOWER
}
// THE mask
ACTOR PowerMask : PowerIronFeet native
{
Powerup.Duration -80
Powerup.Color 0, 0, 0, 0
+INVENTORY.HUBPOWER
Inventory.Icon "I_MASK"
}
Maulotaurs are giant minotaurs who wield mauls, which explains their very D&Dish portmanteau name. They sport nose rings and, apparently more modest than their distant Doom cousins, wear loincloths. The second-strongest monster of Heretic, surpassed only by D'Sparil himself, they can be considered the Heretic equivalent of Doom's Cyberdemons; though despite their greater variety of attacks they are significantly weaker. For this reason, they are found in large numbers when they are used in boss levels.
In Hexen.wad, the attack sprites are lettered from F to K instead of from U to Z, and the death sprites are missing. For this reason, they are renamed at load time by ZDoom and the native action A_MinotaurDeath causes the maulotaur to enter the FadeOut state if the death sprites are missing.
When slain, they may randomly drop mystic urns and flame orbs with ten charges.
Minotaurs use the following actor fields for specific purposes:
special1
Serves as a countdown timer for the Charge attack.
special2
Used to prevent repeating the Hammer attack more than once.
Note: Maulotaurs are invulnerable while charging, dark servants aren't.
DECORATE definition
ACTOR Minotaur native
{
Health 3000
Radius 28
Height 100
Mass 800
Speed 16
Damage 7
PainChance 25
Monster
+DROPOFF
+FLOORCLIP
+BOSS
+NORADIUSDMG
+DONTMORPH
+NOTARGET
+BOSSDEATH
SeeSound "minotaur/sight"
AttackSound "minotaur/attack1"
PainSound "minotaur/pain"
DeathSound "minotaur/death"
ActiveSound "minotaur/active"
DropItem "ArtiSuperHealth", 51
DropItem "PhoenixRodAmmo", 84, 10
action native A_MinotaurDecide();
action native A_MinotaurAtk1();
action native A_MinotaurAtk2();
action native A_MinotaurAtk3();
action native A_MinotaurCharge();
action native A_MinotaurLook();
action native A_MinotaurRoam();
action native A_MinotaurChase();
action native A_MinotaurDeath();
States
{
Spawn:
MNTR AB 10 A_MinotaurLook
Loop
Roam:
MNTR ABCD 5 A_MinotaurRoam
Loop
See:
MNTR ABCD 5 A_MinotaurChase
Loop
Melee:
MNTR V 10 A_FaceTarget
MNTR W 7 A_FaceTarget
MNTR X 12 A_MinotaurAtk1
Goto See
Missile:
MNTR V 10 A_MinotaurDecide
MNTR Y 4 A_FaceTarget
MNTR Z 9 A_MinotaurAtk2
Goto See
Hammer:
MNTR V 10 A_FaceTarget
MNTR W 7 A_FaceTarget
MNTR X 12 A_MinotaurAtk3
Goto See
HammerLoop:
MNTR X 12
Goto Hammer
Charge:
MNTR U 2 A_MinotaurCharge
Loop
Pain:
MNTR E 3
MNTR E 6 A_Pain
Goto See
Death:
MNTR F 6 A_MinotaurDeath
MNTR G 5
MNTR H 6 A_Scream
MNTR I 5
MNTR J 6
MNTR K 5
MNTR L 6
MNTR M 5 A_NoBlocking
MNTR N 6
MNTR O 5
MNTR P 6
MNTR Q 5
MNTR R 6
MNTR S 5
MNTR T -1 A_BossDeath
Stop
FadeOut:
MNTR E 6
MNTR E 2 A_Scream
MNTR E 5 A_SpawnItemEx("MinotaurSmokeExit")
MNTR E 5
MNTR E 5 A_NoBlocking
MNTR E 5
MNTR E 5 A_SetTranslucent(0.66, 0)
MNTR E 5 A_SetTranslucent(0.33, 0)
MNTR E 10 A_BossDeath
Stop
}
}
// friendly minna taur
ACTOR MinotaurFriend : Minotaur native
{
Health 2500
-DROPOFF
-BOSS
-DONTMORPH
+FRIENDLY
+NOTARGETSWITCH
+STAYMORPHED
+TELESTOMP
+SUMMONEDMONSTER
RenderStyle Translucent
Alpha 0.3333
DropItem "None"
States
{
Spawn:
MNTR A 15
MNTR A 15 A_SetTranslucent(0.66, 0)
MNTR A 3 A_SetTranslucent(1, 0)
Goto Super::Spawn
Idle:
Goto Super::Spawn
Death:
Goto FadeOut
}
}
// d sparil on chaos serpent
ACTOR Sorcerer1
{
Health 2000
Radius 28
Height 100
Mass 800
Speed 16
PainChance 56
Monster
+BOSS
+DONTMORPH
+NORADIUSDMG
+NOTARGET
+NOICEDEATH
+FLOORCLIP
+DONTGIB
SeeSound "dsparilserpent/sight"
AttackSound "dsparilserpent/attack"
PainSound "dsparilserpent/pain"
DeathSound "dsparilserpent/death"
ActiveSound "dsparilserpent/active"
Obituary "$OB_DSPARIL1"
HitObituary "$OB_DSPARIL1HIT"
action native A_Sor1Pain();
action native A_Sor1Chase();
action native A_Srcr1Attack();
action native A_SorcererRise();
States
{
Spawn:
SRCR AB 10 A_Look
Loop
See:
SRCR ABCD 5 A_Sor1Chase
Loop
Pain:
SRCR Q 6 A_Sor1Pain
Goto See
Missile:
SRCR Q 7 A_FaceTarget
SRCR R 6 A_FaceTarget
SRCR S 10 A_Srcr1Attack
Goto See
Missile2:
SRCR S 10 A_FaceTarget
SRCR Q 7 A_FaceTarget
SRCR R 6 A_FaceTarget
SRCR S 10 A_Srcr1Attack
Goto See
Death:
SRCR E 7
SRCR F 7 A_Scream
SRCR G 7
SRCR HIJK 6
SRCR L 25 A_PlaySound("dsparil/zap", CHAN_BODY, 1, FALSE, ATTN_NONE)
SRCR MN 5
SRCR O 4
SRCR L 20 A_PlaySound("dsparil/zap", CHAN_BODY, 1, FALSE, ATTN_NONE)
SRCR MN 5
SRCR O 4
SRCR L 12
SRCR P -1 A_SorcererRise
}
}
// chaos serpent
ACTOR Demon1
{
Health 250
PainChance 50
Speed 13
Radius 32
Height 64
Mass 220
Monster
+TELESTOMP
+FLOORCLIP
SeeSound "DemonSight"
AttackSound "DemonAttack"
PainSound "DemonPain"
DeathSound "DemonDeath"
ActiveSound "DemonActive"
Obituary "$OB_DEMON1"
const int ChunkFlags = SXF_TRANSFERTRANSLATION|SXF_ABSOLUTEVELOCITY;
States
{
Spawn:
DEMN AA 10 A_Look
Loop
See:
DEMN ABCD 4 A_Chase
Loop
Pain:
DEMN E 4
DEMN E 4 A_Pain
Goto See
Melee:
DEMN E 6 A_FaceTarget
DEMN F 8 A_FaceTarget
DEMN G 6 A_CustomMeleeAttack(random[DemonAttack1](1, 8)*2)
Goto See
Missile:
DEMN E 5 A_FaceTarget
DEMN F 6 A_FaceTarget
DEMN G 5 A_CustomMissile("Demon1FX1", 62, 0)
Goto See
Death:
DEMN HI 6
DEMN J 6 A_Scream
DEMN K 6 A_NoBlocking
DEMN L 6 A_QueueCorpse
DEMN MNO 6
DEMN P -1
Stop
XDeath:
DEMN H 6
DEMN I 0 A_SpawnItemEx("Demon1Chunk1", 0, 0, 45, frandom[DemonChunks](1, 4.984375)*cos(angle+90),
frandom[DemonChunks](1, 4.984375)*sin(angle+90), 8, 90, ChunkFlags)
DEMN I 0 A_SpawnItemEx("Demon1Chunk2", 0, 0, 45, frandom[DemonChunks](1, 4.984375)*cos(angle-90),
frandom[DemonChunks](1, 4.984375)*sin(angle-90), 8, 270, ChunkFlags)
DEMN I 0 A_SpawnItemEx("Demon1Chunk3", 0, 0, 45, frandom[DemonChunks](1, 4.984375)*cos(angle-90),
frandom[DemonChunks](1, 4.984375)*sin(angle-90), 8, 270, ChunkFlags)
DEMN I 0 A_SpawnItemEx("Demon1Chunk4", 0, 0, 45, frandom[DemonChunks](1, 4.984375)*cos(angle-90),
frandom[DemonChunks](1, 4.984375)*sin(angle-90), 8, 270, ChunkFlags)
DEMN I 6 A_SpawnItemEx("Demon1Chunk5", 0, 0, 45, frandom[DemonChunks](1, 4.984375)*cos(angle-90),
frandom[DemonChunks](1, 4.984375)*sin(angle-90), 8, 270, ChunkFlags)
Goto Death+2
Ice:
DEMN Q 5 A_FreezeDeath
DEMN Q 1 A_FreezeDeathChunks
Wait
}
}
// d sparil unmounted
ACTOR Sorcerer2
{
Health 3500
Radius 16
Height 70
Mass 300
Speed 14
PainChance 32
Monster
+DROPOFF
+BOSS
+DONTMORPH
+FULLVOLACTIVE
+NORADIUSDMG
+NOTARGET
+NOICEDEATH
+FLOORCLIP
+BOSSDEATH
SeeSound "dsparil/sight"
AttackSound "dsparil/attack"
PainSound "dsparil/pain"
ActiveSound "dsparil/active"
Obituary "$OB_DSPARIL2"
HitObituary "$OB_DSPARIL2HIT"
action native A_Srcr2Decide();
action native A_Srcr2Attack();
action native A_Sor2DthInit();
action native A_Sor2DthLoop();
States
{
Spawn:
SOR2 MN 10 A_Look
Loop
See:
SOR2 MNOP 4 A_Chase
Loop
Rise:
SOR2 AB 4
SOR2 C 4 A_PlaySound("dsparil/rise", CHAN_BODY, 1, FALSE, ATTN_NONE)
SOR2 DEF 4
SOR2 G 12 A_PlaySound("dsparil/sight", CHAN_BODY, 1, FALSE, ATTN_NONE)
Goto See
Pain:
SOR2 Q 3
SOR2 Q 6 A_Pain
Goto See
Missile:
SOR2 R 9 A_Srcr2Decide
SOR2 S 9 A_FaceTarget
SOR2 T 20 A_Srcr2Attack
Goto See
Teleport:
SOR2 LKJIHG 6
Goto See
Death:
SDTH A 8 A_Sor2DthInit
SDTH B 8
SDTH C 8 A_PlaySound("dsparil/scream", CHAN_BODY, 1, FALSE, ATTN_NONE)
DeathLoop:
SDTH DE 7
SDTH F 7 A_Sor2DthLoop
SDTH G 6 A_PlaySound("dsparil/explode", CHAN_BODY, 1, FALSE, ATTN_NONE)
SDTH H 6
SDTH I 18
SDTH J 6 A_NoBlocking
SDTH K 6 A_PlaySound("dsparil/bones", CHAN_BODY, 1, FALSE, ATTN_NONE)
SDTH LMN 6
SDTH O -1 A_BossDeath
Stop
}
}
Delaweare?
https://zdoom.org/wiki/Supported_game
https://zdoom.org/wiki/Category:WADs_created_for_Z...
// b square
http://adventuresofsquare.com/
https://zdoom.org/wiki/Category:Monster
player classes
https://zdoom.org/wiki/Creating_new_player_classes
actor MyPlayer : DoomPlayer
{
...
}
Contrarily to simple actor replacement, you cannot use the "replaces" keyword here, because player pawns are not spawned like other actors. Instead, you must define access to this class in MAPINFO, with a GameInfo section:
GameInfo
{
PlayerClasses = "MyPlayer"
}
If you have several classes, you can list them all, separated by commas. You can also keep the original classes as well. If there are at least two classes, the player will have a class selection screen when starting a new game.
GameInfo
{
PlayerClasses = "MyPlayer", "DoomPlayer"
}
https://www.moddb.com/mods/quake-champions-doom-ed...
classes....
QC classes, doom player, GT player, wolf player, quake 2 player?, ..car thing..?
https://www.moddb.com/games/doom-ii
https://www.moddb.com/mods/r4l/downloads
d4 menu
https://www.moddb.com/mods/doom4gz/downloads/d4men...
waaaad up
https://doomwiki.org/wiki/Armageddon_2
https://www.moddb.com/games/hexen/mods
https://zdoom.org/wiki/Creating_new_player_classes
actor MyPlayer : DoomPlayer
{
...
}
Contrarily to simple actor replacement, you cannot use the "replaces" keyword here, because player pawns are not spawned like other actors. Instead, you must define access to this class in MAPINFO, with a GameInfo section:
GameInfo
{
PlayerClasses = "MyPlayer"
}
If you have several classes, you can list them all, separated by commas. You can also keep the original classes as well. If there are at least two classes, the player will have a class selection screen when starting a new game.
GameInfo
{
PlayerClasses = "MyPlayer", "DoomPlayer"
}
https://www.moddb.com/mods/quake-champions-doom-ed...
classes....
QC classes, doom player, GT player, wolf player, quake 2 player?, ..car thing..?
https://www.moddb.com/games/doom-ii
https://www.moddb.com/mods/r4l/downloads
d4 menu
https://www.moddb.com/mods/doom4gz/downloads/d4men...
waaaad up
https://doomwiki.org/wiki/Armageddon_2
https://www.moddb.com/games/hexen/mods
official pawns
ACTOR StrifePlayer : PlayerPawn
{
Health 100
Radius 18
Height 56
Mass 100
PainChance 255
Speed 1
MaxStepHeight 16
CrushPainSound "misc/pcrush"
Player.DisplayName "Rebel"
Player.StartItem "PunchDagger"
Player.RunHealth 15
Player.WeaponSlot 1, PunchDagger
Player.WeaponSlot 2, StrifeCrossbow2, StrifeCrossbow
Player.WeaponSlot 3, AssaultGun
Player.WeaponSlot 4, MiniMissileLauncher
Player.WeaponSlot 5, StrifeGrenadeLauncher2, StrifeGrenadeLauncher
Player.WeaponSlot 6, FlameThrower
Player.WeaponSlot 7, Mauler2, Mauler
Player.WeaponSlot 8, Sigil
Player.ColorRange 128, 143
Player.ColorSet 0, "Brown", 0x80, 0x8F, 0x82
Player.ColorSet 1, "Red", 0x40, 0x4F, 0x42, 0x20, 0x3F, 0x00, 0x1F, 0xF1, 0xF6, 0xE0, 0xE5, 0xF7, 0xFB, 0xF1, 0xF5
Player.ColorSet 2, "Rust", 0xB0, 0xBF, 0xB2, 0x20, 0x3F, 0x00, 0x1F
Player.ColorSet 3, "Gray", 0x10, 0x1F, 0x12, 0x20, 0x2F, 0xD0, 0xDF, 0x30, 0x3F, 0xD0, 0xDF
Player.ColorSet 4, "Dark Green", 0x30, 0x3F, 0x32, 0x20, 0x2F, 0xD0, 0xDF, 0x30, 0x3F, 0xD0, 0xDF
Player.ColorSet 5, "Gold", 0x50, 0x5F, 0x52, 0x20, 0x3F, 0x00, 0x1F, 0x50, 0x5F, 0x80, 0x8F, 0xC0, 0xCF, 0xA0, 0xAF,
0xD0, 0xDF, 0xB0, 0xBF
Player.ColorSet 6, "Bright Green", 0x60, 0x6F, 0x62, 0x20, 0x3F, 0x00, 0x1F, 0x50, 0x5F, 0x10, 0x1F, 0xC0, 0xCF, 0x20, 0x2F,
0xD0, 0xDF, 0x30, 0x3F
Player.ColorSet 7, "Blue", 0x90, 0x9F, 0x92, 0x20, 0x3F, 0x00, 0x1F, 0x50, 0x5F, 0x40, 0x4F, 0xC1, 0xCF, 0x01, 0x0F,
0xC0, 0xC0, 1, 1, 0xD0, 0xDF, 0x10, 0x1F
action native A_ItBurnsItBurns();
action native A_CrispyPlayer();
action native A_HandLower();
States
{
Spawn:
PLAY A -1
Stop
See:
PLAY ABCD 4
Loop
Missile:
PLAY E 12
Goto Spawn
Melee:
PLAY F 6
Goto Missile
Pain:
PLAY Q 4
PLAY Q 4 A_Pain
Goto Spawn
Death:
PLAY H 3
PLAY I 3 A_PlayerScream
PLAY J 3 A_NoBlocking
PLAY KLMNO 4
PLAY P -1
Stop
XDeath:
RGIB A 5 A_TossGib
RGIB B 5 A_XScream
RGIB C 5 A_NoBlocking
RGIB DEFG 5 A_TossGib
RGIB H -1 A_TossGib
Burn:
BURN A 3 Bright A_ItBurnsItBurns
BURN B 3 Bright A_DropFire
BURN C 3 Bright A_Wander
BURN D 3 Bright A_NoBlocking
BURN E 5 Bright A_DropFire
BURN FGH 5 Bright A_Wander
BURN I 5 Bright A_DropFire
BURN JKL 5 Bright A_Wander
BURN M 5 Bright A_DropFire
BURN N 5 Bright A_CrispyPlayer
BURN OPQPQ 5 Bright
BURN RSTU 7 Bright
BURN V -1
Stop
Disintegrate:
DISR A 5 A_PlaySoundEx("misc/disruptordeath", "Voice")
DISR BC 5
DISR D 5 A_NoBlocking
DISR EF 5
DISR GHIJ 4
MEAT D -1
Stop
Firehands:
WAVE ABCD 3
Loop
Firehandslower:
WAVE ABCD 3 A_HandLower
Loop
}
}
ACTOR PigPlayer : PlayerPawn native
{
Health 30
ReactionTime 0
PainChance 255
Radius 16
Height 24
Speed 1
+WINDTHRUST
+NOSKIN
-PICKUP
PainSound "PigPain"
DeathSound "PigDeath"
Player.JumpZ 6
Player.Viewheight 28
Player.ForwardMove 0.96, 0.98
Player.SideMove 0.95833333, 0.975
Player.SpawnClass "Pig"
Player.SoundClass "Pig"
Player.DisplayName "Pig"
Player.MorphWeapon "Snout"
States
{
Spawn:
PIGY A -1
Stop
See:
PIGY ABCD 3
Loop
Pain:
PIGY D 4 A_PigPain
Goto Spawn
Melee:
Missile:
PIGY A 12
Goto Spawn
Death:
PIGY E 4 A_Scream
PIGY F 3 A_NoBlocking
PIGY G 4
PIGY H 3
PIGY IJK 4
PIGY L -1
Stop
Ice:
PIGY M 5 A_FreezeDeath
PIGY M 1 A_FreezeDeathChunks
Wait
}
}
ACTOR MagePlayer : PlayerPawn
{
Health 100
ReactionTime 0
PainChance 255
Radius 16
Height 64
Speed 1
+NOSKIN
+NODAMAGETHRUST
+NOTHRUSTWHENINVUL
PainSound "PlayerMagePain"
RadiusDamageFactor 0.25
Player.JumpZ 9
Player.Viewheight 48
Player.SpawnClass "Mage"
Player.DisplayName "Mage"
Player.SoundClass "mage"
Player.ScoreIcon "MAGEFACE"
Player.InvulnerabilityMode "Reflective"
Player.HealRadiusType "Mana"
Player.HexenArmor 5, 5, 15, 10, 25
Player.StartItem "MWeapWand"
Player.ForwardMove 0.88, 0.92
Player.SideMove 0.875, 0.925
Player.Portrait "P_MWALK1"
Player.WeaponSlot 1, MWeapWand
Player.WeaponSlot 2, MWeapFrost
Player.WeaponSlot 3, MWeapLightning
Player.WeaponSlot 4, MWeapBloodscourge
Player.FlechetteType "ArtiPoisonBag2"
Player.ColorRange 146, 163
Player.ColorSet 0, "Blue", 146, 163, 161
Player.ColorSetFile 1, "Red", "TRANTBL7", 0xB3
Player.ColorSetFile 2, "Gold", "TRANTBL8", 0x8C
Player.ColorSetFile 3, "Dull Green", "TRANTBL9", 0x41
Player.ColorSetFile 4, "Green", "TRANTBLA", 0xC9
Player.ColorSetFile 5, "Gray", "TRANTBLB", 0x30
Player.ColorSetFile 6, "Brown", "TRANTBLC", 0x72
Player.ColorSetFile 7, "Purple", "TRANTBLD", 0xEE
States
{
Spawn:
MAGE A -1
Stop
See:
MAGE ABCD 4
Loop
Missile:
Melee:
MAGE EF 8
Goto Spawn
Pain:
MAGE G 4
MAGE G 4 A_Pain
Goto Spawn
Death:
MAGE H 6
MAGE I 6 A_PlayerScream
MAGE JK 6
MAGE L 6 A_NoBlocking
MAGE M 6
MAGE N -1
Stop
XDeath:
MAGE O 5 A_PlayerScream
MAGE P 5
MAGE R 5 A_NoBlocking
MAGE STUVW 5
MAGE X -1
Stop
Ice:
MAGE Y 5 A_FreezeDeath
MAGE Y 1 A_FreezeDeathChunks
Wait
Burn:
FDTH E 5 Bright A_PlaySound("*burndeath")
FDTH F 4 Bright
FDTH G 5 Bright
FDTH H 4 Bright A_PlayerScream
FDTH I 5 Bright
FDTH J 4 Bright
FDTH K 5 Bright
FDTH L 4 Bright
FDTH M 5 Bright
FDTH N 4 Bright
FDTH O 5 Bright
FDTH P 4 Bright
FDTH Q 5 Bright
FDTH R 4 Bright
FDTH S 5 Bright A_NoBlocking
FDTH T 4 Bright
FDTH U 5 Bright
FDTH V 4 Bright
ACLO E 35 A_CheckPlayerDone
Wait
ACLO E 8
Stop
}
}
ACTOR ClericPlayer : PlayerPawn
{
Health 100
ReactionTime 0
PainChance 255
Radius 16
Height 64
Speed 1
+NOSKIN
+NODAMAGETHRUST
+NOTHRUSTWHENINVUL
PainSound "PlayerClericPain"
RadiusDamageFactor 0.25
Player.JumpZ 9
Player.Viewheight 48
Player.SpawnClass "Cleric"
Player.DisplayName "Cleric"
Player.SoundClass "cleric"
Player.ScoreIcon "CLERFACE"
Player.InvulnerabilityMode "Ghost"
Player.HealRadiusType "Health"
Player.HexenArmor 10, 10, 25, 5, 20
Player.StartItem "CWeapMace"
Player.Portrait "P_CWALK1"
Player.WeaponSlot 1, CWeapMace
Player.WeaponSlot 2, CWeapStaff
Player.WeaponSlot 3, CWeapFlame
Player.WeaponSlot 4, CWeapWraithverge
Player.FlechetteType "ArtiPoisonBag1"
Player.ColorRange 146, 163
Player.ColorSet 0, "Blue", 146, 163, 161
Player.ColorSetFile 1, "Red", "TRANTBL7", 0xB3
Player.ColorSetFile 2, "Gold", "TRANTBL8", 0x8C
Player.ColorSetFile 3, "Dull Green", "TRANTBL9", 0x41
Player.ColorSetFile 4, "Green", "TRANTBLA", 0xC9
Player.ColorSetFile 5, "Gray", "TRANTBLB", 0x30
Player.ColorSetFile 6, "Brown", "TRANTBLC", 0x72
Player.ColorSetFile 7, "Purple", "TRANTBLD", 0xEE
States
{
Spawn:
CLER A -1
Stop
See:
CLER ABCD 4
Loop
Pain:
CLER H 4
CLER H 4 A_Pain
Goto Spawn
Missile:
Melee:
CLER EFG 6
Goto Spawn
Death:
CLER I 6
CLER J 6 A_PlayerScream
CLER KL 6
CLER M 6 A_NoBlocking
CLER NOP 6
CLER Q -1
Stop
XDeath:
CLER R 5 A_PlayerScream
CLER S 5
CLER T 5 A_NoBlocking
CLER UVWXYZ 5
CLER [ -1
Stop
Ice:
CLER "\" 5 A_FreezeDeath
CLER "\" 1 A_FreezeDeathChunks
Wait
Burn:
FDTH C 5 Bright A_PlaySound("*burndeath")
FDTH D 4 Bright
FDTH G 5 Bright
FDTH H 4 Bright A_PlayerScream
FDTH I 5 Bright
FDTH J 4 Bright
FDTH K 5 Bright
FDTH L 4 Bright
FDTH M 5 Bright
FDTH N 4 Bright
FDTH O 5 Bright
FDTH P 4 Bright
FDTH Q 5 Bright
FDTH R 4 Bright
FDTH S 5 Bright A_NoBlocking
FDTH T 4 Bright
FDTH U 5 Bright
FDTH V 4 Bright
ACLO E 35 A_CheckPlayerDone
Wait
ACLO E 8
Stop
}
}
ACTOR FighterPlayer : PlayerPawn
{
Health 100
PainChance 255
Radius 16
Height 64
Speed 1
+NOSKIN
+NODAMAGETHRUST
+NOTHRUSTWHENINVUL
PainSound "PlayerFighterPain"
RadiusDamageFactor 0.25
Player.JumpZ 9
Player.Viewheight 48
Player.SpawnClass "Fighter"
Player.DisplayName "Fighter"
Player.SoundClass "fighter"
Player.ScoreIcon "FITEFACE"
Player.HealRadiusType "Armor"
Player.HexenArmor 15, 25, 20, 15, 5
Player.StartItem "FWeapFist"
Player.ForwardMove 1.08, 1.2
Player.SideMove 1.125, 1.475
Player.Portrait "P_FWALK1"
Player.WeaponSlot 1, FWeapFist
Player.WeaponSlot 2, FWeapAxe
Player.WeaponSlot 3, FWeapHammer
Player.WeaponSlot 4, FWeapQuietus
Player.ColorRange 246, 254
Player.ColorSet 0, "Gold", 246, 254, 253
Player.ColorSetFile 1, "Red", "TRANTBL0", 0xAC
Player.ColorSetFile 2, "Blue", "TRANTBL1", 0x9D
Player.ColorSetFile 3, "Dull Green", "TRANTBL2", 0x3E
Player.ColorSetFile 4, "Green", "TRANTBL3", 0xC8
Player.ColorSetFile 5, "Gray", "TRANTBL4", 0x2D
Player.ColorSetFile 6, "Brown", "TRANTBL5", 0x6F
Player.ColorSetFile 7, "Purple", "TRANTBL6", 0xEE
States
{
Spawn:
PLAY A -1
Stop
See:
PLAY ABCD 4
Loop
Missile:
Melee:
PLAY EF 8
Goto Spawn
Pain:
PLAY G 4
PLAY G 4 A_Pain
Goto Spawn
Death:
PLAY H 6
PLAY I 6 A_PlayerScream
PLAY JK 6
PLAY L 6 A_NoBlocking
PLAY M 6
PLAY N -1
Stop
XDeath:
PLAY O 5 A_PlayerScream
PLAY P 5 A_SkullPop("BloodyFighterSkull")
PLAY R 5 A_NoBlocking
PLAY STUV 5
PLAY W -1
Stop
Ice:
PLAY X 5 A_FreezeDeath
PLAY X 1 A_FreezeDeathChunks
Wait
Burn:
FDTH A 5 Bright A_PlaySound("*burndeath")
FDTH B 4 Bright
FDTH G 5 Bright
FDTH H 4 Bright A_PlayerScream
FDTH I 5 Bright
FDTH J 4 Bright
FDTH K 5 Bright
FDTH L 4 Bright
FDTH M 5 Bright
FDTH N 4 Bright
FDTH O 5 Bright
FDTH P 4 Bright
FDTH Q 5 Bright
FDTH R 4 Bright
FDTH S 5 Bright A_NoBlocking
FDTH T 4 Bright
FDTH U 5 Bright
FDTH V 4 Bright
ACLO E 35 A_CheckPlayerDone
Wait
ACLO E 8
Stop
}
}
ACTOR HereticPlayer : PlayerPawn
{
Health 100
Radius 16
Height 56
Mass 100
PainChance 255
Speed 1
Player.DisplayName "Corvus"
Player.StartItem "GoldWand"
Player.StartItem "Staff"
Player.StartItem "GoldWandAmmo", 50
Player.WeaponSlot 1, Staff, Gauntlets
Player.WeaponSlot 2, GoldWand
Player.WeaponSlot 3, Crossbow
Player.WeaponSlot 4, Blaster
Player.WeaponSlot 5, SkullRod
Player.WeaponSlot 6, PhoenixRod
Player.WeaponSlot 7, Mace
Player.ColorRange 225, 240
Player.ColorSet 0, "Green", 225, 240, 238
Player.ColorSet 1, "Yellow", 114, 129, 127
Player.ColorSet 2, "Red", 145, 160, 158
Player.ColorSet 3, "Blue", 190, 205, 203
// Doom Legacy additions
Player.ColorSet 4, "Brown", 67, 82, 80
Player.ColorSet 5, "Light Gray", 9, 24, 22
Player.ColorSet 6, "Light Brown", 74, 89, 87
Player.ColorSet 7, "Light Red", 150, 165, 163
Player.ColorSet 8, "Light Blue", 192, 207, 205
Player.ColorSet 9, "Beige", 95, 110, 108
States
{
Spawn:
PLAY A -1
Stop
See:
PLAY ABCD 4
Loop
Melee:
Missile:
PLAY F 6 BRIGHT
PLAY E 12
Goto Spawn
Pain:
PLAY G 4
PLAY G 4 A_Pain
Goto Spawn
Death:
PLAY H 6 A_PlayerSkinCheck("AltSkinDeath")
PLAY I 6 A_PlayerScream
PLAY JK 6
PLAY L 6 A_NoBlocking
PLAY MNO 6
PLAY P -1
Stop
XDeath:
PLAY Q 0 A_PlayerSkinCheck("AltSkinXDeath")
PLAY Q 5 A_PlayerScream
PLAY R 0 A_NoBlocking
PLAY R 5 A_SkullPop
PLAY STUVWX 5
PLAY Y -1
Stop
Burn:
FDTH A 5 BRIGHT A_PlaySound("*burndeath")
FDTH B 4 BRIGHT
FDTH C 5 BRIGHT
FDTH D 4 BRIGHT A_PlayerScream
FDTH E 5 BRIGHT
FDTH F 4 BRIGHT
FDTH G 5 BRIGHT A_PlaySound("*burndeath")
FDTH H 4 BRIGHT
FDTH I 5 BRIGHT
FDTH J 4 BRIGHT
FDTH K 5 BRIGHT
FDTH L 4 BRIGHT
FDTH M 5 BRIGHT
FDTH N 4 BRIGHT
FDTH O 5 BRIGHT A_NoBlocking
FDTH P 4 BRIGHT
FDTH Q 5 BRIGHT
FDTH R 4 BRIGHT
ACLO E 35 A_CheckPlayerDone
Wait
AltSkinDeath:
PLAY H 10
PLAY I 10 A_PlayerScream
PLAY J 10 A_NoBlocking
PLAY KLM 10
PLAY N -1
Stop
AltSkinXDeath:
PLAY O 5
PLAY P 5 A_XScream
PLAY Q 5 A_NoBlocking
PLAY RSTUV 5
PLAY W -1
Stop
}
}
ACTOR DoomPlayer : PlayerPawn
{
Speed 1
Health 100
Radius 16
Height 56
Mass 100
PainChance 255
Player.DisplayName "Marine"
Player.CrouchSprite "PLYC"
Player.StartItem "Pistol"
Player.StartItem "Fist"
Player.StartItem "Clip", 50
Player.WeaponSlot 1, Fist, Chainsaw
Player.WeaponSlot 2, Pistol
Player.WeaponSlot 3, Shotgun, SuperShotgun
Player.WeaponSlot 4, Chaingun
Player.WeaponSlot 5, RocketLauncher
Player.WeaponSlot 6, PlasmaRifle
Player.WeaponSlot 7, BFG9000
Player.ColorRange 112, 127
Player.ColorSet 0, "Green", 0x70, 0x7F, 0x72
Player.ColorSet 1, "Gray", 0x60, 0x6F, 0x62 // Called "Indigo" originally so as to have a unique initial
Player.ColorSet 2, "Brown", 0x40, 0x4F, 0x42
Player.ColorSet 3, "Red", 0x20, 0x2F, 0x22
// Doom Legacy additions
Player.ColorSet 4, "Light Gray", 0x58, 0x67, 0x5A
Player.ColorSet 5, "Light Brown", 0x38, 0x47, 0x3A
Player.ColorSet 6, "Light Red", 0xB0, 0xBF, 0xB2
Player.ColorSet 7, "Light Blue", 0xC0, 0xCF, 0xC2
States
{
Spawn:
PLAY A -1
Loop
See:
PLAY ABCD 4
Loop
Missile:
PLAY E 12
Goto Spawn
Melee:
PLAY F 6 BRIGHT
Goto Missile
Pain:
PLAY G 4
PLAY G 4 A_Pain
Goto Spawn
Death:
PLAY H 0 A_PlayerSkinCheck("AltSkinDeath")
Death1:
PLAY H 10
PLAY I 10 A_PlayerScream
PLAY J 10 A_NoBlocking
PLAY KLM 10
PLAY N -1
Stop
XDeath:
PLAY O 0 A_PlayerSkinCheck("AltSkinXDeath")
XDeath1:
PLAY O 5
PLAY P 5 A_XScream
PLAY Q 5 A_NoBlocking
PLAY RSTUV 5
PLAY W -1
Stop
AltSkinDeath:
PLAY H 6
PLAY I 6 A_PlayerScream
PLAY JK 6
PLAY L 6 A_NoBlocking
PLAY MNO 6
PLAY P -1
Stop
AltSkinXDeath:
PLAY Q 5 A_PlayerScream
PLAY R 0 A_NoBlocking
PLAY R 5 A_SkullPop
PLAY STUVWX 5
PLAY Y -1
Stop
}
}
also.... it is possible to make monsters work as player pawns
ACTOR StrifePlayer : PlayerPawn
{
Health 100
Radius 18
Height 56
Mass 100
PainChance 255
Speed 1
MaxStepHeight 16
CrushPainSound "misc/pcrush"
Player.DisplayName "Rebel"
Player.StartItem "PunchDagger"
Player.RunHealth 15
Player.WeaponSlot 1, PunchDagger
Player.WeaponSlot 2, StrifeCrossbow2, StrifeCrossbow
Player.WeaponSlot 3, AssaultGun
Player.WeaponSlot 4, MiniMissileLauncher
Player.WeaponSlot 5, StrifeGrenadeLauncher2, StrifeGrenadeLauncher
Player.WeaponSlot 6, FlameThrower
Player.WeaponSlot 7, Mauler2, Mauler
Player.WeaponSlot 8, Sigil
Player.ColorRange 128, 143
Player.ColorSet 0, "Brown", 0x80, 0x8F, 0x82
Player.ColorSet 1, "Red", 0x40, 0x4F, 0x42, 0x20, 0x3F, 0x00, 0x1F, 0xF1, 0xF6, 0xE0, 0xE5, 0xF7, 0xFB, 0xF1, 0xF5
Player.ColorSet 2, "Rust", 0xB0, 0xBF, 0xB2, 0x20, 0x3F, 0x00, 0x1F
Player.ColorSet 3, "Gray", 0x10, 0x1F, 0x12, 0x20, 0x2F, 0xD0, 0xDF, 0x30, 0x3F, 0xD0, 0xDF
Player.ColorSet 4, "Dark Green", 0x30, 0x3F, 0x32, 0x20, 0x2F, 0xD0, 0xDF, 0x30, 0x3F, 0xD0, 0xDF
Player.ColorSet 5, "Gold", 0x50, 0x5F, 0x52, 0x20, 0x3F, 0x00, 0x1F, 0x50, 0x5F, 0x80, 0x8F, 0xC0, 0xCF, 0xA0, 0xAF,
0xD0, 0xDF, 0xB0, 0xBF
Player.ColorSet 6, "Bright Green", 0x60, 0x6F, 0x62, 0x20, 0x3F, 0x00, 0x1F, 0x50, 0x5F, 0x10, 0x1F, 0xC0, 0xCF, 0x20, 0x2F,
0xD0, 0xDF, 0x30, 0x3F
Player.ColorSet 7, "Blue", 0x90, 0x9F, 0x92, 0x20, 0x3F, 0x00, 0x1F, 0x50, 0x5F, 0x40, 0x4F, 0xC1, 0xCF, 0x01, 0x0F,
0xC0, 0xC0, 1, 1, 0xD0, 0xDF, 0x10, 0x1F
action native A_ItBurnsItBurns();
action native A_CrispyPlayer();
action native A_HandLower();
States
{
Spawn:
PLAY A -1
Stop
See:
PLAY ABCD 4
Loop
Missile:
PLAY E 12
Goto Spawn
Melee:
PLAY F 6
Goto Missile
Pain:
PLAY Q 4
PLAY Q 4 A_Pain
Goto Spawn
Death:
PLAY H 3
PLAY I 3 A_PlayerScream
PLAY J 3 A_NoBlocking
PLAY KLMNO 4
PLAY P -1
Stop
XDeath:
RGIB A 5 A_TossGib
RGIB B 5 A_XScream
RGIB C 5 A_NoBlocking
RGIB DEFG 5 A_TossGib
RGIB H -1 A_TossGib
Burn:
BURN A 3 Bright A_ItBurnsItBurns
BURN B 3 Bright A_DropFire
BURN C 3 Bright A_Wander
BURN D 3 Bright A_NoBlocking
BURN E 5 Bright A_DropFire
BURN FGH 5 Bright A_Wander
BURN I 5 Bright A_DropFire
BURN JKL 5 Bright A_Wander
BURN M 5 Bright A_DropFire
BURN N 5 Bright A_CrispyPlayer
BURN OPQPQ 5 Bright
BURN RSTU 7 Bright
BURN V -1
Stop
Disintegrate:
DISR A 5 A_PlaySoundEx("misc/disruptordeath", "Voice")
DISR BC 5
DISR D 5 A_NoBlocking
DISR EF 5
DISR GHIJ 4
MEAT D -1
Stop
Firehands:
WAVE ABCD 3
Loop
Firehandslower:
WAVE ABCD 3 A_HandLower
Loop
}
}
ACTOR PigPlayer : PlayerPawn native
{
Health 30
ReactionTime 0
PainChance 255
Radius 16
Height 24
Speed 1
+WINDTHRUST
+NOSKIN
-PICKUP
PainSound "PigPain"
DeathSound "PigDeath"
Player.JumpZ 6
Player.Viewheight 28
Player.ForwardMove 0.96, 0.98
Player.SideMove 0.95833333, 0.975
Player.SpawnClass "Pig"
Player.SoundClass "Pig"
Player.DisplayName "Pig"
Player.MorphWeapon "Snout"
States
{
Spawn:
PIGY A -1
Stop
See:
PIGY ABCD 3
Loop
Pain:
PIGY D 4 A_PigPain
Goto Spawn
Melee:
Missile:
PIGY A 12
Goto Spawn
Death:
PIGY E 4 A_Scream
PIGY F 3 A_NoBlocking
PIGY G 4
PIGY H 3
PIGY IJK 4
PIGY L -1
Stop
Ice:
PIGY M 5 A_FreezeDeath
PIGY M 1 A_FreezeDeathChunks
Wait
}
}
ACTOR MagePlayer : PlayerPawn
{
Health 100
ReactionTime 0
PainChance 255
Radius 16
Height 64
Speed 1
+NOSKIN
+NODAMAGETHRUST
+NOTHRUSTWHENINVUL
PainSound "PlayerMagePain"
RadiusDamageFactor 0.25
Player.JumpZ 9
Player.Viewheight 48
Player.SpawnClass "Mage"
Player.DisplayName "Mage"
Player.SoundClass "mage"
Player.ScoreIcon "MAGEFACE"
Player.InvulnerabilityMode "Reflective"
Player.HealRadiusType "Mana"
Player.HexenArmor 5, 5, 15, 10, 25
Player.StartItem "MWeapWand"
Player.ForwardMove 0.88, 0.92
Player.SideMove 0.875, 0.925
Player.Portrait "P_MWALK1"
Player.WeaponSlot 1, MWeapWand
Player.WeaponSlot 2, MWeapFrost
Player.WeaponSlot 3, MWeapLightning
Player.WeaponSlot 4, MWeapBloodscourge
Player.FlechetteType "ArtiPoisonBag2"
Player.ColorRange 146, 163
Player.ColorSet 0, "Blue", 146, 163, 161
Player.ColorSetFile 1, "Red", "TRANTBL7", 0xB3
Player.ColorSetFile 2, "Gold", "TRANTBL8", 0x8C
Player.ColorSetFile 3, "Dull Green", "TRANTBL9", 0x41
Player.ColorSetFile 4, "Green", "TRANTBLA", 0xC9
Player.ColorSetFile 5, "Gray", "TRANTBLB", 0x30
Player.ColorSetFile 6, "Brown", "TRANTBLC", 0x72
Player.ColorSetFile 7, "Purple", "TRANTBLD", 0xEE
States
{
Spawn:
MAGE A -1
Stop
See:
MAGE ABCD 4
Loop
Missile:
Melee:
MAGE EF 8
Goto Spawn
Pain:
MAGE G 4
MAGE G 4 A_Pain
Goto Spawn
Death:
MAGE H 6
MAGE I 6 A_PlayerScream
MAGE JK 6
MAGE L 6 A_NoBlocking
MAGE M 6
MAGE N -1
Stop
XDeath:
MAGE O 5 A_PlayerScream
MAGE P 5
MAGE R 5 A_NoBlocking
MAGE STUVW 5
MAGE X -1
Stop
Ice:
MAGE Y 5 A_FreezeDeath
MAGE Y 1 A_FreezeDeathChunks
Wait
Burn:
FDTH E 5 Bright A_PlaySound("*burndeath")
FDTH F 4 Bright
FDTH G 5 Bright
FDTH H 4 Bright A_PlayerScream
FDTH I 5 Bright
FDTH J 4 Bright
FDTH K 5 Bright
FDTH L 4 Bright
FDTH M 5 Bright
FDTH N 4 Bright
FDTH O 5 Bright
FDTH P 4 Bright
FDTH Q 5 Bright
FDTH R 4 Bright
FDTH S 5 Bright A_NoBlocking
FDTH T 4 Bright
FDTH U 5 Bright
FDTH V 4 Bright
ACLO E 35 A_CheckPlayerDone
Wait
ACLO E 8
Stop
}
}
ACTOR ClericPlayer : PlayerPawn
{
Health 100
ReactionTime 0
PainChance 255
Radius 16
Height 64
Speed 1
+NOSKIN
+NODAMAGETHRUST
+NOTHRUSTWHENINVUL
PainSound "PlayerClericPain"
RadiusDamageFactor 0.25
Player.JumpZ 9
Player.Viewheight 48
Player.SpawnClass "Cleric"
Player.DisplayName "Cleric"
Player.SoundClass "cleric"
Player.ScoreIcon "CLERFACE"
Player.InvulnerabilityMode "Ghost"
Player.HealRadiusType "Health"
Player.HexenArmor 10, 10, 25, 5, 20
Player.StartItem "CWeapMace"
Player.Portrait "P_CWALK1"
Player.WeaponSlot 1, CWeapMace
Player.WeaponSlot 2, CWeapStaff
Player.WeaponSlot 3, CWeapFlame
Player.WeaponSlot 4, CWeapWraithverge
Player.FlechetteType "ArtiPoisonBag1"
Player.ColorRange 146, 163
Player.ColorSet 0, "Blue", 146, 163, 161
Player.ColorSetFile 1, "Red", "TRANTBL7", 0xB3
Player.ColorSetFile 2, "Gold", "TRANTBL8", 0x8C
Player.ColorSetFile 3, "Dull Green", "TRANTBL9", 0x41
Player.ColorSetFile 4, "Green", "TRANTBLA", 0xC9
Player.ColorSetFile 5, "Gray", "TRANTBLB", 0x30
Player.ColorSetFile 6, "Brown", "TRANTBLC", 0x72
Player.ColorSetFile 7, "Purple", "TRANTBLD", 0xEE
States
{
Spawn:
CLER A -1
Stop
See:
CLER ABCD 4
Loop
Pain:
CLER H 4
CLER H 4 A_Pain
Goto Spawn
Missile:
Melee:
CLER EFG 6
Goto Spawn
Death:
CLER I 6
CLER J 6 A_PlayerScream
CLER KL 6
CLER M 6 A_NoBlocking
CLER NOP 6
CLER Q -1
Stop
XDeath:
CLER R 5 A_PlayerScream
CLER S 5
CLER T 5 A_NoBlocking
CLER UVWXYZ 5
CLER [ -1
Stop
Ice:
CLER "\" 5 A_FreezeDeath
CLER "\" 1 A_FreezeDeathChunks
Wait
Burn:
FDTH C 5 Bright A_PlaySound("*burndeath")
FDTH D 4 Bright
FDTH G 5 Bright
FDTH H 4 Bright A_PlayerScream
FDTH I 5 Bright
FDTH J 4 Bright
FDTH K 5 Bright
FDTH L 4 Bright
FDTH M 5 Bright
FDTH N 4 Bright
FDTH O 5 Bright
FDTH P 4 Bright
FDTH Q 5 Bright
FDTH R 4 Bright
FDTH S 5 Bright A_NoBlocking
FDTH T 4 Bright
FDTH U 5 Bright
FDTH V 4 Bright
ACLO E 35 A_CheckPlayerDone
Wait
ACLO E 8
Stop
}
}
ACTOR FighterPlayer : PlayerPawn
{
Health 100
PainChance 255
Radius 16
Height 64
Speed 1
+NOSKIN
+NODAMAGETHRUST
+NOTHRUSTWHENINVUL
PainSound "PlayerFighterPain"
RadiusDamageFactor 0.25
Player.JumpZ 9
Player.Viewheight 48
Player.SpawnClass "Fighter"
Player.DisplayName "Fighter"
Player.SoundClass "fighter"
Player.ScoreIcon "FITEFACE"
Player.HealRadiusType "Armor"
Player.HexenArmor 15, 25, 20, 15, 5
Player.StartItem "FWeapFist"
Player.ForwardMove 1.08, 1.2
Player.SideMove 1.125, 1.475
Player.Portrait "P_FWALK1"
Player.WeaponSlot 1, FWeapFist
Player.WeaponSlot 2, FWeapAxe
Player.WeaponSlot 3, FWeapHammer
Player.WeaponSlot 4, FWeapQuietus
Player.ColorRange 246, 254
Player.ColorSet 0, "Gold", 246, 254, 253
Player.ColorSetFile 1, "Red", "TRANTBL0", 0xAC
Player.ColorSetFile 2, "Blue", "TRANTBL1", 0x9D
Player.ColorSetFile 3, "Dull Green", "TRANTBL2", 0x3E
Player.ColorSetFile 4, "Green", "TRANTBL3", 0xC8
Player.ColorSetFile 5, "Gray", "TRANTBL4", 0x2D
Player.ColorSetFile 6, "Brown", "TRANTBL5", 0x6F
Player.ColorSetFile 7, "Purple", "TRANTBL6", 0xEE
States
{
Spawn:
PLAY A -1
Stop
See:
PLAY ABCD 4
Loop
Missile:
Melee:
PLAY EF 8
Goto Spawn
Pain:
PLAY G 4
PLAY G 4 A_Pain
Goto Spawn
Death:
PLAY H 6
PLAY I 6 A_PlayerScream
PLAY JK 6
PLAY L 6 A_NoBlocking
PLAY M 6
PLAY N -1
Stop
XDeath:
PLAY O 5 A_PlayerScream
PLAY P 5 A_SkullPop("BloodyFighterSkull")
PLAY R 5 A_NoBlocking
PLAY STUV 5
PLAY W -1
Stop
Ice:
PLAY X 5 A_FreezeDeath
PLAY X 1 A_FreezeDeathChunks
Wait
Burn:
FDTH A 5 Bright A_PlaySound("*burndeath")
FDTH B 4 Bright
FDTH G 5 Bright
FDTH H 4 Bright A_PlayerScream
FDTH I 5 Bright
FDTH J 4 Bright
FDTH K 5 Bright
FDTH L 4 Bright
FDTH M 5 Bright
FDTH N 4 Bright
FDTH O 5 Bright
FDTH P 4 Bright
FDTH Q 5 Bright
FDTH R 4 Bright
FDTH S 5 Bright A_NoBlocking
FDTH T 4 Bright
FDTH U 5 Bright
FDTH V 4 Bright
ACLO E 35 A_CheckPlayerDone
Wait
ACLO E 8
Stop
}
}
ACTOR HereticPlayer : PlayerPawn
{
Health 100
Radius 16
Height 56
Mass 100
PainChance 255
Speed 1
Player.DisplayName "Corvus"
Player.StartItem "GoldWand"
Player.StartItem "Staff"
Player.StartItem "GoldWandAmmo", 50
Player.WeaponSlot 1, Staff, Gauntlets
Player.WeaponSlot 2, GoldWand
Player.WeaponSlot 3, Crossbow
Player.WeaponSlot 4, Blaster
Player.WeaponSlot 5, SkullRod
Player.WeaponSlot 6, PhoenixRod
Player.WeaponSlot 7, Mace
Player.ColorRange 225, 240
Player.ColorSet 0, "Green", 225, 240, 238
Player.ColorSet 1, "Yellow", 114, 129, 127
Player.ColorSet 2, "Red", 145, 160, 158
Player.ColorSet 3, "Blue", 190, 205, 203
// Doom Legacy additions
Player.ColorSet 4, "Brown", 67, 82, 80
Player.ColorSet 5, "Light Gray", 9, 24, 22
Player.ColorSet 6, "Light Brown", 74, 89, 87
Player.ColorSet 7, "Light Red", 150, 165, 163
Player.ColorSet 8, "Light Blue", 192, 207, 205
Player.ColorSet 9, "Beige", 95, 110, 108
States
{
Spawn:
PLAY A -1
Stop
See:
PLAY ABCD 4
Loop
Melee:
Missile:
PLAY F 6 BRIGHT
PLAY E 12
Goto Spawn
Pain:
PLAY G 4
PLAY G 4 A_Pain
Goto Spawn
Death:
PLAY H 6 A_PlayerSkinCheck("AltSkinDeath")
PLAY I 6 A_PlayerScream
PLAY JK 6
PLAY L 6 A_NoBlocking
PLAY MNO 6
PLAY P -1
Stop
XDeath:
PLAY Q 0 A_PlayerSkinCheck("AltSkinXDeath")
PLAY Q 5 A_PlayerScream
PLAY R 0 A_NoBlocking
PLAY R 5 A_SkullPop
PLAY STUVWX 5
PLAY Y -1
Stop
Burn:
FDTH A 5 BRIGHT A_PlaySound("*burndeath")
FDTH B 4 BRIGHT
FDTH C 5 BRIGHT
FDTH D 4 BRIGHT A_PlayerScream
FDTH E 5 BRIGHT
FDTH F 4 BRIGHT
FDTH G 5 BRIGHT A_PlaySound("*burndeath")
FDTH H 4 BRIGHT
FDTH I 5 BRIGHT
FDTH J 4 BRIGHT
FDTH K 5 BRIGHT
FDTH L 4 BRIGHT
FDTH M 5 BRIGHT
FDTH N 4 BRIGHT
FDTH O 5 BRIGHT A_NoBlocking
FDTH P 4 BRIGHT
FDTH Q 5 BRIGHT
FDTH R 4 BRIGHT
ACLO E 35 A_CheckPlayerDone
Wait
AltSkinDeath:
PLAY H 10
PLAY I 10 A_PlayerScream
PLAY J 10 A_NoBlocking
PLAY KLM 10
PLAY N -1
Stop
AltSkinXDeath:
PLAY O 5
PLAY P 5 A_XScream
PLAY Q 5 A_NoBlocking
PLAY RSTUV 5
PLAY W -1
Stop
}
}
ACTOR DoomPlayer : PlayerPawn
{
Speed 1
Health 100
Radius 16
Height 56
Mass 100
PainChance 255
Player.DisplayName "Marine"
Player.CrouchSprite "PLYC"
Player.StartItem "Pistol"
Player.StartItem "Fist"
Player.StartItem "Clip", 50
Player.WeaponSlot 1, Fist, Chainsaw
Player.WeaponSlot 2, Pistol
Player.WeaponSlot 3, Shotgun, SuperShotgun
Player.WeaponSlot 4, Chaingun
Player.WeaponSlot 5, RocketLauncher
Player.WeaponSlot 6, PlasmaRifle
Player.WeaponSlot 7, BFG9000
Player.ColorRange 112, 127
Player.ColorSet 0, "Green", 0x70, 0x7F, 0x72
Player.ColorSet 1, "Gray", 0x60, 0x6F, 0x62 // Called "Indigo" originally so as to have a unique initial
Player.ColorSet 2, "Brown", 0x40, 0x4F, 0x42
Player.ColorSet 3, "Red", 0x20, 0x2F, 0x22
// Doom Legacy additions
Player.ColorSet 4, "Light Gray", 0x58, 0x67, 0x5A
Player.ColorSet 5, "Light Brown", 0x38, 0x47, 0x3A
Player.ColorSet 6, "Light Red", 0xB0, 0xBF, 0xB2
Player.ColorSet 7, "Light Blue", 0xC0, 0xCF, 0xC2
States
{
Spawn:
PLAY A -1
Loop
See:
PLAY ABCD 4
Loop
Missile:
PLAY E 12
Goto Spawn
Melee:
PLAY F 6 BRIGHT
Goto Missile
Pain:
PLAY G 4
PLAY G 4 A_Pain
Goto Spawn
Death:
PLAY H 0 A_PlayerSkinCheck("AltSkinDeath")
Death1:
PLAY H 10
PLAY I 10 A_PlayerScream
PLAY J 10 A_NoBlocking
PLAY KLM 10
PLAY N -1
Stop
XDeath:
PLAY O 0 A_PlayerSkinCheck("AltSkinXDeath")
XDeath1:
PLAY O 5
PLAY P 5 A_XScream
PLAY Q 5 A_NoBlocking
PLAY RSTUV 5
PLAY W -1
Stop
AltSkinDeath:
PLAY H 6
PLAY I 6 A_PlayerScream
PLAY JK 6
PLAY L 6 A_NoBlocking
PLAY MNO 6
PLAY P -1
Stop
AltSkinXDeath:
PLAY Q 5 A_PlayerScream
PLAY R 0 A_NoBlocking
PLAY R 5 A_SkullPop
PLAY STUVWX 5
PLAY Y -1
Stop
}
}
also.... it is possible to make monsters work as player pawns
ACTOR ChexPlayer : DoomPlayer
{
Player.DisplayName "Chex Warrior"
Player.CrouchSprite ""
Player.StartItem "MiniZorcher"
Player.StartItem "Bootspoon"
Player.StartItem "MiniZorchRecharge", 50
Player.DamageScreenColor "60 b0 58"
Player.WeaponSlot 1, Bootspoon, SuperBootspork
Player.WeaponSlot 2, MiniZorcher
Player.WeaponSlot 3, LargeZorcher, SuperLargeZorcher
Player.WeaponSlot 4, RapidZorcher
Player.WeaponSlot 5, ZorchPropulsor
Player.WeaponSlot 6, PhasingZorcher
Player.WeaponSlot 7, LAZDevice
Player.ColorRange 192, 207 //Not perfect, but its better than everyone being blue.
Player.ColorSet 0, "Light Blue", 0xC0, 0xCF, 0xC2
Player.ColorSet 1, "Green", 0x70, 0x7F, 0x72
Player.ColorSet 2, "Gray", 0x60, 0x6F, 0x62
Player.ColorSet 3, "Brown", 0x40, 0x4F, 0x42
Player.ColorSet 4, "Red", 0x20, 0x2F, 0x22
Player.ColorSet 5, "Light Gray", 0x58, 0x67, 0x5A
Player.ColorSet 6, "Light Brown", 0x38, 0x47, 0x3A
Player.ColorSet 7, "Light Red", 0xB0, 0xBF, 0xB2
}
DoomPlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, Pistol
Player.WeaponSlot 3, Shotgun
Player.WeaponSlot 4, Chaingun
Player.WeaponSlot 5, RocketLauncher
Player.WeaponSlot 6, PlasmaRifle
Player.WeaponSlot 7, BFG9000
Player.WeaponSlot 8, Chainsaw
Player.WeaponSlot 9, SuperShotgun
HereticPlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, GoldWand
Player.WeaponSlot 3, Crossbow
Player.WeaponSlot 4, Blaster
Player.WeaponSlot 5, SkullRod
Player.WeaponSlot 6, PhoenixRod
Player.WeaponSlot 7, Mace
Player.WeaponSlot 8, Staff
Player.WeaponSlot 9, Gauntlets
FighterPlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, Axe
Player.WeaponSlot 3, Hammer
Player.WeaponSlot 4, Quietus
Player.WeaponSlot 5, Crossbow
Player.WeaponSlot 6, PhoenixRod
Player.WeaponSlot 7, Mace
Player.WeaponSlot 8, Staff
Player.WeaponSlot 9, Gauntlets
ClericPlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, ClericMace
Player.WeaponSlot 3, ClericStaff
Player.WeaponSlot 4, ClericFlame
Player.WeaponSlot 5, Wraithverge
Player.WeaponSlot 6, PoisonBag
Player.WeaponSlot 7, Hammer
Player.WeaponSlot 8, Axe
Player.WeaponSlot 9, Gauntlets
MagePlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, MageWand
Player.WeaponSlot 3, MageFrost
Player.WeaponSlot 4, MageLightning
Player.WeaponSlot 5, MageBloodscourge
Player.WeaponSlot 6, PhoenixRod
Player.WeaponSlot 7, SkullRod
Player.WeaponSlot 8, Staff
Player.WeaponSlot 9, GoldWand
StrifePlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, PunchDagger
Player.WeaponSlot 3, StrifeCrossbow2, StrifeCrossbow
Player.WeaponSlot 4, AssaultGun
Player.WeaponSlot 5, MiniMissileLauncher
Player.WeaponSlot 6, StrifeGrenadeLauncher2, StrifeGrenadeLauncher
Player.WeaponSlot 7, FlameThrower
Player.WeaponSlot 8, Mauler2, Mauler
Player.WeaponSlot 9, Sigil
ChexPlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, MiniZorcher
Player.WeaponSlot 3, LargeZorcher
Player.WeaponSlot 4, RapidZorcher
Player.WeaponSlot 5, ZorchPropulsor
Player.WeaponSlot 6, PhasingZorcher
Player.WeaponSlot 7, LAZDevice
Player.WeaponSlot 8, Chainsaw
Player.WeaponSlot 9, SuperLargeZorcher
muligvis univverselle addons til slot 0 og pladserne efter index 0
{
Player.DisplayName "Chex Warrior"
Player.CrouchSprite ""
Player.StartItem "MiniZorcher"
Player.StartItem "Bootspoon"
Player.StartItem "MiniZorchRecharge", 50
Player.DamageScreenColor "60 b0 58"
Player.WeaponSlot 1, Bootspoon, SuperBootspork
Player.WeaponSlot 2, MiniZorcher
Player.WeaponSlot 3, LargeZorcher, SuperLargeZorcher
Player.WeaponSlot 4, RapidZorcher
Player.WeaponSlot 5, ZorchPropulsor
Player.WeaponSlot 6, PhasingZorcher
Player.WeaponSlot 7, LAZDevice
Player.ColorRange 192, 207 //Not perfect, but its better than everyone being blue.
Player.ColorSet 0, "Light Blue", 0xC0, 0xCF, 0xC2
Player.ColorSet 1, "Green", 0x70, 0x7F, 0x72
Player.ColorSet 2, "Gray", 0x60, 0x6F, 0x62
Player.ColorSet 3, "Brown", 0x40, 0x4F, 0x42
Player.ColorSet 4, "Red", 0x20, 0x2F, 0x22
Player.ColorSet 5, "Light Gray", 0x58, 0x67, 0x5A
Player.ColorSet 6, "Light Brown", 0x38, 0x47, 0x3A
Player.ColorSet 7, "Light Red", 0xB0, 0xBF, 0xB2
}
DoomPlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, Pistol
Player.WeaponSlot 3, Shotgun
Player.WeaponSlot 4, Chaingun
Player.WeaponSlot 5, RocketLauncher
Player.WeaponSlot 6, PlasmaRifle
Player.WeaponSlot 7, BFG9000
Player.WeaponSlot 8, Chainsaw
Player.WeaponSlot 9, SuperShotgun
HereticPlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, GoldWand
Player.WeaponSlot 3, Crossbow
Player.WeaponSlot 4, Blaster
Player.WeaponSlot 5, SkullRod
Player.WeaponSlot 6, PhoenixRod
Player.WeaponSlot 7, Mace
Player.WeaponSlot 8, Staff
Player.WeaponSlot 9, Gauntlets
FighterPlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, Axe
Player.WeaponSlot 3, Hammer
Player.WeaponSlot 4, Quietus
Player.WeaponSlot 5, Crossbow
Player.WeaponSlot 6, PhoenixRod
Player.WeaponSlot 7, Mace
Player.WeaponSlot 8, Staff
Player.WeaponSlot 9, Gauntlets
ClericPlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, ClericMace
Player.WeaponSlot 3, ClericStaff
Player.WeaponSlot 4, ClericFlame
Player.WeaponSlot 5, Wraithverge
Player.WeaponSlot 6, PoisonBag
Player.WeaponSlot 7, Hammer
Player.WeaponSlot 8, Axe
Player.WeaponSlot 9, Gauntlets
MagePlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, MageWand
Player.WeaponSlot 3, MageFrost
Player.WeaponSlot 4, MageLightning
Player.WeaponSlot 5, MageBloodscourge
Player.WeaponSlot 6, PhoenixRod
Player.WeaponSlot 7, SkullRod
Player.WeaponSlot 8, Staff
Player.WeaponSlot 9, GoldWand
StrifePlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, PunchDagger
Player.WeaponSlot 3, StrifeCrossbow2, StrifeCrossbow
Player.WeaponSlot 4, AssaultGun
Player.WeaponSlot 5, MiniMissileLauncher
Player.WeaponSlot 6, StrifeGrenadeLauncher2, StrifeGrenadeLauncher
Player.WeaponSlot 7, FlameThrower
Player.WeaponSlot 8, Mauler2, Mauler
Player.WeaponSlot 9, Sigil
ChexPlayer
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, MiniZorcher
Player.WeaponSlot 3, LargeZorcher
Player.WeaponSlot 4, RapidZorcher
Player.WeaponSlot 5, ZorchPropulsor
Player.WeaponSlot 6, PhasingZorcher
Player.WeaponSlot 7, LAZDevice
Player.WeaponSlot 8, Chainsaw
Player.WeaponSlot 9, SuperLargeZorcher
muligvis univverselle addons til slot 0 og pladserne efter index 0
Quake1Player
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, Axe
Player.WeaponSlot 3, Shotgun
Player.WeaponSlot 4, Double-Shotgun
Player.WeaponSlot 5, Nailgun
Player.WeaponSlot 6, Super-Nailgun
Player.WeaponSlot 7, Grenade Launcher
Player.WeaponSlot 8, Rocket Launcher
Player.WeaponSlot 9, ThunderBolt
https://zdoom.org/wiki/Z-QUAKE_Total_Conversion
DoomPlayer1,2,3,2016?
QuakePlayer 1,2,3,4?
WolfPlayer
AlienPlayer?
PredatorPlayer?
MarinePlayer?
FemaleMarinePlayer?
SpaceCowboyPlayer? (Neil)
4x10 New weapons (each with an alt-fire, as well as Power-up mode)?
https://www.doomworld.com/forum/topic/105942-hell-...
Player.WeaponSlot 1, Fist
Player.WeaponSlot 2, Axe
Player.WeaponSlot 3, Shotgun
Player.WeaponSlot 4, Double-Shotgun
Player.WeaponSlot 5, Nailgun
Player.WeaponSlot 6, Super-Nailgun
Player.WeaponSlot 7, Grenade Launcher
Player.WeaponSlot 8, Rocket Launcher
Player.WeaponSlot 9, ThunderBolt
https://zdoom.org/wiki/Z-QUAKE_Total_Conversion
DoomPlayer1,2,3,2016?
QuakePlayer 1,2,3,4?
WolfPlayer
AlienPlayer?
PredatorPlayer?
MarinePlayer?
FemaleMarinePlayer?
SpaceCowboyPlayer? (Neil)
4x10 New weapons (each with an alt-fire, as well as Power-up mode)?
https://www.doomworld.com/forum/topic/105942-hell-...
Hvad så hvis jeg laver en kompensation, og betaler til den katolske kirke som kan hjælpe fattige drenge, for eksempel ansætte drengene som kordrenge og give dem en faderlig velsignelse og måske lidt posttraumatisk vækst.
Og undskyld jeg skriver drenge. Jeg tog ikke hensyn til at de kunne være kønsneutrale non-seksuelle. Undskyld.
Og undskyld jeg skriver drenge. Jeg tog ikke hensyn til at de kunne være kønsneutrale non-seksuelle. Undskyld.
Opret dig som bruger i dag
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.