FILES ----- damage\broadsword.damage [NEW] damage\electricbarrier.damage damage\electricbroadsword.damage [NEW] damage\firebarrier.damage damage\firebroadsword.damage [NEW] damage\icebarrier.damage damage\icebroadsword.damage [NEW] damage\poisonbarrier.damage damage\poisonbroadsword.damage [NEW] damage\shortsword.damage items\active\weapons\weapon2.lua items\active\weapons\melee\altabilities\broadsword\dashattack.altability items\active\weapons\melee\altabilities\broadsword\dashattack.lua items\active\weapons\melee\altabilities\broadsword\leapattack.altability items\active\weapons\melee\altabilities\broadsword\leapattack.lua items\active\weapons\melee\altabilities\broadsword\bladecharge\bladecharge.altability items\active\weapons\melee\altabilities\broadsword\downstab\downstab.altability items\active\weapons\melee\altabilities\broadsword\downstab\downstab.lua items\active\weapons\melee\altabilities\broadsword\giantsword\giantsword.altability items\active\weapons\melee\altabilities\broadsword\risingslash\risingslash.altability [NEW] items\active\weapons\melee\altabilities\broadsword\spinslash\default.frames [NEW] items\active\weapons\melee\altabilities\broadsword\spinslash\spinslash.altability [NEW] items\active\weapons\melee\altabilities\broadsword\spinslash\spinslash.lua [NEW] items\active\weapons\melee\altabilities\broadsword\spinslash\spinswoosh.png [NEW] items\active\weapons\melee\altabilities\broadsword\traildash\traildash.altability [NEW] items\active\weapons\melee\altabilities\broadsword\traildash\traildash.lua [NEW] items\active\weapons\melee\altabilities\generic\blinkslash\blinkslash.altability [NEW] items\active\weapons\melee\altabilities\generic\blinkslash\blinkslash.lua [NEW] items\active\weapons\melee\altabilities\generic\blinkslash\default.frames [NEW] items\active\weapons\melee\altabilities\generic\blinkslash\electricswoosh.png [NEW] items\active\weapons\melee\altabilities\generic\blinkslash\fireswoosh.png [NEW] items\active\weapons\melee\altabilities\generic\blinkslash\iceswoosh.png [NEW] items\active\weapons\melee\altabilities\generic\blinkslash\physicalswoosh.png [NEW] items\active\weapons\melee\altabilities\generic\blinkslash\poisonswoosh.png [NEW] items\active\weapons\melee\altabilities\hammer\shockwave\physicalshockwave.altability items\active\weapons\melee\altabilities\hammer\shockwave\shockwave.altability items\active\weapons\melee\altabilities\hammer\shockwave\shockwave.lua items\active\weapons\melee\altabilities\hammer\uppercut\uppercut.altability items\active\weapons\melee\altabilities\hammer\uppercut\uppercut.lua items\active\weapons\melee\altabilities\spear\charge\charge.lua items\active\weapons\melee\altabilities\spear\flurry\flurry.altability items\active\weapons\melee\altabilities\spear\flurry\flurry.lua items\active\weapons\melee\altabilities\spear\spin\spin.lua items\active\weapons\melee\broadsword\commonbroadsword.activeitem items\active\weapons\melee\broadsword\rarebroadsword.activeitem items\active\weapons\melee\hammer\commonhammer.activeitem items\active\weapons\melee\shortsword\commonshortsword.activeitem items\active\weapons\ranged\altabilities\lance\lance.altability objects\avian\propeller\propeller.object [NEW] particles\shockwave\shockwavedust.particle [NEW] projectiles\explosions\elementalwave\physicalshockwave.png [NEW] projectiles\explosions\elementalwave\physicalshockwave.projectile [NEW] projectiles\explosions\elementalwave\shockwavedust.effectsource projectiles\swoosh\broadsword\bloodswoosh\bloodswoosh.projectile projectiles\swoosh\broadsword\broadswordswoosh\broadswordswoosh.projectile projectiles\swoosh\broadsword\cellswoosh\cellswoosh.projectile projectiles\swoosh\broadsword\cellswooshx\cellswooshx.projectile projectiles\swoosh\broadsword\rainbowswoosh\rainbowswoosh.projectile projectiles\swoosh\broadsword\starcleaverswordslash\starcleaverswordslash.projectile projectiles\swoosh\broadsword\testswoosh3\testswoosh3.projectile projectiles\swoosh\broadsword\waterbroadswordswoosh\waterbroadswordswoosh.projectile projectiles\swoosh\shortsword\shortswordswoosh\shortswordswoosh.projectile projectiles\swoosh\shortsword\shortswordswoosh1\shortswordswoosh1.projectile projectiles\swoosh\shortsword\slimeswoosh\slimeswoosh.projectile projectiles\swoosh\shortsword\slimeswooshx\slimeswooshx.projectile projectiles\swoosh\shortsword\wildswoosh\wildswoosh.projectile projectiles\swoosh\shortsword\wildswooshx\wildswooshx.projectile projectiles\unsorted\elementalbarrier\electricbarrier.projectile projectiles\unsorted\elementalbarrier\firebarrier.projectile projectiles\unsorted\elementalbarrier\icebarrier.projectile projectiles\unsorted\elementalbarrier\poisonbarrier.projectile scripts\util.lua [NEW] sfx\projectiles\electric_barrier_shock1.wav [NEW] sfx\projectiles\electric_barrier_shock2.wav [NEW] sfx\projectiles\electric_barrier_shock_kill.wav [NEW] sfx\projectiles\fire_barrier_kill.wav sfx\projectiles\flame_burn.wav [NEW] sfx\projectiles\ice_barrier_freeze1.wav [NEW] sfx\projectiles\ice_barrier_freeze2.wav [NEW] sfx\projectiles\ice_barrier_hit.wav [NEW] sfx\projectiles\ice_barrier_kill.wav [NEW] sfx\projectiles\poison_barrier_kill.wav DIFFS ----- damage\broadsword.damage 6c6 < "sounds" : [ "/sfx/melee/sharp_heavy_hit_organic.wav" ], --- > "sounds" : [ "/sfx/melee/slash.wav" ], 8a9 > 11c12 < "animation" : "/animations/defaulthitspark/defaulthitspark.animation", --- > "animation" : "/animations/largehitspark/largehitspark.animation", 19c20 < "approach" : [1, 0], --- > "approach" : [20, 0], 21a23,124 > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 0, 0, 255], > "fade" : 0.9, > "initialVelocity" : [12, 6.0], > "finalVelocity" : [17, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1, > "size" : 1.3 > } > }, > > { > "type" : "ember", > "size" : 1.3, > "color" : [210, 0, 0, 255], > "fade" : 0.9, > "initialVelocity" : [13, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1, > "size" : 1.3 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 0, 0, 255], > "fade" : 0.9, > "initialVelocity" : [11, 7.0], > "finalVelocity" : [13, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1, > "size" : 1.3 > } > }, > > { > "type" : "ember", > "size" : 1.3, > "color" : [210, 0, 0, 255], > "fade" : 0.9, > "initialVelocity" : [17, 6.0], > "finalVelocity" : [-7, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1, > "size" : 1.3 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 0, 0, 255], > "fade" : 0.9, > "initialVelocity" : [16, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1, > "size" : 1.3 > } > }, > > { > "type" : "ember", > "size" : 1.3, > "color" : [210, 0, 0, 255], > "fade" : 0.9, > "initialVelocity" : [-3, 7.0], > "finalVelocity" : [-3, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1, > "size" : 1.3 > } 29a133 > 32c136 < "animation" : "/animations/defaulthitspark/defaulthitspark.animation", --- > "animation" : "/animations/largehitspark/largehitspark.animation", 40c144 < "approach" : [1, 0], --- > "approach" : [20, 0], 42a147,249 > }, > > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 0, 0, 255], > "fade" : 0.9, > "initialVelocity" : [12, 6.0], > "finalVelocity" : [17, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1, > "size" : 1.3 > } > }, > > { > "type" : "ember", > "size" : 1.3, > "color" : [210, 0, 0, 255], > "fade" : 0.9, > "initialVelocity" : [13, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1, > "size" : 1.3 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 0, 0, 255], > "fade" : 0.9, > "initialVelocity" : [11, 7.0], > "finalVelocity" : [13, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1, > "size" : 1.3 > } > }, > > { > "type" : "ember", > "size" : 1.3, > "color" : [210, 0, 0, 255], > "fade" : 0.9, > "initialVelocity" : [17, 6.0], > "finalVelocity" : [-7, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1, > "size" : 1.3 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 0, 0, 255], > "fade" : 0.9, > "initialVelocity" : [16, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1, > "size" : 1.3 > } > }, > > { > "type" : "ember", > "size" : 1.3, > "color" : [210, 0, 0, 255], > "fade" : 0.9, > "initialVelocity" : [-3, 7.0], > "finalVelocity" : [-3, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1, > "size" : 1.3 > } 52a260 > 55c263 < "animation" : "/animations/defaulthitspark/defaulthitspark.animation", --- > "animation" : "/animations/largehitspark/largehitspark.animation", 63c271 < "approach" : [1, 0], --- > "approach" : [20, 0], 65a274,369 > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [17, 6.0], > "finalVelocity" : [17, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [16, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [13, 7.0], > "finalVelocity" : [13, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [17, 6.0], > "finalVelocity" : [-7, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [16, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [-3, 7.0], > "finalVelocity" : [-3, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } 73a378 > 76c381 < "animation" : "/animations/defaulthitspark/defaulthitspark.animation", --- > "animation" : "/animations/largehitspark/largehitspark.animation", 84c389 < "approach" : [1, 0], --- > "approach" : [20, 0], 86a392,772 > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [17, 6.0], > "finalVelocity" : [17, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [16, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [13, 7.0], > "finalVelocity" : [13, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [17, 6.0], > "finalVelocity" : [-7, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [16, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [-3, 7.0], > "finalVelocity" : [-3, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [17, 6.0], > "finalVelocity" : [17, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [16, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [13, 7.0], > "finalVelocity" : [13, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [17, 6.0], > "finalVelocity" : [-7, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [16, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [-3, 7.0], > "finalVelocity" : [-3, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [17, 6.0], > "finalVelocity" : [17, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [16, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [13, 7.0], > "finalVelocity" : [13, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [17, 6.0], > "finalVelocity" : [-7, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [16, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [-3, 7.0], > "finalVelocity" : [-3, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [17, 6.0], > "finalVelocity" : [17, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [16, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [13, 7.0], > "finalVelocity" : [13, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [17, 6.0], > "finalVelocity" : [17, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.8, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [16, 8.0], > "finalVelocity" : [16, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } > }, > > { > "type" : "ember", > "size" : 1.0, > "color" : [255, 200, 0, 255], > "fade" : 0.9, > "initialVelocity" : [-3, 7.0], > "finalVelocity" : [-3, -19.0], > "approach" : [20, 30], > "timeToLive" : 0.9, > "layer" : "front", > "variance" : { > "initialVelocity" : [13, 3], > "timeToLive" : 1 > } damage\electricbroadsword.damage 10c10 < "sounds" : [ "/sfx/melee/sharp_heavy_hit_organic.wav" ], --- > "sounds" : [ "/sfx/melee/slash.wav" ], damage\firebroadsword.damage 10c10 < "sounds" : [ "/sfx/melee/sharp_heavy_hit_organic.wav" ], --- > "sounds" : [ "/sfx/melee/slash.wav" ], damage\icebroadsword.damage 10c10 < "sounds" : [ "/sfx/melee/sharp_heavy_hit_organic.wav" ], --- > "sounds" : [ "/sfx/melee/slash.wav" ], damage\poisonbroadsword.damage 10c10 < "sounds" : [ "/sfx/melee/sharp_heavy_hit_organic.wav" ], --- > "sounds" : [ "/sfx/melee/slash.wav" ], items\active\weapons\weapon2.lua 28a29,31 > -- clear damage sources > self:setDamage() > 105c108 < knockback = knockbackMomentum(damageConfig.knockback, damageConfig.knockbackMode, self.aimAngle) --- > knockback = knockbackMomentum(damageConfig.knockback, damageConfig.knockbackMode, self.aimAngle, self.aimDirection) 120a124,125 > > self.damageWasSet = true 204c209 < function knockbackMomentum(knockback, knockbackMode, aimAngle) --- > function knockbackMomentum(knockback, knockbackMode, aimAngle, aimDirection) 212c217 < return {mcontroller.facingDirection() * knockback, 0} --- > return {aimDirection * knockback, 0} 215c220 < aimVector[1] = mcontroller.facingDirection() * aimVector[1] --- > aimVector[1] = aimDirection * aimVector[1] items\active\weapons\melee\altabilities\broadsword\dashattack.altability 14a15 > "damageSourceKind" : "broadsword", items\active\weapons\melee\altabilities\broadsword\dashattack.lua 62d61 < self.weapon:setDamage() items\active\weapons\melee\altabilities\broadsword\leapattack.altability 9a10 > "damageSourceKind" : "broadsword", items\active\weapons\melee\altabilities\broadsword\leapattack.lua 84d83 < self.weapon:setDamage() items\active\weapons\melee\altabilities\broadsword\bladecharge\bladecharge.altability 48a49 > "damageSourceKind" : "broadsword", items\active\weapons\melee\altabilities\broadsword\downstab\downstab.altability 10a11 > "damageSourceKind" : "spear", items\active\weapons\melee\altabilities\broadsword\downstab\downstab.lua 26d25 < self.weapon:setDamage() 68d66 < self.weapon:setDamage() items\active\weapons\melee\altabilities\broadsword\giantsword\giantsword.altability 165a166 > "damageSourceKind" : "broadsword", items\active\weapons\melee\altabilities\broadsword\risingslash\risingslash.altability 59a60 > "damageSourceKind" : "broadsword", items\active\weapons\melee\altabilities\hammer\shockwave\shockwave.altability 76d75 < "shockWaveStartDistance" : 3, 80c79 < "impactWeaponOffset" : 0.5, --- > "impactWeaponOffset" : 0.75, items\active\weapons\melee\altabilities\hammer\shockwave\shockwave.lua 77c77 < self.weaponOffset = {0, impactHeight + self.impactWeaponOffset} --- > self.weapon.weaponOffset = {0, impactHeight + self.impactWeaponOffset} 80c80,82 < local positions = self:shockwaveProjectilePositions(impact, charge) --- > local directions = {1} > if self.bothDirections then directions[2] = -1 end > local positions = self:shockwaveProjectilePositions(impact, charge, directions) 91,92c93,96 < self.projectileParameters.timeToLive = (i - 1) * 0.025 < world.spawnProjectile("shockwavespawner", position, activeItem.ownerEntityId(), {mcontroller.facingDirection(),0}, false, --- > local xDistance = world.distance(position, impact)[1] > local dir = util.toDirection(xDistance) > self.projectileParameters.timeToLive = (math.floor(math.abs(xDistance))) * 0.025 > world.spawnProjectile("shockwavespawner", position, activeItem.ownerEntityId(), {dir,0}, false, 111c115 < function shockWave:shockwaveProjectilePositions(position, maxDistance) --- > function shockWave:shockwaveProjectilePositions(impactPosition, maxDistance, directions) 114,120c118,126 < local direction = mcontroller.facingDirection() < for i = 0, maxDistance do < local continue = false < for _,yDir in ipairs({0, -1, 1}) do < local wavePosition = {position[1] + direction * i, position[2] + 0.5 + yDir + self.shockwaveHeight} < local groundPosition = {position[1] + direction * i, position[2] + yDir} < local bounds = rect.translate(self.shockWaveBounds, wavePosition) --- > for _,direction in pairs(directions) do > direction = direction * mcontroller.facingDirection() > local position = copy(impactPosition) > for i = 0, maxDistance do > local continue = false > for _,yDir in ipairs({0, -1, 1}) do > local wavePosition = {position[1] + direction * i, position[2] + 0.5 + yDir + self.shockwaveHeight} > local groundPosition = {position[1] + direction * i, position[2] + yDir} > local bounds = rect.translate(self.shockWaveBounds, wavePosition) 122,126c128,133 < if world.pointTileCollision(groundPosition, {"Null", "Block", "Dynamic"}) and not world.rectTileCollision(bounds, {"Null", "Block", "Dynamic"}) then < table.insert(positions, wavePosition) < position[2] = position[2] + yDir < continue = true < break --- > if world.pointTileCollision(groundPosition, {"Null", "Block", "Dynamic"}) and not world.rectTileCollision(bounds, {"Null", "Block", "Dynamic"}) then > table.insert(positions, wavePosition) > position[2] = position[2] + yDir > continue = true > break > end 127a135 > if not continue then break end 129d136 < if not continue then break end items\active\weapons\melee\altabilities\hammer\uppercut\uppercut.altability 56a57 > "damageSourceKind" : "hammer", items\active\weapons\melee\altabilities\hammer\uppercut\uppercut.lua 71d70 < self.weapon:setDamage() items\active\weapons\melee\altabilities\spear\charge\charge.lua 64,66d63 < -- clear damage < self.weapon:setDamage() < 77d73 < self.weapon:setDamage() items\active\weapons\melee\altabilities\spear\flurry\flurry.altability 15,18c15,19 < "baseDamage" : 0.75, < "knockback" : 0, < "timeout" : 0.15, < "timeoutGroup" : "alt" --- > "damageSourceKind" : "spear", > "baseDamage" : 0.75, > "knockback" : 0, > "timeout" : 0.15, > "timeoutGroup" : "alt" items\active\weapons\melee\altabilities\spear\flurry\flurry.lua 36d35 < self.weapon:setDamage() 62d60 < self.weapon:setDamage() items\active\weapons\melee\altabilities\spear\spin\spin.lua 39d38 < self.weapon:setDamage() items\active\weapons\melee\broadsword\commonbroadsword.activeitem 25c25 < "damageSourceKind" : "2hsword", --- > "damageSourceKind" : "broadsword", 97c97,98 < "/items/active/weapons/melee/altabilities/broadsword/leapattack.altability" --- > "/items/active/weapons/melee/altabilities/broadsword/leapattack.altability", > "/items/active/weapons/melee/altabilities/broadsword/spinslash/spinslash.altability" items\active\weapons\melee\broadsword\rarebroadsword.activeitem 105,107c105,109 < "/items/active/weapons/melee/altabilities/broadsword/giantsword/giantsword.altability", < "/items/active/weapons/melee/altabilities/broadsword/travelingslash/travelingslash.altability", < "/items/active/weapons/melee/altabilities/generic/blinkexplosion/blinkexplosion.altability" --- > //"/items/active/weapons/melee/altabilities/broadsword/giantsword/giantsword.altability", > //"/items/active/weapons/melee/altabilities/broadsword/travelingslash/travelingslash.altability", > //"/items/active/weapons/melee/altabilities/generic/blinkexplosion/blinkexplosion.altability", > //"/items/active/weapons/melee/altabilities/generic/blinkslash/blinkslash.altability", > "/items/active/weapons/melee/altabilities/broadsword/traildash/traildash.altability" items\active\weapons\melee\hammer\commonhammer.activeitem 108c108,109 < "/items/active/weapons/melee/altabilities/hammer/uppercut/uppercut.altability" --- > "/items/active/weapons/melee/altabilities/hammer/uppercut/uppercut.altability", > "/items/active/weapons/melee/altabilities/hammer/shockwave/physicalshockwave.altability" items\active\weapons\melee\shortsword\commonshortsword.activeitem 27c27 < "damageSourceKind" : "1hsword", --- > "damageSourceKind" : "shortsword", items\active\weapons\ranged\altabilities\lance\lance.altability 15c15,16 < "transition" : "full", --- > "transition" : "full" > /* 18a20 > */ objects\avian\propeller\propeller.object 36c36 < "damageSourceKind" : "2hsword" --- > "damageSourceKind" : "slash" 54c54 < "damageSourceKind" : "2hsword" --- > "damageSourceKind" : "slash" 73c73 < "damageSourceKind" : "2hsword" --- > "damageSourceKind" : "slash" 91c91 < "damageSourceKind" : "2hsword" --- > "damageSourceKind" : "slash" 109c109 < "damageSourceKind" : "2hsword" --- > "damageSourceKind" : "slash" 127c127 < "damageSourceKind" : "2hsword" --- > "damageSourceKind" : "slash" projectiles\swoosh\broadsword\bloodswoosh\bloodswoosh.projectile 16c16 < "damageKind" : "2hsword", --- > "damageKind" : "broadsword", projectiles\swoosh\broadsword\broadswordswoosh\broadswordswoosh.projectile 16c16 < "damageKind" : "2hsword", --- > "damageKind" : "broadsword", projectiles\swoosh\broadsword\cellswoosh\cellswoosh.projectile 14c14 < "damageKind" : "2hsword", --- > "damageKind" : "broadsword", projectiles\swoosh\broadsword\cellswooshx\cellswooshx.projectile 14c14 < "damageKind" : "2hsword", --- > "damageKind" : "broadsword", projectiles\swoosh\broadsword\rainbowswoosh\rainbowswoosh.projectile 13c13 < "damageKind" : "2hsword", --- > "damageKind" : "broadsword", projectiles\swoosh\broadsword\starcleaverswordslash\starcleaverswordslash.projectile 16c16 < "damageKind" : "2hsword", --- > "damageKind" : "broadsword", projectiles\swoosh\broadsword\testswoosh3\testswoosh3.projectile 13c13 < "damageKind" : "2hsword", --- > "damageKind" : "broadsword", projectiles\swoosh\broadsword\waterbroadswordswoosh\waterbroadswordswoosh.projectile 16c16 < "damageKind" : "2hsword", --- > "damageKind" : "broadsword", projectiles\swoosh\shortsword\shortswordswoosh\shortswordswoosh.projectile 16c16 < "damageKind" : "1hsword", --- > "damageKind" : "shortsword", projectiles\swoosh\shortsword\shortswordswoosh1\shortswordswoosh1.projectile 13c13 < "damageKind" : "1hsword", --- > "damageKind" : "shortsword", projectiles\swoosh\shortsword\slimeswoosh\slimeswoosh.projectile 14c14 < "damageKind" : "1hsword", --- > "damageKind" : "shortsword", projectiles\swoosh\shortsword\slimeswooshx\slimeswooshx.projectile 14c14 < "damageKind" : "1hsword", --- > "damageKind" : "shortsword", projectiles\swoosh\shortsword\wildswoosh\wildswoosh.projectile 14c14 < "damageKind" : "1hsword", --- > "damageKind" : "shortsword", projectiles\swoosh\shortsword\wildswooshx\wildswooshx.projectile 14c14 < "damageKind" : "1hsword", --- > "damageKind" : "shortsword", projectiles\unsorted\elementalbarrier\electricbarrier.projectile 17c17 < "damageKind" : "electricplasma", --- > "damageKind" : "electricbarrier", projectiles\unsorted\elementalbarrier\firebarrier.projectile 17c17 < "damageKind" : "fireplasma", --- > "damageKind" : "firebarrier", projectiles\unsorted\elementalbarrier\icebarrier.projectile 17c17 < "damageKind" : "iceplasma", --- > "damageKind" : "icebarrier", projectiles\unsorted\elementalbarrier\poisonbarrier.projectile 17c17 < "damageKind" : "poisonplasma", --- > "damageKind" : "poisonbarrier", scripts\util.lua 136a137,154 > -- Run coroutines or functions in parallel until at least one coroutine is dead > function util.parallel(...) > for _,thread in pairs({...}) do > if type(thread) == "function" then > thread() > elseif type(thread) == "thread" then > if coroutine.status(thread) == "dead" then > return false > end > local status, result = coroutine.resume(thread) > if not status then error(result) end > end > end > > return true > end > > --------------------------------------------------------------------------------