Page 13 of 33
Posted: Tue Jan 09, 2007 6:09
by wildweasel
I had to use a workaround to get the melee attack to make a different noise in ww-diaz. Do not give the weapon an attack sound. Instead, in the weapon's FIRE states, add one zero-duration frame right before when the weapon actually fires, and use that frame to play the fire sound. Example:
Code: Select all
(...)
Fire:
SHTG A 0 A_JumpIfNoAmmo(10)
SHTG A 0 A_AlertMonsters
SHTG A 1 BRIGHT A_GunFlash
SHTG A 0 A_PlayWeaponSound("weapons/shotgun")
SHTG A 7 A_FireBullets(6,7.1,12,5,0,1)
SHTG B 4
SHTG C 4
SHTG D 5
(...)
Then, in your melee attack states, have the first A_CustomPunch use a custom puff:
Code: Select all
(...)
AltFire:
SHTM A 1 A_PlayWeaponSound("melee/shotgunswing")
SHTM B 2
SHTM C 2 A_CUSTOMPUNCH(6.5,0,1,"ShotgunMeleePuff")
SHTM D 2 A_CUSTOMPUNCH(6.5,0,1)
NULL A 16
SHTM E 3
Goto Ready
(...)
Code: Select all
actor ShotgunMeleePuff
{
+NOBLOCKMAP
+NOGRAVITY
+PUFFONACTORS
activesound ""
attacksound "melee/wall"
seesound "melee/hit"
states
{
Spawn:
TNT1 A 0
TNT1 A 1
stop
Crash:
TNT1 A 0
TNT1 A 1
stop
Melee:
TNT1 A 0
TNT1 A 1
stop
}
}
If you want to have it show puffs on walls like a normal melee attack, just delete the Crash and Melee states. With this code, the puffs won't show up at all, but they will still make sounds when you hit enemies or walls.
Posted: Tue Jan 09, 2007 7:03
by lizardcommando
Ahh dammit, I can't figure what I did wrong with the Combat Shotgun now. It won't reload now. Also, I just gibbed a zombieman with the melee attack, even though +NOEXTREMEDEATH is on. The zombieman was shot twice by two other zombies.
Code: Select all
ACTOR CombatShotgun : Weapon replaces Shotgun
{
+AMMO_OPTIONAL
+NOAUTOFIRE
+NOALERT
+NOEXTREMEDEATH
Obituary "%o's was blasted by %k's Combat Shotgun."
Inventory.Pickupmessage "You got the Combat Shotgun!"
Weapon.AmmoType "SHOTGUNCLIP"
Weapon.AmmoType2 "SHOTGUNSHELLS"
Weapon.AmmoGive 0
Weapon.AmmoGive2 4
Weapon.AmmoUse 1
Weapon.SelectionOrder 280
States
{
Spawn:
SHOT A -1
LOOP
Ready:
SHTG A 1 A_WeaponReady
SHTG A 0 A_JumpIfInventory("IsReloading",1,1)
Loop
SHTG A 1
Goto Fire+10
Deselect:
SHTG A 1 A_Lower
Loop
Select:
SHTG A 1 A_Raise
Loop
Fire:
SHTG A 0 A_JumpIfNoAmmo(11)
SHTG A 0 A_AlertMonsters
SHTG A 1 BRIGHT A_GunFlash
SHTG A 0 A_PlayWeaponSound("weapons/shotgun")
SHTG A 7 A_FireBullets(6,7.1,12,5,0,1)
SHTG B 4
SHTG C 4
SHTG D 5
SHTG C 4
SHTG B 4
SHTG A 7
Goto Ready
SHTG A 1 A_Playsound("weapons/click")
Goto Ready
//Reload: Also Fire + 10
SHTR A 0 A_JumpIfInventory("SHOTGUNCLIP",0,2)
SHTR A 0 A_JumpIfInventory("SHOTGUNSHELLS",1,2)
SHTR A 0
Goto Ready
//Fire + 13
SHTG A 3
SHTG B 3
//Fire + 15
SHTR A 3
SHTR B 3 A_PlaySound("weapons/shotgunload")
//Fire + 17
SHTR A 0 A_GiveInventory("SHOTGUNCLIP",1)
SHTR A 0 A_TakeInventory("SHOTGUNSHELLS",1)
SHTR C 3
SHTR D 4
SHTG B 3
SHTR A 0 A_JumpIfInventory("IsReloading",1,1)
Goto Fire+27
SHTR A 0 A_JumpIfInventory("SHOTGUNSHELLS",1,1)
Goto Fire+27
SHTR A 0 A_JumpIfInventory("SHOTGUNCLIP",0,1)
Goto Fire+16
//Fire + 25
SHTG C 3 A_Playsound("weapons/sgcock")
SHTG D 3
SHTG C 3
SHTG B 3
SHTG A 0
Goto Ready
AltFire:
SHTM A 1 A_PlayWeaponSound("melee/shotgunswing")
SHTM B 2
SHTM C 2 A_CUSTOMPUNCH(4.5,0,1,"ShotgunMeleePuff")
SHTM D 2
NULL A 15
SHTM E 3
Goto Ready
Flash:
SHTF A 4 BRIGHT A_Light1
SHTF B 3 BRIGHT A_Light2
SHTF B 0 BRIGHT A_Light0
stop
}
}
Posted: Tue Jan 09, 2007 12:58
by TheDarkArchon
Reload is actually Fire+12
Posted: Tue Jan 09, 2007 21:05
by lizardcommando
Cool. It works now. Thanks, TDA.
Now that that problem is out of the way, I'm going to test this mod out with my brother. I'll try to get some screenshots of the new stuff in action.

