WeaponData
{
	// modded callbacks
	"OnWeaponActivate"									"OnWeaponActivate_titanweapon_punch"
	"OnWeaponDeactivate"								"OnWeaponDeactivate_titanweapon_punch"

	// npc using as main weapon
	// actual damage handled in aiset
	"npc_max_engage_range"							"250"
	"npc_max_engage_range_heavy_armor"				"250"

	"npc_min_burst"									"0"
	"npc_max_burst"									"0"
	"npc_max_range"   								"100"	// prevent COND_CAN_RANGE_ATTACK1

	// higher sprintcycle makes berserker punch look better( match footstep )
	"sprintcycle_time"								"0.85"

	Mods
	{
		berserker
		{
			"fire_rate"										"0.8" // to avoid long anim event
		}

		allow_as_primary
		{
			"attack_button_presses_melee"					"1"
			// force npc get close to enemy and try to punch them? nope, it's depend on aibehavior
			"npc_min_range"   								"0"
			"npc_max_range"   								"100"	// prevent COND_CAN_RANGE_ATTACK1
			"npc_max_engage_range"							"250"
			"npc_max_engage_range_heavy_armor"				"250"
		}

		// modified
		berserker_nerfed_damage // use together with berserker
		{
			"melee_damage_heavyarmor"					"--4100" // 900
		}

		// dash punch
		dash_punch 
		{
		}
		big_punch // ttf1 big punch sequence, don't use together with berserker. client can predict this
		{
			"fire_rate"									"0.57" // to avoid long anim event
			"melee_attack_animtime"						"1.7"
			"melee_anim_1p_number"						"2" // ACT_VM_MELEE_ATTACK2
			
			// both ACT_GESTURE_MELEE_ATTACK1 and ACT_GESTURE_MELEE_ATTACK2 don't working well on atlas titan, maybe use berserker one
			// but ACT_GESTURE_MELEE_ATTACK3 makes stryder use titan sword animation
			// don't want either to happen, now adding separent animation mod
			//"melee_anim_3p"								"ACT_GESTURE_MELEE_ATTACK2" // ACT_GESTURE_MELEE_ATTACK3

			"melee_damage_heavyarmor"					"++450" // 950, it's sequence is really freaking long
		}
		// animation mods, should be updated by scripts
		big_punch_anim_punch // for stryder and ogre chassis to use
		{
			"melee_anim_3p"								"ACT_GESTURE_MELEE_ATTACK2"
		}
		big_punch_anim_berserker // for atlas chassis to use
		{
			"melee_anim_3p"								"ACT_GESTURE_MELEE_ATTACK3"
			// sadly these can't be added by mods
			//"offhand_keep_primary_in_hand"					"0"
			//"offhand_holster_primary"						"1"
		}

		// bison
		bison_punch // use together with berserker and dash_punch, settings done in _bison_util.gnut
		{
			// remove pullout time so player can cancel their offhand weapon attack
			// only happens when equipping together with allow_as_primary
			"holster_time"									"0.01"
			"deploy_time" 									"0.01"
			// no need to change lower or raise, they're used for offhand switch
			//"lower_time"  									"0.01"
			//"raise_time"  									"0.01"

			"melee_damage_heavyarmor"					"--3950" // 1050
			// handle primary pullout
			//"melee_raise_recovery_animtime_normal"		"*0.8" // 0.8
			//"melee_raise_recovery_animtime_quick"		"*0.8" // 0.8

			// activity modifier: third person animation
			"activitymodifier"							"mp_titanweapon_predator_cannon"
		}
		// npc bison
		// no any damage modify or disabling execution, just changes damageSourceId. settings done in _bison_util.gnut
		bison_punch_npc
		{
		}

		// berserker core
		berserker_core_punch // use together with berserker and dash_punch, core ability
		{
			"melee_damage_heavyarmor"					"--3000" // 2000
			// activity modifier: third person animation
			"activitymodifier"							"mp_titanweapon_predator_cannon"
		}
		// behavior fix: main weapon switch
		// by removing it's pullout animation and looping check in script
		// update: removing "holster_time" and "deploy_time" works bad, makes titan blanking melee attack
		// make holster/deploy time match their lower/raise time could be nice, though it makes weapon unable to melee unlike raise from offhand animation
		berserker_instant_deploy
		{
			"holster_time"									"0.01"
			"deploy_time" 									"0.01"
			// no need to change lower or raise, they're used for offhand switch
			//"lower_time"  									"0.01"
			//"raise_time"  									"0.01"
		}
		berserker_fast_deploy // using this now
		{
			// add some time to avoid blanking melee
			// make sure to HolsterWeapon() and DeployWeapon() again
			"holster_time"									"0.3"
			"deploy_time" 									"0.3"
		}

		// pilot using it
		pilot_titanweapon
        {
            "melee_anim_3p"								"ACT_MP_MELEE_KNIFE_FIRST"
			//"impulse_force"								"--999600" // 400
        }

		// fighter
		fighter_melee // should thread the function PlayerFakeMeleeThink() when use, done in _fighter_melee.gnut
		{
			"melee_range"									"*1.5" // 420 without berserker, 450 with berserker
			"melee_attack_animtime"							"0.1" // 1 tick!
			"melee_damage"									"--450" // 50
			//"melee_damage_heavyarmor"						"*0.5" // 250
			"melee_freezelook_on_hit"						"*0" // this thing is client-side????

			// explosion: for destroying the tether( won't work though )
			//"explosion_damage"								"25"
			//"explosion_damage_heavy_armor"					"25"
			//"explosionradius" 								"150"
   			//"explosion_inner_radius" 						"50"
		}
		
	}
}
