Eliminate player self-damage

From EDukeWiki
Jump to navigation Jump to search

The following code can be used to make it so that actors (including players) do not take damage from their own weapons. To function, the code should be placed in the actor code (in the block of code beginning with ACTOR ACTORNAME) above the place in the code where the command ifhitweapon is used. It assumes that the gamevar TEMP has been declared.

getactor[THISACTOR].htextra TEMP

ifvarg TEMP 0                            // if the actor is set to take some damage from a weapon...
  getactor[THISACTOR].htowner TEMP      // gets the owner of the weapon into TEMP
  ifvarvare TEMP THISACTOR              // if the owner of the weapon IS this actor
    setactor[THISACTOR].htextra -1       // set the damage to -1, the default value