Posted: Wed Jan 10, 2007 2:35
by lizardcommando
Here are some screenshots of my Coop run of Dark7 with my brother. He's using the new Lizard Marine skin. You get a quick glimpse of the Assault Shotgun and the melee attack for the Combat Shotgun. I know the graphics are a bit messy for them, but it's the best I could do for them. I used the spoiler tag to make the thread not so clogged up.
[spoiler]

The new Melee attack for the Combat Shotgun.

My brother (using the Lizard Marine) blasting a Demon.

The Assault Shotgun.

Another screenshot of the Assault Shotgun in action.

The last screenshot of the Assault Shotgun in action.

Running along through the train on MAP03.

Both of us (foolishly) charging into battle.[/spoiler]
Well, my brother enjoyed the new stuff. He didn't like ICD-Lizard, but after seeing what I've done here, he pretty much said it's leaps and bounds better than ICD-Lizard. I know the screenshots make the guns look messy, but when you see it in action, you'll barely notice a thing.
Posted: Fri Jan 12, 2007 9:07
by lizardcommando
Hey guys, I've got some good news. I've finished the 9MM pistol and I even added in two new enemies. Unfortunately, they aren't Lizards. They're just normal pistol human soldiers. Don't worry, there will eventually be new enemies done with the Lizards. With this release, those two guys will be the only new enemies.
Aside from the good news I have one problem. The 9MM pistol will still shoot three shots with the triple-round burst fire shot even though it'll run out of ammo. For example, I have 2 bullets left in the magazine and I use the secondary function, which is the 3 round burst and it'll still shoot three shots. How do I stop it from doing that. Also, when I use the three-round burst, the gun flash won't show up. Here's the coding for the entire gun:
Code: Select all
ACTOR 9MMPISTOL : Weapon 13500
{
+NOAUTOFIRE
+AMMO_OPTIONAL
-ALT_AMMO_OPTIONAL
+NOEXTREMEDEATH
Inventory.Pickupmessage "You got the 9MM Pistol!"
Obituary "%o was popped by %k's 9MM Pistol."
AttackSound "weapons/Glockfire"
Weapon.AmmoType "9MMPISTOLCLIP"
Weapon.AmmoType2 "9MMAMMO"
Weapon.AmmoGive 0
Weapon.AmmoGive2 15
Weapon.AmmoUse 1
Weapon.SelectionOrder 675
States
{
Spawn:
GLCK A -1
LOOP
Ready:
GLKG A 1 A_WeaponReady
GLKG A 0 A_JumpIfInventory("IsReloading",1,1)
Loop
GLKG A 1
Goto Fire + 7
Deselect:
GLKG A 1 A_Lower
Loop
Select:
GLKG A 1 A_Raise
Loop
Fire:
GLKG A 0 A_JumpIfNoAmmo(6)
GLKG A 1 BRIGHT A_GunFlash
GLKG B 2 A_FireBullets(2,2,-1,6,0,1,0)
GLKG C 2
GLKG B 2
GLKG A 0
Goto Ready
GLKG A 1 A_Playsound("weapons/click")
//Reload: also Fire + 10
GLKR A 0 A_JumpIfInventory("9MMPISTOLCLIP",0,2)
GLKR A 0 A_JumpIfInventory("9MMAMMO",1,2)
GLKR A 0
Goto Ready
GLKR A 4
GLKR B 3 A_PlaySound("weapons/pmagout")
GLKR C 8
GLKR D 3
GLKR E 3
GLKR F 4 A_PlaySound("weapons/pmagin")
GLKR F 4
GLKR F 4 A_PlaySound("weapons/pslide")
GLKR F 0 A_GiveInventory("9MMPISTOLCLIP",1)
GLKR F 0 A_TakeInventory("9MMAMMO",1)
GLKR A 0 A_JumpIfInventory("9MMPISTOLCLIP",0,2)
GLKR A 0 A_JumpIfInventory("9MMAMMO",1,2)
GLKR A 1
Goto Ready
GLKR A 0
Goto Fire + 18
AltFire:
GLKG A 0 A_JumpIfInventory("9MMPISTOLCLIP",1,2)
Goto Fire + 6
GLKG A 1 BRIGHT A_GunFlash
GLKG A 0 BRIGHT A_TakeInventory("9MMPISTOLCLIP",1)
GLKG B 2 A_FireBullets(3,2,-1,6,0,1,0)
GLKG A 1 BRIGHT A_GunFlash
GLKG A 0 BRIGHT A_TakeInventory("9MMPISTOLCLIP",1)
GLKG B 2 A_FireBullets(3,2,-1,6,0,1,0)
GLKG A 1 BRIGHT A_GunFlash
GLKG A 0 BRIGHT A_TakeInventory("9MMPISTOLCLIP",1)
GLKG B 2 A_FireBullets(3,2,-1,6,0,1,0)
GLKG C 2
GLKG B 2
GLKG A 0
Goto Ready
Flash:
GLKF A 1 BRIGHT A_Light1
GLKF A 0 A_Light0
stop
}
}
Posted: Fri Jan 12, 2007 10:23
by Visplane_Overflow
Hmm, it would seem to me that you need a line like this : GLKG A 0 A_JumpIfNoAmmo(6), before each shot of the triple burst - Although, I have zero experience, coding with DECORATE, so you should probably wait until somebody more adept at this kinda thing tells you something.
Posted: Fri Jan 12, 2007 10:55
by lizardcommando
Hmm, well in that case, did you check out the latest screenshots?

