Someone gave me this idea in relation to Haloguns2.wad and some other project.
Would it be possible to add support for the following flags / keybindings?
Spoiler: Flags
+DUALWIELD = Designates that the weapon can be used one-handedly. this flag would have to be present on both weapons if the player wanted to dual-wield them.
+LEFT = Tells the engine that the weapon is on the left side, so that if another +LEFT weapon is selected afterwards, it's flipped horizontally.
+RIGHT = the same as +LEFT, just opposite.
Spoiler: Keys
Fire Left = Duh, fires a lefthanded weapon Fire Right = Just the opposite Note: With only one weapon, both keys would behave the same.
Alt-Fire Left & Alt-Fire Right = Same, but for Alt-Fire.
Dual-Wield = hold this key and select another weapon. Selecting another weapon with two weapons in hand and the key held down replaces the most recently added weapon. Selecting another weapon with the key released lowers both weapons and replaces them with the single selection.
I'm no programmer, but this seems like it would be fairly straightforward, to me at least. The biggest problem would be if a weapon fires projectiles / railguns off-center, but code checks in those routines could reverse the important values, depending.
The biggest problem is that the entire game code assumes that the player can only hold one weapon. That alone makes it very non-straightforward to change.
Graf Zahl wrote:The biggest problem is that the entire game code assumes that the player can only hold one weapon. That alone makes it very non-straightforward to change.
Well, that sucks, to say the least of it. *sigh*
"Someday, somehow
Gonna make it all right
But not right now" Nickelback, Someday
Yeah, someday, hopefully.
EDIT: I am a programmer, just not a very good one. And I only know Q-BASIC.
Can't you find a cheap hack version, like perhaps malking it so that you pick up the 'twin whatevers' which is actually just two sprites of the same gun or whatever.
The trick would be, that you use alt-fire to fire one gun's projectile, and the normal fire fires the other, therefore allowing faked seperate shots. What you couldn't do is fire both at the same time, unless you had a gun where normal fire fired just one, whilst alt-fire fired both. As a technicality you could use a script to tell when the player has two weapons. The script then gives the player the dual wield of it, as an example:
Player has SMG
Player then picks up a grenade launcher
Script knows this, and gives the player both weapons, plus the dual wield equivilant, perhaps in a special 'dual-wielding' slot?
normal fire utilises rapid fire SMG whilst altfire uses grenade launcher.
Graf Zahl wrote:The biggest problem is that the entire game code assumes that the player can only hold one weapon. That alone makes it very non-straightforward to change.
However, if you 'Duel Weild' weapons, that could just count as one weapon, thats right, to trick the .exe into thinking 2 guns = 1 gun. Though I'm not sure how to do this, I'll probably think of a way.
Phobus wrote:Can't you find a cheap hack version, like perhaps malking it so that you pick up the 'twin whatevers' which is actually just two sprites of the same gun or whatever.
The trick would be, that you use alt-fire to fire one gun's projectile, and the normal fire fires the other, therefore allowing faked seperate shots. What you couldn't do is fire both at the same time, unless you had a gun where normal fire fired just one, whilst alt-fire fired both. As a technicality you could use a script to tell when the player has two weapons. The script then gives the player the dual wield of it, as an example:
Player has SMG
Player then picks up a grenade launcher
Script knows this, and gives the player both weapons, plus the dual wield equivilant, perhaps in a special 'dual-wielding' slot?
normal fire utilises rapid fire SMG whilst altfire uses grenade launcher.
Hows that for a way round?
Great, except that it uses many duplicate sprites, and can't account for every possible combination without horrendous amounts of work. This was ment to be a flexable alternative to all that scripting and extra graphics, so that the player could use any two guns together.