internal ScopeInstanceData(SniperScopeSkillDef scopeSkill, GenericSkill skillSlot) { this.scopeSkill = scopeSkill; this.zoomParams = scopeSkill.zoomParams; this.zoom = this.zoomParams.defaultZoom; this.skillSlot = skillSlot; }
internal static SniperScopeSkillDef Create <TSecondary>(ZoomParams zoomParams) where TSecondary : ScopeBaseState { SniperScopeSkillDef def = ScriptableObject.CreateInstance <SniperScopeSkillDef>(); def.zoomParams = zoomParams; def.activationState = SkillsCore.StateType <TSecondary>(); def.activationStateMachineName = "Scope"; def.canceledFromSprinting = true; def.cancelSprintingOnActivation = true; def.fullRestockOnAssign = true; def.interruptPriority = InterruptPriority.Skill; def.isCombatSkill = false; def.mustKeyPress = false; //def.shootDelay = 0f; def.stockToConsume = 0; return(def); }