Posted: Fri Jan 12, 2007 12:11
by Visplane_Overflow
Yes, yes I did, and I must say - they look promising. Can't wait 'til I'm roughing up zombies with the butt end of the combat shotgun!
Posted: Fri Jan 12, 2007 14:54
by TheDarkArchon
The A_JumpIfInventory should check for 3 units of ammo and have a jump offset of 1.
Posted: Fri Jan 12, 2007 16:59
by lizardcommando
Oh, so would it look something like this?
Code: Select all
AltFire:
GLKG A 0 A_JumpIfInventory("9MMPISTOLCLIP",3,1)
Goto Fire + 6
GLKG A 1 BRIGHT A_GunFlash
GLKG A 0 BRIGHT A_TakeInventory("9MMPISTOLCLIP",1)
GLKG B 2 A_FireBullets(3,2,-1,6,0,1,0)
GLKG A 1 BRIGHT A_GunFlash
GLKG A 0 BRIGHT A_TakeInventory("9MMPISTOLCLIP",1)
GLKG B 2 A_FireBullets(3,2,-1,6,0,1,0)
GLKG A 1 BRIGHT A_GunFlash
GLKG A 0 BRIGHT A_TakeInventory("9MMPISTOLCLIP",1)
GLKG B 2 A_FireBullets(3,2,-1,6,0,1,0)
GLKG C 2
GLKG B 2
GLKG A 0
Goto Ready
Posted: Fri Jan 12, 2007 18:15
by TheDarkArchon
It should work: Before it was only checking for a single unit of ammo and jumping past the first A_GunFlash.
Posted: Fri Jan 12, 2007 18:47
by lizardcommando
Ah ok. The 9mm pistol pretty much works now. Thanks.

Posted: Fri Jan 12, 2007 22:36
by lizardcommando
Alright, here it is! This is the first formal release of my weapons mod, The Exterminator.
All of the weapons have been replaced. Slots 1-8 each have weapons in them. All of them (except slots 2 and 3) have two weapons in each slot. Slots 2 and 3 have three weapons in them. I did replace one enemy, but they aren't Lizards. They're just new pistol zombie replacements. They're there because I need a base for the rest of the new monsters. I am already aware of 4 "minor" bugs in the mod. I am new at DECORATE coding, so of course it isn't going to be perfect.
So go ahead and try it out and tell me what you think and tell me what I can improve on.
Screenshots can be seen
here. There are some old screenshots in there.
Now go play it and have fun! Don't forget to read the text files!
http://www.geocities.com/lizardcommando/extermin.zip
(Alt. download)
http://www.relentlessbeating.com/wads/extermin.zip
Here's a player skin to commemorate this special occasion!
http://www.geocities.com/lizardcommando/marineliz.zip
Posted: Sat Jan 13, 2007 10:04
by Alter
Hey lizard that's nice weapon mod even if it has MSpaint sprites

fun as hell
